Skip to content

[integrations] Azure AI Inference SDK is deprecated and retires on 2026-08-26 #931

Description

@weiqingy

Problem

The integrations/chat-models/azureai module depends on com.azure:azure-ai-inference:1.0.0-beta.5. Microsoft documents this SDK as deprecated, with retirement on 2026-08-26.

The module keeps working after that date, but it lands on an unsupported dependency that will not receive fixes, including security fixes. The upstream repository has already started closing issues against it as won't-fix on retirement grounds, so defects found from here on are unlikely to be addressed.

Why it is worth acting on

The documented successor is the OpenAI v1 API surface, reachable from the openai-java SDK. This repo already depends on openai-java in the integrations/chat-models/openai module, and already uses it for an Azure-flavoured connection there (AzureOpenAIChatModelConnection), so the migration target is a library the project already ships and maintains rather than a new dependency.

The pinned SDK is also blocking feature work today. It cannot send a json_schema response format under any configuration: the feature requires api-version 2024-08-01-preview or later, but raising ModelServiceVersion to that value makes the endpoint return 404, which is why the SDK pins its own default down to 2024-05-01-preview.

Scope for discussion

Whether to migrate the module to the successor SDK, fold it into the existing openai module, or deprecate and remove it, is a design question rather than a foregone conclusion. The connections are not equivalent: Azure AI Inference targets the Foundry model catalog, while the Azure OpenAI connection targets Azure OpenAI deployments, so a migration needs to preserve whichever surface users actually rely on.

Raising it now because the retirement date gives about a month of notice, and because the module currently has no tests at all, which makes any migration riskier than it needs to be.

Found while scoping the Azure half of #280; the structured-output side of this is recorded there.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions