Defina uma função que interrompa o chatbot
Agora que o estado do seu chatbot está configurado, você precisa criar funções que gerenciem o fluxo de trabalho no gráfico do seu chatbot. Para começar, você criará uma função should_continue()
que verifica se há chamadas de ferramentas na última mensagem do chatbot em state
, que foi carregada para você. Se não houver chamadas de ferramentas, o chatbot será interrompido. Se uma ferramenta for chamada, o chatbot passará para a próxima tarefa. Para gerenciar suas mensagens, os seguintes módulos foram importados para você.
from langgraph.graph import MessagesState, START, END
Este exercício faz parte do curso
Projetando sistemas agênticos com LangChain
Instruções do exercício
- Especifique o tipo de entrada para o parâmetro
state
usandoMessagesState
. - Acesse a última mensagem do site
state
usando"messages"
para verificar se há chamadas de ferramentas. - Verifique se a última mensagem contém
tool_calls
e especifique o valor de retorno como"tools"
se for verdadeiro. - Especifique o valor de retorno como
END
para encerrar a conversa quando não houver nenhumtool_calls
presente.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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 ____