Začněte nyníZačněte zdarma

Nastavení výstupů pro více nástrojů

Graf chatbota je připravený! Teď můžeš otestovat, jak chatbot zpracovává různé dotazy, ke kterým jsou potřeba různé nástroje. Pro správu zpráv chatbota už byly naimportovány potřebné moduly a parametry config jsou nastaveny pro jedno sezení.

from langchain_core.messages import AIMessage, HumanMessage

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

Toto cvičení je součástí kurzu

Návrh agentních systémů s LangChain

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř slovník zpráv inputs, kde uživatelský dotaz query použiješ jako content pro HumanMessage.
  • Streamuj msg a metadata z chatbota app iterací přes výsledky metodou .stream(), do které předáš inputs a config.
  • Zkontroluj, zda každá zpráva msg obsahuje content a není instancí HumanMessage, a pokud ano, vypiš její content s flush nastaveným na True pro okamžitý výpis.
  • Otestuj chatbota pomocí multi_tool_output() s dotazy vyžadujícími různé nástroje.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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?")
Upravit a spustit kód