IniziaInizia gratis

Configura i risultati per più strumenti

Il grafo del tuo chatbot è pronto! Ora puoi testare come si comporta con diverse query che dovrebbero richiedere strumenti differenti. Per gestire i messaggi del tuo chatbot, i seguenti moduli sono già stati importati e i parametri di config del tuo chatbot sono stati impostati per una sessione.

from langchain_core.messages import AIMessage, HumanMessage

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

Questo esercizio fa parte del corso

Progettare sistemi agentici con LangChain

Visualizza il corso

Istruzioni dell'esercizio

  • Crea un dizionario di messaggio inputs con la query dell'utente come content per HumanMessage.
  • Emetti in streaming msg e metadata dall'app del chatbot iterando sui risultati usando il metodo .stream() includendo inputs e config.
  • Verifica che ogni msg abbia content e non sia un HumanMessage, quindi stampa il suo content con flush impostato su True per stampare l'output immediatamente.
  • Metti alla prova il chatbot usando multi_tool_output() con query che richiedono strumenti diversi.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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?")
Modifica ed esegui il codice