Define una función que detenga el chatbot
Ahora que el estado de tu chatbot está configurado, necesitas crear funciones que gestionen el flujo de trabajo en el grafo de tu chatbot. Para empezar, crearás una función should_continue() que compruebe si hay llamadas a herramientas en el último mensaje del chatbot dentro de state, que ya se ha cargado por ti. Si no hay llamadas a herramientas, el chatbot se detiene. Si se llama a una herramienta, el chatbot pasa a la siguiente tarea. Para gestionar tus mensajes, se han importado los siguientes módulos por ti.
from langgraph.graph import MessagesState, START, END
Este ejercicio forma parte del curso
Diseño de sistemas agénticos con LangChain
Instrucciones del ejercicio
- Especifica el tipo de entrada para el parámetro
stateusandoMessagesState. - Accede al último mensaje desde
stateusando"messages"para comprobar si hay llamadas a herramientas. - Comprueba si el último mensaje contiene
tool_callsy especifica el valor de retorno como"tools"si es verdadero. - Especifica el valor de retorno como
ENDpara terminar la conversación cuando no hayatool_calls.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Use MessagesState to define the state of the function
def should_continue(state: ____):
# Get the last message from the state
last_message = ____["____"][____]
# Check if the last message includes tool calls
if ____.____:
return "____"
# End the conversation if no tool calls are present
return ____