Инструмент использования компьютера
Claude может взаимодействовать с компьютерными средами через инструмент использования компьютера, который предоставляет возможности создания скриншотов и управления мышью/клавиатурой для автономного взаимодействия с рабочим столом.
Claude может взаимодействовать с компьютерными средами через инструмент использования компьютера, который предоставляет возможности создания скриншотов и управления мышью/клавиатурой для автономного взаимодействия с рабочим столом.
Использование компьютера в настоящее время находится в бета-версии и требует бета-заголовка:
"computer-use-2025-01-24"
(модели Claude 4 и 3.7)"computer-use-2024-10-22"
(Claude Sonnet 3.5)
Обзор
Использование компьютера - это бета-функция, которая позволяет Claude взаимодействовать со средами рабочего стола. Этот инструмент предоставляет:
- Захват скриншотов: Видеть то, что в настоящее время отображается на экране
- Управление мышью: Кликать, перетаскивать и перемещать курсор
- Ввод с клавиатуры: Печатать текст и использовать сочетания клавиш
- Автоматизация рабочего стола: Взаимодействовать с любым приложением или интерфейсом
Хотя использование компьютера может быть дополнено другими инструментами, такими как bash и текстовый редактор, для более комплексных рабочих процессов автоматизации, использование компьютера конкретно относится к способности инструмента использования компьютера видеть и управлять средами рабочего стола.
Совместимость моделей
Использование компьютера доступно для следующих моделей Claude:
Модель | Версия инструмента | Бета-флаг |
---|---|---|
Claude 4 Opus & Sonnet | computer_20250124 | computer-use-2025-01-24 |
Claude Sonnet 3.7 | computer_20250124 | computer-use-2025-01-24 |
Claude Sonnet 3.5 (новый) | computer_20241022 | computer-use-2024-10-22 |
Модели Claude 4 используют обновленные версии инструментов, оптимизированные для новой архитектуры. Claude Sonnet 3.7 вводит дополнительные возможности, включая функцию мышления для большего понимания процесса рассуждения модели.
Соображения безопасности
Использование компьютера - это бета-функция с уникальными рисками, отличными от стандартных функций API. Эти риски усиливаются при взаимодействии с интернетом. Для минимизации рисков рассмотрите принятие мер предосторожности, таких как:
- Используйте выделенную виртуальную машину или контейнер с минимальными привилегиями для предотвращения прямых системных атак или несчастных случаев.
- Избегайте предоставления модели доступа к конфиденциальным данным, таким как информация для входа в аккаунт, для предотвращения кражи информации.
- Ограничьте доступ в интернет списком разрешенных доменов для снижения воздействия вредоносного контента.
- Попросите человека подтвердить решения, которые могут привести к значимым последствиям в реальном мире, а также любые задачи, требующие утвердительного согласия, такие как принятие файлов cookie, выполнение финансовых транзакций или согласие с условиями обслуживания.
В некоторых обстоятельствах Claude будет следовать командам, найденным в контенте, даже если это противоречит инструкциям пользователя. Например, инструкции Claude на веб-страницах или содержащиеся в изображениях могут переопределить инструкции или заставить Claude совершить ошибки. Мы предлагаем принять меры предосторожности для изоляции Claude от конфиденциальных данных и действий, чтобы избежать рисков, связанных с инъекцией промптов.
Мы обучили модель сопротивляться этим инъекциям промптов и добавили дополнительный уровень защиты. Если вы используете наши инструменты использования компьютера, мы автоматически запустим классификаторы на ваших промптах для выявления потенциальных случаев инъекций промптов. Когда эти классификаторы идентифицируют потенциальные инъекции промптов в скриншотах, они автоматически направят модель запросить подтверждение пользователя перед продолжением следующего действия. Мы признаем, что эта дополнительная защита не будет идеальной для каждого случая использования (например, случаи использования без человека в цикле), поэтому если вы хотите отказаться и отключить это, пожалуйста, свяжитесь с нами.
Мы все еще предлагаем принимать меры предосторожности для изоляции Claude от конфиденциальных данных и действий, чтобы избежать рисков, связанных с инъекцией промптов.
Наконец, пожалуйста, информируйте конечных пользователей о соответствующих рисках и получите их согласие перед включением использования компьютера в ваших собственных продуктах.
Эталонная реализация использования компьютера
Быстро начните работу с нашей эталонной реализацией использования компьютера, которая включает веб-интерфейс, Docker-контейнер, примеры реализации инструментов и цикл агента.
Примечание: Реализация была обновлена для включения новых инструментов как для Claude 4, так и для Claude Sonnet 3.7. Обязательно загрузите последнюю версию репозитория для доступа к этим новым функциям.
Пожалуйста, используйте эту форму для предоставления обратной связи о качестве ответов модели, самом API или качестве документации - мы не можем дождаться, чтобы услышать от вас!
Быстрый старт
Вот как начать работу с использованием компьютера:
Требования к бета-заголовку:
- Claude 4 и Sonnet 3.7: Бета-заголовок требуется только для инструмента использования компьютера
- Claude Sonnet 3.5: Бета-заголовок требуется для инструментов компьютера, bash и текстового редактора
Приведенный выше пример показывает использование всех трех инструментов вместе, что требует бета-заголовка для любой модели Claude, поскольку включает инструмент использования компьютера.
Как работает использование компьютера
1. Предоставьте Claude инструмент использования компьютера и пользовательский промпт
- Добавьте инструмент использования компьютера (и опционально другие инструменты) в ваш API-запрос.
- Включите пользовательский промпт, который требует взаимодействия с рабочим столом, например, “Сохрани картинку кота на мой рабочий стол.”
2. Claude решает использовать инструмент использования компьютера
- Claude оценивает, может ли инструмент использования компьютера помочь с запросом пользователя.
- Если да, Claude создает правильно отформатированный запрос на использование инструмента.
- API-ответ имеет
stop_reason
равныйtool_use
, сигнализируя о намерении Claude.
3. Извлеките входные данные инструмента, оцените инструмент на компьютере и верните результаты
- С вашей стороны извлеките имя инструмента и входные данные из запроса Claude.
- Используйте инструмент на контейнере или виртуальной машине.
- Продолжите разговор с новым сообщением
user
, содержащим блок контентаtool_result
.
4. Claude продолжает вызывать инструменты использования компьютера, пока не завершит задачу
- Claude анализирует результаты инструмента, чтобы определить, нужно ли больше использования инструментов или задача завершена.
- Если Claude решает, что ему нужен другой инструмент, он отвечает с другим
stop_reason
tool_use
, и вы должны вернуться к шагу 3. - В противном случае он создает текстовый ответ пользователю.
Мы называем повторение шагов 3 и 4 без пользовательского ввода “циклом агента” - то есть Claude отвечает запросом на использование инструмента, а ваше приложение отвечает Claude результатами оценки этого запроса.
Вычислительная среда
Использование компьютера требует изолированной вычислительной среды, где Claude может безопасно взаимодействовать с приложениями и веб. Эта среда включает:
-
Виртуальный дисплей: Виртуальный сервер дисплея X11 (использующий Xvfb), который отображает интерфейс рабочего стола, который Claude будет видеть через скриншоты и управлять действиями мыши/клавиатуры.
-
Среда рабочего стола: Легкий пользовательский интерфейс с менеджером окон (Mutter) и панелью (Tint2), работающий на Linux, который предоставляет последовательный графический интерфейс для взаимодействия Claude.
-
Приложения: Предустановленные приложения Linux, такие как Firefox, LibreOffice, текстовые редакторы и файловые менеджеры, которые Claude может использовать для выполнения задач.
-
Реализации инструментов: Код интеграции, который переводит абстрактные запросы инструментов Claude (такие как “переместить мышь” или “сделать скриншот”) в фактические операции в виртуальной среде.
-
Цикл агента: Программа, которая обрабатывает связь между Claude и средой, отправляя действия Claude в среду и возвращая результаты (скриншоты, выводы команд) обратно Claude.
Когда вы используете использование компьютера, Claude не подключается напрямую к этой среде. Вместо этого ваше приложение:
- Получает запросы на использование инструментов Claude
- Переводит их в действия в вашей вычислительной среде
- Захватывает результаты (скриншоты, выводы команд и т.д.)
- Возвращает эти результаты Claude
Для безопасности и изоляции эталонная реализация запускает все это внутри Docker-контейнера с соответствующими сопоставлениями портов для просмотра и взаимодействия со средой.
Как реализовать использование компьютера
Начните с нашей эталонной реализации
Мы создали эталонную реализацию, которая включает все необходимое для быстрого начала работы с использованием компьютера:
- Контейнеризованная среда, подходящая для использования компьютера с Claude
- Реализации инструментов использования компьютера
- Цикл агента, который взаимодействует с Anthropic API и выполняет инструменты использования компьютера
- Веб-интерфейс для взаимодействия с контейнером, циклом агента и инструментами.
Понимание многоагентного цикла
Ядром использования компьютера является “цикл агента” - цикл, где Claude запрашивает действия инструментов, ваше приложение выполняет их и возвращает результаты Claude. Вот упрощенный пример:
Цикл продолжается до тех пор, пока либо Claude не ответит без запроса каких-либо инструментов (завершение задачи), либо не будет достигнут максимальный лимит итераций. Эта защита предотвращает потенциальные бесконечные циклы, которые могут привести к неожиданным затратам API.
При использовании инструмента использования компьютера вы должны включить соответствующий бета-флаг для вашей версии модели:
Примечание: Для Claude 4 и Sonnet 3.7 бета-флаг требуется только для инструмента использования компьютера. Для Claude Sonnet 3.5 бета-флаг требуется для инструментов компьютера, bash и текстового редактора.
Мы рекомендуем попробовать эталонную реализацию перед чтением остальной части этой документ
Оптимизация производительности модели с помощью промптинга
Вот несколько советов о том, как получить лучшие качественные выходы:
- Указывайте простые, четко определенные задачи и предоставляйте явные инструкции для каждого шага.
- Claude иногда предполагает результаты своих действий, не проверяя их результаты явно. Чтобы предотвратить это, вы можете подсказать Claude:
После каждого шага делайте скриншот и тщательно оценивайте, достигли ли вы правильного результата. Явно покажите свое мышление: "Я оценил шаг X..." Если не правильно, попробуйте снова. Только когда вы подтвердите, что шаг был выполнен правильно, следует переходить к следующему.
- Некоторые элементы пользовательского интерфейса (такие как выпадающие списки и полосы прокрутки) могут быть сложными для Claude для манипулирования с помощью движений мыши. Если вы столкнетесь с этим, попробуйте подсказать модели использовать сочетания клавиш.
- Для повторяемых задач или взаимодействий с пользовательским интерфейсом включите примеры скриншотов и вызовов инструментов успешных результатов в ваш промпт.
- Если вам нужно, чтобы модель вошла в систему, предоставьте ей имя пользователя и пароль в вашем промпте внутри xml-тегов, таких как
<robot_credentials>
. Использование использования компьютера в приложениях, которые требуют входа в систему, увеличивает риск плохих результатов в результате инъекции промптов. Пожалуйста, ознакомьтесь с нашим руководством по смягчению инъекций промптов перед предоставлением модели учетных данных для входа.
Если вы неоднократно сталкиваетесь с четким набором проблем или заранее знаете задачи, которые Claude нужно будет выполнить, используйте системный промпт для предоставления Claude явных советов или инструкций о том, как успешно выполнять задачи.
Системные промпты
Когда один из инструментов, определенных Anthropic, запрашивается через Anthropic API, генерируется системный промпт, специфичный для использования компьютера. Он похож на системный промпт использования инструментов, но начинается с:
У вас есть доступ к набору функций, которые вы можете использовать для ответа на вопрос пользователя. Это включает доступ к изолированной вычислительной среде. В настоящее время у вас НЕТ возможности проверять файлы или взаимодействовать с внешними ресурсами, кроме как путем вызова нижеприведенных функций.
Как и при обычном использовании инструментов, предоставленное пользователем поле system_prompt
все еще учитывается и используется при построении объединенного системного промпта.
Доступные действия
Инструмент использования компьютера поддерживает эти действия:
Базовые действия (все версии)
- screenshot - Захватить текущий дисплей
- left_click - Кликнуть по координатам
[x, y]
- type - Напечатать текстовую строку
- key - Нажать клавишу или комбинацию клавиш (например, “ctrl+s”)
- mouse_move - Переместить курсор к координатам
Расширенные действия (computer_20250124
)
Доступно в Claude 4 и Claude Sonnet 3.7:
- scroll - Прокручивать в любом направлении с контролем количества
- left_click_drag - Кликнуть и перетащить между координатами
- right_click, middle_click - Дополнительные кнопки мыши
- double_click, triple_click - Множественные клики
- left_mouse_down, left_mouse_up - Тонкий контроль кликов
- hold_key - Удерживать клавишу при выполнении других действий
- wait - Пауза между действиями
Параметры инструмента
Параметр | Обязательный | Описание |
---|---|---|
type | Да | Версия инструмента (computer_20250124 или computer_20241022 ) |
name | Да | Должно быть “computer” |
display_width_px | Да | Ширина дисплея в пикселях |
display_height_px | Да | Высота дисплея в пикселях |
display_number | Нет | Номер дисплея для сред X11 |
Держите разрешение дисплея на уровне или ниже 1280x800 (WXGA) для лучшей производительности. Более высокие разрешения могут вызвать проблемы с точностью из-за изменения размера изображения.
Важно: Инструмент использования компьютера должен быть явно выполнен вашим приложением - Claude не может выполнить его напрямую. Вы несете ответственность за реализацию захвата скриншотов, движений мыши, ввода с клавиатуры и других действий на основе запросов Claude.
Включение возможности мышления в Claude 4 и Claude Sonnet 3.7
Claude Sonnet 3.7 представил новую возможность “мышления”, которая позволяет вам видеть процесс рассуждения модели при работе над сложными задачами. Эта функция помогает вам понять, как Claude подходит к проблеме, и может быть особенно ценной для отладки или образовательных целей.
Чтобы включить мышление, добавьте параметр thinking
в ваш API-запрос:
Параметр budget_tokens
указывает, сколько токенов Claude может использовать для мышления. Это вычитается из вашего общего бюджета max_tokens
.
Когда мышление включено, Claude вернет свой процесс рассуждения как часть ответа, что может помочь вам:
- Понять процесс принятия решений модели
- Выявить потенциальные проблемы или заблуждения
- Учиться на подходе Claude к решению проблем
- Получить больше видимости в сложные многошаговые операции
Вот пример того, как может выглядеть вывод мышления:
Дополнение использования компьютера другими инструментами
Инструмент использования компьютера может быть объединен с другими инструментами для создания более мощных рабочих процессов автоматизации. Это особенно полезно, когда вам нужно:
- Выполнять системные команды (инструмент bash)
- Редактировать конфигурационные файлы или скрипты (инструмент текстового редактора)
- Интегрироваться с пользовательскими API или сервисами (пользовательские инструменты)
Создание пользовательской среды использования компьютера
Эталонная реализация предназначена для того, чтобы помочь вам начать работу с использованием компьютера. Она включает все компоненты, необходимые для того, чтобы Claude использовал компьютер. Однако вы можете создать свою собственную среду для использования компьютера в соответствии с вашими потребностями. Вам понадобится:
- Виртуализированная или контейнеризованная среда, подходящая для использования компьютера с Claude
- Реализация по крайней мере одного из инструментов использования компьютера, определенных Anthropic
- Цикл агента, который взаимодействует с Anthropic API и выполняет результаты
tool_use
с использованием ваших реализаций инструментов - API или пользовательский интерфейс, который позволяет пользовательский ввод для запуска цикла агента
Реализация инструмента использования компьютера
Инструмент использования компьютера реализован как инструмент без схемы. При использовании этого инструмента вам не нужно предоставлять входную схему, как с другими инструментами; схема встроена в модель Claude и не может быть изменена.
Настройте вашу вычислительную среду
Создайте виртуальный дисплей или подключитесь к существующему дисплею, с которым будет взаимодействовать Claude. Это обычно включает настройку Xvfb (X Virtual Framebuffer) или аналогичной технологии.
Реализуйте обработчики действий
Создайте функции для обработки каждого типа действия, которое может запросить Claude:
Обработайте вызовы инструментов Claude
Извлеките и выполните вызовы инструментов из ответов Claude:
Реализуйте цикл агента
Создайте цикл, который продолжается до тех пор, пока Claude не завершит задачу:
Обработка ошибок
При реализации инструмента использования компьютера могут возникнуть различные ошибки. Вот как их обрабатывать:
Следуйте лучшим практикам реализации
Понимание ограничений использования компьютера
Функциональность использования компьютера находится в бета-версии. Хотя возможности Claude являются передовыми, разработчики должны знать о его ограничениях:
- Задержка: текущая задержка использования компьютера для взаимодействий человек-ИИ может быть слишком медленной по сравнению с обычными действиями компьютера, направляемыми человеком. Мы рекомендуем сосредоточиться на случаях использования, где скорость не критична (например, сбор фоновой информации, автоматизированное тестирование программного обеспечения) в доверенных средах.
- Точность и надежность компьютерного зрения: Claude может совершать ошибки или галлюцинировать при выводе конкретных координат при генерации действий. Claude Sonnet 3.7 вводит возможность мышления, которая может помочь вам понять рассуждения модели и выявить потенциальные проблемы.
- Точность и надежность выбора инструментов: Claude может совершать ошибки или галлюцинировать при выборе инструментов при генерации действий или предпринимать неожиданные действия для решения проблем. Кроме того, надежность может быть ниже при взаимодействии с нишевыми приложениями или несколькими приложениями одновременно. Мы рекомендуем пользователям тщательно подсказывать модели при запросе сложных задач.
- Надежность прокрутки: Хотя Claude Sonnet 3.5 (новый) имел ограничения с прокруткой, Claude Sonnet 3.7 вводит выделенные действия прокрутки с контролем направления, что улучшает надежность. Модель теперь может явно прокручивать в любом направлении (вверх/вниз/влево/вправо) на указанное количество.
- Взаимодействие с электронными таблицами: Клики мыши для взаимодействия с электронными таблицами улучшились в Claude Sonnet 3.7 с добавлением более точных действий управления мышью, таких как
left_mouse_down
,left_mouse_up
и новая поддержка клавиш-модификаторов. Выбор ячеек может быть более надежным при использовании этих тонких элементов управления и комбинировании клавиш-модификаторов с кликами. - Создание аккаунтов и генерация контента на социальных и коммуникационных платформах: Хотя Claude будет посещать веб-сайты, мы ограничиваем его способность создавать аккаунты или генерировать и делиться контентом или иным образом участвовать в имитации человека на веб-сайтах и платформах социальных сетей. Мы можем обновить эту возможность в будущем.
- Уязвимости: Уязвимости, такие как джейлбрейкинг или инъекция промптов, могут сохраняться в передовых системах ИИ, включая бета-API использования компьютера. В некоторых обстоятельствах Claude будет следовать командам, найденным в контенте, иногда даже в конфликте с инструкциями пользователя. Например, инструкции Claude на веб-страницах или содержащиеся в изображениях могут переопределить инструкции или заставить Claude совершить ошибки. Мы рекомендуем: a. Ограничить использование компьютера доверенными средами, такими как виртуальные машины или контейнеры с минимальными привилегиями b. Избегать предоставления использованию компьютера доступа к конфиденциальным аккаунтам или данным без строгого надзора c. Информировать конечных пользователей о соответствующих рисках и получать их согласие перед включением или запросом разрешений, необходимых для функций использования компьютера в ваших приложениях
- Неподходящие или незаконные действия: Согласно условиям обслуживания Anthropic, вы не должны использовать использование компьютера для нарушения каких-либо законов или нашей Политики допустимого использования.
Всегда тщательно проверяйте и верифицируйте действия и журналы использования компьютера Claude. Не используйте Claude для задач, требующих идеальной точности или конфиденциальной пользовательской информации без человеческого надзора.
Ценообразование
Computer use follows the standard tool use pricing. When using the computer use tool:
System prompt overhead: The computer use beta adds 466-499 tokens to the system prompt
Computer use tool token usage:
Model | Input tokens per tool definition |
---|---|
Claude 4 / Sonnet 3.7 | 735 tokens |
Claude Sonnet 3.5 | 683 tokens |
Additional token consumption:
- Screenshot images (see Vision pricing)
- Tool execution results returned to Claude
If you’re also using bash or text editor tools alongside computer use, those tools have their own token costs as documented in their respective pages.