LangChain
LangChain — открытый фреймворк для разработки приложений, использующих большие языковые модели (LLM). Он предоставляет унифицированный набор абстракций (модели, эмбеддинги, векторные хранилища, цепочки, агенты, память, кол-бэки) и более 250 интеграций, позволяя быстро строить, отлаживать и вводить в эксплуатацию сложные LLM-системы, включая чат-ботов, RAG-поисковые движки и агентные решения.[1][2]
История
- Октябрь 2022 — первый публичный релиз в качестве open‑source проекта автором Харрисоном Чейзом (Harrison Chase)[3], тогда сотрудником Robust Intelligence .
- Апрель 2023 — основана компания LangChain Inc., получено более $20 млн финансирования в рамках раунда в $20–25 млн от Sequoia (раскрытого скорости “pre‑empt” инвестирования) при оценке ~$200 млн, а ранее — $10 млн seed от Benchmark .
- Август 2023 — выпуск LangChain Expression Language (LCEL), декларативного синтаксиса для построения цепочек.[4]
- Октябрь 2023 — анонсирован LangServe, библиотека для развёртывания LCEL‑цепочек в виде production‑API через FastAPI[5]
- 2024–2025 — экосистема расширена такими сервисами как LangSmith (платформа для трассировки, метрик и A/B‑тестирования) и LangGraph (оркестрация мульти‑агентных рабочих процессов); число звёзд на GitHub превысило 100 000 .
Возможности LangChain
- Цепочки рассуждений (Chains). LangChain позволяет создавать последовательности шагов, каждый из которых выполняет определённую задачу. Эти шаги могут включать взаимодействие с моделью, обработку её вывода, поиск дополнительной информации и другие операции. Такой подход позволяет создавать сложные рабочие процессы, состоящие из нескольких этапов
- Агенты (Agents). Агенты в LangChain представляют собой программы, которые могут динамически выбирать действия в зависимости от ситуации. Например, агент может решать, какой инструмент использовать (поиск в интернете, запрос к базе данных, выполнение вычислений и т.д.), основываясь на текущем контексте и промежуточных вывода
- Инструменты (Tools). LangChain включает интеграции с более чем 250 внешними инструментами и сервисами. Это позволяет моделям работать с различными источниками данных, такими как базы данных, API, системы управления файлами, а также выполнять действия через командную строку.
- Память и контекст (Memory). LangChain поддерживает долговременную память, позволяя моделям «запоминать» информацию между обращениями. Это особенно важно для создания чат-ботов или приложений, которые должны помнить контекст взаимодействия с пользователем и учитывать его историю в дальнейших ответах.
- Retrieval-Augmented Generation (RAG). В рамках подхода RAG LangChain использует не только генерацию текста, но и поиск дополнительной информации в реальных источниках (например, в базах данных или на веб-сайтах). Это позволяет моделям давать более точные и обоснованные ответы, опираясь на актуальные данные.
- Отладка и наблюдаемость (Callbacks & Tracing). Для обеспечения прозрачности и контроля за процессом работы модели LangChain предоставляет возможности трассировки и мониторинга. Это позволяет отслеживать, какие данные используются моделью, какие промежуточные шаги она выполняет, а также собирать метрики производительности для улучшения качества работы системы.
- Расширения для платформ. LangChain включает дополнительные компоненты, такие как LangSmith и LangGraph, которые предоставляют возможности для централизованного мониторинга, A/B-тестирования и управления многоагентными рабочими процессами. LangSmith помогает анализировать производительность моделей и проводить тестирование, а LangGraph позволяет управлять сложными многошаговыми задачами и отслеживать их выполнение в реальном времени.
LangSmith
LangSmith [6] — это облачная платформа, предназначенная для отслеживания, анализа и оптимизации работы приложений, использующих большие языковые модели (LLM), в частности те, что построены с использованием LangChain. LangSmith предоставляет ряд возможностей для мониторинга и улучшения качества приложений, работающих с LLM, включая отслеживание производительности, тестирование и оценку качества.
- Трассировка (Tracing): Позволяет отслеживать все взаимодействия модели, включая входные и выходные данные, а также промежуточные результаты.
- Метрики и производительность: Собирает статистику по времени отклика, количеству токенов и другим параметрам для оценки работы модели.
- A/B тестирование: Поддерживает сравнение разных версий моделей или настроек для выбора наиболее эффективных.
- Human-in-the-loop: Включает экспертов для оценки и корректировки результатов модели, улучшая её точность.
- Интеграции с другими фреймворками: Предоставляет поддержку интеграции с различными платформами для мониторинга и анализа приложений.
- Поддержка многозадачности: Позволяет отслеживать и управлять несколькими задачами одновременно в рамках одного проекта.
LangGraph
LangGraph [7]— это инструмент для оркестрации сложных многошаговых и мультиагентных рабочих процессов, который используется в экосистеме LangChain. LangGraph предоставляет платформу для создания и управления сложными логическими цепочками и задачами, которые включают несколько агентов или этапов выполнения.
- Многошаговые рабочие процессы: Строит сложные цепочки задач, где каждый шаг зависит от предыдущих.
- Циклы и ветвления: Поддерживает возврат к предыдущим этапам (backtracking) и принятие решений на основе разных путей.
- Контроль версий и «путешествия во времени»: Осуществляет контроль за изменениями в рабочем процессе и возможность отката к предыдущим версиям.
- Мультиагентные системы: Позволяет управлять несколькими агентами, работающими параллельно или поочередно для выполнения разных задач.
- Поддержка гибридных решений: Интегрирует различные методы обработки данных и создания выводов в рамках одного рабочего процесса.
- Гибкость интеграции с внешними системами: Легко подключает внешние сервисы и системы, такие как API и базы данных, в рабочие процессы.
LangChain Expression Language (LCEL)
LangChain Expression Language (LCEL) [8]— это декларативный DSL-фреймворк для композиции Runnable-объектов (цепочек, агентов, обработчиков). Он выражается через оператор | (pipe), позволяющий описать, что должно происходить, а не как пошагово это реализовать. Декларативный стиль (what‑to) — описывается желаемый результат, а система сама решает, как его достичь.
LCEL — это механизм оркестрации, который позволяет LangChain оптимально выполнять цепочки на этапе выполнения.
- Для простых цепочек (например, prompt → LLM → parser или простого извлечения) LCEL подходит хорошо.
- Если же требуется сложная логика — ветвления, циклы, несколько агентов и сложное управление состоянием — рекомендуется использовать LangGraph. При этом внутри узлов графа можно по-прежнему применять LCEL.
- Если требуется только один вызов LLM — LCEL не нужен, достаточно прямого вызова модели.
- Для простой цепочки — LCEL вполне подходит и помогает воспользоваться своими преимуществами.
- Для сложных цепочек — используется LangGraph, с возможностью встроенного применения LCEL там, где нужно.
Типовые сценарии применения
LangChain можно использовать для решения широкого спектра задач, таких как:
- Чат-боты: Создание интеллектуальных ассистентов, которые могут взаимодействовать с пользователем, отвечать на вопросы и работать с внешними источниками данных.
- Автономные агенты: Разработка систем, которые могут выполнять определённые задачи без вмешательства человека, например, сбор информации или генерация отчётов.
- Поиск и анализ данных: Построение систем для семантического поиска и анализа документов, что может быть полезно для работы с юридическими, финансовыми и другими типами данных.
- Автоматизация бизнес-процессов: Создание решений для автоматизации обработки данных, создания отчётов и других рутинных задач.
См. также
Литература
- Yao, S. et al. (2022). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv:2210.03629.
- Hong, S. et al. (2023). MetaGPT: Meta Programming for a Multi-Agent Collaborative Framework. arXiv:2308.00352.
- Li, G. et al. (2023). CAMEL: Communicative Agents for "Mind" Exploration of Large Language Model Society. arXiv:2303.17760.
- Wu, Q. et al. (2023). AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation. arXiv:2308.08155.
- Liu, X. et al. (2023). AgentBench: Evaluating LLMs as Agents. arXiv:2308.03688.
- Chen, W. et al. (2023). AgentVerse: Facilitating Multi-Agent Collaboration and Exploring Emergent Behaviors. arXiv:2308.10848.
- Yao, S. et al. (2023). Tree of Thoughts: Deliberate Problem Solving with Large Language Models. arXiv:2305.10601.
- Shinn, N. et al. (2023). Reflexion: Language Agents with Verbal Reinforcement Learning. arXiv:2303.11366.
- Wang, L. et al. (2025). A Survey on Large Language Model Based Autonomous Agents. arXiv:2308.11432.
- Guo, T. et al. (2024). Large Language Model Based Multi-Agents: A Survey of Progress and Challenges. arXiv:2402.01680.
- Li, X. (2025). LLMs Working in Harmony: A Survey on the Technological Aspects of Building Effective LLM-Based Multi-Agent Systems. arXiv:2504.01963.
- Duan, Z.; Wang, J. (2024). Exploration of LLM Multi-Agent Application Implementation Based on LangGraph + CrewAI. arXiv:2411.18241.
- Wang, J. & Duan, Z. (2024). Agent AI with LangGraph: A Modular Framework for Enhancing Machine Translation Using Large Language Models. arXiv:2412.03801.
- Camargo da Silva, T. (2025). Extracting Knowledge Graphs from User Stories using LangChain. arXiv:2506.11020.
- Wang, Z. et al. (2024). Poisoned LangChain: Jailbreak LLMs by LangChain. arXiv:2406.18122.
Примечания
- ↑ «Introduction». https://python.langchain.com/docs/introduction/.[1]
- ↑ «LangChain». В Wikipedia [2]
- ↑ Forbes. «Harrison Chase». [3]
- ↑ LangChain Blog. «LangChain Expression Language», 1 август 2023 г. [4]
- ↑ LangChain Blog. «Introducing LangServe, the Best Way to Deploy Your LangChains», 12 октябрь 2023 г. [5]