Konfigurera utdata för flera verktyg
Chatbotens graf är redo att användas! Nu kan du testa hur chatboten fungerar med olika frågor som kräver olika verktyg. För att hantera chatbotens meddelanden har följande moduler redan importerats och chatbotens config-parametrar har ställts in för en session.
from langchain_core.messages import AIMessage, HumanMessage
config = {"configurable": {"thread_id": "1"}}
Den här övningen är en del av kursen
Designa agentbaserade system med LangChain
Övningsinstruktioner
- Skapa en
inputs-meddelandeordbok med användarensquerysomcontentförHumanMessage. - Strömma
msgochmetadatafrån chatbotenappgenom att iterera över resultaten med metoden.stream()och inkluderainputsochconfig. - Kontrollera om varje
msgharcontentoch inte är ettHumanMessage, och skriv sedan ut desscontentmedflushinställt påTrueför omedelbar utskrift. - Testa chatboten med
multi_tool_output()och frågor som kräver olika verktyg.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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?")