Руфат Нуриев обновлено

Что такое LangChain и LangGraph?

Линейная схема пайплайна LangChain на экране ноутбука

LangChain и LangGraph - открытые фреймворки на Python (и с поддержкой JavaScript) для сборки приложений на больших языковых моделях: от простого RAG до ИИ-агентов с инструментами, памятью и ветвлением сценариев. LangChain даёт строительные блоки (модели, промпты, цепочки, ретриверы), LangGraph - граф состояний для сложных агентных потоков, где нужен контроль, циклы и человеческое подтверждение. Ниже - чем они отличаются, когда какой взять и на что смотреть бизнесу.

  • LangChain - библиотека компонентов: LLM, промпты, цепочки, эмбеддинги, векторный поиск, инструменты
  • LangGraph - оркестрация через граф узлов: состояние, ветки, циклы, повторная попытка, человек в контуре
  • Цепочка - фиксированный пайплайн «вход → шаги → ответ»
  • Агент - модель сама решает, какой инструмент вызвать и когда остановиться
  • Не замена модели - фреймворк не делает GPT/Claude «умнее»; он помогает связать API, данные и логику
  • Практика - простой RAG и FAQ часто хватает LangChain; сложные маршруты поддержки и мультиагентность - зона LangGraph

Сложный граф состояний агента LangGraph на прозрачной доске

Что такое LangChain простыми словами

Один вызов API модели - это «спросили → ответили». Реальный продукт обычно шире: подтянуть документы из базы знаний, вызвать CRM, проверить заказ, сохранить историю, посчитать токены и не дать модели галлюцинировать «из головы».

LangChain - это набор абстракций поверх провайдеров (OpenAI, Anthropic, Gemini, локальные LLM и др.), чтобы не писать один и тот же связующий код руками:

Компонент Зачем нужен
Chat model / LLM Единый интерфейс к разным API
Шаблоны промптов Промпты с переменными и ролями
Retrievers Поиск релевантных фрагментов для RAG
Инструменты / functions Вызов внешних API, БД, калькуляторов
Memory История диалога и краткосрочный контекст
Output parsers Превращение ответа модели в JSON/структуру

Типичный сценарий на LangChain: пользователь спрашивает → ретривер находит куски документации → промпт склеивает вопрос + контекст → модель отвечает со ссылкой на источники. Это классический RAG, и для многих бизнес-кейсов его достаточно.

Что такое LangGraph и чем он дополняет LangChain

LangGraph - библиотека от той же экосистемы LangChain для построения агентных приложений как графа: узлы выполняют шаги, рёбра задают переходы, есть общее состояние (state), которое обновляется по ходу.

Зачем граф, если есть цепочки:

  1. Ветвление - если уверенность низкая → эскалация человеку; если клиент просит возврат → другой сценарий.
  2. Циклы - агент вызывает инструмент, читает результат, думает ещё раз, снова вызывает инструмент.
  3. Контроль - явные точки остановки, повторная попытка, лимиты шагов; меньше «чёрного ящика».
  4. Мультиагентность - несколько ролей (исследователь, редактор, модератор) передают результат друг другу.
  5. Человек в контуре - перед отправкой письма клиенту или списанием денег система ждёт подтверждения оператора.

Упрощённо: LangChain = детали конструктора, LangGraph = схема сборки сложного механизма. Их часто используют вместе: узлы графа внутри вызывают модели, ретриверы и инструменты из экосистемы LangChain.

LangChain против LangGraph: когда что выбирать

Задача Обычно достаточно Лучше смотреть в сторону
FAQ / RAG по базе знаний LangChain (+ векторная БД) LangGraph, если много веток и эскалаций
Один фиксированный пайплайн (summarize → translate) LangChain -
Агент с инструментами и циклами «подумал → вызвал → проверил» LangChain Agent или LangGraph LangGraph при росте сложности
Поддержка с маршрутизацией тикетов Можно стартовать на цепочках LangGraph для статусов и подтверждения человеком
Несколько агентов и долгие задачи Сложно на чистых цепочках LangGraph

Правило на практике: начните с самого простого пайплайна. Если логика уже похожа на блок-схему с условиями и циклами - переходите на граф, а не наращивайте «цепочку из if-ов в одном файле».

Как выглядит типичный стек

Минимальный рабочий набор для бизнеса:

  • Модель - GPT / Claude / Gemini или локальная через Ollama;
  • LangChain - промпты, ретривер, инструменты;
  • Векторное хранилище - для эмбеддингов и поиска по знаниям;
  • LangGraph (по необходимости) - оркестрация агента и веток;
  • Наблюдаемость - логи шагов, задержка, стоимость токенов, трассировка ошибок;
  • Интеграции - CRM, служба поддержки, Telegram-бот, внутренняя БД.

Важно: фреймворк не заменяет чистые данные и продукт. Плохая база знаний + сильный LangGraph всё равно даст слабые ответы. Оценка стоимости RAG-системы и ИИ-агента под ключ почти всегда упирается в данные, интеграции и контроль качества, а не только в выбор библиотеки.

Плюсы и минусы для проекта

