Passer au contenu principal
Il s’agit d’un notebook interactif. Vous pouvez l’exécuter localement ou utiliser les liens ci-dessous :
Évaluer automatiquement une réponse générée par un LLM peut être difficile. Pour mieux évaluer et améliorer les réponses, vous pouvez également recueillir directement les feedback des utilisateurs afin d’identifier les points problématiques. Ce notebook montre comment collecter les feedback des utilisateurs sur les réponses d’un chatbot personnalisé. Il utilise Streamlit pour créer l’interface et capturer les interactions avec le LLM ainsi que les feedback dans W&B Weave. À la fin, vous disposerez d’un chatbot opérationnel qui journalise chaque réponse vers Weave, ainsi que les réactions positives ou négatives et les feedback en texte libre de vos utilisateurs, afin de pouvoir examiner les interactions en production et identifier les axes d’amélioration.

Configuration

Commencez par installer les packages requis et définir vos clés API OpenAI et W&B afin que le chatbot puisse appeler l’API OpenAI et consigner les appels vers Weave.
Ensuite, créez un fichier nommé chatbot.py contenant ce qui suit. Ce fichier définit l’interface de chat Streamlit, encapsule l’appel à OpenAI dans une op Weave afin de suivre chaque réponse, et affiche les contrôles de feedback qui associent les réactions et les notes à l’appel Weave correspondant.
Vous pouvez lancer ceci avec streamlit run chatbot.py. Vous pouvez maintenant interagir avec cette application et cliquer sur les boutons de feedback après chaque réponse. Rendez-vous dans la Weave UI pour voir les feedback associés. Chaque échange dans le chat est enregistré en tant qu’appel Weave, et toutes les réactions ou notes que vous soumettez sont liées à l’appel qui a produit la réponse.

Explications

La section suivante présente les principales API Weave utilisées dans le chatbot, afin que vous puissiez appliquer le même schéma à votre propre application. Considérez la fonction de prédiction décorée suivante :
Vous pouvez l’utiliser comme d’habitude pour fournir à l’utilisateur une réponse générée par le modèle :
Pour associer le feedback, vous avez besoin de l’objet call, que vous obtenez en utilisant la méthode .call() au lieu d’appeler la fonction normalement :
Vous avez besoin de cet objet call pour associer un feedback à cette réponse précise. Après avoir effectué l’appel, le résultat de l’opération est disponible dans result. Une fois que vous avez l’objet call, vous pouvez ensuite enregistrer le feedback de l’utilisateur pour cette réponse précise :

Conclusion

Dans ce tutoriel, vous avez créé une interface de chat avec Streamlit qui enregistre les entrées et les sorties dans Weave, ainsi que des boutons de pouce levé et de pouce baissé pour recueillir les feedback des utilisateurs.