Визначте функцію, що зупиняє чатбот
Тепер, коли стан вашого чатбота налаштовано, потрібно створити функції, які керуватимуть робочим процесом у графі чатбота. Спочатку ви створите функцію should_continue(), яка перевіряє наявність викликів інструментів у останньому повідомленні чатбота в state, який уже завантажено для вас. Якщо викликів інструментів немає, чатбот зупиняється. Якщо інструмент викликано, чатбот переходить до наступного кроку. Щоб керувати повідомленнями, для вас імпортовано такі модулі.
from langgraph.graph import MessagesState, START, END
Ця вправа є частиною курсу
Проєктування агентних систем з LangChain
Інструкції до вправи
- Укажіть тип вхідного параметра
state, використавшиMessagesState. - Дістаньте останнє повідомлення зі
stateчерез"messages", щоб перевірити виклики інструментів. - Перевірте, чи містить останнє повідомлення
tool_calls, і поверніть значення"tools", якщо так. - Поверніть значення
END, щоб завершити розмову, колиtool_callsвідсутні.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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 ____