Configura salidas para varias herramientas
¡El gráfico de tu chatbot está listo! Ahora puedes probar cómo funciona el chatbot con diferentes consultas que deberían requerir diferentes herramientas. Para gestionar los mensajes de tu chatbot, ya se han importado los siguientes módulos y se han configurado los parámetros config de tu chatbot para una sesión.
from langchain_core.messages import AIMessage, HumanMessage
config = {"configurable": {"thread_id": "1"}}
Este ejercicio forma parte del curso
Diseño de Sistemas Agenéticos con LangChain
Instrucciones del ejercicio
- Crea un diccionario de mensajes
inputscon elquerydel usuario comocontentparaHumanMessage. - Transmite
msgymetadatadesde el chatbotappiterando sobre los resultados mediante el método.stream()que incorporainputsyconfig. - Comprueba si cada
msgtienecontenty no es unHumanMessage, luego imprime sucontentconflushajustado aTruepara una impresión de salida inmediata. - Prueba el chatbot utilizando
multi_tool_output()con consultas que requieran diferentes herramientas.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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?")