Definieer een functie die de chatbot stopt
Nu de state van je chatbot is opgezet, moet je functies bouwen die de workflow over de graaf van je chatbot beheren. Je begint met een functie should_continue() die controleert op tool-aanroepen in het laatste bericht van de chatbot binnen state, dat al voor je is geladen. Als er geen tool-aanroepen zijn, stopt de chatbot. Als er wel een tool wordt aangeroepen, gaat de chatbot door naar de volgende taak. Voor het beheren van je berichten zijn de volgende modules alvast voor je geïmporteerd.
from langgraph.graph import MessagesState, START, END
Deze oefening maakt deel uit van de cursus
Agentic Systems ontwerpen met LangChain
Oefeninstructies
- Geef het inputtype op voor de parameter
statemetMessagesState. - Pak het laatste bericht uit
statevia"messages"om te controleren op tool-aanroepen. - Controleer of het laatste bericht
tool_callsbevat en geef dan"tools"terug als retourwaarde. - Geef
ENDterug om het gesprek te beëindigen wanneer er geentool_callszijn.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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 ____