• Сообщения
  • Управляемые агенты
  • Администрирование
Search...
⌘K
Первые шаги
ОбзорБыстрый стартПрототипирование в Консоли
Определение агента
Настройка агентаИнструментыКоннектор MCPПолитики разрешенийНавыки агента
Настройка окружения агента
Настройка облачного окруженияСправочник по облачной песочнице
Делегирование работы агенту
Запуск сеансаОперации сеансаПоток событий сеансаПодписка на вебхукиОпределение результатовАутентификация с помощью хранилищ
Управление контекстом агента
Доступ к GitHubПрикрепление и загрузка файлов
Хранилища памятиСны
Расширенная оркестрация
Многоагентные сеансыЗапланированные развёртывания
Справочник
Справочник по управляемым агентам
Работа с файлами
Files APIПоддержка PDFИзображения и компьютерное зрение
Навыки
ОбзорРекомендацииНавыки для предприятий
MCP
Удалённые серверы MCP
Claude на облачных платформах
Claude Platform на AWS
Log in
Сны
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Управляемые агенты/Создание постоянной памяти

Сны

Позвольте Claude анализировать прошлые сессии, чтобы курировать память агента и выявлять новые инсайты.

«Dreaming» (сновидение) — это функция в режиме исследовательского предпросмотра. Запросите доступ, чтобы попробовать её.

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

Сны позволяют Claude навести в этом порядок. Сон считывает существующее хранилище памяти вместе с транскриптами прошлых сессий, а затем создаёт новое, реорганизованное хранилище памяти: дубликаты объединены, устаревшие или противоречивые записи заменены актуальными значениями, а новые инсайты выявлены.

Входное хранилище никогда не изменяется, поэтому вы можете просмотреть результат и отбросить его, если он вам не понравится.

Все запросы к Managed Agents API требуют бета-заголовка managed-agents-2026-04-01. Сны дополнительно требуют бета-заголовка dreaming-2026-04-21. SDK устанавливает их автоматически.

Как это работает

Сон — это асинхронное задание, которое принимает:

  • существующее хранилище памяти: хранилище, которое Claude проверяет, дедуплицирует и реорганизует, и
  • от 1 до 100 сессий: прошлые транскрипты, из которых Claude извлекает закономерности и инсайты для включения в результат.

Сон создаёт отдельное выходное хранилище памяти, независимое от входного. Идентификатор выходного хранилища появляется в поле outputs[] сна, как только он переходит в состояние running.

Создание сна

dream = client.beta.dreams.create(
    inputs=[
        {"type": "memory_store", "memory_store_id": store_id},
        {"type": "sessions", "session_ids": [session_a, session_b]},
    ],
    model="claude-opus-4-8",
    instructions="Focus on coding-style preferences; ignore one-off debugging notes.",
)
print(dream.id)  # drm_01...

Входные данные для сновидения включают существующее хранилище памяти и массив сессий. Выбранная модель будет выполнять конвейер сновидения; в период исследовательского предпросмотра поддерживаются claude-opus-4-8, claude-opus-4-7 и claude-sonnet-4-6. Вы можете дополнительно передать instructions, чтобы направлять процесс сновидения; см. Управление с помощью инструкций.

Ответ представляет собой полный ресурс dream со значением status: "pending":

{
  "type": "dream",
  "id": "drm_01AbCDefGhIjKlMnOpQrStUv",
  "status": "pending",
  "inputs": [
    { "type": "memory_store", "memory_store_id": "memstore_01Hx..." },
    { "type": "sessions", "session_ids": ["sesn_01...", "sesn_02..."] }
  ],
  "outputs": [],
  "model": { "id": "claude-opus-4-8" },
  "instructions": "Focus on coding-style preferences; ignore one-off debugging notes.",
  "session_id": null,
  "created_at": "2026-04-29T17:04:10Z",
  "ended_at": null,
  "archived_at": null,
  "usage": {
    "input_tokens": 0,
    "output_tokens": 0,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0
  },
  "error": null
}

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

Управление с помощью инструкций

Необязательное поле instructions управляет тем, что синтезирует конвейер сновидения. Оно применяется на всех этапах конвейера: что внимательно читать, что объединять или отбрасывать и как структурировать выходное хранилище.

Используйте instructions для высокоуровневых указаний по синтезу, таких как области фокусировки («сосредоточься на предпочтениях стиля кодирования»), содержимое, которое нужно сохранить без изменений, или соглашения о формате вывода, которые вы хотите применить ко всему хранилищу. Конвейер — это проход синтеза по входным данным, а не редактор, применяемый к тексту хранилища, поэтому императивные директивы, нацеленные на конкретные строки («измени предложение X на Y», «исправь число в разделе Z»), как правило, не дают никаких изменений. Для точечного редактирования отдельных воспоминаний используйте Memory Stores API непосредственно для выходного хранилища.

Отслеживание прогресса

Сны выполняются асинхронно и обычно занимают от нескольких минут до десятков минут в зависимости от размера входных данных. Опрашивайте сон по идентификатору, чтобы проверить статус:

while dream.status in ("pending", "running"):
    time.sleep(10)
    dream = client.beta.dreams.retrieve(dream.id)
    print(f"status={dream.status} input_tokens={dream.usage.input_tokens}")

