CommencezCommencez gratuitement

Configurer les résultats pour plusieurs outils

Le graphe de votre chatbot est prêt ! Vous pouvez maintenant tester son comportement avec différentes requêtes qui devraient nécessiter des outils distincts. Pour gérer les messages de votre chatbot, les modules suivants ont déjà été importés et les paramètres config de votre chatbot ont été définis pour une session.

from langchain_core.messages import AIMessage, HumanMessage

config = {"configurable": {"thread_id": "1"}}

Cette activité fait partie du cours

Concevoir des systèmes agentiques avec LangChain

Voir le cours

Instructions de l’exercice

  • Créez un dictionnaire de message inputs avec la query de l'utilisateur comme content pour HumanMessage.
  • Diffusez msg et metadata à partir de l'application de chatbot app en itérant sur les résultats avec la méthode .stream() en y intégrant inputs et config.
  • Vérifiez si chaque msg a un content et n'est pas un HumanMessage, puis affichez son content avec flush à True pour imprimer la sortie immédiatement.
  • Testez le chatbot avec multi_tool_output() à l'aide de requêtes nécessitant différents outils.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Create input message with the user's query
def multi_tool_output(____):
    inputs = {"messages": [____(____=____)]}
    
    # Stream messages and metadata from the chatbot application
    for ____, ____ in app.____(____, ____, stream_mode="messages"):
        
        # Check if the message has content and is not from a human
        if ____.____ and not isinstance(____, ____):
            print(____.____, end="", flush=____)    
    print("\n")

# Call the chatbot with different tools
____("Is `may a moody baby doom a yam` a palindrome?")
____("What happened on 20th July, 1969?")
Modifier et exécuter le code