Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Met native computerinteractie kan een Responses-model opeenvolgende bureaublad- of browseracties aanvragen. Uw toepassing is eigenaar van de uitvoeringsomgeving, toont veiligheidscontroles voor goedkeuring, voert de acties uit, legt een schermopname vast en retourneert het resultaat aan het model.
De volgende Python-clients stellen het native hulpprogramma beschikbaar:
| Client | Fabriek | Notes |
|---|---|---|
OpenAIChatClient |
get_computer_tool() |
Maakt gebruik van de OpenAI-antwoorden-API. |
FoundryChatClient |
get_computer_tool() |
Vereist azure-ai-projects 2.3.0 of hoger. |
FoundryChatClient.get_computer_use_tool(...) is een afzonderlijke preview-API. Zie de Microsoft Foundry-modelprovider voor de configuratieopties.
De tool toevoegen aan een agent
Maak het providerhulpprogramma en geef het door aan de agent:
from agent_framework import Agent
from agent_framework.openai import OpenAIChatClient
client = OpenAIChatClient()
agent = Agent(
client=client,
tools=[client.get_computer_tool()],
)
Het model retourneert een Content item met type="computer_tool_call". Het item bevat:
- Een item
iden een afzonderlijkcall_iditem. - Een geordende
actionslijst. - Optioneel
pending_safety_checks.
Onbeantwoorde oproepen worden weergegeven in AgentResponse.user_input_requests. De acties en waarschuwingen voor de gebruiker weergeven voordat uw toepassing iets uitvoert.
Het framework erkent nooit automatisch veiligheidscontroles.
Het resultaat retourneren
Nadat uw toepassing de goedgekeurde acties heeft uitgevoerd, retourneert u een schermopname in een bericht van het hulpprogramma. In het volgende fragment wordt ervan uitgegaan dat request het de computeraanvraag is, screenshot_bytes een PNG is die is vastgelegd door uw uitvoeringsomgeving en confirmed_checks alleen controles bevat die de gebruiker expliciet heeft goedgekeurd:
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)
Gebruik hetzelfde AgentSession wanneer u het resultaat verzendt. U kunt ook de schermafbeelding via Content.from_uri(...) of Content.from_hosted_file(...) verstrekken. Voor OpenAI- en Foundry-antwoorden is een schermopname vereist, ook al kunnen providers er een weglaten met het gedeelde resultaattype.
Het ComputerSafetyCheck type en Content.from_computer_tool_call(...) de Content.from_computer_tool_result(...) constructors zijn experimentele Agent Framework-API's. Oproepen en resultaten kunnen worden bewaard met Content.to_dict() en hersteld met Content.from_dict().
Werkstroomgedrag
Wanneer een werkstroom wordt onderbroken voor systeemeigen computerinvoer, behoudt Agent Framework de aanroep-id, actievolgorde en wachtende veiligheidscontroles op controlepunten. Als lokale functie-aanroepen in dezelfde batch zijn voltooid, worden de resultaten geretourneerd met het computerresultaat in de oorspronkelijke aanroepvolgorde.
Als één computeraanvraag in de in behandeling zijnde batch van een agent wordt geannuleerd, worden de resterende aanvragen in die batch ook geannuleerd. Reeds voltooide resultaten blijven in de terminaluitvoer staan en de volgende interactie begint met een nieuwe agentsessie.