Руководство по LangChain Deep Agents: возможности, инструменты и настройка

Создавайте более функциональных ИИ-агентов с LangChain Deep Agents. Узнайте, как планирование, вызов инструментов, управление файловой системой и работа с subagent позволяют выполнять задачи автономно, а затем подключите Kimi API, чтобы наделить своих агентов продвинутым пониманием языка и способностями к рассуждению.

12 мин чтения2026-08-13
Подключение Kimi API к LangChain Deep Agents

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

Что такое LangChain Deep Agents?

LangChain Deep Agents — это фреймворк для агентов, построенный на базовых компонентах LangChain и среде выполнения LangGraph. Он расширяет стандартные рабочие процессы агентов встроенными возможностями, такими как доступ к файловой системе, делегирование subagent, планирование, память и поддержка участия человека в процессе. Deep Agents используют цикл агента, объединяющий рассуждение, вызов инструментов и итеративное выполнение, что делает их подходящими для сложных задач, требующих множества шагов, большого объёма контекста и координации рабочих процессов.

В отличие от базовых агентов, которые в основном вызывают инструменты в простом цикле, Deep Agents предоставляют дополнительную инфраструктуру для работы с длительными задачами. Они умеют управлять файлами, делегировать работу специализированным subagent, поддерживать контекст в рамках сложных рабочих процессов и допускать участие человека при необходимости. Эти встроенные возможности снижают объём дополнительной разработки, требуемой для создания продвинутых агентных систем.

Как работают LangChain Deep Agents

Когда Deep Agent получает задачу, он анализирует запрос и планирует шаги, необходимые для её выполнения. Затем он использует доступные инструменты — например, поиск, выполнение кода или операции с файловой системой — для сбора информации и выполнения действий.

В процессе выполнения Deep Agents управляют контекстом, читая и записывая файлы. Вместо того чтобы хранить все промежуточные результаты в истории диалога, они могут сохранять большие объёмы информации во внешнем хранилище и извлекать их по мере необходимости. Такой подход помогает агентам справляться с более длительными рабочими процессами, снижая ограничения, связанные с размером контекстного окна.

Для сложных задач, охватывающих несколько направлений работы, Deep Agents могут делегировать отдельные подзадачи специализированным subagent. Каждый subagent сосредоточен на конкретной цели и возвращает соответствующие результаты основному агенту. Затем основной агент объединяет результаты subagent, полученную информацию и сохранённые файлы, формируя цельный и связный ответ.

Благодаря таким возможностям, как планирование, использование инструментов, управление файловой системой, взаимодействие subagent и контроль со стороны человека, LangChain Deep Agents создают основу для построения более функциональных ИИ-систем, способных решать многоэтапные задачи из реального мира.

Основные возможности Deep Agents: планирование, инструменты и выполнение

Deep Agents способны справляться с задачами, требующими множества шагов, решений и действий. Их основные функции помогают им планировать работу, использовать нужные инструменты и эффективно выполнять каждый этап при минимальном участии человека. Рассмотрим эти возможности подробнее:

Планирование задач

Планирование задач позволяет агентам создавать структурированный список задач и управлять им в процессе выполнения. Вместо того чтобы обрабатывать сложную цель как единую инструкцию, агенты могут разбивать её на более мелкие шаги, отслеживать прогресс и обновлять статус задач в течение всего рабочего процесса.

Когда использовать планирование

  • Длинные или сложные многоэтапные задачи

  • Задачи, для которых полезно явное отслеживание прогресса и структурированное выполнение

  • Интерфейсы, отображающие прогресс на основе состояния агента в реальном времени

Как включить эту функцию

Передайте TodoListMiddleware в параметр middleware. Это предоставит агенту инструмент write_todos для ведения структурированного списка задач с отслеживанием статуса (pending, in_progress, completed).

from deepagents import create_deep_agent
from deepagents.middleware import TodoListMiddleware

agent = create_deep_agent(
    model="your-model",
    middleware=[TodoListMiddleware()],
)

