Description
Add Azure OpenAI as a supported provider in the dotAI LangChain4J integration layer (Phase 2 of multi-provider support). Enterprise customers using Azure-hosted OpenAI deployments need to configure dotAI without code changes — only a providerConfig JSON update should be required.
This builds on the LangChain4J abstraction established in #35183 (Phase 1 — OpenAI).
Implementation outline:
- Add
langchain4j-azure-open-ai dependency
- Add
azure_openai case to LangChain4jModelFactory switch
- Implement
buildAzureOpenAiChatModel, buildAzureOpenAiEmbeddingModel, buildAzureOpenAiImageModel
- Pin Netty (4.1.118.Final) and Reactor (3.4.41) in BOM to resolve transitive version conflicts introduced by the Azure SDK
Acceptance Criteria
Additional Context
Sample configuration:
{
"chat": {
"provider": "azure_openai",
"apiKey": "...",
"endpoint": "https://my-company.openai.azure.com/",
"deploymentName": "gpt-4o",
"apiVersion": "2024-02-01",
"maxTokens": 16384,
"temperature": 1.0
}
}
Description
Add Azure OpenAI as a supported provider in the dotAI LangChain4J integration layer (Phase 2 of multi-provider support). Enterprise customers using Azure-hosted OpenAI deployments need to configure dotAI without code changes — only a
providerConfigJSON update should be required.This builds on the LangChain4J abstraction established in #35183 (Phase 1 — OpenAI).
Implementation outline:
langchain4j-azure-open-aidependencyazure_openaicase toLangChain4jModelFactoryswitchbuildAzureOpenAiChatModel,buildAzureOpenAiEmbeddingModel,buildAzureOpenAiImageModelAcceptance Criteria
azure_openaiis selectable as a provider inproviderConfigfor chat, embeddings, and image sectionsdeploymentNameis required for Azure (falls back tomodelif not set)apiVersionmaps to Azure'sserviceVersion(recommended:2024-02-01)LangChain4jModelFactoryTestAdditional Context
Sample configuration:
{ "chat": { "provider": "azure_openai", "apiKey": "...", "endpoint": "https://my-company.openai.azure.com/", "deploymentName": "gpt-4o", "apiVersion": "2024-02-01", "maxTokens": 16384, "temperature": 1.0 } }