Практическое задание · application

LangGraph: router-based log classifier

Условие

Зачем нужен

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.

Ожидаемый результат

Граф классифицирует лог, выбирает ветку, при необходимости запускает диагностического агента и сохраняет контекст отдельного инцидента.

Моё решение

Решение пока не опубликовано.