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 todo el gráfico de tu chatbot. Para empezar, construirás una función should_continue()
que compruebe si hay llamadas a herramientas en el último mensaje del chatbot dentro de state
, que se ha cargado por ti. Si no hay llamadas a la herramienta, el chatbot se detiene. Si se llama a una herramienta, el chatbot pasa a la siguiente tarea. Para gestionar tus mensajes, se han importado para ti los siguientes módulos.
from langgraph.graph import MessagesState, START, END
Este ejercicio forma parte del curso
Diseño de Sistemas Agenéticos con LangChain
Instrucciones de ejercicio
- Especifica el tipo de entrada para el parámetro
state
utilizandoMessagesState
. - Accede al último mensaje de
state
utilizando"messages"
para comprobar las llamadas a la herramienta. - Comprueba si el último mensaje contiene
tool_calls
y especifica el valor de retorno como"tools"
si es verdadero. - Especifica el valor de retorno como
END
para finalizar la conversación cuando no esté presentetool_calls
.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este 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 ____