Loading...
    • Разработка
    • Администрирование
    • Модели и цены
    • Client SDKs
    • API Reference
    Search...
    ⌘K
    Первые шаги
    Введение в ClaudeБыстрый старт
    Разработка с Claude
    Обзор функцийИспользование Messages APIClaude API skillОбработка причин остановки
    Возможности модели
    Extended thinkingAdaptive thinkingУсилиеБюджеты задач (бета)Быстрый режим (бета: исследовательский просмотр)Структурированные выходные данныеЦитированияПотоковая передача сообщенийПакетная обработкаРезультаты поискаПотоковая передача отказовПоддержка многоязычностиEmbeddings
    Инструменты
    ОбзорКак работает использование инструментовИнструмент веб-поискаИнструмент веб-выборкиИнструмент выполнения кодаИнструмент советникаИнструмент памятиИнструмент BashИнструмент управления компьютеромИнструмент текстового редактора
    Инфраструктура инструментов
    Справочник инструментовПоиск инструментовПрограммный вызов инструментовПотоковая передача инструментов с детализацией
    Управление контекстом
    Окна контекстаСжатиеРедактирование контекстаКэширование подсказокПодсчет токенов
    Работа с файлами
    Files APIПоддержка PDFИзображения и зрение
    Skills
    ОбзорБыстрый стартЛучшие практикиSkills для предприятияSkills в API
    MCP
    Удаленные MCP серверыMCP коннектор
    Инженерия подсказок
    ОбзорЛучшие практики подсказокИнструменты подсказок Console
    Тестирование и оценка
    Определение успеха и создание оценокИспользование инструмента оценки в ConsoleСнижение задержки
    Укрепление защиты
    Снижение галлюцинацийПовышение согласованности выходных данныхСмягчение взломовСнижение утечки подсказок
    Ресурсы
    Глоссарий
    Примечания к выпуску
    Claude Platform
    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
    • 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
    Инструменты

    Инструмент советника

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

    Инструмент советника позволяет более быстрой, менее дорогостоящей модели исполнителя консультироваться с более интеллектуальной моделью советника во время генерации для получения стратегического руководства. Советник читает полный диалог, создает план или корректировку курса (обычно 400–700 текстовых токенов, 1400–1800 токенов всего, включая мышление), и исполнитель продолжает выполнение задачи.

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

    Инструмент советника находится в бета-версии. Включите заголовок бета-версии advisor-tool-2026-03-01 в ваши запросы. Чтобы запросить доступ или поделиться отзывом, свяжитесь с вашей командой аккаунта Anthropic.

    This feature is eligible for Zero Data Retention (ZDR). When your organization has a ZDR arrangement, data sent through this feature is not stored after the API response is returned.

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

    Ранние тесты показывают значительные улучшения для этих конфигураций:

    • Вы в настоящее время используете Sonnet для сложных задач: Добавьте Opus в качестве советника для повышения качества при аналогичной или более низкой общей стоимости.
    • Вы в настоящее время используете Haiku и хотите повысить интеллект: Добавьте Opus в качестве советника. Ожидайте более высокую стоимость, чем только Haiku, но ниже, чем переключение исполнителя на более крупную модель.

    Результаты зависят от задачи. Оцените на своей собственной рабочей нагрузке.

    Was this page helpful?

    • Когда его использовать
    • Совместимость моделей
    • Доступность платформы
    • Быстрый старт
    • Как это работает
    • Параметры инструмента
    • Структура ответа
    • Успешный вызов советника
    • Варианты результатов
    • Результаты ошибок
    • Многооборотные разговоры
    • Потоковая передача
    • Использование и выставление счетов
    • Кэширование подсказок советника
    • Кэширование на стороне исполнителя
    • Кэширование на стороне советника
    • Комбинирование с другими инструментами
    • Лучшие практики
    • Подсказки для задач кодирования и агентов
    • Сопряжение с параметрами усилий
    • Контроль стоимости
    • Ограничения

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

    Совместимость моделей

    Модель исполнителя (поле model верхнего уровня) и модель советника (поле model внутри определения инструмента) должны образовывать допустимую пару. Советник должен быть по крайней мере столь же способным, как исполнитель.

    Модели исполнителяМодели советника
    Claude Haiku 4.5 (claude-haiku-4-5-20251001)Claude Opus 4.7 (claude-opus-4-7)
    Claude Sonnet 4.6 (claude-sonnet-4-6)Claude Opus 4.7 (claude-opus-4-7)
    Claude Opus 4.6 (claude-opus-4-6)Claude Opus 4.7 (claude-opus-4-7)
    Claude Opus 4.7 (claude-opus-4-7)Claude Opus 4.7 (claude-opus-4-7)

    Если вы запросите недопустимую пару, API возвращает 400 invalid_request_error, указывающий на неподдерживаемую комбинацию.

    Доступность платформы

    Инструмент советника доступен в бета-версии на Claude API (Anthropic).

    Быстрый старт

    client = anthropic.Anthropic()
    
    response = client.beta.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=4096,
        betas=["advisor-tool-2026-03-01"],
        tools=[
            {
                "type": "advisor_20260301",
                "name": "advisor",
                "model": "claude-opus-4-7",
            }
        ],
        messages=[
            {
                "role": "user",
                "content": "Build a concurrent worker pool in Go with graceful shutdown.",
            }
        ],
    )
    
    print(response)

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

    Когда вы добавляете инструмент советника в массив tools, модель исполнителя решает, когда его вызывать, как и любой другой инструмент. Когда исполнитель вызывает советника:

    1. Исполнитель выдает блок server_tool_use с name: "advisor" и пустым input. Исполнитель сигнализирует о времени; сервер предоставляет контекст.
    2. Anthropic запускает отдельный проход вывода на модели советника на стороне сервера, передавая полный транскрипт исполнителя. Советник видит системный запрос, все определения инструментов, все предыдущие ходы и все предыдущие результаты инструментов.
    3. Ответ советника возвращается исполнителю как блок advisor_tool_result.
    4. Исполнитель продолжает генерацию, информированный советом.

    Все это происходит внутри одного запроса /v1/messages. Никаких дополнительных круговых поездок с вашей стороны.

    Сам советник работает без инструментов и без управления контекстом. Его блоки мышления отбрасываются перед возвратом результата; только текст совета достигает исполнителя.

    Параметры инструмента

    ПараметрТипПо умолчаниюОписание
    typestringобязательноДолжно быть "advisor_20260301".
    namestringобязательноДолжно быть "advisor".
    modelstringобязательноID модели советника, например "claude-opus-4-7". Выставляется счет по ставкам этой модели для подвывода.
    max_usesintegerнеограниченноМаксимальное количество вызовов советника, разрешенных в одном запросе. Когда исполнитель достигает этого лимита, дальнейшие вызовы советника возвращают advisor_tool_result с error_code: "max_uses_exceeded" и исполнитель продолжает без дальнейшего совета. Это лимит на запрос, а не на разговор; см. Контроль стоимости для ограничений на уровне разговора.
    cachingobject | nullnull (выключено)Включает кэширование подсказок для собственного транскрипта советника во время вызовов в одном разговоре. См. Кэширование подсказок советника.

    Объект caching имеет форму {"type": "ephemeral", "ttl": "5m" | "1h"}. В отличие от cache_control на блоках контента, это не маркер точки разрыва; это переключатель включения/выключения. Сервер решает, где находятся границы кэша.

    Структура ответа

    Успешный вызов советника

    Когда советник вызывается, блок server_tool_use сопровождается блоком advisor_tool_result в содержимом помощника:

    {
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "Let me consult the advisor on this."
        },
        {
          "type": "server_tool_use",
          "id": "srvtoolu_abc123",
          "name": "advisor",
          "input": {}
        },
        {
          "type": "advisor_tool_result",
          "tool_use_id": "srvtoolu_abc123",
          "content": {
            "type": "advisor_result",
            "text": "Use a channel-based coordination pattern. The tricky part is draining in-flight work during shutdown: close the input channel first, then wait on a WaitGroup..."
          }
        },
        {
          "type": "text",
          "text": "Here's the implementation. I'm using a channel-based coordination pattern to avoid writer starvation..."
        }
      ]
    }

    server_tool_use.input всегда пусто. Сервер конструирует представление советника из полного транскрипта автоматически; ничто, что исполнитель помещает в input, не достигает советника.

    Варианты результатов

    Поле advisor_tool_result.content является дискриминированным объединением. Какой вариант вы получите, зависит от модели советника:

    ВариантПоляВозвращается когда
    advisor_resulttextМодель советника возвращает простой текст (например, Claude Opus 4.7).
    advisor_redacted_resultencrypted_contentМодель советника возвращает зашифрованный вывод.

    С advisor_result, поле text содержит читаемый человеком совет. С advisor_redacted_result, поле encrypted_content содержит непрозрачный блоб, который вы не можете прочитать; в следующий ход сервер расшифровывает его и отображает простой текст в подсказку исполнителя.

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

    Результаты ошибок

    Если вызов советника не удается, результат содержит ошибку:

    {
      "type": "advisor_tool_result",
      "tool_use_id": "srvtoolu_abc123",
      "content": {
        "type": "advisor_tool_result_error",
        "error_code": "overloaded"
      }
    }

    Исполнитель видит ошибку и продолжает без дальнейшего совета. Сам запрос не завершается ошибкой.

    error_codeЗначение
    max_uses_exceededЗапрос достиг лимита max_uses, установленного в определении инструмента. Дальнейшие вызовы советника в одном запросе возвращают эту ошибку.
    too_many_requestsПодвывод советника был ограничен по скорости.
    overloadedПодвывод советника столкнулся с ограничениями емкости.
    prompt_too_longТранскрипт превысил контекстное окно модели советника.
    execution_time_exceededПодвывод советника истек по времени.
    unavailableЛюбой другой отказ советника.

    Ограничения скорости советника берут из того же ведра на модель, что и прямые вызовы модели советника. Ограничение скорости на советнике появляется как too_many_requests внутри результата инструмента; ограничение скорости на исполнителе завершает весь запрос с HTTP 429.

    Многооборотные разговоры

    Передайте полное содержимое помощника, включая блоки advisor_tool_result, обратно в API в последующих ходах:

    import anthropic
    
    client = anthropic.Anthropic()
    
    tools = [
        {
            "type": "advisor_20260301",
            "name": "advisor",
            "model": "claude-opus-4-7",
        }
    ]
    
    messages = [
        {
            "role": "user",
            "content": "Build a concurrent worker pool in Go with graceful shutdown.",
        }
    ]
    
    response = client.beta.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=4096,
        betas=["advisor-tool-2026-03-01"],
        tools=tools,
        messages=messages,
    )
    
    # Append the full response content, including any advisor_tool_result blocks
    messages.append({"role": "assistant", "content": response.content})
    
    # Continue the conversation
    messages.append({"role": "user", "content": "Now add a max-in-flight limit of 10."})
    
    response = client.beta.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=4096,
        betas=["advisor-tool-2026-03-01"],
        tools=tools,
        messages=messages,
    )

    Если вы опустите инструмент советника из tools в последующем ходе, пока история сообщений все еще содержит блоки advisor_tool_result, API возвращает 400 invalid_request_error.

    Инструмент советника не имеет встроенного лимита на уровне разговора. Чтобы ограничить вызовы советника во всем разговоре, подсчитайте их на стороне клиента. Когда вы достигнете своего лимита, удалите инструмент советника из массива tools и удалите все блоки advisor_tool_result из истории сообщений, чтобы избежать 400 invalid_request_error.

    Потоковая передача

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

    Блок server_tool_use с name: "advisor" сигнализирует о том, что начинается вызов советника. Пауза начинается, когда этот блок закрывается (content_block_stop). Во время паузы поток молчит, кроме стандартных SSE ping keepalives, выдаваемых примерно каждые 30 секунд; короткие вызовы советника могут не показывать пинги.

    Когда советник завершает работу, advisor_tool_result прибывает полностью сформированным в одном событии content_block_start (без дельт). Вывод исполнителя затем возобновляет потоковую передачу.

    Событие message_delta следует с обновленным массивом usage.iterations, отражающим количество токенов советника.

    Использование и выставление счетов

    Вызовы советника работают как отдельный подвывод, выставляемый по ставкам модели советника. Использование сообщается в массиве usage.iterations[]:

    {
      "usage": {
        "input_tokens": 412,
        "cache_read_input_tokens": 0,
        "cache_creation_input_tokens": 0,
        "output_tokens": 531,
        "iterations": [
          {
            "type": "message",
            "input_tokens": 412,
            "cache_read_input_tokens": 0,
            "cache_creation_input_tokens": 0,
            "output_tokens": 89
          },
          {
            "type": "advisor_message",
            "model": "claude-opus-4-7",
            "input_tokens": 823,
            "cache_read_input_tokens": 0,
            "cache_creation_input_tokens": 0,
            "output_tokens": 1612
          },
          {
            "type": "message",
            "input_tokens": 1348,
            "cache_read_input_tokens": 412,
            "cache_creation_input_tokens": 0,
            "output_tokens": 442
          }
        ]
      }
    }

    Поля usage верхнего уровня отражают только токены исполнителя. Токены советника не включаются в итоги верхнего уровня, потому что они выставляются по другой ставке. Итерации с type: "advisor_message" выставляются по ставкам модели советника; итерации с type: "message" выставляются по ставкам модели исполнителя.

    Правила агрегирования различаются по полям. Верхний уровень output_tokens — это сумма всех итераций исполнителя. Верхний уровень input_tokens и cache_read_input_tokens отражают только первую итерацию исполнителя; входы последующих итераций исполнителя не пересчитываются, потому что они включают предыдущие выходные токены. Используйте usage.iterations для полного разбора по итерациям при построении логики отслеживания затрат.

    Вывод советника обычно составляет 400–700 текстовых токенов или 1400–1800 токенов всего, включая мышление. Экономия затрат происходит из-за того, что советник не генерирует ваш полный финальный вывод; это делает исполнитель по его более низкой ставке.

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

    Кэширование подсказок советника

    Есть два независимых уровня кэширования.

    Кэширование на стороне исполнителя

    Блок advisor_tool_result кэшируется как любой другой блок контента. Точка разрыва cache_control, размещенная после него в последующем ходе, будет попадать. Подсказка исполнителя всегда содержит простой текст совета независимо от того, получил ли ваш клиент text или encrypted_content, поэтому поведение кэширования идентично для обоих вариантов результатов.

    Кэширование на стороне советника

    Установите caching в определении инструмента, чтобы включить кэширование подсказок для собственного транскрипта советника во время вызовов в одном разговоре:

    tools = [
        {
            "type": "advisor_20260301",
            "name": "advisor",
            "model": "claude-opus-4-7",
            "caching": {"type": "ephemeral", "ttl": "5m"},
        }
    ]

    Подсказка советника при N-м вызове — это подсказка (N-1)-го вызова с одним дополнительным сегментом, поэтому префикс стабилен во время вызовов. С включенным caching, каждый вызов советника записывает запись кэша; следующий вызов читает до этой точки и платит только за дельту. Вы увидите, что cache_read_input_tokens становится ненулевым на второй и более поздних итерациях advisor_message.

    Когда его включать: Стоимость записи кэша больше, чем экономия чтения, когда советник вызывается два или менее раз за разговор. Кэширование окупается примерно при трех вызовах советника и улучшается оттуда. Включите его для длинных циклов агентов; оставьте его выключенным для коротких задач.

    Держите его последовательным: Установите caching один раз и оставьте его для всего разговора. Переключение его выключения и включения в середине разговора вызывает промахи кэша.

    clear_thinking со значением keep, отличным от "all", смещает цитируемый транскрипт советника каждый ход, вызывая промахи кэша на стороне советника. Это только деградация затрат; качество совета не затронуто. Когда расширенное мышление включено без явной конфигурации clear_thinking, API по умолчанию использует keep: {type: "thinking_turns", value: 1}, что вызывает это поведение. Установите keep: "all", чтобы сохранить стабильность кэша советника.

    Комбинирование с другими инструментами

    Инструмент советника компонуется с другими инструментами на стороне сервера и на стороне клиента. Добавьте их все в один массив tools:

    tools = [
        {
            "type": "web_search_20250305",
            "name": "web_search",
            "max_uses": 5,
        },
        {
            "type": "advisor_20260301",
            "name": "advisor",
            "model": "claude-opus-4-7",
        },
        {
            "name": "run_bash",
            "description": "Run a bash command",
            "input_schema": {
                "type": "object",
                "properties": {"command": {"type": "string"}},
            },
        },
    ]

    Исполнитель может искать в Интернете, вызывать советника и использовать ваши пользовательские инструменты в одном ходе. План советника может информировать, какие инструменты исполнитель будет использовать дальше.

    ФункцияВзаимодействие
    Пакетная обработкаПоддерживается. usage.iterations сообщается за элемент.
    Подсчет токеновВозвращает только входные токены первой итерации исполнителя. Для приблизительной оценки советника вызовите count_tokens с model, установленным на модель советника и теми же сообщениями.
    Редактирование контекстаclear_tool_uses еще не полностью совместим с блоками инструмента советника; полная поддержка планируется для последующего выпуска. С clear_thinking см. предупреждение о кэшировании выше.
    pause_turnЗависающий вызов советника завершает ответ с stop_reason: "pause_turn" и блоком server_tool_use как последний блок контента. Советник выполняется при возобновлении. См. Инструменты сервера.

    Лучшие практики

    Подсказки для задач кодирования и агентов

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

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

    1. Ранний первый вызов советника, после того как в транскрипте есть несколько исследовательских чтений.
    2. Для сложных задач, финальный вызов советника после записей файлов и выводов тестов в транскрипте.

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

    Предлагаемая системная подсказка для задач кодирования

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

    Руководство по времени:

    You have access to an `advisor` tool backed by a stronger reviewer model. It takes NO parameters — when you call advisor(), your entire conversation history is automatically forwarded. They see the task, every tool call you've made, every result you've seen.
    
    Call advisor BEFORE substantive work — before writing, before committing to an interpretation, before building on an assumption. If the task requires orientation first (finding files, fetching a source, seeing what's there), do that, then call advisor. Orientation is not substantive work. Writing, editing, and declaring an answer are.
    
    Also call advisor:
    - When you believe the task is complete. BEFORE this call, make your deliverable durable: write the file, save the result, commit the change. The advisor call takes time; if the session ends during it, a durable result persists and an unwritten one doesn't.
    - When stuck — errors recurring, approach not converging, results that don't fit.
    - When considering a change of approach.
    
    On tasks longer than a few steps, call advisor at least once before committing to an approach and once before declaring done. On short reactive tasks where the next action is dictated by tool output you just read, you don't need to keep calling — the advisor adds most of its value on the first call, before the approach crystallizes.

    Как исполнитель должен относиться к совету (поместите сразу после блока времени):

    Give the advice serious weight. If you follow a step and it fails empirically, or you have primary-source evidence that contradicts a specific claim (the file says X, the paper states Y), adapt. A passing self-test is not evidence the advice is wrong — it's evidence your test doesn't check what the advice is checking.
    
    If you've already retrieved data pointing one way and the advisor points another: don't silently switch. Surface the conflict in one more advisor call — "I found X, you suggest Y, which constraint breaks the tie?" The advisor saw your evidence but may have underweighted it; a reconcile call is cheaper than committing to the wrong branch.

    Сокращение длины вывода советника

    Вывод советника — это самый большой фактор стоимости советника. Чтобы снизить эту стоимость, добавьте одну инструкцию по краткости в начало системной подсказки перед любым другим предложением, которое упоминает советника. При внутреннем тестировании следующая строка сократила общие выходные токены советника примерно на 35–45 процентов без изменения частоты вызовов:

    The advisor should respond in under 100 words and use enumerated steps, not explanations.

    Объедините это с блоком времени выше для самого сильного компромисса между стоимостью и качеством.

    Сопряжение с параметрами усилий

    Для задач кодирования, сопряжение исполнителя Sonnet на среднем усилии с советником Opus достигает интеллекта, сравнимого с Sonnet при усилии по умолчанию, при более низкой стоимости. Для максимального интеллекта держите исполнителя при усилии по умолчанию.

    Контроль стоимости

    • Для бюджетов на уровне разговора подсчитайте вызовы советника на стороне клиента. Когда вы достигнете своего лимита, удалите инструмент советника из tools и удалите все блоки advisor_tool_result из истории сообщений, чтобы избежать 400 invalid_request_error.
    • Включите caching только для разговоров, где вы ожидаете три или более вызовов советника.

    Ограничения

    • Вывод советника не потоковый. Ожидайте паузу в потоке во время работы подвывода.
    • Нет встроенного лимита на уровне разговора для вызовов советника. Отслеживайте и ограничивайте их на стороне клиента.
    • max_tokens применяется только к выводу исполнителя. Он не ограничивает токены советника.
    • Anthropic Priority Tier соблюдается для каждой модели. Priority Tier на модели исполнителя не распространяется на советника; вам нужен Priority Tier специально на модели советника.