Зачем нужен
LangGraph нужен, когда агентный процесс должен иметь явные состояния, маршруты и условия переходов. Он отделяет детерминированную оркестрацию от шагов, в которых решение принимает LLM.
Где применяется
- классификация и маршрутизация инцидентов;
- многошаговые процессы с ветвлением и повторными попытками;
- сочетание обычного кода и tool-calling агента;
- сценарии, где нужно сохранять контекст отдельных потоков по
thread_id.
Задача
Построить граф классификации и обработки логов.
Minimum
StateGraph;- узел
classify; - router с ветками
error,warning,info; - завершение каждой ветки в
END.
Medium
- добавить автономный узел через
create_agent; - предоставить ему минимум два ops-инструмента, например
get_logsиget_metrics; - задать timeout модели около 60 секунд.
Hard
- подключить
InMemorySaver; - использовать
thread_id; - поддержать follow-up вроде «а какие метрики у этого сервиса?»;
- проверить изоляцию двух разных
thread_id.
Ожидаемый результат
Граф классифицирует лог, выбирает ветку, при необходимости запускает диагностического агента и сохраняет контекст отдельного инцидента.