Использование компьютера (бета)
Обновленная модель Claude 3.5 Sonnet способна взаимодействовать с инструментами, которые могут манипулировать средой рабочего стола компьютера.
Использование компьютера является бета-функцией. Пожалуйста, имейте в виду, что использование компьютера представляет уникальные риски, отличные от стандартных функций API или интерфейсов чата. Эти риски усугубляются при использовании компьютера для взаимодействия с Интернетом. Чтобы минимизировать риски, рассмотрите возможность принятия следующих мер предосторожности:
- Используйте выделенную виртуальную машину или контейнер с минимальными привилегиями, чтобы предотвратить прямые атаки на систему или случайные ошибки.
- Не давайте модели доступ к конфиденциальным данным, таким как информация для входа в учетную запись, чтобы предотвратить кражу информации.
- Ограничьте доступ к Интернету списком разрешенных доменов, чтобы уменьшить риск воздействия вредоносного контента.
- Попросите человека подтвердить решения, которые могут привести к значительным реальным последствиям, а также любые задачи, требующие явного согласия, такие как принятие файлов cookie, выполнение финансовых транзакций или согласие с условиями обслуживания.
В некоторых обстоятельствах Claude будет следовать командам, найденным в контенте, даже если они противоречат инструкциям пользователя. Например, инструкции Claude на веб-страницах или содержащиеся в изображениях могут переопределить инструкции или вызвать ошибки Claude. Мы рекомендуем принять меры предосторожности для изоляции Claude от конфиденциальных данных и действий, чтобы избежать рисков, связанных с внедрением запросов.
Наконец, пожалуйста, проинформируйте конечных пользователей о соответствующих рисках и получите их согласие перед включением использования компьютера в ваших собственных продуктах.
Эталонная реализация использования компьютера
Быстро начните работу с нашей эталонной реализацией использования компьютера, которая включает в себя веб-интерфейс, контейнер Docker, примеры реализации инструментов и цикл агента.
Пожалуйста, используйте эту форму для предоставления отзывов о качестве ответов модели, самого API или качестве документации - мы с нетерпением ждем ваших отзывов!
Вот пример того, как предоставить инструменты использования компьютера для Claude с использованием Messages API:
Как работает использование компьютера
1. Предоставьте Claude инструменты использования компьютера и запрос пользователя
- Добавьте определенные Anthropic инструменты использования компьютера в ваш запрос 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
- Реализации инструментов использования компьютера
- Цикл агента, который взаимодействует с Anthropic API и выполняет результаты
tool_use
с помощью реализаций ваших инструментов - Веб-интерфейс для взаимодействия с контейнером, циклом агента и инструментами.
Мы рекомендуем попробовать эталонную реализацию, прежде чем читать остальную часть этой документации.
Оптимизируйте производительность модели с помощью подсказок
Вот несколько советов о том, как получить наилучшие результаты:
- Указывайте простые, четко определенные задачи и предоставляйте явные инструкции для каждого шага.
- Claude иногда предполагает результаты своих действий, не проверяя их явно. Чтобы предотвратить это, вы можете подсказать модели:
После каждого шага делайте снимок экрана и внимательно оценивайте, достигли ли вы правильного результата. Явно покажите свои рассуждения: "Я оценил шаг X..." Если нет, попробуйте снова. Только после того, как вы подтвердите, что шаг был выполнен правильно, переходите к следующему
. - Некоторые элементы пользовательского интерфейса (например, выпадающие списки и полосы прокрутки) могут быть сложными для Claude при манипулировании с помощью движений мыши. Если вы столкнетесь с этим, попробуйте подсказать модели использовать сочетания клавиш.
- Для повторяющихся задач или взаимодействий с пользовательским интерфейсом включите в свою подсказку примеры снимков экрана и вызовов инструментов успешных результатов.
- Если вам нужно, чтобы модель выполнила вход в систему, предоставьте ей имя пользователя и пароль в вашей подсказке внутри тегов xml, например
<robot_credentials>
. Использование компьютера в приложениях, требующих входа в систему, повышает риск получения нежелательных результатов в результате внедрения запросов. Пожалуйста, ознакомьтесь с нашим руководством по смягчению внедрения запросов перед предоставлением модели учетных данных для входа в систему.
Если вы неоднократно сталкиваетесь с четко определенным набором проблем или заранее знаете задачи, которые Claude должен будет выполнить, используйте системную подсказку, чтобы предоставить Claude явные советы или инструкции о том, как успешно выполнить эти задачи.
Системные подсказки
Когда один из определенных Anthropic инструментов запрашивается через Anthropic API, генерируется специальная системная подсказка для использования компьютера. Она похожа на системную подсказку для использования инструментов, но начинается с:
У вас есть доступ к набору функций, которые вы можете использовать для ответа на вопрос пользователя. Это включает доступ к изолированной вычислительной среде. В настоящее время у вас НЕТ возможности просматривать файлы или взаимодействовать с внешними ресурсами, за исключением вызова приведенных ниже функций.
Как и при обычном использовании инструментов, по-прежнему учитывается предоставленное пользователем поле system_prompt
и используется при построении комбинированной системной подсказки.
Понимание определенных Anthropic инструментов
Поскольку это бета-версия, определения этих инструментов могут быть изменены.
Мы предоставили набор инструментов, которые позволяют Claude эффективно использовать компьютеры. При указании определенного Anthropic инструмента поля description
и tool_schema
не нужны и не допускаются.
Определенные Anthropic инструменты выполняются пользователем
Инструменты, определенные Anthropic, определяются Anthropic, но вы должны явно оценивать результаты ин
струмента и возвращать tool_results
в Claude. Как и в случае с любым инструментом, модель не выполняет инструмент автоматически.
В настоящее время мы предоставляем 3 определенных Anthropic инструмента:
{ "type": "computer_20241022", "name": "computer" }
{ "type": "text_editor_20241022", "name": "str_replace_editor" }
{ "type": "bash_20241022", "name": "bash" }
Поле type
идентифицирует инструмент и его параметры для целей проверки, а поле name
- это имя инструмента, предоставляемое модели.
Если вы хотите подсказать модели использовать один из этих инструментов, вы можете явно обратиться к инструменту по полю name
. Поле name
должно быть уникальным в списке инструментов; вы не можете определить инструмент с тем же именем, что и определенный Anthropic инструмент, в том же самом вызове API.
Мы не рекомендуем определять инструменты с именами определенных Anthropic инструментов. Хотя вы все еще можете переопределить инструменты с этими именами (при условии, что имя инструмента уникально в вашем блоке tools
), это может привести к снижению производительности модели.
Объедините использование компьютера с другими инструментами
Вы можете объединить обычное использование инструментов с определенными Anthropic инструментами для использования компьютера.
Создайте пользовательскую среду использования компьютера
Эталонная реализация предназначена для того, чтобы помочь вам начать работу с использованием компьютера. В нее входят все компоненты, необходимые для того, чтобы Claude использовал компьютер. Однако вы можете создать собственную среду для использования компьютера, чтобы удовлетворить ваши потребности. Вам понадобится:
- Виртуализированная или контейнеризированная среда, подходящая для использования компьютера с Claude
- Реализация по крайней мере одного из определенных Anthropic инструментов использования компьютера
- Цикл агента, который взаимодействует с Anthropic API и выполняет результаты
tool_use
с помощью ваших реализаций инструментов - API или пользовательский интерфейс, который позволяет вводить пользовательский ввод для запуска цикла агента
Понимание ограничений использования компьютера
Функциональность использования компьютера находится в бета-версии. Хотя возможности Claude являются передовыми, разработчики должны быть осведомлены об ее ограничениях:
- Задержка: текущая задержка при использовании компьютера для взаимодействия человека и ИИ может быть слишком большой по сравнению с обычными действиями, направляемыми человеком. Мы рекомендуем сосредоточиться на случаях использования, где скорость не является критической (например, сбор фоновой информации, автоматизированное тестирование программного обеспечения) в доверенных средах.
- Точность и надежность компьютерного зрения: Claude может допускать ошибки или галлюцинации при выводе конкретных координат при генерации действий.
- Точность и надежность выбора инструментов: Claude может допускать ошибки или галлюцинации при выборе инструментов во время генерации действий или предпринимать непредвиденные действия для решения проблем. Кроме того, надежность может быть ниже при взаимодействии с нишевыми приложениями или несколькими приложениями одновременно. Мы рекомендуем пользователям тщательно подсказывать модели при запросе сложных задач.
- Надежность прокрутки: Прокрутка может быть ненадежной в текущем опыте, и модель может не надежно прокручивать до конца страницы. Поведение, подобное прокрутке, можно улучшить с помощью сочетаний клавиш (PgUp/PgDown).
- Взаимодействие с электронными таблицами: Щелчки мышью для взаимодействия с электронными таблицами ненадежны. Выбор ячеек может не всегда работать как ожидалось. Это можно смягчить, подсказав модели использовать клавиши со стрелками.
- Создание учетных записей и генерация контента в социальных сетях и платформах для общения: Хотя Claude будет посещать веб-сайты, мы ограничиваем его возможность создавать учетные записи или генерировать и распространять контент или иным образом имитировать человека в социальных сетях и платформах для общения. Мы можем обновить эту возможность в будущем.
- Уязвимости: Уязвимости, такие как взлом или внедрение запросов, могут сохраняться в передовых системах ИИ, включая бета-версию API использования компьютера. В некоторых обстоятельствах Claude будет следовать командам, найденным в контенте, иногда даже в противоречии с инструкциями пользователя. Например, инструкции Claude на веб-страницах или содержащиеся в изображениях могут переопределить инструкции или вызвать ошибки Claude. Мы рекомендуем: а. Ограничить использование компьютера доверенными средами, такими как виртуальные машины или контейнеры с минимальными привилегиями б. Не давать использованию компьютера доступ к конфиденциальным учетным записям или данным без строгого надзора в. Информировать конечных пользователей о соответствующих рисках и получать их согласие перед включением или запросом разрешений, необходимых для функций использования компьютера в ваших приложениях
- Неприемлемые или незаконные действия: В соответствии с Условиями обслуживания Anthropic, вы не должны использовать использование компьютера для нарушения каких-либо законов или нашей Политики приемлемого использования.
Всегда тщательно проверяйте и подтверждайте действия и журналы Claude при использовании компьютера. Не используйте Claude для задач, требующих идеальной точности или конфиденциальной информации пользователя, без контроля со стороны человека.
Ценообразование
См. документацию по ценообразованию на использование инструментов для подробного объяснения того, как запросы к Claude Tool Use API оцениваются.
Поскольку запросы на использование компьютера являются подмножеством запросов на использование инструментов, они оцениваются так же, как любой другой запрос к Claude API.
Мы также автоматически включаем специальную системную подсказку для модели, которая позволяет использовать компьютер.
Модель | Выбор инструмента | Количество токенов системной подсказки |
---|---|---|
Claude 3.5 Sonnet (новая) | auto any , tool | 466 токенов 499 токенов |
В дополнение к базовым токенам, для определенных Anthropic инструментов требуются следующие дополнительные входные токены:
Инструмент | Дополнительные входные токены |
---|---|
computer_20241022 | 683 токена |
text_editor_20241022 | 700 токенов |
bash_20241022 | 245 токенов |