Loading...
    • Руководство разработчика
    • Справочник API
    • MCP
    • Ресурсы
    • Примечания к выпуску
    Search...
    ⌘K
    Первые шаги
    Введение в ClaudeБыстрый старт
    Модели и цены
    Обзор моделейВыбор моделиЧто нового в Claude 4.5Миграция на Claude 4.5Устаревшие моделиЦены
    Разработка с Claude
    Обзор функцийИспользование Messages APIКонтекстные окнаЛучшие практики промптинга
    Возможности
    Кэширование промптовРедактирование контекстаРасширенное мышлениеУсилиеПотоковая передача сообщенийПакетная обработкаЦитированияМногоязычная поддержкаПодсчет токеновEmbeddingsЗрениеПоддержка PDFFiles APIРезультаты поискаСтруктурированные выходные данные
    Инструменты
    ОбзорКак реализовать использование инструментовЭффективное использование инструментов по токенамПотоковая передача инструментов с детализациейИнструмент BashИнструмент выполнения кодаПрограммное вызывание инструментовИнструмент компьютерного управленияИнструмент текстового редактораИнструмент веб-выборкиИнструмент веб-поискаИнструмент памятиИнструмент поиска инструментов
    Навыки агента
    ОбзорБыстрый стартЛучшие практикиИспользование навыков с API
    Agent SDK
    ОбзорTypeScript SDKPython SDKРуководство по миграции
    MCP в API
    MCP коннекторУдаленные MCP серверы
    Claude на платформах третьих сторон
    Amazon BedrockMicrosoft FoundryVertex AI
    Инженерия промптов
    ОбзорГенератор промптовИспользование шаблонов промптовУлучшитель промптовБудьте ясны и прямолинейныИспользуйте примеры (многошаговый промптинг)Дайте Claude подумать (CoT)Используйте XML тегиДайте Claude роль (системные промпты)Предзаполните ответ ClaudeЦепочка сложных промптовСоветы по длинному контекстуСоветы по расширенному мышлению
    Тестирование и оценка
    Определение критериев успехаРазработка тестовых случаевИспользование инструмента оценкиСнижение задержки
    Усиление защиты
    Снижение галлюцинацийУвеличение согласованности выходных данныхСмягчение взломовПотоковые отказыСнижение утечки промптовДержите Claude в образе
    Администрирование и мониторинг
    Обзор Admin APIAPI использования и затратClaude Code Analytics API
    Console
    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
    • Catalog
    • 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
    • Catalog
    • 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 сохранять и извлекать информацию между разговорами через каталог файлов памяти.

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

    Инструмент памяти работает на стороне клиента — вы контролируете, где и как хранятся данные, через вашу собственную инфраструктуру.

    Инструмент памяти в настоящее время находится в бета-версии. Чтобы включить его, используйте заголовок бета-версии context-management-2025-06-27 в ваших запросах API.

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

    Варианты использования

    • Сохранение контекста проекта между несколькими выполнениями агента
    • Обучение на основе прошлых взаимодействий, решений и отзывов
    • Построение баз знаний с течением времени
    • Включение кросс-разговорного обучения, где Claude улучшается при повторяющихся рабочих процессах

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

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

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

    Пример: как работают вызовы инструмента памяти

    Когда вы просите Claude помочь с задачей, Claude автоматически сначала проверяет каталог памяти. Вот как выглядит типичное взаимодействие:

    1. Запрос пользователя:

    "Help me respond to this customer service ticket."

    2. Claude проверяет каталог памяти:

    "I'll help you respond to the customer service ticket. Let me check my memory for any previous context."

    Claude вызывает инструмент памяти:

    {
      "type": "tool_use",
      "id": "toolu_01C4D5E6F7G8H9I0J1K2L3M4",
      "name": "memory",
      "input": {
        "command": "view",
        "path": "/memories"
      }
    }

    3. Ваше приложение возвращает содержимое каталога:

    {
      "type": "tool_result",
      "tool_use_id": "toolu_01C4D5E6F7G8H9I0J1K2L3M4",
      "content": "Directory: /memories\n- customer_service_guidelines.xml\n- refund_policies.xml"
    }

    4. Claude читает релевантные файлы:

    {
      "type": "tool_use",
      "id": "toolu_01D5E6F7G8H9I0J1K2L3M4N5",
      "name": "memory",
      "input": {
        "command": "view",
        "path": "/memories/customer_service_guidelines.xml"
      }
    }

    5. Ваше приложение возвращает содержимое файла:

    {
      "type": "tool_result",
      "tool_use_id": "toolu_01D5E6F7G8H9I0J1K2L3M4N5",
      "content": "<guidelines>\n<addressing_customers>\n- Always address customers by their first name\n- Use empathetic language\n..."
    }

    6. Claude использует память для помощи:

    "Based on your customer service guidelines, I can help you craft a response. Please share the ticket details..."

    Поддерживаемые модели

    Инструмент памяти доступен на:

    • Claude Sonnet 4.5 (claude-sonnet-4-5-20250929)
    • Claude Sonnet 4 (claude-sonnet-4-20250514)
    • Claude Haiku 4.5 (claude-haiku-4-5-20251001)
    • Claude Opus 4.5 (claude-opus-4-5-20251101)
    • Claude Opus 4.1 (claude-opus-4-1-20250805)
    • Claude Opus 4 (claude-opus-4-20250514)

    Начало работы

    Чтобы использовать инструмент памяти:

    1. Включите заголовок бета-версии context-management-2025-06-27 в ваши запросы API
    2. Добавьте инструмент памяти в ваш запрос
    3. Реализуйте обработчики на стороне клиента для операций с памятью

    Для обработки операций инструмента памяти в вашем приложении вам необходимо реализовать обработчики для каждой команды памяти. Наши SDK предоставляют помощники инструмента памяти, которые обрабатывают интерфейс инструмента — вы можете создать подкласс BetaAbstractMemoryTool (Python) или использовать betaMemoryTool (TypeScript) для реализации вашего собственного бэкенда памяти (на основе файлов, базы данных, облачного хранилища, зашифрованные файлы и т. д.).

    Для рабочих примеров см.:

    • Python: examples/memory/basic.py
    • TypeScript: examples/tools-helpers-memory.ts

    Базовое использование

    curl https://api.anthropic.com/v1/messages \
        --header "x-api-key: $ANTHROPIC_API_KEY" \
        --header "anthropic-version: 2023-06-01" \
        --header "content-type: application/json" \
        --header "anthropic-beta: context-management-2025-06-27" \
        --data '{
            "model": "claude-sonnet-4-5",
            "max_tokens": 2048,
            "messages": [
                {
                    "role": "user",
                    "content": "I'\''m working on a Python web scraper that keeps crashing with a timeout error. Here'\''s the problematic function:\n\n```python\ndef fetch_page(url, retries=3):\n    for i in range(retries):\n        try:\n            response = requests.get(url, timeout=5)\n            return response.text\n        except requests.exceptions.Timeout:\n            if i == retries - 1:\n                raise\n            time.sleep(1)\n```\n\nPlease help me debug this."
                }
            ],
            "tools": [{
                "type": "memory_20250818",
                "name": "memory"
            }]
        }'

    Команды инструмента

    Ваша реализация на стороне клиента должна обрабатывать эти команды инструмента памяти:

    view

    Показывает содержимое каталога или содержимое файла с необязательными диапазонами строк:

    {
      "command": "view",
      "path": "/memories",
      "view_range": [1, 10]  // Optional: view specific lines
    }

    create

    Создать или перезаписать файл:

    {
      "command": "create",
      "path": "/memories/notes.txt",
      "file_text": "Meeting notes:\n- Discussed project timeline\n- Next steps defined\n"
    }

    str_replace

    Заменить текст в файле:

    {
      "command": "str_replace",
      "path": "/memories/preferences.txt",
      "old_str": "Favorite color: blue",
      "new_str": "Favorite color: green"
    }

    insert

    Вставить текст в определённую строку:

    {
      "command": "insert",
      "path": "/memories/todo.txt",
      "insert_line": 2,
      "insert_text": "- Review memory tool documentation\n"
    }

    delete

    Удалить файл или каталог:

    {
      "command": "delete",
      "path": "/memories/old_file.txt"
    }

    rename

    Переименовать или переместить файл/каталог:

    {
      "command": "rename",
      "old_path": "/memories/draft.txt",
      "new_path": "/memories/final.txt"
    }

    Рекомендации по подсказкам

    Мы автоматически включаем эту инструкцию в системную подсказку, когда включен инструмент памяти:

    IMPORTANT: ALWAYS VIEW YOUR MEMORY DIRECTORY BEFORE DOING ANYTHING ELSE.
    MEMORY PROTOCOL:
    1. Use the `view` command of your `memory` tool to check for earlier progress.
    2. ... (work on the task) ...
         - As you make progress, record status / progress / thoughts etc in your memory.
    ASSUME INTERRUPTION: Your context window might be reset at any moment, so you risk losing any progress that is not recorded in your memory directory.

    Если вы заметите, что Claude создаёт загромождённые файлы памяти, вы можете включить эту инструкцию:

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

    Вы также можете направить то, что Claude записывает в память, например: «Записывайте в вашу систему памяти только информацию, релевантную <topic>».

    Соображения безопасности

    Вот важные проблемы безопасности при реализации вашего хранилища памяти:

    Конфиденциальная информация

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

    Размер хранилища файлов памяти

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

    Истечение памяти

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

    Защита от обхода пути

    Вредоносные входные пути могут попытаться получить доступ к файлам вне каталога /memories. Ваша реализация ДОЛЖНА проверять все пути, чтобы предотвратить атаки обхода каталогов.

    Рассмотрите эти меры защиты:

    • Проверьте, что все пути начинаются с /memories
    • Разрешите пути в их каноническую форму и проверьте, что они остаются в каталоге памяти
    • Отклоняйте пути, содержащие последовательности типа ../, ..\\ или другие шаблоны обхода
    • Следите за URL-кодированными последовательностями обхода (%2e%2e%2f)
    • Используйте встроенные утилиты безопасности пути вашего языка (например, pathlib.Path.resolve() и relative_to() в Python)

    Обработка ошибок

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

    Использование с редактированием контекста

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

    Как они работают вместе

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

    После очистки результатов инструментов Claude может извлекать сохранённую информацию из файлов памяти всякий раз, когда это необходимо, эффективно рассматривая память как расширение своего рабочего контекста. Это позволяет Claude:

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

    Пример рабочего процесса

    Рассмотрим проект рефакторинга кода с множеством операций с файлами:

    1. Claude делает многочисленные правки в файлы, генерируя много результатов инструментов
    2. По мере роста контекста и приближения к вашему порогу Claude получает предупреждение
    3. Claude суммирует сделанные до сих пор изменения в файл памяти (например, /memories/refactoring_progress.xml)
    4. Редактирование контекста автоматически очищает более старые результаты инструментов
    5. Claude продолжает работу, ссылаясь на файл памяти, когда ему нужно вспомнить, какие изменения уже были завершены
    6. Рабочий процесс может продолжаться бесконечно, с Claude управляющим как активным контекстом, так и постоянной памятью

    Конфигурация

    Чтобы использовать обе функции вместе:

    response = client.beta.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=4096,
        messages=[...],
        tools=[
            {
                "type": "memory_20250818",
                "name": "memory"
            },
            # Your other tools
        ],
        betas=["context-management-2025-06-27"],
        context_management={
            "edits": [
                {
                    "type": "clear_tool_uses_20250919",
                    "trigger": {
                        "type": "input_tokens",
                        "value": 100000
                    },
                    "keep": {
                        "type": "tool_uses",
                        "value": 3
                    }
                }
            ]
        }
    )

    Вы также можете исключить вызовы инструмента памяти из очистки, чтобы убедиться, что Claude всегда имеет доступ к недавним операциям памяти:

    context_management={
        "edits": [
            {
                "type": "clear_tool_uses_20250919",
                "exclude_tools": ["memory"]
            }
        ]
    }
    • Варианты использования
    • Как это работает
    • Пример: как работают вызовы инструмента памяти
    • Поддерживаемые модели
    • Начало работы
    • Базовое использование
    • Команды инструмента
    • view
    • create
    • str_replace
    • insert
    • delete
    • rename
    • Рекомендации по подсказкам
    • Соображения безопасности
    • Конфиденциальная информация
    • Размер хранилища файлов памяти
    • Истечение памяти
    • Защита от обхода пути
    • Обработка ошибок
    • Использование с редактированием контекста
    • Как они работают вместе
    • Пример рабочего процесса
    • Конфигурация