Azure OpenAI¶
Configure HolmesGPT to use Azure OpenAI Service.
Setup¶
Create an Azure OpenAI resource.
Configuration¶
Create Kubernetes Secret:
kubectl create secret generic holmes-secrets \
--from-literal=azure-api-key="your-azure-api-key" \
-n <namespace>
Configure Helm Values:
# values.yaml
additionalEnvVars:
- name: AZURE_API_KEY
valueFrom:
secretKeyRef:
name: holmes-secrets
key: azure-api-key
# Configure at least one model using modelList
modelList:
azure-gpt-41:
api_key: "{{ env.AZURE_API_KEY }}"
model: azure/gpt-4.1
api_base: https://your-resource.openai.azure.com/
api_version: "2025-01-01-preview"
temperature: 0
azure-gpt-5:
api_key: "{{ env.AZURE_API_KEY }}"
model: azure/gpt-5
api_base: https://your-resource.openai.azure.com/
api_version: "2025-01-01-preview"
temperature: 1
# Optional: Set default model (use modelList key name, not the model path)
config:
model: "azure-gpt-41" # This refers to the key name in modelList above
Create Kubernetes Secret:
kubectl create secret generic robusta-holmes-secret \
--from-literal=azure-api-key="your-azure-api-key" \
-n <namespace>
Configure Helm Values:
# values.yaml
holmes:
additionalEnvVars:
- name: AZURE_API_KEY
valueFrom:
secretKeyRef:
name: robusta-holmes-secret
key: azure-api-key
# Configure at least one model using modelList
modelList:
azure-gpt-41:
api_key: "{{ env.AZURE_API_KEY }}"
model: azure/gpt-4.1
api_base: https://your-resource.openai.azure.com/
api_version: "2025-01-01-preview"
temperature: 0
azure-gpt-5:
api_key: "{{ env.AZURE_API_KEY }}"
model: azure/gpt-5
api_base: https://your-resource.openai.azure.com/
api_version: "2025-01-01-preview"
temperature: 1
# Optional: Set default model (use modelList key name, not the model path)
config:
model: "azure-gpt-41" # This refers to the key name in modelList above
Using CLI Parameters¶
You can also pass the API key directly as a command-line parameter:
Additional Resources¶
HolmesGPT uses the LiteLLM API to support Azure OpenAI provider. Refer to LiteLLM Azure docs for more details.