Source: DeepAgents
← Renderedmarkdown source:
---
description: Краткий обзор Deep Agents — harness для создания надежных агентных приложений на базе LangChain.
tags: llm
title: DeepAgents
---
DeepAgents — это "agent harness" от LangChain: высокоуровневый каркас для создания агентов, способных планировать, делегировать подзадачи, работать с файловой системой и сохранять долгосрочную память. DeepAgents упрощает построение сложных многошаговых приложений, предоставляя готовые компоненты для исполнения, управления контекстом, делегирования и управления вмешательством человека.
- **Назначение:** надёжное выполнение многозадачных, долгих и контекстно насыщенных задач с LLM.
- **Библиотека:** `deepagents` (пакет на PyPI), построена поверх [[notes/langchain]] и использует [[notes/langgraph]] для выполнения и наблюдаемости.
**Быстрый пример (Python):**
```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
- Многошаговые рабочие процессы, требующие управления состоянием и длительной памяти.
- Задачи, где полезна делегирование подзадач и параллельная обработка.
- Сценарии, где нужно безопасно управлять файловой системой и иметь человека в петле подтверждения.
## Ссылки и ресурсы
- [Документация](https://docs.langchain.com/oss/python/deepagents/overview)
- [API reference](https://reference.langchain.com/python/deepagents/)
- [[lists/llm]]
- [[notes/langchain]]
- [[notes/langgraph]]
## AI-warning
✨ Данная статья сгенерирована с помощью ChatGPT 5.0 mini. Текст проверен человеком.
[notes/langchain]: langchain "notes/langchain"
[lists/llm]: ../lists/llm "LLM"
[notes/langgraph]: langgraph "langgraph"