Remarques :

Créez un chatbot basé sur RAG à l'aide d'Oracle Cloud Infrastructure Search avec OpenSearch

Introduction

Dans ce tutoriel, nous vous guiderons tout au long du processus de création d'un chatbot basé sur la génération augmentée de récupération (RAG) à l'aide d'OCI OpenSearch en tant que base de données vectorielle et de modèles de service OCI Generative AI (tels que Cohere et Llama). À la fin de ce tutoriel, vous aurez créé une solution de chatbot capable de traiter des documents, de les stocker en tant qu'intégrations vectorielles dans OpenSearch et d'extraire des informations pertinentes pendant les conversations.

En outre, nous créerons une interface utilisateur intuitive à l'aide de Streamlit, vous permettant de télécharger des documents, d'interagir avec le chatbot et d'accéder aux informations pertinentes sans effort. Ce tutoriel couvre tout, de la configuration de votre environnement au test du chatbot avec vos propres fichiers PDF.

Objectifs

Prérequis

Tâche 1 : configuration d'un cluster OpenSearch avec OCI avec OpenSearch

  1. Créer un cluster. Pour plus d'informations, reportez-vous à Création d'un cluster OpenSearch avec OCI Search avec OpenSearch

  2. Une fois le cluster créé, copiez l'adresse d'API, ainsi que les informations d'identification utilisateur, pour les configurer dans l'application.

    OpenSearch API de cluster EndPoint

    OpenSearch Utilisateur de cluster et mot de passe

Tâche 2 : configurer l'environnement Python

  1. Lancez une instance avec l'image Oracle Linux et la forme de base dans OCI. Pour plus d'informations, reportez-vous à Lancement d'une instance Linux.

  2. Installez Python 3.11 sur Oracle Linux. Pour plus d'informations, reportez-vous à Installation de Python.

  3. Exécutez la commande suivante pour mettre à jour la version de Python.

    sudo update-alternatives  --set python /usr/bin/python3.11
    
  4. Créez un dossier de projet nommé opensearch_rag_chatbot.

  5. Accédez au dossier créé et installez les dépendances en y créant un fichier nommé requirements.txt.

    python -m venv venv
    source ./venv/bin/activate
    pip install -r requirements.txt
    
  6. Exécutez la commande suivante pour tester l'installation Streamlit.

    streamlit hello
    
  7. Si les ports Streamlit et OpenSearch (8501/9200) ne sont pas ouverts dans le pare-feu, ajoutez-les à l'aide de la commande suivante.

    sudo firewall-cmd --list-all
    sudo firewall-cmd --permanent --add-port=8501/tcp
    sudo firewall-cmd --permanent --add-port=9200/tcp
    sudo firewall-cmd --reload
    

Tâche 3 : configuration de l'authentification OCI

  1. Créez un dossier .oci dans votre répertoire de base et configurez le fichier config.

    [DEFAULT]
    user=ocid1.user.oc1..
    fingerprint=40:02:56:
    key_file=/path/to/oci_api_key.pem
    tenancy=ocid1.tenancy.oc1..
    region=us-region-1
    

    Remarque : pour plus d'informations, reportez-vous à Création d'un fichier de configuration pour Oracle Date a Science.

Tâche 4 : écrire le code du moteur de chatbot

Tâche 5 : télécharger des documents et tester le chatbot

  1. Exécutez la commande suivante pour exécuter l'application.

    cd opensearch_rag_chatbot
    python -m venv venv
    source ./venv/bin/activate
    streamlit run app.py
    
  2. Copiez l'URL générée pour accéder à l'application Streamlit. Commencez à télécharger des PDF et testez les fonctionnalités du chatbot.

    télécharger et tester

Dépannage et conseils

Remarque : les journaux sont disponibles dans la sortie de la console Streamlit, qui fournit des informations détaillées sur les opérations et les erreurs.

Etapes suivantes

Pour les étapes suivantes, envisagez d'étendre votre chatbot en ajoutant la prise en charge d'autres formats de document, tels que des fichiers Word ou HTML, et en expérimentant différents modèles d'intégration pour améliorer la précision de réponse du chatbot dans des domaines spécifiques. Vous pouvez également améliorer l'interface utilisateur Streamlit avec des fonctionnalités supplémentaires, telles que la prise en charge de plusieurs téléchargements de documents, de l'historique des requêtes ou des commentaires en temps réel sur des processus longs.

Remerciements

Ressources de formation supplémentaires

Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à d'autres contenus de formation gratuits sur le canal Oracle Learning YouTube. De plus, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour obtenir la documentation produit, consultez le site Oracle Help Center.