Intelligence Artificielle

Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT

Juil 7, 2024

Dans notre article précédent, nous avons montré comment créer un chatbot IA avec l'API ChatGPT et attribuer un rôle pour le personnaliser. Mais que se passe-t-il si vous souhaitez entraîner l’IA sur vos propres données ? Par exemple, vous disposez peut-être d'un livre, de données financières ou d'un grand nombre de bases de données et vous souhaitez y effectuer des recherches facilement. Dans cet article, nous vous proposons un didacticiel facile à suivre sur la façon de former un chatbot IA avec votre base de connaissances personnalisée avec LangChain et l'API ChatGPT. Nous déployons LangChain, GPT Index et d'autres bibliothèques puissantes pour former le chatbot IA à l'aide du Large Language Model (LLM) d'OpenAI. Sur cette note, voyons comment former et créer un chatbot IA en utilisant votre propre ensemble de données.

Points notables avant de former l'IA avec vos propres données

1. Vous pouvez former le chatbot IA sur n'importe quelle plateforme, que ce soit Windows, macOS, Linux ou ChromeOS. Dans cet article, j'utilise Windows 11, mais les étapes sont presque identiques pour les autres plateformes.

2. Le guide est destiné aux utilisateurs généraux, et les instructions sont expliquées dans un langage simple. Ainsi, même si vous avez une connaissance superficielle des ordinateurs et que vous ne savez pas coder, vous pouvez facilement former et créer un chatbot IA Q&A en quelques minutes. Si vous avez suivi notre précédent article sur le bot ChatGPT, il serait encore plus facile de comprendre le processus.

3. Puisque nous allons former un Chatbot IA sur la base de nos propres données, il est recommandé de utiliser un ordinateur capable avec un bon CPU et GPU. Cependant, vous pouvez utiliser n’importe quel ordinateur bas de gamme à des fins de test et cela fonctionnera sans aucun problème. J'ai utilisé un Chromebook pour entraîner le modèle d'IA à l'aide d'un livre de 100 pages (~ 100 Mo). Cependant, si vous souhaitez entraîner un grand ensemble de données réparties sur des milliers de pages, il est fortement recommandé d'utiliser un ordinateur puissant.

4. Enfin, l'ensemble de données devrait être en anglais pour obtenir les meilleurs résultats, mais selon OpenAI, il fonctionnera également avec des langues internationales populaires comme le français, l'espagnol, l'allemand, etc. Alors n'hésitez pas et essayez-le dans votre propre langue.

Lire  Anthropic annonce les modèles d'IA Claude 3; Bat GPT-4 et Gemini 1.0 Ultra

Configurer l'environnement logiciel pour former un chatbot IA

Installer Python et Pip

1. Tout d'abord, vous devez installer Python avec Pip sur votre ordinateur en suivant notre guide lié. Assurez-vous d'activer la case à cocher « Ajouter Python.exe au CHEMIN » pendant l'installation.

Configurer l'environnement logiciel pour former un chatbot IA

2. Pour vérifier si Python est correctement installé, ouvrez le terminal sur votre ordinateur. Une fois ici, exécutez les commandes ci-dessous une par une et leur numéro de version sera affiché. Sous Linux et macOS, vous devrez utiliser python3 au lieu de python à partir de maintenant.

python --version pip --version
vérifier la version de Python et pip

3. Exécutez la commande ci-dessous pour mettre à jour Pip à la dernière version.

python -m pip install -U pip
mettre à jour pip vers la dernière version

Installez les bibliothèques OpenAI, GPT Index, PyPDF2 et Gradio

1. Ouvrez le terminal et exécutez la commande ci-dessous pour installer la bibliothèque OpenAI.

pip install openai
Installation de la bibliothèque OpenAI

2. Ensuite, commençons installer l'index GPT.

pip install gpt_index==0.4.24
Installation de l'index GPT

3. Maintenant, installer Langchain en exécutant la commande ci-dessous.

pip install langchain==0.0.148
Installation de Langchain

4. Après cela, installer PyPDF2 et PyCryptodome pour analyser les fichiers PDF.

pip install PyPDF2 pip install PyCryptodome
  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT
  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT

5. Enfin, installer la bibliothèque Gradio. Ceci est destiné à créer une interface utilisateur simple pour interagir avec le chatbot IA formé.

pip install gradio
Installer la bibliothèque Gradio

Téléchargez un éditeur de code