Плюсы:

  • быстрый старт прототипа на Python;
  • готовые интеграции с популярными LLM и векторными БД;
  • единый стиль кода для промптов, инструментов и RAG;
  • LangGraph даёт явную схему агента - проще объяснять заказчику и отлаживать;
  • экосистема развита, много примеров и документации.

Минусы и риски:

  • плата за абстракции: новичок может «утонуть» в слоях, хотя хватило бы 50 строк прямого API;
  • API экосистемы меняется - фиксировать версии и следить за несовместимыми изменениями;
  • агенты с циклами легко разгоняют расход токенов без лимитов;
  • без тестов и проверки качества продукт деградирует незаметно;
  • не каждый бизнес-сценарий нуждается в агенте - часто лучше детерминированный скрипт + LLM на одном шаге.

Когда бизнесу это нужно - и когда рано

Имеет смысл, если вы:

  • строите RAG, ассистента или агента поверх своих данных и API;
  • команда уже пишет на Python/JS и хочет стандартный каркас, а не бессистемные скрипты;
  • нужны ветки, подтверждение человека и долгие многошаговые сценарии;
  • планируете сопровождать продукт месяцами - явная архитектура окупается.

Можно отложить, если:

  • задача решается одним-двумя вызовами API с хорошим промптом;
  • нет стабильной базы знаний и интеграций - фреймворк не спасёт пустые данные;
  • команда ещё не освоила базовый вызов LLM и эмбеддинги;
  • нужен только no-code чатбот без кастомной логики.

Итог

LangChain - способ собирать LLM-приложения из готовых блоков: модели, промпты, RAG, инструменты. LangGraph - способ оркестрировать сложную логику агентов как граф состояний с ветками, циклами и контрольными точками. Для FAQ и поиска по документам часто хватает LangChain; для агентов поддержки, мультишаговых процессов и человек в контуре разумнее сразу проектировать поток на LangGraph. Выбор библиотеки вторичен относительно качества данных, метрик и бюджета на токены - но правильный каркас экономит месяцы хаоса в коде.

Если нужна помощь с разработкой, внедрением ИИ или сопровождением сайта под вашу задачу - напишите мне.

Часто задаваемые вопросы

LangChain и LangGraph - это разные продукты или одно целое?

Это связанная экосистема: LangChain даёт компоненты, LangGraph - оркестрацию сложных потоков. Их можно использовать по отдельности, но на практике узлы графа часто вызывают модели и инструменты из LangChain. Думайте не «или-или», а «блоки + схема», когда сценарий усложняется.

Нужен ли LangGraph для обычного RAG?

Не обязательно. Классический RAG (вопрос → поиск → ответ) спокойно делается на LangChain или даже на прямых вызовах API + векторной БД. LangGraph имеет смысл, если поверх RAG появляются ветки, переспрашивание, несколько агентов, проверка фактов в цикле или обязательное подтверждение человека.

Чем агент на LangGraph отличается от «просто вызвать ChatGPT»?

Один вызов ChatGPT - это ответ модели в рамках одного контекстного окна. Агент на LangGraph может многократно вызывать инструменты, обновлять состояние, ветвиться по условиям и останавливаться на проверке оператором. Это ближе к движку сценариев с LLM внутри, чем к обычному чату.

На каком языке лучше писать - Python или JavaScript?

Для бэкенда, data-пайплайнов и большинства примеров экосистемы чаще берут Python. JavaScript/TypeScript удобен, если агент живёт рядом с Node-стеком сайта. Функционально подходы похожи; выбирайте язык команды и того сервиса, куда встраиваете LLM.

Сколько стоит внедрение на LangChain / LangGraph?

Сам фреймворк open source - платите за API моделей, инфраструктуру (векторная БД, хостинг) и разработку/сопровождение. Прототип RAG может уложиться в дни и небольшой бюджет на токены; продакшен-агент с CRM, мониторингом и проверками качества - уже проект на недели и заметный бюджет на агента. Главный скрытый расход - бесконтрольные циклы агента и раздутый контекст.

Термины в статье

LangChain — framework for building LLM applications — фреймворк для приложений на больших языковых моделях

LangGraph — framework for stateful AI agent workflows — фреймворк для агентных сценариев со состоянием

RAG — Retrieval-Augmented Generation — генерация с дополненным поиском

эмбеддинги — embeddings — числовые векторы, отражающие смысл текста

оркестрация — workflow orchestration — управление цепочкой шагов и сервисов

промпты — prompts — тексты-инструкции или запросы к модели

LLM — Large Language Model — большая языковая модель

пайплайн — pipeline — цепочка автоматических шагов обработки

GPT — Generative Pre-trained Transformer — семейство генеративных языковых моделей

CRM — Customer Relationship Management — управление взаимоотношениями с клиентами

наблюдаемость — observability — логи, метрики и трассировки для понимания работы системы

Ollama — tool to run local open-weight LLMs on your machine — инструмент для локального запуска LLM с открытыми весами

плата за абстракции — abstraction tax — плата за лишние слои абстракций (abstraction tax)

проверки качества — evals — проверки качества ответов модели (evals)

no-code — building apps with visual tools, little or no programming — сборка приложений визуальными инструментами почти без кода

чатбот — chatbot — чатбот (chatbot)

open source — software with publicly available source code — ПО с открытым исходным кодом

Контакты