DeepAgents

markdown source

Теги: llm 

DeepAgents — это “agent harness” от LangChain: высокоуровневый каркас для создания агентов, способных планировать, делегировать подзадачи, работать с файловой системой и сохранять долгосрочную память. DeepAgents упрощает построение сложных многошаговых приложений, предоставляя готовые компоненты для исполнения, управления контекстом, делегирования и управления вмешательством человека.

  • Назначение: надёжное выполнение многозадачных, долгих и контекстно насыщенных задач с LLM.
  • Библиотека: deepagents (пакет на PyPI), построена поверх [notes/langchain] и использует [notes/langgraph] для выполнения и наблюдаемости.

Быстрый пример (Python):

from deepagents import create_deep_agent

def get_weather(city: str) -> str:
    return f"It's always sunny in {city}!"

agent = create_deep_agent(
    model="openai:gpt-5.5",
    tools=[get_weather],
    system_prompt="You are a helpful assistant",
)

agent.invoke({"messages": [{"role": "user", "content": "what is the weather in sf"}]})

Ключевые возможности DeepAgents

  • Взаимодействие с окружением: вызов tools, чтение/запись файлов, выполнение кода.
  • Подключение к данным: memory, skills, и внешние источники через MCP (Model Context Protocol).
  • Управление контекстом: суммаризация, оффлоадинг больших результатов и кэширование подсказок (prompt caching).
  • Делегирование и параллелизм: создание подагентов (subagents) для изоляции и параллельной обработки задач.
  • Human-in-the-loop: точечные прерывания и подтверждения перед опасными операциями.
  • Улучшение со временем: обновляемая память и навыки на основе использования.

Компоненты исполнения (Execution environment)

  • Tools и MCP: любые функции, LangChain tools или MCP-серверы можно передать в tools= при создании агента.
  • Виртуальная файловая система: pluggable backends (in-memory, disk, LangGraph store и т.д.) с инструментами ls, read_file, write_file, edit_file, delete, glob, grep, execute (для sandbox).
  • Разрешения на файловую систему: декларативные правила (permissions=) с операциями read/write, путями (glob) и режимами allow/deny.
  • Выполнение кода: sandbox backends дают execute, а интерпретаторы (например, QuickJS) дают eval для безопасных сценариев.
  • Streaming: событийные потоки для трассировки сообщений, вызовов инструментов и подагентов.

Управление контекстом (Context management)

  • Skills: модульные, прогрессивно загружаемые знания и workflow-файлы со стандартом SKILL.md (агент читает frontmatter сначала, остальное при надобности).
  • Memory: устойчивые файлы (AGENTS.md) загружаются при старте и сохраняются в backend; агент может обновлять память в ходе работы.
  • Суммаризация и оффлоадинг: автоматические механизмы для сжатия истории и больших промежуточных результатов.
  • Prompt caching: кэширование статических частей системных подсказок для поддерживаемых провайдеров (например, Anthropic, Bedrock).

Делегирование (Delegation)

  • Task planning: опциональный middleware (TodoListMiddleware) для ведения списка задач и состояния (pending, in_progress, completed).
  • Subagents: встроенный инструмент task создаёт эпизодические подагенты с отдельным контекстом и автономным выполнением; возвращают один финальный отчёт.

Параметры безопасности и контроль (Steering)

  • Человеческое подтверждение: interrupt_on позволяет приостанавливать выполнение при указанных вызовах инструментов (например, edit_file) для одобрения.
  • Права доступа: декларативные правила файловой системы для ограничения областей чтения/записи.

Кастомизация и расширение

  • Профили harness (HarnessProfile) позволяют скрывать определённые инструменты (например, файловые операции) от модели.
  • Middleware: добавление TodoListMiddleware, FilesystemMiddleware и других для контроля поведения агента.
  • Подключение внешних MCP-серверов для доступа к базам данных, API и хранилищам.

Когда использовать DeepAgents

  • Многошаговые рабочие процессы, требующие управления состоянием и длительной памяти.
  • Задачи, где полезна делегирование подзадач и параллельная обработка.
  • Сценарии, где нужно безопасно управлять файловой системой и иметь человека в петле подтверждения.

Ссылки и ресурсы

AI-warning

✨ Данная статья сгенерирована с помощью ChatGPT 5.0 mini. Текст проверен человеком.