ComenzarEmpieza gratis

Haz preguntas sobre la historia de la conversación

Con un agente ReAct básico en LangChain, puedes hacer preguntas de seguimiento conservando el historial de conversaciones del agente. Como LLM tiene acceso a todos los mensajes anteriores, ahora puedes hacer nuevas preguntas, y el agente puede utilizar el contexto completo del mensaje para responder.

Ahora harás una pregunta complementaria sobre los lados de un triángulo diferente.

Para poder utilizar las funciones HumanMessage y AIMessage, ya se han importado para ti los siguientes módulos: HumanMessage, AIMessage.

Este ejercicio forma parte del curso

Diseño de Sistemas Agenéticos con LangChain

Ver curso

Instrucciones del ejercicio

  • Asigna la pregunta en lenguaje natural dada a new_query.
  • Invoca al objeto app, pasándole todos los mensajes, incluidos el message_history y el new_query.
  • Utiliza una comprensión de lista para extraer los mensajes de response["messages"] etiquetados como HumanMessage o AIMessage.
  • Pasa la nueva consulta como entrada e imprime los mensajes extraídos pasando las clases de mensajes a "agent_output".

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

message_history = response["messages"]
____ = "What about one with sides 12 and 14?"

# Invoke the app with the full message history
response = app.____({"messages": ____ + [("human", ____)]})

# Extract the human and AI messages from the result
filtered_messages = [msg for msg in ____["____"] if isinstance(msg, (____, ____)) and msg.content.strip()]

# Pass the new query as input and print the final outputs
print({
    "user_input": ____,
    "agent_output": [f"{msg.____.____}: {msg.content}" for msg in ____]
})
Editar y ejecutar código