
Azure ChatCompletion
CertifiedGenerate chat completions using an Azure AI Foundry model deployment
Azure ChatCompletion
Generate chat completions using an Azure AI Foundry model deployment
Sends a list of chat messages to a model deployment in Azure AI Foundry and returns the model response. Currently supports 'system' and 'user' message roles; multi-turn conversations with prior 'assistant' turns are not yet supported.
type: io.kestra.plugin.azure.aifoundry.ChatCompletionExamples
Chat completion with a deployed model
id: azure_ai_chat_completion
namespace: company.team
inputs:
- id: prompt
type: STRING
defaults: "Summarize the quarterly report."
tasks:
- id: chat
type: io.kestra.plugin.azure.aifoundry.ChatCompletion
endpoint: "{{ secret('AZURE_AI_FOUNDRY_ENDPOINT') }}"
apiKey: "{{ secret('AZURE_AI_FOUNDRY_API_KEY') }}"
deploymentName: gpt-4o
messages:
- role: user
content: "{{ inputs.prompt }}"
Properties
deploymentName *string
The name of the deployment to use
endpoint *string
Azure AI Foundry endpoint
The Azure AI Foundry project or model endpoint URL.
messages *array
The messages to generate chat completions for
io.kestra.plugin.azure.aifoundry.ChatCompletion-ChatMessage
The contents of the message
The role of the author of this message
Supported values: 'user' or 'system'
apiKey string
Azure AI Foundry API key
API key for API-key authentication. When omitted, DefaultAzureCredential (Entra ID) is used instead.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150clientId string
Azure client ID
Client ID of the Azure app registration used with tenantId and clientSecret.
clientSecret string
Azure client secret
Client secret of the Azure app registration used with tenantId and clientId.
tenantId string
Azure tenant ID
Azure Entra tenant ID used with clientId and clientSecret for service principal authentication.
Outputs
content string
The generated chat completion content