LoslegenKostenlos loslegen

Ausgaben für mehrere Tools konfigurieren

Der Graph deines Chatbots ist startklar! Jetzt kannst du testen, wie der Chatbot mit unterschiedlichen Anfragen umgeht, die verschiedene Tools erfordern. Um die Nachrichten deines Chatbots zu steuern, wurden die folgenden Module bereits importiert und die config-Parameter deines Chatbots für eine Sitzung gesetzt.

from langchain_core.messages import AIMessage, HumanMessage

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

Diese Übung ist Teil des Kurses

Agentische Systeme mit LangChain entwerfen

Kurs anzeigen

Anleitung zur Übung

  • Erstelle ein inputs-Nachrichten-Dictionary mit der query des Users als content für HumanMessage.
  • Streame msg und metadata aus der Chatbot-app, indem du über die Ergebnisse mit der .stream()-Methode iterierst und dabei inputs und config übergibst.
  • Prüfe, ob jede msg content hat und keine HumanMessage ist, und gib dann ihren content aus, wobei flush auf True gesetzt ist, damit die Ausgabe sofort erscheint.
  • Teste den Chatbot mit multi_tool_output() anhand von Anfragen, die unterschiedliche Tools erfordern.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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?")
Code bearbeiten und ausführen