Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Встроенная функция управления компьютером позволяет модели Responses запрашивать последовательность действий на рабочем столе или в браузере. Ваше приложение управляет средой выполнения, предлагает проверки безопасности на утверждение, выполняет действия, делает снимок экрана и возвращает результат модели.
Следующие клиенты Python предоставляют доступ к встроенному инструменту:
| Client | Фабрика | Notes |
|---|---|---|
OpenAIChatClient |
get_computer_tool() |
Использует API ответов OpenAI. |
FoundryChatClient |
get_computer_tool() |
Требуется azure-ai-projects 2.3.0 или более поздней версии. |
FoundryChatClient.get_computer_use_tool(...) — это отдельный API предварительной версии. Сведения о параметрах конфигурации см. в разделе поставщик моделей Microsoft Foundry.
Добавьте инструмент к агенту
Создайте средство поставщика и передайте его агенту:
from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient
client = OpenAIChatClient()
agent = Agent(
client=client,
tools=[client.get_computer_tool()],
)
Модель возвращает элемент Content с type="computer_tool_call". Элемент включает в себя:
- Элемент
idи отдельныйcall_id. - Упорядоченный
actionsсписок. - Необязательный
pending_safety_checks.
Незавершенные вызовы отображаются в AgentResponse.user_input_requests. Отображение действий и предупреждений пользователю перед выполнением приложения.
Платформа никогда не подтверждает автоматическую проверку безопасности.
Возврат результата
После того как ваше приложение выполнит утвержденные действия, верните скриншот в сообщении инструмента. Следующий фрагмент предполагает, что request — это запрос компьютера, screenshot_bytes — PNG-изображение, полученное средой выполнения, а confirmed_checks содержит только те проверки, которые пользователь явно одобрил:
from agent_framework import Content, Message
result = Content.from_computer_tool_result(
call_id=request.call_id,
screenshot=Content.from_data(screenshot_bytes, "image/png"),
acknowledged_safety_checks=confirmed_checks,
)
tool_message = Message(role="tool", contents=[result])
response = await agent.run(tool_message, session=session)
Используйте тот же AgentSession при отправке результата. Вы также можете предоставить скриншот с помощью Content.from_uri(...) или Content.from_hosted_file(...). Для ответов OpenAI и Foundry требуется снимок экрана, даже если общий тип результата позволяет поставщикам опустить один из них.
Тип ComputerSafetyCheck и Content.from_computer_tool_call(...)Content.from_computer_tool_result(...) конструкторы — это экспериментальные API Платформы агента. Вызовы и результаты можно сохранить с помощью Content.to_dict() и восстановить с помощью Content.from_dict().
Поведение рабочего процесса
Когда процесс приостанавливается для собственного ввода на компьютере, Agent Framework сохраняет идентификатор вызова, порядок действий и незавершённые проверки безопасности между контрольными точками. Если вызовы локальных функций завершаются в рамках того же пакета, их результаты возвращаются вместе с результатом компьютера в исходном порядке вызовов.
Если один запрос компьютера в ожидающий пакет агента отменен, остальные запросы в этом пакете также отменяются. Уже завершенные результаты остаются в выходных данных терминала, а следующий поворот начинается с нового сеанса агента.