Жизненный цикл

statusЗначение
pendingСон успешно создан и поставлен в очередь.
runningКонвейер выполняет обработку. Поле usage обновляется по мере выполнения работы.
completedУспешно завершён. Значение в outputs[] — это новое хранилище памяти.
failedВыполнение сновидения завершилось с ошибкой. Выходное хранилище памяти остаётся как есть, с тем, что было записано до сбоя.
canceledВыполнение сновидения отменено. Выходное хранилище памяти остаётся как есть.

Наблюдение за работой конвейера

Как только сон переходит в состояние running, его поле session_id указывает на базовую сессию, выполняющую конвейер. Вы можете получать события этой сессии через потоковую передачу, чтобы наблюдать в реальном времени, что сон читает и записывает. Сессия архивируется (не удаляется), когда сон достигает терминального состояния, поэтому транскрипт остаётся доступным и после завершения.

Использование результата

Когда status достигает значения completed, запись memory_store в outputs[] ссылается на полностью заполненное хранилище. Это обычное хранилище памяти в вашем рабочем пространстве. Просмотрите его с помощью Memory Stores API или в Console, а затем либо:

  • Используйте его: подключите его к будущим сессиям как ресурс memory_store вместо входного хранилища памяти (или вместе с ним), либо
  • Отбросьте его: удалите или заархивируйте его.
# After the dream ends, the output holds the rebuilt memory store
output_store_id = next(
    output.memory_store_id for output in dream.outputs if output.type == "memory_store"
)

session = client.beta.sessions.create(
    agent=agent_id,
    environment_id=environment_id,
    resources=[
        {"type": "memory_store", "memory_store_id": output_store_id},
    ],
)

Сам сон никогда не удаляет и не изменяет свои входные данные. При статусе failed или canceled выходное хранилище сохраняется с частичным содержимым, чтобы вы могли проверить, что было создано до остановки; удалите его через Memory Stores API, если оно вам не нужно.

Пока сон находится в состоянии pending или running, архивирование или удаление его выходного хранилища отклоняется с ошибкой 400. Архивирование или удаление входного хранилища или сессии во время выполнения приведёт к сбою сна с ошибкой input_memory_store_unavailable или input_session_unavailable.

Отмена сна

Отмена немедленно переводит сон из состояния pending или running в состояние canceled. Отмена уже отменённого (canceled) сна — идемпотентная операция без эффекта; отмена сна в состоянии completed или failed возвращает ошибку 400.

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

client.beta.dreams.cancel(dream.id)

Архивирование сна

Архивирование устанавливает archived_at для сна, достигшего терминального состояния (completed, failed или canceled); status остаётся без изменений. Заархивированные сны исключаются из ответов списка по умолчанию, но остаются доступными для чтения по идентификатору. Архивирование уже заархивированного сна — идемпотентная операция без эффекта. Архивирование сна в состоянии pending или running возвращает ошибку 400; сначала отмените его. Разархивирование не предусмотрено.

client.beta.dreams.archive(dream.id)

Архивирование сна не затрагивает его выходное хранилище памяти; управляйте им отдельно через Memory Stores API.

Список снов

Возвращает все незаархивированные сны в рабочем пространстве, начиная с самых новых. Используйте limit (по умолчанию 20, максимум 100) и курсор page для постраничной навигации. Передайте include_archived=true, чтобы включить заархивированные сны.

for listed_dream in client.beta.dreams.list(limit=20):
    print(listed_dream.id, listed_dream.status)

Ошибки

Ниже приведён неполный список возможных ошибок сновидения.

error.typeКогда возникает
timeoutКонвейер превысил свой бюджет времени выполнения.
internal_errorНеклассифицированный сбой конвейера.
memory_store_org_limit_exceededВаша организация достигла лимита хранилищ памяти, пока конвейер выделял рабочее хранилище.
input_memory_store_too_largeВходное хранилище памяти превышает ограничение размера конвейера.
input_memory_store_unavailableВходное хранилище памяти было заархивировано или удалено после создания сна.
input_session_unavailableВходная сессия была заархивирована или удалена после создания сна.

Тарификация

Сны тарифицируются по стандартным ставкам API за токены для выбранной вами модели; поле usage ресурса отражает точные итоговые значения. Стоимость масштабируется примерно линейно в зависимости от количества и длины входных сессий. Начните с небольшой партии сессий и увеличивайте объём, когда будете удовлетворены качеством курирования.

Ограничения

ОграничениеЗначение
Сессий на один сон100
Длина instructions4 096 символов
Поддерживаемые моделиclaude-opus-4-8, claude-opus-4-7, claude-sonnet-4-6

К созданию снов применяются стандартные ограничения скорости, пока эта функция находится в бета-версии. Обратитесь в поддержку, если вам нужны более высокие лимиты.

Was this page helpful?

  • Как это работает
  • Создание сна
  • Управление с помощью инструкций
  • Отслеживание прогресса
  • Жизненный цикл
  • Наблюдение за работой конвейера
  • Использование результата
  • Отмена сна
  • Архивирование сна
  • Список снов
  • Ошибки
  • Тарификация
  • Ограничения