Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions src/Libraries/Microsoft.Extensions.AI.Abstractions/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# Release History

## 9.3.0-preview.1.25161.3

- Changed `IChatClient.GetResponseAsync` and `IChatClient.GetStreamingResponseAsync` to accept an `IEnumerable<ChatMessage>` rather than an `IList<ChatMessage>`. It is no longer mutated by implementations.
- Removed `ChatResponse.Choice` and `ChatResponseUpdate.ChoiceIndex`.
- Replaced `ChatResponse.Message` with `ChatResponse.Messages`. Responses now carry with them all messages generated as part of the operation, rather than all but the last being added to the history and the last returned.
- Added `GetRequiredService` extension method for `IChatClient`/`IEmbeddingGenerator`.
- Added non-generic `IEmbeddingGenerator` interface, which is inherited by `IEmbeddingGenerator<TInput, TEmbedding>`. The `GetService` method moves down to the non-generic interface, and the `GetService`/`GetRequiredService` extension methods are now in terms of the non-generic.
- `AIJsonUtilities.CreateFunctionJsonSchema` now special-cases `CancellationToken` to not include it in the schema.
- Improved the debugger displays for `ChatMessage` and the `AIContent` types.
- Added a static `AIJsonUtilities.HashDataToString` method.
- Split `DataContent`, which handled both in-memory data and URIs to remote data, into `DataContent` (for the former) and `UriContent` (for the latter).
- Renamed `DataContent.MediaTypeStartsWith` to `DataContent.HasTopLevelMediaType`, and changed semantics accordingly.

## 9.3.0-preview.1.25114.11

- Renamed `IChatClient.Complete{Streaming}Async` to `IChatClient.Get{Streaming}ResponseAsync`. This is to avoid confusion with "Complete" being about stopping an operation, as well as to avoid tying the methods to a particular implementation detail of how responses are generated. Along with this, renamed `ChatCompletion` to `ChatResponse`, `StreamingChatCompletionUpdate` to `ChatResponseUpdate`, `CompletionId` to `ResponseId`, `ToStreamingChatCompletionUpdates` to `ToChatResponseUpdates`, and `ToChatCompletion{Async}` to `ToChatResponse{Async}`.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Release History

## 9.3.0-preview.1.25161.3

- Updated to accomodate the changes in `Microsoft.Extensions.AI.Abstractions`.

## 9.3.0-preview.1.25114.11

- Updated to use Azure.AI.Inference 1.0.0-beta.3, adding support for structured output and audio input.
Expand Down
4 changes: 4 additions & 0 deletions src/Libraries/Microsoft.Extensions.AI.Ollama/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Release History

## 9.3.0-preview.1.25161.3

- Updated to accomodate the changes in `Microsoft.Extensions.AI.Abstractions`.

## 9.3.0-preview.1.25114.11

- Ensures that all yielded `ChatResponseUpdates` include a `ResponseId`.
Expand Down
4 changes: 4 additions & 0 deletions src/Libraries/Microsoft.Extensions.AI.OpenAI/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Release History

## 9.3.0-preview.1.25161.3

- Updated to accomodate the changes in `Microsoft.Extensions.AI.Abstractions`.

## 9.3.0-preview.1.25114.11

- Updated to depend on OpenAI 2.2.0-beta.1, updating with support for the Developer role, audio input and output, and additional options like output prediction. It is now also compatible with NativeAOT.
Expand Down
17 changes: 17 additions & 0 deletions src/Libraries/Microsoft.Extensions.AI/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
# Release History

## 9.3.0-preview.1.25161.3

- Added caching to `AIFunctionFactory.Create` to improve performance of creating the same functions repeatedly. As part of this, `AIJsonSchemaCreateOptions` now implements `IEquatable<AIJsonSchemaCreateOptions>`.
- Removed the public `AnonymousDelegatingChatClient`/`AnonymousDelegatingEmbeddingGenerator`. Their functionality is still available via the `Use` methods on the builders.
- Changed those `Use` methods to use `Func<...>` rather than a custom delegate type.
- `AIFunctionFactory.Create` now supports `CancellationToken` parameters, and the `AIFunctionContext` type that had served to enable that has been removed.
- Made `FunctionInvokingChatClient.CurrentContext`'s setter `protected`.
- Renamed `FunctionInvokingChatClient.DetailedErrors` to `IncludeDetailedErrors`.
- Renamed `FunctionInvokingChatClient.ConcurrentInvocation` to `AllowConcurrentInvocation`.
- Removed `FunctionInvokingChatClient.KeepFunctionCallingContent`, as it's no longer relevant now that the input messages are an `IEnumerable<ChatMessage>` rather than an `IList<ChatMessage>`.
- Renamed `FunctionStatus` to `FunctionInvocationStatus`.
- Renamed `FunctionInvocationStatus.Failed` to `FunctionInvocationStatus.Exception`.
- Moved the nested `FunctionInvocationContext` type to be a peer of `FunctionInvokingChatClient` rather than nested within it.
- Made the `serviceKey` parameters to `AddKeyedChatClient`/`AddKeyedEmbeddingGenerator` nullable.
- Improved `FunctionInvokingChatClient.GetStreamingResponseAsync` to send back to the inner client all content received until that point, and to stream back to the caller messages it generates (e.g. tool responses).
- Improved `AddEmbeddingGenerator` and `AddKeyedEmbeddingGenerator` to register for both the generic and non-generic interfaces.

## 9.3.0-preview.1.25114.11

- Updated `OpenTelemetryChatClient`/`OpenTelemetryEmbeddingGenerator` to conform to the latest 1.30.0 draft specification of the Semantic Conventions for Generative AI systems.
Expand Down
Loading