Обзор экосистемы LangChain, установка, единый интерфейс моделей, выбор провайдера.
LangChain — это фреймворк для создания агентов на базе языковых моделей. Ключевая формула: Агент = Модель + Обвязка.
LangChain предоставляет единый интерфейс для работы с языковыми моделями от разных провайдеров. Обвязка — это всё, что окружает цикл вызовов модели: промпт, инструменты и промежуточные слои (мидлварь), которые управляют поведением агента.
Экосистема LangChain состоит из нескольких компонентов, каждый из которых решает свою задачу.
LangChain (основной фреймворк) — абстракции и интеграции для моделей, инструментов и циклов агентов. Содержит фабрику create_agent для создания агентов с минимальной конфигурацией.
LangGraph (оркестрация) — низкоуровневый фреймворк для создания долгоживущих, состоятельных агентов. Позволяет смешивать детерминированные и агентивные шаги в одном графе.
Deep Agents — высокоуровневая обвязка с готовыми возможностями: планирование, файловая система, субагенты, управление контекстом. Построена поверх LangChain.
LangSmith — платформа для трассировки, оценки, промптов и развёртывания. Позволяет наблюдать за поведением агентов в продакшене.
Если нужен простой агент с инструментами — используйте LangChain и create_agent. Для сложной оркестрации с условиями и параллелизмом — LangGraph. Если нужен агент «из коробки» с максимумом возможностей — Deep Agents. Для наблюдаемости и отладки — LangSmith.
Для начала работы достаточно установить основные пакеты:
pip install -U langchain langgraphДля Deep Agents потребуется дополнительный пакет:
pip install -U langchain deepagentsДля некоторых провайдеров нужны отдельные пакеты:
pip install langchain-openai # OpenAI
pip install langchain-anthropic # Anthropic
pip install langchain-google-genai # Google
pip install langchain-ollama # Ollama (локальные модели)LangChain предоставляет единый интерфейс для всех провайдеров. Можно сменить модель, изменив одну строку. Модель создаётся через init_chat_model со строковым идентификатором в формате "провайдер:модель":
from langchain.chat_models import init_chat_model
# OpenAI
model = init_chat_model("openai:gpt-4o-mini")
# Anthropic
model = init_chat_model("anthropic:claude-sonnet-4-6")
# Google
model = init_chat_model("google_genai:gemini-2.5-flash-lite")
# Ollama (локально)
model = init_chat_model("ollama:llama3")Можно указать дополнительные параметры — температуру, таймаут, максимальное количество токенов:
model = init_chat_model(
"openai:gpt-4o-mini",
temperature=0.5,
timeout=300,
max_tokens=4096,
)При создании агента модель указывается напрямую в create_agent:
from langchain.agents import create_agent
agent = create_agent(
model="openai:gpt-4o-mini",
tools=[],
system_prompt="Ты помощник.",
)Для быстрого прототипа подойдут openai:gpt-4o-mini или google_genai:gemini-2.5-flash-lite. Для сложных задач — anthropic:claude-sonnet-4-6 или openai:gpt-5.5. Для работы без API — ollama:llama3 (локальная модель). Для бюджетного варианта — openrouter с выбором модели.
Перед работой нужно установить ключ API провайдера через переменную окружения:
export OPENAI_API_KEY="ваш-ключ"
# или
export ANTHROPIC_API_KEY="ваш-ключ"
# или
export GOOGLE_API_KEY="ваш-ключ"Чтобы убедиться, что всё работает, создайте простого агента и отправьте ему запрос:
from langchain.agents import create_agent
def greet(name: str) -> str:
"""Поприветствовать пользователя."""
return f"Привет, {name}!"
agent = create_agent(
model="openai:gpt-4o-mini",
tools=[greet],
system_prompt="Ты помощник. Используй инструменты, когда это уместно.",
)
result = agent.invoke(
{"messages": [{"role": "user", "content": "Поприветствуй меня, меня зовут Алексей"}]}
)
print(result["messages"][-1].content_blocks)Агент вызовет инструмент greet и вернёт приветствие. Если это работает — установка прошла успешно.
Далее: Инструменты и первый агент