application_ai / utils /helpers.py
jwphantom
finish nlp
a87363f
import streamlit as st
def show():
# Lorsque "About" est sélectionné, afficher le contenu À propos dans le corps principal
st.markdown(
"""
# À propos de cette application
Cette application Streamlit démontre l'utilisation avancée de l'intelligence artificielle pour fournir une variété de services, y compris un chatbot intelligent, la conversion de texte en parole, la classification d'images sans exemples préalables, et la conversion d'images en texte. Cette application est un exemple de comment les technologies de pointe peuvent être intégrées dans des applications web modernes.
## Créateur
- [James Olongo](https://jamesolongo.vercel.app/)
## Technologies utilisées
- **Streamlit**: Un framework pour la création rapide d'applications web pour la science des données et le machine learning.
- **PyTorch & Transformers**: Utilisés pour les opérations de traitement du langage naturel et de génération de texte.
- **torchaudio & gTTS**: Pour la génération de parole et le traitement audio.
- **Langdetect & Pycountry**: Pour la détection de la langue et le traitement basé sur la langue.
- **Deep Translator**: Un puissant outil de traduction, utilisé en remplacement de Googletrans.
- **Google Generative AI**: Pour le chatbot intelligent, utilisant le modèle "gemini-pro" pour générer des réponses textuelles.
- **VITS**: Un modèle de synthèse vocale de pointe de Facebook pour la conversion de texte en parole en espagnol.
- **OpenAI CLIP**: Pour la classification d'images sans exemples, utilisant le modèle "clip-vit-large-patch14-336" pour la classification d'image en zero-shot.
## Détails des Applications
### Chatbot Intelligent
Utilise le modèle "gemini-pro" de Google Generative AI pour répondre aux requêtes des utilisateurs. Ce modèle est capable de comprendre et de générer des réponses à une grande variété de questions.
```python
import google.generativeai as genai
genai.configure(api_key="API_KEY")
model = genai.GenerativeModel("gemini-pro")
generate = model.generate_content("Comment déclarer une variable python")
response = generate.text
```
### Texte en Parole
Emploie le modèle "facebook/mms-tts-spa" pour convertir du texte en parole en espagnol, démontrant la capacité de transformer le texte en un fichier audio naturel.
```python
model = VitsModel.from_pretrained("facebook/mms-tts-spa")
tokenizer = AutoTokenizer.from_pretrained("facebook/mms-tts-spa")
inputs = tokenizer(translated, return_tensors="pt")
with torch.no_grad():
output = model(**inputs).waveform
```
### Zero shot image classification
Utilise le modèle "openai/clip-vit-large-patch14-336" d'OpenAI pour classifier des images sans exemples préalables, illustrant comment une IA peut comprendre et catégoriser le contenu visuel.
```python
model_name_zero_shot_classification = "openai/clip-vit-large-patch14-336"
classifier_zero_shot_classification = pipeline(
"zero-shot-image-classification", model=model_name_zero_shot_classification
)
scores = classifier_zero_shot_classification(
image_to_classify, candidate_labels="YOUR_LABEL"
)
print f"The highest score is {scores[0]['score']:.3f} for the label {scores[0]['label']}"
```
### Conversion d'Images en Texte
Utilise le modèle gemini-pro-vision de Google pour produire une description détaillé d'une image
```python
model = genai.GenerativeModel("gemini-pro-vision")
response = model.generate_content(image)
print(response.text)
```
<br/>
<br/>
""",
unsafe_allow_html=True,
)