Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med inbyggd datoranvändning kan en Responses-modell begära ordnade åtgärder på skrivbordet eller i webbläsaren. Ditt program äger körningsmiljön, visar säkerhetskontroller för godkännande, utför åtgärderna, tar en skärmbild och returnerar resultatet till modellen.
Följande Python klienter exponerar det inbyggda verktyget:
| Client | Fabrik | Notes |
|---|---|---|
OpenAIChatClient |
get_computer_tool() |
Använder OPENAI-svars-API:et. |
FoundryChatClient |
get_computer_tool() |
Kräver azure-ai-projects 2.3.0 eller senare. |
FoundryChatClient.get_computer_use_tool(...) är ett separat förhandsversions-API. Konfigurationsalternativen finns i Microsoft Foundry-modellprovidern.
Lägg till verktyget i en agent
Skapa providerverktyget och skicka det till agenten:
from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient
client = OpenAIChatClient()
agent = Agent(
client=client,
tools=[client.get_computer_tool()],
)
Modellen returnerar ett Content objekt med type="computer_tool_call". Objektet innehåller:
- Ett objekt
idoch en distinktcall_id. - En ordnad
actionslista. - Valfritt
pending_safety_checks.
Obesvarade anrop visas i AgentResponse.user_input_requests. Visa åtgärder och varningar för användaren innan programmet kör något.
Ramverket erkänner aldrig säkerhetskontroller automatiskt.
Returnera resultatet
När programmet har kört de godkända åtgärderna returnerar du en skärmbild i ett verktygsmeddelande. Följande fragment utgår från att request är datorns begäran, att screenshot_bytes är en PNG som fångats av din körningsmiljö och att confirmed_checks enbart innehåller kontroller som användaren uttryckligen har godkänt:
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)
Återanvänd samma AgentSession när du skickar resultatet. Du kan också ange skärmbilden med Content.from_uri(...) eller Content.from_hosted_file(...). OpenAI- och Foundry-svar kräver en skärmbild även om den delade resultattypen tillåter att leverantörer utelämnar en.
Typen ComputerSafetyCheck och Content.from_computer_tool_call(...) konstruktorerna Content.from_computer_tool_result(...) är experimentella Agent Framework-API:er. Anrop och resultat kan sparas med Content.to_dict() och återställas med Content.from_dict().
Arbetsflödesbeteende
När ett arbetsflöde pausar för indata från den inbyggda datorn bevarar Agent Framework anrops-ID, åtgärdsordning och väntande säkerhetskontroller över kontrollpunkter. Om lokala funktionsanrop slutförs i samma batch returneras deras resultat med datorresultatet i den ursprungliga anropsordningen.
Om en datorbegäran i en agents väntande batch avbryts avbryts även de återstående begärandena i den batchen. Redan slutförda resultat finns kvar i terminalutdata och nästa tur börjar med en ny agentsession.