You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -58,7 +58,7 @@ For non-streaming scenarios, when you initially run an agent, it may or may not
58
58
AIAgentagent=newAzureOpenAIClient(
59
59
newUri("https://<myresource>.openai.azure.com"),
60
60
newDefaultAzureCredential())
61
-
.GetOpenAIResponseClient("<deployment-name>")
61
+
.GetResponsesClient("<deployment-name>")
62
62
.AsAIAgent();
63
63
64
64
AgentRunOptionsoptions=new()
@@ -103,7 +103,7 @@ In streaming scenarios, background responses work much like regular streaming re
103
103
AIAgentagent=newAzureOpenAIClient(
104
104
newUri("https://<myresource>.openai.azure.com"),
105
105
newDefaultAzureCredential())
106
-
.GetOpenAIResponseClient("<deployment-name>")
106
+
.GetResponsesClient("<deployment-name>")
107
107
.AsAIAgent();
108
108
109
109
AgentRunOptionsoptions=new()
@@ -180,7 +180,7 @@ agent = Agent(
180
180
client=OpenAIResponsesClient(model_id="o3"),
181
181
)
182
182
183
-
session =awaitagent.create_session()
183
+
session = agent.create_session()
184
184
185
185
# Start a background run — returns immediately
186
186
response =await agent.run(
@@ -212,7 +212,7 @@ print(response.text)
212
212
In streaming scenarios, background responses work like regular streaming — the agent streams updates back in real time. The key difference is that each update includes a `continuation_token`, enabling stream resumption if the connection is interrupted:
Copy file name to clipboardExpand all lines: agent-framework/agents/index.md
+11-11Lines changed: 11 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,7 @@ The Microsoft Agent Framework provides support for several types of agents to ac
19
19
All agents are derived from a common base class, `AIAgent`, which provides a consistent interface for all agent types. This allows for building common, agent agnostic, higher level functionality such as multi-agent orchestrations.
20
20
::: zone-end
21
21
::: zone pivot="programming-language-python"
22
-
All agents are derived from a common base class, [`Agent`](/python/api/agent-framework-core/agent_framework.agent?view=agent-framework-python-latest), which provides a consistent interface for all agent types. This allows for building common, agent agnostic, higher level functionality such as multi-agent orchestrations.
22
+
All agents are derived from a common base class, `Agent`, which provides a consistent interface for all agent types. This allows for building common, agent agnostic, higher level functionality such as multi-agent orchestrations.
23
23
::: zone-end
24
24
25
25
## Default Agent Runtime Execution Model
@@ -57,9 +57,9 @@ To make creating these agents even easier, Agent Framework provides helpers for
57
57
58
58
| Underlying inference service | Description | Service chat history storage supported | InMemory/Custom chat history storage supported |
|[Microsoft Foundry Agent](./providers/azure-ai-foundry.md)|An agent that uses the Foundry Agent Service as its backend.|Yes|No|
61
-
|[Foundry Models ChatCompletion](./providers/azure-ai-foundry.md)|An agent that uses any of the models deployed in the Foundry Service as its backend via ChatCompletion.|No|Yes|
62
-
|[Foundry Models Responses](./providers/azure-ai-foundry.md)|An agent that uses any of the models deployed in the Foundry Service as its backend via Responses.|Yes|Yes|
60
+
|[Microsoft Foundry Agent](./providers/microsoft-foundry.md)|An agent that uses the Foundry Agent Service as its backend.|Yes|No|
61
+
|[Foundry Models ChatCompletion](./providers/microsoft-foundry.md)|An agent that uses any of the models deployed in the Foundry Service as its backend via ChatCompletion.|No|Yes|
62
+
|[Foundry Models Responses](./providers/microsoft-foundry.md)|An agent that uses any of the models deployed in the Foundry Service as its backend via Responses.|Yes|Yes|
63
63
|[Foundry Anthropic](./providers/anthropic.md)|An agent that uses a Claude model via the Foundry Anthropic Service as its backend.|No|Yes|
64
64
|[Azure OpenAI ChatCompletion](./providers/azure-openai.md)|An agent that uses the Azure OpenAI ChatCompletion service.|No|Yes|
65
65
|[Azure OpenAI Responses](./providers/azure-openai.md)|An agent that uses the Azure OpenAI Responses service.|Yes|Yes|
@@ -101,7 +101,7 @@ When using Foundry, Azure OpenAI, OpenAI services, or Anthropic services, you ha
Agent Framework makes it easy to create simple agents based on many different inference services.
203
203
Any inference service that provides a chat client implementation can be used to build these agents.
204
-
This can be done using the [`SupportsChatGetResponse`](/python/api/agent-framework-core/agent_framework.supportschatgetresponse?view=agent-framework-python-latest), which defines a standard for the methods that a client needs to support to be used with the standard [`Agent`](/python/api/agent-framework-core/agent_framework.agent?view=agent-framework-python-latest) class.
204
+
This can be done using the `SupportsChatGetResponse` protocol, which defines a standard for the methods that a client needs to support to be used with the standard `Agent` class.
205
205
206
206
These agents support a wide range of functionality out of the box:
207
207
@@ -211,7 +211,7 @@ These agents support a wide range of functionality out of the box:
211
211
1. Structured output
212
212
1. Streaming responses
213
213
214
-
To create one of these agents, simply construct an [`Agent`](/python/api/agent-framework-core/agent_framework.agent?view=agent-framework-python-latest) using the chat client implementation of your choice.
214
+
To create one of these agents, simply construct an `Agent` using the chat client implementation of your choice.
> This example shows using the AzureOpenAIResponsesClient, but the same pattern applies to any chat client that implements [`SupportsChatGetResponse`](/python/api/agent-framework-core/agent_framework.supportschatgetresponse?view=agent-framework-python-latest), see [providers overview](./providers/index.md) for more details on other clients.
242
+
> This example shows using the AzureOpenAIResponsesClient, but the same pattern applies to any chat client that implements `SupportsChatGetResponse`, see [providers overview](./providers/index.md) for more details on other clients.
243
243
244
244
For detailed examples, see the agent-specific documentation sections below.
245
245
246
246
### Supported Chat Providers
247
247
248
248
|Underlying Inference Service|Description|Service Chat History storage supported|
249
249
|---|---|---|
250
-
|[Foundry Agent](./providers/azure-ai-foundry.md)|An agent that uses the Agent Service as its backend.|Yes|
250
+
|[Foundry Agent](./providers/microsoft-foundry.md)|An agent that uses the Agent Service as its backend.|Yes|
251
251
|[Azure OpenAI Chat Completion](./providers/azure-openai.md)|An agent that uses the Azure OpenAI Chat Completion service.|No|
252
252
|[Azure OpenAI Responses](./providers/azure-openai.md)|An agent that uses the Azure OpenAI Responses service.|Yes|
253
253
|[Azure OpenAI Assistants](./providers/azure-openai.md)|An agent that uses the Azure OpenAI Assistants service.|Yes|
@@ -258,7 +258,7 @@ For detailed examples, see the agent-specific documentation sections below.
258
258
|[Amazon Bedrock](https://github.com/microsoft/agent-framework/tree/main/python/packages/bedrock)|An agent that uses Amazon Bedrock models through the Agent Framework Bedrock chat client.|No|
259
259
|[GitHub Copilot](./providers/github-copilot.md)|An agent that uses the GitHub Copilot SDK backend.|No|
260
260
|[Ollama (OpenAI-compatible)](./providers/ollama.md)|An agent that uses locally hosted Ollama models via OpenAI-compatible APIs.|No|
261
-
|[Any other ChatClient](./providers/custom.md)|You can also use any other implementation of [`SupportsChatGetResponse`](/python/api/agent-framework-core/agent_framework.supportschatgetresponse?view=agent-framework-python-latest) to create an agent.|Varies|
261
+
|[Any other ChatClient](./providers/custom.md)|You can also use any other implementation of `SupportsChatGetResponse` to create an agent.|Varies|
262
262
263
263
Custom chat history storage is supported whenever session-based conversation state is supported.
264
264
@@ -315,7 +315,7 @@ For tools and tool patterns, see [Tools overview](./tools/index.md).
315
315
316
316
## Custom agents
317
317
318
-
For fully custom implementations (for example deterministic agents or API-backed agents), see [Custom Agents](./providers/custom.md). That page covers implementing [`SupportsAgentRun`](/python/api/agent-framework-core/agent_framework.supportsagentrun?view=agent-framework-python-latest) or extending [`BaseAgent`](/python/api/agent-framework-core/agent_framework.baseagent?view=agent-framework-python-latest), including streaming updates with [`AgentResponseUpdate`](/python/api/agent-framework-core/agent_framework.agentresponseupdate?view=agent-framework-python-latest).
318
+
For fully custom implementations (for example deterministic agents or API-backed agents), see [Custom Agents](./providers/custom.md). That page covers implementing `SupportsAgentRun` or extending `BaseAgent`, including streaming updates with `AgentResponseUpdate`.
@@ -180,7 +182,9 @@ AZURE_OPENAI_API_KEY="<your-api-key>" # If not using Azure CLI authentication
180
182
181
183
All clients use Azure credentials for authentication. The simplest approach is `AzureCliCredential` after running `az login`. All Azure clients accept a unified `credential` parameter that supports `TokenCredential`, `AsyncTokenCredential`, or a callable token provider — token caching and refresh are handled automatically.
182
184
183
-
## Chat Completion Client
185
+
## Create Azure OpenAI Agents
186
+
187
+
# [Chat Completion](#tab/aoai-chat-completion)
184
188
185
189
`AzureOpenAIChatClient` uses the Chat Completions API — the simplest option with broad model support.
186
190
@@ -202,7 +206,7 @@ asyncio.run(main())
202
206
203
207
**Supported tools:** Function tools, web search, local MCP tools.
204
208
205
-
## Responses Client
209
+
#[Responses](#tab/aoai-responses)
206
210
207
211
`AzureOpenAIResponsesClient` uses the Responses API — the most feature-rich option with hosted tools.
`AzureOpenAIAssistantsClient` uses the Assistants API — server-managed agents with built-in code interpreter and file search. Note the `async with` context manager for automatic assistant lifecycle management.
275
279
@@ -291,6 +295,8 @@ asyncio.run(main())
291
295
292
296
**Supported tools:** Function tools, code interpreter, file search, local MCP tools.
293
297
298
+
---
299
+
294
300
## Common Features
295
301
296
302
All three client types support these standard agent features:
0 commit comments