Задачи сохраняются в состоянии агента, обеспечивая ему лёгкий уровень планирования для организации длительной работы.

Инструменты виртуальной файловой системы

Deep Agents предоставляют настраиваемую виртуальную файловую систему на основе подключаемых бэкендов: состояния в памяти, локального диска, хранилища LangGraph, составной маршрутизации или пользовательских бэкендов с правилами доступа.

Встроенные инструменты файловой системы

ИнструментОписание
lsВывести список файлов в директории с метаданными (размер, время изменения)
read_fileЧитает содержимое файла с номерами строк; поддерживает offset/limit для больших файлов; также возвращает мультимодальные блоки контента для изображений, видео, аудио и документов
write_fileСоздаёт новый файл или перезаписывает существующий
edit_fileВыполняет точную замену строк в файлах (с режимом глобальной замены)
deleteРекурсивно удаляет файл или каталог
globИщет файлы, соответствующие шаблонам (например, **/*.py)
grepИщет по содержимому файлов с несколькими режимами вывода
executeВыполняет shell-команды в окружении (только для sandbox-бэкендов)

Поддерживаемые мультимодальные расширения

  • Изображения: .png, .jpg, .jpeg, .gif, .webp, .heic, .heif

  • Видео: .mp4, .mpeg, .mov, .avi, .flv, .mpg, .webm, .wmv, .3gpp

  • Аудио: .wav, .mp3, .aiff, .aac, .ogg, .flac

  • Документы: .pdf, .ppt, .pptx

Права доступа к файловой системе

Harness поддерживает декларативные правила доступа, определяющие, какие файлы и каталоги агент может читать или изменять. Правила проверяются сверху вниз, и применяется первое совпавшее правило.

from deepagents import create_deep_agent

agent = create_deep_agent(
    model="anthropic:your-model",
    permissions=[
        {"operations": ["read", "write"], "paths": ["/workspace/**"], "mode": "allow"},
        {"operations": ["read"], "paths": [".env", "**/secrets/**"], "mode": "deny"},
    ],
)
from deepagents import create_deep_agent

agent = create_deep_agent(
    model="anthropic:your-model",
    permissions=[
        {"operations": ["read", "write"], "paths": ["/workspace/**"], "mode": "allow"},
        {"operations": ["read"], "paths": [".env", "**/secrets/**"], "mode": "deny"},
    ],
)

Это позволяет ограничивать агентов конкретными каталогами, защищать важные файлы и давать подагентам более узкий доступ, чем у родительского агента.

Ограничение доступа к инструментам

Вы можете предоставить доступ только к части инструментов файловой системы, передав список разрешённых инструментов (tools) в FilesystemMiddleware. read_file должен быть включён всегда.

from deepagents import create_deep_agent
from deepagents.middleware import FilesystemMiddleware

# Read-only agent
agent = create_deep_agent(
    model="your-model",
    middleware=[
        FilesystemMiddleware(backend=backend, tools=["read_file", "ls", "glob", "grep"]),
    ],
)
from deepagents import create_deep_agent
from deepagents.middleware import FilesystemMiddleware

# Read-only agent
agent = create_deep_agent(
    model="your-model",
    middleware=[
        FilesystemMiddleware(backend=backend, tools=["read_file", "ls", "glob", "grep"]),
    ],
)

Подагенты (делегирование)

Harness включает встроенный инструмент task, позволяющий основному агенту создавать временных подагентов для изолированных, длительных, многошаговых или параллельных задач.

Ключевые особенности

  • Новый контекст: каждый вызов создаёт новый экземпляр агента с собственным контекстом

  • Автономное выполнение: подагент работает самостоятельно до завершения задачи

  • Единственная передача результата: он возвращает основному агенту один итоговый отчёт

  • Настраиваемая стратегия: используйте стандартного подагента general-purpose или определяйте собственные подагенты

  • Эффективность использования контекста: объёмная работа над подзадачей остаётся изолированной и сжимается в компактный результат

Отключение подагентов

Чтобы запустить агента без инструмента task, отключите автоматически добавляемого подагента через профиль harness и не передавайте синхронных подагентов через subagents=. Не пытайтесь удалить SubAgentMiddleware через excluded_middleware — это намеренно запрещено.

Возможности вызова инструментов

Deep Agents поддерживают три категории инструментов:

Пользовательские функции и инструменты LangChain

Передавайте пользовательские функции или инструменты LangChain напрямую через параметр tools=:

from deepagents import create_deep_agent

def get_weather(city: str) -> str:
    """Get weather for a given city."""
    return f"It's always sunny in {city}!"

agent = create_deep_agent(
    model="your-model",
    tools=[get_weather],
    system_prompt="You are a helpful assistant",
)
from deepagents import create_deep_agent

def get_weather(city: str) -> str:
    """Get weather for a given city."""
    return f"It's always sunny in {city}!"

agent = create_deep_agent(
    model="your-model",
    tools=[get_weather],
    system_prompt="You are a helpful assistant",
)

MCP (Model Context Protocol)

Deep Agents полностью поддерживают MCP, позволяя подключаться к базам данных, API, файловым системам и другим ресурсам через стандартный интерфейс.

Выполнение кода

  • Песочницы (sandbox backends): предоставляют инструмент execute для выполнения shell-команд в изолированной среде

  • Интерпретаторы: добавляют инструмент eval, который выполняет JavaScript в изолированной среде выполнения QuickJS для облегчённых программируемых слоёв

По мере того как эти возможности объединяются, языковая модель, на которой работает агент, становится важной частью общей конфигурации. Мощная модель помогает Deep Agents понимать инструкции, рассуждать в процессе выполнения задач и эффективнее использовать доступные инструменты. Kimi API может обеспечить этот модельный уровень, что делает его естественным следующим шагом при построении более функциональных рабочих процессов Deep Agent.

Подключение Kimi API к LangChain Deep Agents за 6 шагов

Мощная модель даёт вашему Deep Agent понимание языка и способность рассуждать, необходимые для эффективного выполнения задач. Kimi API может обеспечить эти возможности, пока агент работает с инструментами, управляет задачами и обрабатывает сложные инструкции. После настройки модельного уровня можно переходить к подключению Kimi API к LangChain Agents. Вот как подключить Kimi API к LangChain Deep Agents:

Шаг 1: получите свой ключ Kimi API

Войдите на платформу Kimi API и создайте новый API-ключ. Скопируйте и надёжно сохраните ключ — он понадобится вам для настройки Deep Agents. Этот API-ключ подтверждает подлинность ваших запросов и позволяет Deep Agents в LangChain обращаться к моделям Kimi через API.

Получите свой ключ Kimi API

Шаг 2: задайте переменные окружения

Задайте свой ключ Kimi API как переменную окружения. Kimi API использует конечную точку Moonshot API, поэтому настройте следующую переменную:

export MOONSHOT_API_KEY="your-api-key-here"
export MOONSHOT_API_KEY="your-api-key-here"

Базовый URL API:

https://api.moonshot.ai/v1
``````text
https://api.moonshot.ai/v1

Шаг 3: установите зависимости

Установите Deep Agents и необходимые зависимости LangChain:

pip install deepagents langchain-openai
pip install deepagents langchain-openai

Поскольку Kimi API совместим с OpenAI, langchain-openai позволяет LangChain подключаться к моделям Kimi через интерфейс, совместимый с OpenAI.

Если вы хотите добавить в свой Deep Agent возможность веб-поиска, можно дополнительно установить Tavily:

pip install tavily-python
pip install tavily-python

После создания API-ключа Tavily на платформе Tavily задайте его как переменную окружения:

export TAVILY_API_KEY="your-tavily-api-key"
export TAVILY_API_KEY="your-tavily-api-key"

Tavily нужен только в том случае, если вы планируете добавить агенту инструменты веб-поиска.

Шаг 4: настройте Deep Agent с Kimi API

Поскольку Kimi API совместим с форматом OpenAI API, вы можете подключить его к LangChain Deep Agents через init_chat_model.

В следующем примере создаётся базовый Deep Agent на основе Kimi. При желании вы можете дополнить его инструментами, такими как веб-поиск.

Базовый Deep Agent на основе Kimi

from os import environ
from deepagents import create_deep_agent
from langchain.chat_models import init_chat_model

kimi_model = init_chat_model(
    "kimi-k3",
    api_key=environ["MOONSHOT_API_KEY"],
    base_url="https://api.moonshot.ai/v1",
    temperature=0.7,
)

agent = create_deep_agent(
    model=kimi_model,
    system_prompt="""You are an expert assistant.
Your job is to solve tasks with structured reasoning and provide clear outputs.
""",
)
from os import environ
from deepagents import create_deep_agent
from langchain.chat_models import init_chat_model

kimi_model = init_chat_model(
    "kimi-k3",
    api_key=environ["MOONSHOT_API_KEY"],
    base_url="https://api.moonshot.ai/v1",
    temperature=0.7,
)

agent = create_deep_agent(
    model=kimi_model,
    system_prompt="""You are an expert assistant.
Your job is to solve tasks with structured reasoning and provide clear outputs.
""",
)

Добавление возможностей веб-поиска (опционально)

Чтобы включить веб-поиск, подключите инструмент поиска, например Tavily:

from tavily import TavilyClient

tavily_client = TavilyClient(
    api_key=os.environ["TAVILY_API_KEY"]
)

def internet_search(query: str, max_results: int = 5):
    """Run a web search"""
    return tavily_client.search(
        query=query,
        max_results=max_results
    )

agent = create_deep_agent(
    model=kimi_model,
    tools=[internet_search],
    system_prompt="""You are an expert researcher.
Use the internet search tool when additional information is required.
""",
)
from tavily import TavilyClient

tavily_client = TavilyClient(
    api_key=os.environ["TAVILY_API_KEY"]
)

def internet_search(query: str, max_results: int = 5):
    """Run a web search"""
    return tavily_client.search(
        query=query,
        max_results=max_results
    )

agent = create_deep_agent(
    model=kimi_model,
    tools=[internet_search],
    system_prompt="""You are an expert researcher.
Use the internet search tool when additional information is required.
""",
)

При такой настройке Deep Agents могут использовать Kimi в качестве модели для рассуждений, одновременно обращаясь к внешним возможностям поиска через Tavily.

Шаг 5: запустите свой Deep Agent на основе Kimi

После настройки Deep Agent с Kimi запустите агента, чтобы проверить, как он обрабатывает задачи и вызовы инструментов.

result = agent.invoke(
    {"messages": [{"role": "user", "content": "What is LangGraph?"}]}
)

print(result["messages"][-1].content)
result = agent.invoke(
    {"messages": [{"role": "user", "content": "What is LangGraph?"}]}
)

print(result["messages"][-1].content)

Шаг 6: включите трассировку LangSmith (опционально)

Трассировка LangSmith помогает отслеживать выполнение агента, включая вызовы инструментов, промежуточные шаги и ответы модели.

Включите трассировку с помощью следующих переменных окружения:

export LANGSMITH_TRACING=true
export LANGSMITH_API_KEY="your-langsmith-api-key"
export LANGSMITH_TRACING=true
export LANGSMITH_API_KEY="your-langsmith-api-key"

Используйте LangSmith, когда вам нужна более глубокая видимость рабочих процессов агента для отладки или анализа производительности.

Преимущества использования Kimi API

Подключение Kimi API к Deep Agents позволяет сделать сложные рабочие процессы более функциональными и удобными для управления. Такое сочетание даёт агентам более сильные способности к рассуждению, одновременно позволяя им использовать инструменты, работать с файлами и выполнять несколько задач подряд. Рассмотрим ключевые преимущества такой настройки:

  • Улучшение рассуждений агента и выполнения задач

Модели Kimi обладают развитыми возможностями понимания языка и рассуждения, что помогает Deep Agents анализировать сложные инструкции, разбивать задачи на этапы и формировать более точные ответы. Это позволяет агентам эффективнее справляться с многошаговыми рабочими процессами при меньшем объёме ручного контроля.

  • Создание более функциональных рабочих процессов на базе ИИ

Подключив Kimi API к Deep Agents, разработчики могут сочетать возможности моделей Kimi с инструментами, файловыми системами и внешними интеграциями, поддерживаемыми LangChain. Это позволяет агентам выполнять такие задачи, как исследования, обработка документов, анализ кода и работа с данными, в рамках единого рабочего процесса.

  • Масштабирование сложных задач с помощью автономных агентов

Deep Agents на базе Kimi способны управлять длительными задачами, составляя планы, используя инструменты и, при необходимости, делегируя подзадачи. Это упрощает создание приложений на базе ИИ, способных выполнять сложные рабочие процессы, сокращая объём повторяющихся ручных операций.

Заключение

Создание надёжных ИИ-агентов начинается с выбора правильной основы для сложных рабочих процессов. LangChain Deep Agents предоставляют инструменты и структуру, необходимые для создания агентов, которые могут планировать, использовать инструменты, управлять контекстом и справляться с многошаговыми задачами с меньшими усилиями со стороны разработчика. Имея подходящую модель и настройки, разработчики могут превращать сложные идеи агентов в практические приложения. Интегрировав Kimi API, вы можете дополнительно усилить свои рабочие процессы Deep Agent мощными возможностями рассуждения и работы с длинным контекстом. Начните изучать Kimi API и узнайте, что можно построить с помощью ИИ-агентов.

Вопросы и ответы

В чём разница между агентами LangChain и Deep Agents?
Агенты LangChain служат основой для создания ИИ-агентов, использующих инструменты. Deep Agents расширяют эту основу дополнительными возможностями — планированием, управлением файлами, делегированием подзадач subagent и работой с контекстом. Эти возможности делают Deep Agents более подходящими для длительных и сложных задач, а также снижают необходимость реализовывать эти функции самостоятельно.
Для чего можно использовать LangChain Deep Agents?
LangChain Deep Agents способны справляться с задачами, требующими нескольких шагов, использования инструментов и постоянного принятия решений. Они подходят для таких сценариев, как автоматизация исследований, анализ документов, понимание кода, обработка данных и выполнение сложных рабочих процессов. Для задач, охватывающих несколько областей знаний, Deep Agents могут делегировать отдельные подзадачи специализированным subagent и объединять их результаты. Подключив Deep Agents к Kimi API, разработчики могут создавать ИИ-приложения, использующие способности Kimi к рассуждению и большое контекстное окно для анализа объёмных документов, обработки сложной информации и автоматизации задач, требующих глубоких знаний.
Можно ли добавить память в LangChain Deep Agent?
Да, LangChain Deep Agents могут поддерживать память благодаря доступным интеграциям для сохранения состояния и работы с памятью. Это помогает агентам удерживать важную информацию между взаимодействиями и задачами, не начиная каждый раз с нуля. Память может быть полезна для персонализированных рабочих процессов, длительных задач и хранения постоянной информации.
Вам также может понравиться
Руководство по агентам LlamaIndex: создавайте более умные ИИ-приложения
Руководство по агентам LlamaIndex: создавайте более умные ИИ-приложения
2026-08-13
Руководство по n8n AI Agent: создание и автоматизация рабочих процессов
Руководство по n8n AI Agent: создание и автоматизация рабочих процессов
2026-08-13
Установка Claude Code: полное руководство для Windows и Mac
Установка Claude Code: полное руководство для Windows и Mac
2026-08-12
Как подключить внешние API к Roo Code
Как подключить внешние API к Roo Code
2026-08-12
Интеграция Droid API: как подключить внешние модели ИИ
Интеграция Droid API: как подключить внешние модели ИИ
2026-08-12