Defina uma função que interrompe o chatbot
Agora que o estado do seu chatbot está configurado, você precisa criar funções que gerenciem o fluxo de trabalho no grafo do seu chatbot. Para começar, você vai construir uma função should_continue() que verifica chamadas de ferramentas na última mensagem do chatbot dentro de state, que já foi carregado para você. Se não houver chamadas de ferramentas, o chatbot para. Se houver uma ferramenta chamada, o chatbot segue 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 Agentes com LangChain
Instruções do exercício
- Especifique o tipo de entrada do parâmetro
stateusandoMessagesState. - Acesse a última mensagem de
stateusando"messages"para verificar chamadas de ferramentas. - Verifique se a última mensagem contém
tool_callse especifique o valor de retorno como"tools"se for verdadeiro. - Especifique o valor de retorno como
ENDpara encerrar a conversa quando não houvertool_calls.
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 ____