maratfazylov19 ebe9e913f5 feat: Human-in-the-Loop через middleware
- Агент с HumanInTheLoopMiddleware для подтверждения вызовов инструментов
- Инструменты: get_weather, search_web
- Цикл: invoke → __interrupt__ → approve/reject → Command(resume=...)
- Поддержка approve и reject с сообщением при отказе
- requirements.txt, .env.example, README.md
2026-05-08 17:18:24 +03:00

Задание 5: Human-in-the-Loop через middleware

Описание

Агент с HumanInTheLoopMiddleware: при каждом вызове инструмента агент останавливается, в терминале показывается что он хочет сделать, пользователь вводит решение (approve или reject), после чего выполнение возобновляется через Command(resume=...).

Стек

  • Python 3.10+
  • langchain-core, langchain-openai, langgraph

Установка

pip install -r requirements.txt
cp .env.example .env
# Заполнить OPENAI_API_KEY в .env

Запуск

python main.py "Какая погода в Казани сегодня?"

Архитектура

  • get_weather, search_web — инструменты агента
  • HumanInTheLoopMiddleware — middleware для подтверждения вызовов
  • run_agent_with_hitl() — цикл: invoke → interrupt → решения → resume
  • Поддерживаются approve и reject для каждого вызова инструмента
S
Description
Задание 5: Human-in-the-Loop через middleware. Агент с HumanInTheLoopMiddleware — подтверждение вызова инструментов через approve/reject.
Readme 27 KiB
Languages
Python 100%