3.6 KiB
Démonstration d'une première interaction avec un LLM
Installation
Ouvrir un terminal dans le dossier racine du projet :
poetry install # installer les dépendances nécessaires
Instructions
L'objectif est de vous familiariser avec le cœur de l'interaction avec une Intelligence Artificielle : lui envoyer une instruction (un prompt) et recevoir sa réponse.
Nous allons utiliser un script Python pré-rempli où vous devrez compléter les étapes clés de ce processus.
Vue d'ensemble de l'architecture
Ce diagramme montre comment les différents composants interagissent :
graph LR
User["Vous (IDE)"] -- "Lance le script" --> Script["Script Python 'demo_llm.py'"]
Script -- "Envoie le prompt (requête HTTP)" --> Server["Serveur LM Studio 'localhost'"]
Server -- "Transmet au modèle" --> Model["Modèle LLM 'llama-3.1'"]
Model -- "Génère la réponse" --> Server
Server -- "Retourne la réponse (JSON)" --> Script
Script -- "Affiche dans la console" --> User
Prérequis
Avant de commencer, assurez-vous que :
- LM Studio est lancé et qu'un modèle (ex:
meta-llama-3.1-8b-instruct) est entièrement chargé. - Le serveur local de LM Studio est bien démarré.
Attention : si vous êtes derrière un proxy, vous devez définir en haut de votre fichier Python :
import os
os.environ["NO_PROXY"] = "127.0.0.1,localhost"
Votre mission
Ouvrez le fichier demo_llm.py. Votre mission est de trouver et de compléter les sections marquées par des commentaires # TODO.
Voici le flux logique que vous allez implémenter dans le script :
graph TD
Start(Début) --> T1["TODO 1: Définir 'prompt'"]
T1 --> T2["TODO 2: Appeler 'await llm.ainvoke(prompt)'"]
T2 --> T3["TODO 3: Extraire 'response.content'"]
T3 --> Print["Afficher le résultat"]
Print --> End(Fin)
Étape 1 : formuler le Prompt (TODO 1)
Un "prompt" est simplement l'instruction que vous donnez à l'IA.
Action : dans la fonction main, trouvez la ligne prompt = "" et remplacez la chaîne de caractères vide par la question de votre choix.
- Simple :
"Quelle est la distance entre la Terre et la Lune ?" - Créatif :
"Invente un nom de super-héros pour un écureuil."
Étape 2 : invoquer le LLM (TODO 2)
Maintenant que nous avons notre question, il faut l'envoyer au modèle. Nous utilisons pour cela l'objet llm qui a été initialisé pour nous.
Action : repérez la ligne response = None. Remplacez None par l'appel à la méthode qui envoie le prompt au LLM.
- Indice : la bibliothèque
langchainutilise une méthode asynchrone nomméeainvoke()sur l'objetllm. Vous devez lui passer votre variableprompten argument. N'oubliez pas le mot-cléawaitcar la fonction est asynchrone.
Étape 3 : extraire la Réponse (TODO 3)
L'appel au LLM ne retourne pas directement le texte de la réponse, mais un objet qui contient plusieurs informations. Le texte généré par l'IA se trouve dans un attribut spécifique de cet objet.
Action : trouvez la ligne ai_message = "". Remplacez la chaîne vide par le code qui permet d'accéder au contenu textuel de l'objet response.
- Indice : le texte se trouve dans l'attribut
.contentde l'objetresponse.
Lancement
Une fois que vous avez complété les 3 TODO, lancez le script via le bouton "Run" de votre IDE.
Vous devriez voir s'afficher dans la console la question que vous avez posée ainsi que la réponse générée par le modèle IA.
Vous avez réalisé votre première interaction avec un LLM en Python !