Введение в LangChain
LangChain — это Python-фреймворк для создания приложений на основе больших языковых моделей (LLM).
LangChain предоставляет унифицированный интерфейс для подключения различных AI-моделей и поддерживает создание интеллектуальных агентов, которые могут автоматически вызывать инструменты, извлекать знания и запоминать контекст.

Что такое LangChain?
Проще говоря, LangChain решает основную проблему:предоставление большим языковым моделям возможности взаимодействовать с внешним миром.。
Нативные LLM могут генерировать текст только на основе обучающих данных. Но в реальных приложениях нам нужно, чтобы ИИ запрашивал базы данных, вызывал API, искал документы и отправлял электронные письма.
LangChain предоставляет набор стандартизированных компонентов, позволяющих объединять эти возможности в цепочки.

| Компонент | Роль | Основная функция | Распространённые варианты использования |
|---|---|---|---|
| Модели | Подключение больших языковых моделей |
|
|
| Промпты (шаблоны промптов) | Управление шаблонами промптов |
|
|
| Загрузчик документов | Чтение данных внешних документов |
|
|
| Разделитель текста | Разделение длинного текста |
|
|
| Память | Реализация контекстной памяти |
|
|
| Извлекатель | Извлечение релевантного содержимого знаний |
|
|
| Инструменты | Вызов внешних инструментов и API |
|
|
| Парсер вывода | Разбор результатов вывода модели |
|
|
| Цепочки | Объединяйте несколько компонентов в рабочие процессы |
|
|
С технической точки зрения LangChain — это модульный фреймворк для разработки приложений на LLM, включающий три уровня:
| Слой | Описание | Название пакета |
|---|---|---|
| Базовый слой абстракции | Определяет базовые интерфейсы для моделей, инструментов, сообщений и т. д. | langchain-core |
| Уровень пользовательского интерфейса | Предоставляет высокоуровневые API, такие как init_chat_model, create_agent | langchain |
| Уровень интеграции | Подключает сторонние сервисы, такие как OpenAI, Anthropic, Ollama | langchain-openai и т. д. |
Почему стоит выбрать LangChain?
Если вам нужно вызвать API модели только один раз, достаточно прямого HTTP-запроса. Но когда вам нужно создать полноценное ИИ-приложение, LangChain предлагает следующие преимущества:
| Способность | Описание | Применимые сценарии |
|---|---|---|
| Унифицированный интерфейс моделей | Переключение между OpenAI / Anthropic / DeepSeek и другими моделями с помощью одного набора кода | Сравнительное тестирование нескольких моделей, оптимизация затрат |
| Архитектура агента | Модель автоматически решает, когда вызывать инструменты, образуя цикл «мысль — действие» | Задачи автоматизации, интеллектуальная служба поддержки клиентов |
| Система промежуточного ПО | Вставляйте пользовательскую логику до и после вызовов модели (повторные попытки, кэширование, фильтрация) | Обеспечение надёжности в продуктивных средах |
| Структурированный вывод | Заставьте модель возвращать JSON в заданном формате для удобного разбора программой | Извлечение данных, файл |
| Сохранение памяти | Встроенная память и возможности кросс-сессионного хранения | Многоходовые диалоги, запоминание пользовательских предпочтений |
| Богатый | Множество сторонних интеграций, охватывающих популярные модели и инструменты | Быстро интегрируйте различные сервисы |
Что может LangChain?
Ниже приведены наиболее типичные сценарии использования LangChain:
Интеллектуальные чат-боты
Чат-ассистент с памятью для многоходовых диалогов, который может вызывать внешние инструменты (проверять погоду, проверять заказы, отправлять электронные письма).
RAG-база знаний: вопросы и ответы
Векторизуйте и храните приватные документы (PDF-файлы, веб-страницы, базы данных), позволяя модели отвечать на вопросы на основе этих документов с указанием источников.
Ассистент автоматизации агента
Модель автономно планирует шаги задачи, при необходимости вызывает разные инструменты и выполняет сложные многошаговые операции, например: «Помоги мне упорядочить данные о продажах за прошлую неделю и сгенерировать отчёт».
Извлечение данных и анализ
Извлекайте структурированную информацию из неструктурированного текста (например, извлечение ключевых полей из отсканированных договоров), или позвольте модели генерировать выводы анализа данных.
Связь между LangChain и LangGraph
Многие новички путаются в различиях между этими двумя библиотеками. Проще говоря:
| Критерий сравнения | LangChain | LangGraph |
|---|---|---|
| Позиционирование | Высокоуровневый фреймворк для агентов, готовый к использованию сразу из коробки | Низкоуровневый движок рабочих процессов, детальный контроль |
| Простота изучения | Низкий, создание агента в 10 строках кода | Средний или высокий, требует понимания концепции графов |
| Применимые сценарии | Стандартные приложения с агентами, быстрое прототипирование | Сложные многоэтапные рабочие процессы, взаимодействие нескольких агентов |
| Связь | create_agent() из LangChain построен поверх LangGraph | |
В этом учебнике основное внимание уделяется LangChain. Если вы только начинаете, начать с LangChain — правильный выбор. Когда понадобится более тонкий контроль над процессом, углубитесь в LangGraph.
Подготовка
Перед началом обучения вам достаточно иметь следующие базовые знания:
- Базовый синтаксис Python (функции, классы, аннотации типов)
- Умение устанавливать пакеты Python с помощью pip
- Знакомство с базовыми операциями командной строки
- Имейте API-ключ большой модели (OpenAI, Anthropic и т. д. — любые подойдут)
Другие расширенияПримеры кода в этом руководстве протестированы в среде Python 3.10+.