Enfin, nous avons besoin d’un éditeur de code pour éditer une partie du code. Sous Windows, je recommanderais Bloc-notes++ (Télécharger). Téléchargez et installez simplement le programme via le lien ci-joint. Vous pouvez également utiliser VS Code sur n'importe quelle plate-forme si vous êtes à l'aise avec les IDE puissants. Outre VS Code, vous pouvez installer Sublime Text (Téléchargement) sur macOS et Linux.

Téléchargez un éditeur de code

Pour ChromeOS, vous pouvez utiliser l'excellent Caret app (Télécharger) pour modifier le code. Nous avons presque fini de configurer l'environnement logiciel et il est temps d'obtenir la clé API OpenAI.

Obtenez gratuitement la clé API OpenAI

1. Rendez-vous sur le site Web d'OpenAI (visite) et connectez-vous. Ensuite, cliquez sur «Créer une nouvelle clé secrète» et copiez la clé API. Notez que vous ne pourrez pas copier ou afficher l'intégralité de la clé API ultérieurement. Il est donc recommandé de copier et coller la clé API dans un fichier Bloc-notes pour une utilisation ultérieure.

Obtenez gratuitement la clé API OpenAI

2. Ensuite, accédez à platform.openai.com/account/usage et vérifiez s'il vous reste suffisamment de crédit. Si vous avez épuisé tout votre crédit gratuit, vous devez ajouter un mode de paiement à votre compte OpenAI.

Fenêtre d'utilisation de l'essai gratuit

Former et créer un chatbot IA avec une base de connaissances personnalisée

Ajoutez vos documents pour former le chatbot IA

1. Premièrement, créez un nouveau dossier appelé docs dans un emplacement accessible comme le bureau. Vous pouvez également choisir un autre emplacement selon vos préférences. Cependant, conservez le nom du dossier docs.

Création d'un fichier Docs sur le bureau

2. Ensuite, déplacez les documents de formation dans le dossier «docs». Tu peux ajouter plusieurs fichiers texte ou PDF (même ceux scannés). Si vous disposez d'un grand tableau dans Excel, vous pouvez l'importer sous forme de fichier CSV ou PDF, puis l'ajouter au dossier «docs». Vous pouvez également ajouter des fichiers de base de données SQL, comme expliqué dans ce tweet Langchain AI. Je n'ai pas essayé beaucoup de formats de fichiers en dehors de ceux mentionnés, mais vous pouvez en ajouter et vérifier vous-même. Pour cet article, j'ajoute un de mes articles sur le NFT au format PDF.

Lire  Le plan d'abonnement de ChatGPT peut désormais être acheté en Inde

Note: Si vous disposez d'un document volumineux, le traitement des données prendra plus de temps, en fonction de votre CPU et de votre GPU. De plus, il utilisera rapidement vos jetons OpenAI gratuits. Donc au début, commencez par un petit document (30 à 50 pages ou fichiers < 100 Mo) pour comprendre le processus.

Enregistrement du fichier nft au format PDF

Préparez le code

1. Maintenant, ouvrez un éditeur de code comme Sublime Text ou lancement Bloc-notes++ et collez le code ci-dessous. Une fois de plus, j'ai reçu une grande aide de armrrs sur Google Colab et modifié le code pour le rendre compatible avec les fichiers PDF et créer une interface Gradio par-dessus.

from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper from langchain.chat_models import ChatOpenAI import gradio as gr import sys import os  os.environ["OPENAI_API_KEY"] = 'Your API Key'  def construct_index(directory_path):     max_input_size = 4096     num_outputs = 512     max_chunk_overlap = 20     chunk_size_limit = 600      prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit)      llm_predictor = LLMPredictor(llm=ChatOpenAI(temperature=0.7, model_name="gpt-3.5-turbo", max_tokens=num_outputs))      documents = SimpleDirectoryReader(directory_path).load_data()      index = GPTSimpleVectorIndex(documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper)      index.save_to_disk('index.json')      return index  def chatbot(input_text):     index = GPTSimpleVectorIndex.load_from_disk('index.json')     response = index.query(input_text, response_mode="compact")     return response.response  iface = gr.Interface(fn=chatbot,                      inputs=gr.components.Textbox(lines=7, label="Enter your text"),                      outputs="text",                      title="Custom-trained AI Chatbot")  index = construct_index("docs") iface.launch(share=True)

2. Ensuite, cliquez sur « Fichier » dans le menu du haut et sélectionnez «Enregistrer sous…» . Après cela, définissez le nom du fichier app.py et remplacez « Enregistrer sous le type » par «Tous les types». Ensuite, enregistrez le fichier à l'emplacement où vous avez créé le dossier «docs» (dans mon cas, c'est le bureau).

