Chatbot RAG (récupération augmentée) accompagné de Mistral-7B, spécifiquement adapté aux services à la clientèle de Verizon.

Les données ont été recueillies via l'extraction itérative à l'aide du fichier data_extraction.py. Le code commence initialement avec seulement 2 liens - ['https://www.verizon.com/home/internet/' ,'https://community.verizon.com/'], puis au moment de l'exécution, il gratte tous les liens de ces deux pages Web et ce processus se déroule, créant environ un ensemble de données de 1000 pages. Une autre source de données est les guides d'utilisateur disponibles sur https://www.verizon.com/about/terms-conditions/user-guides.
Les LLM ne peuvent pas traiter toutes les données et nous devons donc diviser les données en petites parties des textes. L'ensemble de données a été divisé en petits morceaux en utilisant des caractéristiques récursifs de la division de Langchain. Une fois que nous avons les petits morceaux, nous pouvons créer ses incorporations en utilisant le modèle All-Minilm-L12-V2 via des incorporations HuggingFace.
Une fois que nous avons les intégres correspondant aux morceaux textuels, nous pouvons le stocker dans une base de données vectorielle. Pour notre objectif, nous avons utilisé le VectorStore de FAISS (Facebook AI Simility Search) car il est très efficace lors du calcul de la similitude sur une énorme quantité de données.
Pour la partie de récupération, nous prenons la question de l'utilisateur comme entrée et trouvons les morceaux les plus correspondants stockés dans le VectorStore en utilisant la recherche FAISS qui pourrait potentiellement répondre à la requête utilisateur.
Une fois que nous avons nos morceaux les plus correspondants, nous pouvons les qualifier de contexte et les transmettre à l'invite personnalisée pour notre modèle. Aux fins, nous avons utilisé l'invite suivante -
[ INST ] You are a Verizon company 's chatbot, Only use the following pieces of context to answer the user' s question . If the answer is not present in context , just say that you don 't know and display the following link "https://www.verizon.com/support/residential/contact-us/contactuslanding.htm", don' t try to make up an answer .[ / INST ]
Context : { context }
Question : { question }
answer : Maintenant, cette invite est transmise au LLM afin d'obtenir la sortie. Le LLM que nous avons utilisé est Mistral-7b (actuel de l'état de l'art open-source).