Table des matières
- Introduction
- Installation des dépendances et import du modèle Blenderbot
- Discuter avec le modèle
- Conclusion
- Les références
Introduction
En Intelligence Artificielle, Blenderbot rentre dans la catégorie des agents conversationnels. Un agent conversationnel, ou CA, est un programme informatique conçu pour avoir une conversation avec une personne, selon Wikipedia. En d’autres termes, les agents conversationnels sont des systèmes automatisés – souvent pilotés par l’intelligence artificielle – qui sont conçus pour avoir des conversations en langage naturel avec les gens.
Nous discuterons plus en détail de Blenderbot car c’est le fondement de cet article. Un modèle de génération de langage développé par Facebook AI s’appelle Blenderbot. Lorsqu’on lui donne un certain contexte, il est capable de s’exprimer clairement et de s’engager dans des dialogues significatifs en langage naturel (langage lisible par l’homme).
Il peut, par exemple, s’engager dans un discours sur la Russie après qu’on lui ait posé une question comme, « Quel est le plus grand pays du monde ? »
Installation des dépendances et importation du modèle Blenderbot
Nous allons maintenant installer deux bibliothèques nécessaires pour exécuter Blenderbot.
Installation des transformateurs
Hugging Face sera utilisé pour télécharger le modèle Blenderbot qui a déjà été formé.
!pip install transformers
Installer PyTorch
Étant donné que les tenseurs Torch et Blenderbot sont tokenisés, nous allons installer la bibliothèque d’apprentissage en profondeur PyTorch.
Vous pouvez visiter le site Web PyTorch et installer votre version personnalisée si vous souhaitez installer votre propre logiciel PyTorch.
!pip3 install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio===0.9.1 -f https://download.pytorch.org/whl/torch_stable.html
Modèle d’importation
Ici, nous allons importer et télécharger le modèle Blenderbot qui a déjà été enseigné à partir de Hugging Face.
Pour commencer, nous allons importer le tokenizer et la classe model.
from transformers import BlenderbotTokenizer, BlenderbotForConditionalGeneration
Nous allons maintenant installer et configurer le tokenizer et le modèle Blenderbot.
model_name="facebook/blenderbot-400M-distill"
tokenizer = BlenderbotTokenizer.from_pretrained(model_name)
model = BlenderbotForConditionalGeneration.from_pretrained(model_name)
Le nom du modèle dans l’image ci-dessus est facebook/blenderbot-400M-distill
; il commence par le nom du créateur du modèle, dans ce cas, Facebook, et est suivi du nom du modèle, qui est blenderbot-400M-distill
.
Sur le nom du modèle, nous avons ensuite instancié le tokenizer et le modèle lui-même.
Discuter avec le modèle
Avec notre agent de conversation, nous allons maintenant entamer une vraie discussion.
Tout d’abord, nous publierons un énoncé, qui est une déclaration utilisée pour démarrer une discussion avec l’agent de conversation (comme « hey, google »).
utterance = "Hi Bot, My name is John. I am coming from India"
L’énoncé sera ensuite converti en jeton afin que le modèle puisse le traiter.
inputs = tokenizer(utterance, return_tensors="pt")
Dans l’exemple ci-dessus, nous avons symbolisé notre discours et livré le jeton en tant que tenseur PyTorch afin que le modèle Blenderbot puisse l’analyser.
Le résultat de la réponse de notre agent conversationnel sera alors généré.
result = model.generate(**inputs)
Ci-dessus, nous avons donné au modèle des instructions pour produire une réponse à notre discours symbolisé.
Nous allons maintenant décoder notre réponse de résultat sous une forme lisible par l’homme car, comme vous vous en souvenez peut-être, elle est toujours sous la forme PyTorch Tensor (langage naturel).
tokenizer.decode(result[0])
Ci-dessus, nous avons donné des instructions au tokenizer pour décoder la réponse.
Vous pouvez voir la réponse de votre agent après avoir exécuté le code susmentionné.
Conclusion
Parce que Blenderderbot, contrairement à d’autres agents conversationnels, est capable de conserver des réponses à long terme, contrairement à d’autres qui ont un cerveau de poisson rouge, il est capable de poursuivre des conversations en fonction du contexte fourni avec un degré élevé de ressemblance avec la parole humaine naturelle.
En conséquence, le modèle enregistre des informations conversationnelles cruciales dans sa mémoire à long terme afin qu’il puisse les utiliser plus tard dans des discussions qui pourraient durer des jours, des semaines, voire des mois. Chaque individu avec qui il converse voit ses connaissances conservées séparément, empêchant la réutilisation de toute nouvelle information d’une discussion dans une autre.
L’URL suivante contient tous les exemples de programmation téléchargés dans le référentiel GitHub afin que vous puissiez jouer avec les codes en fonction de vos besoins.
J’espère que vous avez maintenant une compréhension intuitive de la bibliothèque Blenderbot, et que ces concepts vous aideront à construire des projets vraiment précieux.