Enregistrement de app.py au format Tous types

3. Assurez-vous que le dossier « docs » et « app.py » se trouvent dans le même endroit, comme le montre la capture d'écran ci-dessous. Le fichier « app.py » sera en dehors du dossier « docs » et non à l'intérieur.

dossier app.py sur le bureau

4. Revenez au code dans Notepad++. Ici, remplacez Your API Key avec celui que vous avez généré ci-dessus sur le site Web d'OpenAI.

Remplacement de la clé API par celle générée par le site Web OpenAI

5. Enfin, appuyez sur «Ctrl+S» pour enregistrer le code. Vous êtes maintenant prêt à exécuter le code.

Enregistrer le code en appuyant sur CTRL + S

Créez un bot AI ChatGPT avec une base de connaissances personnalisée

1. Tout d’abord, ouvrez le terminal et exécutez la commande ci-dessous pour passer au bureau. C'est là que j'ai enregistré le dossier « docs » et le fichier « app.py ».

cd Desktop
Exécutez cd Desktop pour passer au bureau

2. Maintenant, exécutez la commande ci-dessous.

python app.py
Comment exécuter la commande python app.py

3. Ce sera commencer à indexer le document en utilisant le modèle OpenAI LLM. Selon la taille du fichier, le traitement du document prendra un certain temps. Une fois que c'est fait, un « index.json » Le fichier sera créé sur le bureau. Si le terminal n'affiche aucun résultat, ne vous inquiétez pas, il est peut-être encore en train de traiter les données. Pour votre information, il faut environ 10 secondes pour traiter un document de 30 Mo.

Création du fichier index.json sur le bureau

4. Une fois que le LLM a traité les données, vous trouverez un URL locale. Copiez-le.

Copier l'URL locale pour former le chatbot IA

5. Maintenant, collez l’URL copiée dans le navigateur Web, et voilà. Votre chatbot IA optimisé par ChatGPT et formé sur mesure est prêt. Pour commencer, vous pouvez demander au chatbot IA de quoi parle le document.

Le chatbot IA formé sur mesure est prêt

6. Vous pouvez poser d'autres questions et le bot ChatGPT le fera. réponse à partir des données que vous avez fournies à l'IA. Voici donc comment vous pouvez créer un chatbot IA personnalisé avec votre propre ensemble de données. Vous pouvez désormais former et créer un chatbot IA basé sur tout type d’informations de votre choix.

  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT
  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT
  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT
  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT

Gérer le chatbot IA personnalisé

1. Vous pouvez copier le URL publique et partagez-le avec vos amis et votre famille. Le lien sera actif pendant 72 heures, mais vous devez également garder votre ordinateur allumé puisque l'instance de serveur est en cours d'exécution sur votre ordinateur.

  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT
  • Comment former un chatbot IA avec une base de connaissances personnalisée à l'aide de l'API ChatGPT

2. À arrêter le chatbot IA formé sur mesure, appuyez sur « Ctrl + C » dans la fenêtre Terminal. Si cela ne fonctionne pas, appuyez à nouveau sur « Ctrl + C ».

Commande pour arrêter le chatbot formé sur mesure

3. À redémarrer le chatbot IA serveur, déplacez-vous simplement à nouveau vers l'emplacement du bureau et exécutez la commande ci-dessous. Gardez à l’esprit que l’URL locale sera la même, mais que l’URL publique changera après chaque redémarrage du serveur.

python app.py
Exécution de python app.py

4. Si vous souhaitez former le chatbot IA avec nouvelles données, supprimez les fichiers dans le dossier «docs» et ajoutez-en de nouveaux. Vous pouvez également ajouter plusieurs fichiers, mais assurez-vous d'ajouter des données propres pour obtenir une réponse cohérente.

Former un chatbot IA avec de nouvelles données

5. Maintenant, réexécutez le code dans le terminal, et il créera un nouveau fichier « index.json ». Ici, l'ancien fichier « index.json » sera remplacé automatiquement.

python app.py
Exécuter à nouveau python app.py dans Terminal

6. Pour suivre vos jetons, rendez-vous sur le tableau de bord en ligne d'OpenAI et vérifiez combien de crédit gratuit il vous reste.

Vue du tableau de bord OpenAI

7. Enfin, vous n'avez pas besoin de touche le code sauf si vous souhaitez modifier la clé API ou le modèle OpenAI pour une personnalisation plus poussée.

Laisser un Commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *