CrabTalkCrabTalk

Azure OpenAI

Configure Azure OpenAI — deployment-based URL rewriting and API version handling.

The azure provider routes to Azure OpenAI deployments. The request body is OpenAI-format (no translation needed), but the URL pattern and authentication differ.

Configuration

[providers.azure]
kind = "azure"
api_key = "${AZURE_OPENAI_KEY}"
base_url = "https://my-resource.openai.azure.com"
api_version = "2024-02-01"
models = ["gpt-4o"]
  • base_url — your Azure OpenAI resource URL.
  • api_version — the Azure API version string.

How it works

CrabLLM rewrites the URL to Azure's deployment-based pattern:

POST /openai/deployments/{model}/chat/completions?api-version={api_version}

Authentication uses the api-key header instead of Authorization: Bearer.

Supported endpoints

  • Chat completions (streaming and non-streaming)
  • Embeddings
  • Image generation
  • Audio speech (TTS)
  • Audio transcription

Usage

curl http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

On this page