Breaking Change T1282512
Visible to All Users

Microsoft.Extensions.AI.Abstractions NuGet Package Version Upgrade

What Changed

To support most recent Microsoft AI-related APIs, we upgraded v24.2.6 NuGet dependencies as follows:

Package Name v24.2.3–v24.2.5 v24.2.6
Microsoft.Extensions.AI.Abstractions 9.0.0-preview.9.24556.5 9.3.0-preview.1.25161.3
Microsoft.Extensions.AI.OpenAI 9.0.0-preview.9.24556.5 9.3.0-preview.1.25161.3
Azure.AI.OpenAI 2.0.0 2.2.0-beta.1
OpenAI 2.0.0 2.2.0-beta.1

Changes to IChatClient API

The following IChatClient APIs were renamed:

Previous Version (9.0.0-preview.9.24556.5) Updated Version (9.3.0-preview.1.25161.3)
CompleteAsync GetResponseAsync
CompleteStreamingAsync GetStreamingResponseAsync
ChatCompletion ChatResponse
StreamingChatCompletionUpdate ChatResponseUpdate

chatMessages parameter type for GetResponseAsync and GetStreamingResponseAsync methods was changed from IList to IEnumerable.

Note: Review the following merge requests in the Azure SDK for .NET Samples repository for additional information:

Reasons for Change

Microsoft released 9.3.0-preview.1.25161.3 of its Microsoft.Extensions.AI.Abstractions package. This update introduced breaking changes to the IChatClient interface, which is crucial to DevExpress AI-powered Extensions and the DevExpress Blazor AI Chat component.

Impact on Existing Apps

If your DevExpress-powered application references the latest versions of the Microsoft.Extensions.AI or related NuGet packages, you may encounter the following runtime exception when using DevExpress AI-powered Extensions:

Could not load type Microsoft.Extensions.AI.ChatCompletion from assembly 'Microsoft.Extensions.AI.Abstractions, version=9.3.0.0'…

How to Update Existing Apps

  • Upgrade Microsoft.Extensions.AI and related NuGet packages to supported versions.
  • Update your implementation to align with renamed IChatClient methods and modified method signatures described in Changes to IChatClient API.

How to Revert to Previous Behavior

You cannot revert to the previous behavior.

Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.