Configuration de LangChain pour l'IA générative

Configurez les packages LangChain, y compris les packages pour l'intégration à OCI Generative AI. Testez ensuite l'installation en discutant avec un modèle hébergé sur OCI Generative AI.

1. Installer LangChain

  1. Installez le package langchain à l'aide de pip :
    pip install -U langchain

    Cette commande installe ou met à niveau le package langchain vers la dernière version disponible. Si une ancienne version est déjà installée, pip remplace le package par le plus récent.

  2. Vérifiez que le package langchain est installé. Entrez la commande suivante .
    pip show langchain

    La commande affiche les détails du package langchain, y compris les packages requis pour l'utilisation de ce package. Par exemple :

    Requires: langchain-core, langchain-text-splitters, 
    langsmith, pydantic, PyYAML, requests, SQLAlchemy
  3. Vérifiez que les packages requis sont installés. Entrez la commande suivante :
    pip list

    Installez les packages manquants.

  4. Vérifiez que l'installation fonctionne.
    python3 -c "import langchain; 
    print(langchain.__version__)"

    Cette commande affiche la version du package langchain.

2. Installation du package OCI LangChain

  1. Installez le package langchain-oci à l'aide de pip :
    pip install -U langchain-oci
    Important

    Les fonctionnalités d'intégration OCI disponibles dans le package langchain-community sont désormais en phase d'abandon. Veillez à installer le package langchain-oci à l'aide de la commande précédente.
  2. Vérifiez que le package langchain-oci est installé. Entrez la commande suivante .
    pip show langchain-oci

    Recherchez les packages requis pour utiliser le package langchain-oci. Par exemple :

    Requires: aiohttp, langchain, langchain-core, oci, pydantic
  3. Vérifiez que les packages requis sont installés. Entrez la commande suivante :
    pip list

    Installez les packages manquants.

3. Collecte des informations requises

Collectez toutes les informations dont vous avez besoin pour effectuer ce tutoriel. Copiez les informations requises dans un fichier texte sécurisé.

Trouver le coût de la discussion (facultatif)

Ce tutoriel envoie un message de discussion au modèle Meta Llama 4 Scout hébergé sur OCI Generative AI et reçoit une réponse. Le coût d'un message de chat à la demande est proche de zéro dollar, mais ce n'est pas gratuit. Avec cette section, nous voulons que vous appreniez à calculer les coûts et à décider quel modèle utiliser lorsque vous avez des milliers de transactions.

  1. Accédez à la page Tarification et sélectionnez un modèle en fonction de son prix pour 10 000 transactions (10 000 caractères). Au lieu de 10 000 transactions, certains prix sont indiqués pour 1 000 000 jetons. De 3 à 4 caractères par jeton.

    Ce tutoriel utilise environ 200 caractères ou 53 jetons pour l'entrée et à peu près la même quantité pour sa sortie qui s'ajoute à environ 400 caractères ou 106 jetons, alors arrondissons-le à environ 500 caractères.

  2. Si votre organisation approuve le coût d'Oracle Cloud Infrastructure Generative AI - Meta Llama 4 Scout pour 500 caractères, utilisez les informations fournies dans ce tutoriel. Sinon, dans les étapes du tutoriel, remplacez le modèle Meta Llama 4 Scout par un modèle approuvé.
  3. Pour les transactions plus importantes, vous pouvez également accéder à l'outil d'estimation des coûts en sélectionnant la catégorie IA et apprentissage automatique et en chargeant l'évaluateur de coûts pour OCI Generative AI. Voici des exemples de valeurs pour ce tutoriel :
    • Mesure de service : à la demande
    • Fournisseur du modèle : Meta
    • Modèle : Llama 4 Scout
    • Nombre de demandes attendu par mois : 5 (Supposons que vous exécutiez le fichier Python 5 fois)
    • Longueur de l'invite (en caractères) : 200 (pour ce tutoriel)
    • Longueur de la réponse (en caractères) : 200 (pour ce tutoriel)

3.2 Obtention des informations sur les compartiments

Pour obtenir l'OCID d'un compartiment, procédez comme suit :

  1. Ouvrez le menu de navigation et sélectionnez Identité et sécurité. Sous Identité, sélectionnez Compartiments.
  2. Sélectionnez le compartiment que vous avez créé pour le tutoriel Création d'un utilisateur Sandbox pour les tutoriels.
  3. Sélectionnez le lien Copier du champ OCID.

    Enregistrez l'OCID du compartiment.

    Exemple : ocid1.compartment.oc1..xxx

3.3 Obtenir le chemin d'accès au fichier de configuration

Dans le tutoriel Configuration de l'authentification d'API pour OCI, copiez les informations suivantes :

  • Chemin d'accès au fichier de configuration, tel que <your-home-directory>/.oci/config
  • Nom du profil d'authentification à utiliser dans le fichier de configuration. Par exemple, Par défaut.

3.4 Obtenir l'adresse d'API d'inférence

  1. Accédez à API d'inférence d'IA générative.
  2. Dans les adresses d'API répertoriées, copiez l'adresse de la région de Chicago :
    https://inference.generativeai.us-chicago-1.oci.oraclecloud.com

3.5 Informations collectées

Veillez à avoir noté les informations suivantes pour le tutoriel.

  • ID de compartiment : <sandbox-compartment>

    Exemple : ocid1.compartment.oc1.aaaaaaa...

  • ID de modèle : meta.llama-4-scout-17b-16e-instruct
  • Adresse d'API : https://inference.generativeai.us-chicago-1.oci.oraclecloud.com
  • Chemin du fichier de configuration : <path-to-config-file

    Exemple : <your-home-directory>/.oci/config

  • Nom du profil d'authentification dans le fichier de configuration : <auth-profile-name-in-config-file>

    Exemple : Default

4. Discussion

Discutez à l'aide d'un modèle hébergé dans OCI Generative AI. Atteignez ce modèle avec le package langchain-oci.

Important

Veillez à effectuer les étapes de <sandbox-compartment>. Vous n'êtes peut-être pas autorisé à visualiser ou à créer des ressources dans la location ou dans d'autres compartiments.
  1. Créez un fichier nommé langchain-1-translate.py.
  2. Ajoutez le code suivant au fichier langchain-1-translate.py.
    from langchain.prompts import ChatPromptTemplate
    from langchain_oci.chat_models import ChatOCIGenAI
    from langchain.schema.output_parser import StrOutputParser
    
    prompt = ChatPromptTemplate.from_template("""Translate the following text into French. 
    If the text is a question, first translate the question 
    and then answer the question in French.: {text}""")
    
    llm = ChatOCIGenAI(
        model_id="meta.llama-4-scout-17b-16e-instruct",
        service_endpoint="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com",
        compartment_id="<sandbox-compartment>",
        model_kwargs={"temperature": 0, "max_tokens": 500},
        auth_profile="<auth-profile-name-in-config-file>",  
        auth_file_location="<path-to-config-file>",
        )
    
    output_parser = StrOutputParser()
    
    chain = prompt | llm | output_parser
    input_data = {"text": "What are the four seasons in a year?"}
    
    result = chain.invoke(input_data)
    print(result)
    
  3. Exécutez le fichier Python langchain-1-translate.py avec la commande suivante.
    python3 langchain-1-translate.py

    Exemple de réponse :

    The translation of the question is:
    
    Quelles sont les quatre saisons dans une année ?
    
    And the answer is:
    
    Les quatre saisons dans une année sont : le printemps, l'été, l'automne et l'hiver.