Skip to content

Commit 954b96f

Browse files
authored
Azure OpenAI: 2.2.0-beta.5 release (based on OpenAI 2.2.0) (Azure#51217)
* initial population of 2.2.0-beta.5 release updates * further preparation incl. API export * cspell update for 'evals' * include downstream suppression of leaked [Experimental] from OpenAI
1 parent f12b8ee commit 954b96f

File tree

210 files changed

+4642
-3115
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

210 files changed

+4642
-3115
lines changed

.vscode/cspell.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1735,7 +1735,8 @@
17351735
"filename": "**/sdk/openai/**/*.cs",
17361736
"words": [
17371737
"AOAI",
1738-
"Rerank"
1738+
"Rerank",
1739+
"Evals"
17391740
]
17401741
},
17411742
{

eng/Packages.Data.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@
197197
</ItemGroup>
198198

199199
<ItemGroup Condition="$(MSBuildProjectName.StartsWith('Azure.AI.OpenAI'))">
200-
<PackageReference Update="OpenAI" Version="2.2.0-beta.4" />
200+
<PackageReference Update="OpenAI" Version="2.2.0" />
201201
</ItemGroup>
202202

203203
<ItemGroup Condition="$(MSBuildProjectName.StartsWith('Azure.Developer.MicrosoftPlaywrightTesting')) or $(MSBuildProjectName.StartsWith('Azure.Developer.Playwright'))">

sdk/ai/Azure.AI.Projects/src/Azure.AI.Projects.csproj

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,13 @@
88
<TargetFrameworks>$(RequiredTargetFrameworks)</TargetFrameworks>
99
<GenerateAPIListing>true</GenerateAPIListing>
1010
<NoWarn>$(NoWarn);CS1591;AZC0012;SA1649;SA1402;</NoWarn>
11+
<!--
12+
Suppression of OPENAI001 handles temporary [Experimental] leakage from OpenAI library internals for generated MRWContext.
13+
The longer-term fix is tracked along with:
14+
- https://github.com/Azure/azure-sdk-for-net/issues/51256
15+
- https://github.com/Azure/autorest.csharp/issues/5364
16+
-->
17+
<NoWarn>$(NoWarn);OPENAI001;</NoWarn>
1118
<LangVersion>latest</LangVersion>
1219
<IncludeOperationsSharedSource>true</IncludeOperationsSharedSource>
1320
</PropertyGroup>

sdk/openai/Azure.AI.OpenAI/CHANGELOG.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,47 @@
11
# Release History
22

3+
## 2.2.0-beta.5 (2025-07-11)
4+
5+
This update converges new feature updates from the recent `2.2.0` release of `OpenAI` together with support based on the contemporary `2025-04-01-preview` Azure OpenAI Service API label.
6+
7+
### Features Added
8+
9+
- A substantial number of new features are carried forward from the `OpenAI` library. Please see [the full 2.2.0 release notes](https://github.com/openai/openai-dotnet/blob/main/CHANGELOG.md#220-2025-07-02) for details.
10+
11+
### Breaking Changes (Preview APIs)
12+
13+
The following are carried forward from changes in the 2.2.0 release of `OpenAI`. Please see [the changelog](https://github.com/openai/openai-dotnet/blob/main/CHANGELOG.md#220-2025-07-02) for full details.
14+
15+
- Removed the implicit operator from all models that converts a model to `BinaryContent`.
16+
- Removed the explicit operator from all models that converts a `ClientResult` to a model.
17+
- OpenAI:
18+
- Renamed the `GetRealtimeConversationClient` method from `OpenAIClient` to `GetRealtimeClient`.
19+
- OpenAI.FineTuning:
20+
- Renamed the `FineTuningJobOperation` class to `FineTuningJob`.
21+
- Removed protocol methods for `CreateFineTuningJob`, `GetJob`, and `GetJobs` and added convenience methods for them.
22+
- OpenAI.Realtime:
23+
- Updated namespace from `OpenAI.Conversations` to `OpenAI.Realtime`. All APIs and types related to real-time conversations have been moved to the new `OpenAI.Realtime` namespace.
24+
- OpenAI.Responses:
25+
- Removed the `SummaryTextParts` property of `ReasoningResponseItem` in favor a new property called `SummaryParts`.
26+
- Removed the following public constructors:
27+
- `FileSearchCallResponseItem(IEnumerable<string> queries, IEnumerable<FileSearchCallResult> results)`
28+
- `FunctionCallOutputResponseItem(string callId, string functionOutput)`
29+
- `FunctionCallResponseItem(string callId, string functionName, BinaryData functionArguments)`
30+
- Made several properties read-only that were previously settable:
31+
- `CallId` and `Output` in `ComputerCallOutputResponseItem`
32+
- `Action`, `CallId`, and `Status` in `ComputerCallResponseItem`
33+
- `Results` and `Status` in `FileSearchCallResponseItem`
34+
- `CallId` in `FunctionCallOutputResponseItem`
35+
- `CallId` in `FunctionCallResponseItem`
36+
- Changed the following property types:
37+
- `Attributes` in `FileSearchCallResult` is now `IReadOnlyDictionary<string, BinaryData>` instead of `IDictionary<string, BinaryData>`.
38+
- `Status` properties are now nullable in multiple response item types.
39+
- `Code` in `ResponseError` is now `ResponseErrorCode` instead of `string`.
40+
- Renamed the `WebSearchToolContextSize` extensible enum to `WebSearchContextSize`.
41+
- Renamed the `WebSearchToolLocation` class to `WebSearchUserLocation`.
42+
- OpenAI.VectorStores:
43+
- Renamed method parameters from `vectorStore` to `options` in `CreateVectorStore` and `ModifyVectorStore` methods in `VectorStoreClient`.
44+
345
## 2.2.0-beta.4 (2025-03-18)
446

547
This update brings compatibility with the `2025-03-01-preview` service API version, including support for the new `/responses` API via `OpenAIResponseClient`.

sdk/openai/Azure.AI.OpenAI/api/Azure.AI.OpenAI.net8.0.cs

Lines changed: 63 additions & 87 deletions
Large diffs are not rendered by default.

sdk/openai/Azure.AI.OpenAI/api/Azure.AI.OpenAI.netstandard2.0.cs

Lines changed: 58 additions & 55 deletions
Large diffs are not rendered by default.

sdk/openai/Azure.AI.OpenAI/assets.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
"AssetsRepo": "Azure/azure-sdk-assets",
33
"AssetsRepoPrefixPath": "net",
44
"TagPrefix": "net/openai/Azure.AI.OpenAI",
5-
"Tag": "net/openai/Azure.AI.OpenAI_b040ce6b9c"
5+
"Tag": "net/openai/Azure.AI.OpenAI_d30b73003f"
66
}

sdk/openai/Azure.AI.OpenAI/src/Azure.AI.OpenAI.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
<Otherwise>
4242
<PropertyGroup>
4343
<VersionPrefix>2.2.0</VersionPrefix>
44-
<VersionSuffix>beta.4</VersionSuffix>
44+
<VersionSuffix>beta.5</VersionSuffix>
4545
</PropertyGroup>
4646
</Otherwise>
4747
</Choose>
@@ -91,4 +91,4 @@
9191
</Otherwise>
9292
</Choose>
9393

94-
</Project>
94+
</Project>

sdk/openai/Azure.AI.OpenAI/src/Custom/Assistants/AzureAssistantClient.Protocol.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public override AsyncCollectionResult GetAssistantsAsync(int? limit, string orde
1818
return new AzureAsyncCollectionResult<Assistant, AssistantCollectionPageToken>(
1919
Pipeline,
2020
options,
21-
continuation => CreateListAssistantsRequest(limit, order, continuation?.After ?? after, continuation?.Before ?? before, options),
21+
continuation => CreateGetAssistantsRequest(limit, order, continuation?.After ?? after, continuation?.Before ?? before, options),
2222
page => AssistantCollectionPageToken.FromResponse(page, limit, order, before),
2323
page => ModelReaderWriter.Read<InternalListAssistantsResponse>(page.GetRawResponse().Content).Data,
2424
options?.CancellationToken ?? default);
@@ -29,7 +29,7 @@ public override CollectionResult GetAssistants(int? limit, string order, string
2929
return new AzureCollectionResult<Assistant, AssistantCollectionPageToken>(
3030
Pipeline,
3131
options,
32-
continuation => CreateListAssistantsRequest(limit, order, continuation?.After ?? after, continuation?.Before ?? before, options),
32+
continuation => CreateGetAssistantsRequest(limit, order, continuation?.After ?? after, continuation?.Before ?? before, options),
3333
page => AssistantCollectionPageToken.FromResponse(page, limit, order, before),
3434
page => ModelReaderWriter.Read<InternalListAssistantsResponse>(page.GetRawResponse().Content).Data);
3535
}
@@ -455,7 +455,7 @@ public override ClientResult DeleteThread(string threadId, RequestOptions option
455455
internal override PipelineMessage CreateCreateAssistantRequest(BinaryContent content, RequestOptions options = null)
456456
=> NewJsonPostBuilder(content, options).WithPath("assistants").Build();
457457

458-
internal override PipelineMessage CreateListAssistantsRequest(int? limit, string order, string after, string before, RequestOptions options)
458+
internal override PipelineMessage CreateGetAssistantsRequest(int? limit, string order, string after, string before, RequestOptions options)
459459
=> NewGetListBuilder(limit, order, after, before, options).WithPath("assistants").Build();
460460

461461
internal override PipelineMessage CreateGetAssistantRequest(string assistantId, RequestOptions options)
@@ -550,4 +550,4 @@ private AzureOpenAIPipelineMessageBuilder NewGetListBuilder(int? limit, string o
550550
.WithCommonListParameters(limit, order, after, before);
551551
}
552552

553-
#endif
553+
#endif

sdk/openai/Azure.AI.OpenAI/src/Custom/Audio/AzureAudioClient.Protocol.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ internal override PipelineMessage CreateCreateTranscriptionRequest(BinaryContent
2828
.WithMethod("POST")
2929
.WithPath("audio", "transcriptions")
3030
.WithContent(content, contentType)
31-
.WithAccept("application/json")
3231
.WithOptions(options)
3332
.Build();
3433

@@ -37,7 +36,6 @@ internal override PipelineMessage CreateCreateTranslationRequest(BinaryContent c
3736
.WithMethod("POST")
3837
.WithPath("audio", "translations")
3938
.WithContent(content, contentType)
40-
.WithAccept("application/json")
4139
.WithOptions(options)
4240
.Build();
4341

@@ -46,7 +44,6 @@ internal override PipelineMessage CreateCreateSpeechRequest(BinaryContent conten
4644
.WithMethod("POST")
4745
.WithPath("audio", "speech")
4846
.WithContent(content, "application/json")
49-
.WithAccept("application/octet-stream")
5047
.WithOptions(options)
5148
.Build();
5249
}

0 commit comments

Comments
 (0)