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
Release azure-ai-agents and azure-ai-projects 2.2.0 (#49544)
* regen projects
* regen agents
* update samples and tests
* temp disable tests pending re-record
* projects beta annotations
* agents beta annotations
* update samples
* add spelling exception
* spacing
* beta annotations for optimizations models
* Added missing imports
* Formatting and code regen
* Revapi report (#49585)
* Revapi report
* Compared against version resolution details
* update run status to be string
* add searchMemoriesWithResponse methods
* unabbreviate evalId
* renames
* regen
* toolbox renames
* fix samples and tests
* Sample parity with C# (#49633)
* Missing samples
* Added missing convenient API methods for delete memory items
* Covered gap in convenient API for delete Memory store item
* add version for revapi dependency
* Convenience methods for file operations for sessions and code agents (#49607)
* Added convenience methods for file operations
* Added methods with response too
* applied spotless
* Async methods
* core feature done
* adjusted samples to use new methods
* Duplicated files from samples for test for decoupling
* made utils class final and hid the ctx
* Updated convenient API for files to allow ovewrite flag
* suppress empty models
* update binary data and tests
* regen
* new beta annotations
* Endpoint variant for evaluators
* removed stale documentation
* README and CHANGELOG updates
* revapi exceptions
* Hiding tsp-location files
* Updated version for release
* Added documentation for beta related builder methods
* README updates
* Latest spec changes: remove reminderPreviewTool and renamed method param
* added convenience method for code agents
* Unit tests for sha util
* Latest spec commit
* tests
* Adjusted changelog entry date
* Hiding tsp-location files
* Permissive failure on customization class resource not found
* Added more robust file localization strat to account for CI runs
* Adjusted text
---------
Co-authored-by: Jose Alvarez <josealvar@microsoft.com>
Co-authored-by: Jose Alvarez <jpalvarezl@users.noreply.github.com>
Copy file name to clipboardExpand all lines: sdk/ai/azure-ai-agents/CHANGELOG.md
+17-4Lines changed: 17 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,15 +1,25 @@
1
1
# Release History
2
2
3
-
## 2.2.0-beta.1 (Unreleased)
3
+
## 2.2.0 (2026-07-01)
4
4
5
5
### Features Added
6
6
7
-
- Added protocol-style `listOptimizationCandidates(String, com.azure.core.http.rest.RequestOptions)` overloads on `AgentsClient` and `AgentsAsyncClient` for listing raw optimization candidate pages as `BinaryData`.
7
+
- Added convenience methods on `AgentsClient` and `AgentsAsyncClient` to read and write hosted-agent files directly from and to disk using a `String` file path. `downloadAgentCode`, `downloadAgentCodeWithResponse`, and `downloadSessionFileWithResponse` write the downloaded content to the supplied path and accept an optional `overwrite` flag; when the flag is omitted the operation fails if a file already exists at the destination. `uploadSessionFileWithResponse` and the new `CodeFileDetails(String)` constructor read the upload content from a `String` file path.
8
+
- Added a flattened convenience overload `createAgentVersionFromCode(String, HostedAgentDefinition, CodeFileDetails, String, Map)` on `AgentsClient` and `AgentsAsyncClient`. It accepts the hosted-agent definition, code zip, description, and metadata directly instead of a nested `CreateAgentVersionFromCodeContent`, and computes the required `x-ms-code-zip-sha256` value from the code automatically.
9
+
- Added `deleteMemory(String, String)` to `BetaMemoryStoresClient` and `BetaMemoryStoresAsyncClient` for deleting an individual memory item from a memory store.
10
+
- Added `ToolboxesClient` and `ToolboxesAsyncClient` have been moved from `beta` to GA.
11
+
- Added a toolbox-specific tool model hierarchy for toolbox versions, including `ToolboxTool`, `ToolboxToolType`, and related `*ToolboxTool` classes such as `CodeInterpreterToolboxTool`, `OpenApiToolboxTool`, and `ToolboxSearchPreviewToolboxTool`.
12
+
- Added support for additional agent tool types, including `NamespaceTool`, `ToolSearchTool`, and `ReminderPreviewTool`.
13
+
- Updated preview agent optimization support to the V2 preview contract on `BetaAgentsClient` and `BetaAgentsAsyncClient`.
8
14
9
15
### Breaking Changes
10
16
11
-
- Preview operation groups now use beta-prefixed clients built through `AgentsClientBuilder.beta()`: `MemoryStoresClient` / `MemoryStoresAsyncClient` renamed to `BetaMemoryStoresClient` / `BetaMemoryStoresAsyncClient`, `ToolboxesClient` / `ToolboxesAsyncClient` renamed to `BetaToolboxesClient` / `BetaToolboxesAsyncClient`, and preview agent/session operations moved to `BetaAgentsClient` / `BetaAgentsAsyncClient`. `AgentSessionFilesClient` / `AgentSessionFilesAsyncClient` were removed; use the session-file methods on `BetaAgentsClient` / `BetaAgentsAsyncClient` instead.
12
-
-`listOptimizationCandidates` on `AgentsClient` and `AgentsAsyncClient` now returns paged optimization candidates (`PagedIterable<OptimizationCandidate>` / `PagedFlux<OptimizationCandidate>`) instead of `OptimizationCandidatePagedResult` / `Mono<OptimizationCandidatePagedResult>`. The `OptimizationCandidatePagedResult` model was removed. The protocol methods where adjusted accordingly.
17
+
- Memory store preview clients now use beta-prefixed names built through `AgentsClientBuilder.beta()`: `MemoryStoresClient` / `MemoryStoresAsyncClient` renamed to `BetaMemoryStoresClient` / `BetaMemoryStoresAsyncClient`.
18
+
-`BetaToolboxesClient` / `BetaToolboxesAsyncClient` renamed to `ToolboxesClient` / `ToolboxesAsyncClient` and are now built directly with `AgentsClientBuilder.buildToolboxesClient()` / `buildToolboxesAsyncClient()`. The beta-builder methods for toolboxes were removed.
19
+
- Toolbox version APIs now use `ToolboxTool` models instead of agent `Tool` models; for example, `ToolboxSearchPreviewTool` was replaced by `ToolboxSearchPreviewToolboxTool`.
20
+
- Agent optimization APIs were updated to the V2 preview contract and moved to `BetaAgentsClient` / `BetaAgentsAsyncClient`. `FoundryFeaturesOptInKeys.AGENTS_OPTIMIZATION_V1_PREVIEW` renamed to `AGENTS_OPTIMIZATION_V2_PREVIEW`, and candidate-specific APIs and models such as `CandidateDeployConfig`, `CandidateFileInfo`, `CandidateMetadata`, `CandidateResults`, `PromoteCandidateInput`, and `PromoteCandidateResult` were removed or folded into the updated optimization job models.
21
+
- Hosted-agent session and code-package APIs were simplified by removing `AgentDefinitionOptInKeys` parameters. `AgentSessionFilesClient` / `AgentSessionFilesAsyncClient` were removed; use the session-file methods on `AgentsClient` / `AgentsAsyncClient` instead.
22
+
- Tool and protocol models were aligned with the latest service contract. Notable renames include `NamespaceToolParam` → `NamespaceTool`, `ToolSearchToolParam` → `ToolSearchTool`, `AgentIdentifier` → `OptimizationAgentIdentifier`, and `DatasetRef` → `OptimizationEvaluatorRef`; `AgentProtocol` and `IsolationKeySource` were removed.
13
23
14
24
### Bugs Fixed
15
25
@@ -18,6 +28,9 @@
18
28
19
29
### Other Changes
20
30
31
+
- Added samples demonstrating external agent CRUD (`ExternalAgentSample` / `ExternalAgentAsyncSample`) and memory store item CRUD (`MemoryStoreItemsSample` / `MemoryStoreItemsAsyncSample`).
32
+
- Marked preview clients, models, and methods with `@Beta` annotations so preview surface area is explicit in generated API docs.
Copy file name to clipboardExpand all lines: sdk/ai/azure-ai-agents/README.md
+32-23Lines changed: 32 additions & 23 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,12 @@ Develop Agents using the Azure AI Foundry platform, leveraging an extensive ecos
4
4
5
5
The client library uses a single service version `v1` of the AI Foundry [data plane REST APIs](https://aka.ms/azsdk/azure-ai-projects/ga-rest-api-reference).
6
6
7
+
> [!IMPORTANT]
8
+
> **Preview and beta features**
9
+
> - Build `Beta*Client` and `Beta*AsyncClient` instances through `AgentsClientBuilder.beta()`. These clients automatically opt in to their preview service area; you do not need `allowPreview(true)` for them.
10
+
> - Use `AgentsClientBuilder.allowPreview(true)` only when calling preview APIs on non-Beta clients, such as preview hosted-agent sessions, session files, and code package operations on `AgentsClient` / `AgentsAsyncClient`.
11
+
> - Classes and methods annotated with `@Beta` are preview API surface and may change in future releases. See [Preview operation groups and beta clients](#preview-operation-groups-and-beta-clients) for details.
12
+
7
13
## Documentation
8
14
9
15
Various documentation is available to help you get started
@@ -25,7 +31,7 @@ Various documentation is available to help you get started
25
31
<dependency>
26
32
<groupId>com.azure</groupId>
27
33
<artifactId>azure-ai-agents</artifactId>
28
-
<version>2.1.0</version>
34
+
<version>2.2.0</version>
29
35
</dependency>
30
36
```
31
37
[//]: #({x-version-update-end})
@@ -57,11 +63,11 @@ AgentsAsyncClient agentsAsyncClient = new AgentsClientBuilder()
57
63
```
58
64
59
65
The Agents client library has the following sub-clients which group the different operations that can be performed:
60
-
-`AgentsClient` / `AgentsAsyncClient`: Perform generally available operations related to agents, such as creating, retrieving, updating, and deleting agents.
61
-
-`BetaAgentsClient` / `BetaAgentsAsyncClient`**(preview)**: Perform preview agent operations, including hosted-agent sessions, session files, code package operations, and preview agent optimization operations.
66
+
-`AgentsClient` / `AgentsAsyncClient`: Perform operations related to agents, such as creating, retrieving, updating, and deleting agents. When `allowPreview(true)` is configured, these clients can also use preview hosted-agent sessions, session files, and code package operations.
-`ResponsesClient` / `ResponsesAsyncClient`: Handle responses operations. See the [OpenAI's Responses API documentation][openai_responses_api_docs] for more information.
63
69
-`BetaMemoryStoresClient` / `BetaMemoryStoresAsyncClient`**(preview)**: Manage memory stores and individual memory items for agents.
64
-
-`BetaToolboxesClient` / `BetaToolboxesAsyncClient`**(preview)**: Manage toolboxes and toolbox versions.
70
+
-`ToolboxesClient` / `ToolboxesAsyncClient`: Manage toolboxes and toolbox versions.
65
71
66
72
Conversation operations are accessed through the [OpenAI Official Java SDK][openai_java_sdk]'s `ConversationService`. See the [OpenAI's Conversation API documentation][openai_conversations_api_docs] for more information.
67
73
@@ -71,7 +77,7 @@ To access each sub-client you need to use your `AgentsClientBuilder()`. The Agen
The [OpenAI Official Java SDK][openai_java_sdk] is imported transitively and can be built directly from the `AgentsClientBuilder`. Use it to access conversation operations and other OpenAI services:
@@ -115,11 +121,16 @@ The SDK supports a variety of tools that can be attached to agent definitions. S
@@ -144,6 +154,8 @@ Supported tool classes may also expose optional `name`, `description`, and `tool
144
154
145
155
Several operation groups in the Agents client library expose **preview** service features. These features require the `Foundry-Features` HTTP header. The SDK populates that header for you; you do not need to set the header value manually.
146
156
157
+
APIs annotated with `@Beta` are part of the SDK's preview surface, even when they appear on a non-Beta client. These APIs are subject to breaking changes in future releases and should be used with the same compatibility expectations as other preview features.
158
+
147
159
Use `AgentsClientBuilder.allowPreview(true)` when building non-Beta clients that support preview service behavior. For example, `AgentsClient` and `AgentsAsyncClient` use this builder setting to allow the service to return preview response types:
148
160
149
161
```java
@@ -155,19 +167,18 @@ AgentsClientBuilder builder = new AgentsClientBuilder()
Clients whose names start with `Beta` always opt in to their corresponding preview service area. Requests sent by these clients automatically include the appropriate `Foundry-Features` header, and their APIs can send or return preview/beta request and response types. You do not need to call `allowPreview(true)` to use a `Beta*Client`.
170
+
Build clients whose names start with `Beta` from `AgentsClientBuilder.beta()`. These clients always opt in to their corresponding preview service area. Requests sent by these clients automatically include the appropriate `Foundry-Features` header, and their APIs can send or return preview/beta request and response types. You do not need to call `allowPreview(true)` to use a `Beta*Client`.
159
171
160
172
| Beta sub-client | Automatically populated `Foundry-Features` value |
The async `Beta*AsyncClient` counterparts follow the same behavior.
167
178
168
179
### Memory item management
169
180
170
-
`BetaMemoryStoresClient` and `BetaMemoryStoresAsyncClient` manage memory stores and individual memory items. In addition to store-level operations, use `createMemory`, `updateMemory`, `listMemories`, `getMemory`, and `deleteMemory` to manage individual memories. `ListMemoriesOptions` supports filtering by scope and `MemoryItemKind`, including `MemoryItemKind.PROCEDURAL`.
181
+
`BetaMemoryStoresClient` and `BetaMemoryStoresAsyncClient` manage memory stores and individual memory items. In addition to store-level operations, use `createMemory`, `updateMemory`, `listMemories`, `getMemory`, and `deleteMemory` to manage individual memories. `ListMemoriesOptions` supports filtering by scope and `MemoryItemKind`, including `MemoryItemKind.PROCEDURAL`. See `MemoryStoreItemsSample` and `MemoryStoreItemsAsyncSample` for complete examples.
171
182
172
183
### Using OpenAI's official library
173
184
@@ -522,9 +533,7 @@ Connect agents to Fabric IQ project connections for enterprise data grounding:
.setDescription("Use FabricIQ to answer questions grounded in enterprise data.");
536
+
.setRequireApproval("never");
528
537
529
538
```
530
539
@@ -618,15 +627,15 @@ See the full sample in [OpenApiWithConnectionSync.java](https://github.com/Azure
618
627
619
628
#### Toolbox Tools
620
629
621
-
Toolbox tools are defined in toolbox versions and managed through `BetaToolboxesClient` / `BetaToolboxesAsyncClient`.
630
+
Toolbox tools are defined in toolbox versions and managed through `ToolboxesClient` / `ToolboxesAsyncClient`. Toolbox versions use `ToolboxTool` subclasses rather than agent `Tool` subclasses.
622
631
623
632
##### **Toolbox Search (Preview)**
624
633
625
-
Use `ToolboxSearchPreviewTool` inside a toolbox version to let an agent search the available toolbox tools at runtime:
634
+
Use `ToolboxSearchPreviewToolboxTool` inside a toolbox version to let an agent search the available toolbox tools at runtime:
0 commit comments