AI
Azure OpenAI
Use your own Azure OpenAI or Azure AI Foundry deployment with ShopAssist: resource URL, deployment name and base model.
Create a deployment
As of October 2026, in the Azure portal or Azure AI Foundry:
- Create an Azure OpenAI resource in an EU region.
- In Deployments → Deploy model, deploy a chat model with the deployment type Data Zone Standard (EU) or a regional EU deployment. Note the deployment name.
- Under Keys and Endpoint, copy a key and the endpoint, for example
https://contoso-ai.openai.azure.com/.
Account tier
Any Azure subscription with Azure OpenAI access. Quota is set per deployment (tokens per minute).
Recommended models
| Model | Tier | Context window | Images | Processing |
|---|---|---|---|---|
GPT-6 Luna (Azure EU Data Zone) gpt-6-luna | Standard | 1,050,000 tokens | Yes | EU |
GPT-6 Sol (Azure EU Data Zone) gpt-6-sol | Premium | 1,050,000 tokens | Yes | EU |
Fields
| Field | Notes |
|---|---|
| Base URL | https://<resource>.openai.azure.com/openai/v1/ (also services.ai.azure.com and cognitiveservices.azure.com hosts) |
| API key | From Keys and Endpoint |
| Model | The deployment name, not the model name |
| Base model | The model behind the deployment, so ShopAssist knows its capabilities |
Without a base model and with a deployment name that isn't a known model id, capabilities come from the connection test only and the dashboard shows azure_base_model_unknown.
Data location
Data location
Use an EU Data Zone or EU regional deployment. Global deployments may process data anywhere.
Connection test
| Check | Required | What it tests | On failure |
|---|---|---|---|
auth | Yes | The key is accepted (lists models or sends a tiny request) | auth_failed, insufficient_quota, gemini_free_tier, endpoint_blocked, provider_unavailable, model_not_found |
tools | Yes | The model calls a tool with valid arguments and continues after the result | tools_unsupported: the model can't run the shopping tools |
ttft | No (degraded) | The first answer event arrives within 8 seconds | ttft_slow: works, but shoppers wait |
parallel_tools | No | Two tools are called in one step | parallel_tools_unsupported: slightly slower answers |
vision | No | The model names the colour of a test image | vision_unsupported: visual search is off |
context | Self-hosted only | A fact at the start of an 8,000-token prompt is recalled | context_too_small: the endpoint truncates prompts |
Cost
What your own AI key costs
Estimate based on list prices on 2026-09-28; your provider bills you directly.
| Provider | Model | USD per 1,000 conversations | ≈ EUR per 1,000 conversations |
|---|---|---|---|
| Azure OpenAI | GPT-6 Luna | $3.61 | €3.10 |
| Mistral | Mistral Small 4 | $4.71 | €4.05 |
| OpenAI | GPT-5.6 Luna | $7.62 | €6.55 |
| Google Gemini | Gemini 3.1 Flash-Lite | $8.85 | €7.61 |
| OpenAI | GPT-5 mini | $9.85 | €8.47 |
| Google Gemini | Gemini 3.5 Flash-Lite | $12.02 | €10.34 |
| Mistral | Mistral Large 3 | $14.70 | €12.64 |
| OpenAI | GPT-5.4 mini | $26.55 | €22.83 |
| Anthropic | Claude Haiku 4.5 | $36.10 | €31.05 |
| Anthropic | Claude Sonnet 5 | $72.20 | €62.09 |
Troubleshooting
- 401 /
auth_failed: the key belongs to another resource, or was rotated. model_not_found: the deployment name is wrong, or the deployment was deleted.- 429 /
rate_limited: raise the deployment's tokens-per-minute quota. content_filtered: Azure's content filter blocked a request; review the filter configuration of the deployment.
Last updated on