Создание ИИ-ревьюера кода на LangGraph | Состояние, циклы и условная маршрутизация
Code AMAUC
0:00 / 0:00
Создание ИИ-ревьюера кода на LangGraph | Состояние, циклы и условная маршрутизация
214 просмотров · 2 недели назад
Code AMAUC
40 подписчиков
214 просмотров · 2 недели назад
В этом видео мы создаём полноценный рабочий процесс проверки кода с помощью ИИ, используя LangGraph и Python.
Вместо того чтобы изучать LangGraph только теоретически, мы используем практический пример с тремя специализированными ролями ИИ:
Проверяющий — проверяет корректность и качество кода
Проверяющий безопасности — проверяет наличие проблем безопасности, таких как SQL-инъекции
Исправление — исправляет код на основе полученной обратной связи
Интересно то, что это не простой рабочий процесс A → B → C.
Мы используем общее состояние, условные рёбра, ветвление и циклы, чтобы код мог перемещаться между ролями «Проверяющий», «Безопасность» и «Исправление» в зависимости от текущего результата.
В этом видео вы узнаете:
Что означает состояние в LangGraph
Как работают узлы
Обычные ребра против условных ребер
Как работают функции маршрутизации
Как несколько узлов, использующих LLM, совместно используют состояние
Как работают циклы/петли в LangGraph
Почему мы компилируем LangGraph
Как работают абстракции моделей LangChain внутри узлов LangGraph
Как предотвратить бесконечные циклы, используя максимальное количество попыток исправления
Пример рабочего процесса:
Рецензент → Безопасность → Исправление → Рецензент → Безопасность → Окончательный ответ
Это видео предназначено для инженеров-программистов, которые хотят понять LangGraph с самых основ, на практике создавая что-то полезное.
Если вы не смотрели мое предыдущее видео о LangChain и LangGraph, вы можете посмотреть его сначала, чтобы понять концептуальную разницу между ними.
Разделы:
00:00 - Рабочий процесс проверки кода с помощью ИИ (архитектура)
03:25 - Настройка проекта и требования
06:09 - Определение общего состояния (TypedDict)
08:18 - Структурированные выходные данные с помощью Pydantic
11:25 - Инициализация модели LLM
13:55 - Создание узла проверки
16:18 - Создание узла безопасности
16:35 - Создание узла исправления ошибок
17:44 - Функции условной маршрутизации
21:48 - Построение графа состояний
23:22 - Добавление ребер и петель
26:30 - Компиляция графа
27:32 - Тестирование графа с помощью уязвимого кода
29:16 - Запуск приложения (вывод в терминал)
31:15 - Итоговое резюме: основные концепции LangGraph
#LangGraph #LangChain #AIEngineering #Python #AIAgents