openclaw 支持Azure OpenAI 密钥和 endpoint https://xxx.openai.azure.com
OpenClaw 支持这种格式的 Azure OpenAI 密钥和 endpoint(如 https://xxx.openai.azure.com/),但不是原生直接支持,而是通过一些配置或代理方式实现兼容。当前(2026年3月)社区主流结论如下:
当前官方支持情况
- OpenClaw 的官方模型提供者(providers)主要包括:OpenAI、Anthropic、Google、Groq、DeepSeek 等标准 OpenAI 兼容 API。
- Azure OpenAI(包括你这种 https://xxx.openai.azure.com/ 格式的 endpoint)没有内置的 “azure” 或 “azure-openai” provider。GitHub 上有多个 feature request issue(如 #6056、#2280)在讨论添加原生支持,但截至 2026 年 3 月,还没完全落地(部分用户报告在最新版本中通过 hack 能用,但不稳定)。
实际能用的几种方式(社区验证有效)
- 最推荐:用 LiteLLM 做代理(丝滑、无需改 OpenClaw 源码)
- LiteLLM 是 OpenAI 兼容的万能代理,支持 Azure OpenAI 一键桥接。
- 步骤简要:
- 安装 LiteLLM(pip install litellm)
- 启动代理:
litellm --config litellm_config.yaml
- 这样 OpenClaw 以为自己在用普通 OpenAI,但实际走你的 Azure endpoint。大量中文教程和 Medium 文章都用这个,成功率很高。
- 直接 hack base_url(部分版本可行,无需代理)
- 如果你的 OpenClaw 版本支持自定义 baseUrl + OpenAI provider:
- 把 provider 设置为 “openai”
- baseUrl 改成:
https://xxx.openai.azure.com/openai/v1(注意加 /openai/v1,这是 Azure 的 v1 兼容路径) - apiKey 填你的 Azure OpenAI key
- deployment 名通常需要在 model 名里指定,如 model: “gpt-4o” 但实际走你的 deployment。
- 社区有人在 issue 里说加
/openai/v1后直接能用(尤其是 Foundry 模型),但稳定性因版本而异——如果报 404 或格式错误,就切回 LiteLLM。
- 如果你的 OpenClaw 版本支持自定义 baseUrl + OpenAI provider:
- 其他变通
- 用环境变量注入:部分教程提到在 .env 加 AZURE_OPENAI_ENDPOINT、AZURE_OPENAI_API_KEY 等,然后 onboard 时选 Azure(但这更适用于某些 fork 或特定部署脚本)。
- 如果你是企业用户或有 MSDN 订阅,Azure 社区有专门的 OpenClaw + Azure 部署指南,基本都绕不过 LiteLLM 或自定义 endpoint。
在 OpenClaw 的 config(~/.openclaw/openclaw.json 或 UI 设置)把模型 provider 指向 LiteLLM 的本地地址:
"models": { "providers": { "openai": { // 或自定义 provider 名 "baseUrl": "http://localhost:4000/v1", "apiKey": "sk-xxx" // LiteLLM 可设虚拟 key 或留空 } } } 配置 litellm_config.yaml 或环境变量:
model_list: - model_name: gpt-4o litellm_params: model: azure/gpt-4o api_base: https://xxx.openai.azure.com/ api_key: your-azure-openai-key api_version: 2024-02-15-preview # 或最新版,根据你的部署 deployment_name: gpt-4o-deployment # 你的实际 deployment 名 是的,以下是使用 LiteLLM 作为代理来桥接你的 Azure OpenAI endpoint(https://xxx.openai.azure.com/)的完整配置示例。LiteLLM 的配置文件是 YAML 格式,不是 Python 代码,但你可以用 Python 方式启动代理(通过命令行或脚本)。
步骤 1: 安装 LiteLLM
pip install litellm # 如果想支持代理服务器完整功能,建议再装这些(可选但推荐) pip install'litellm[proxy]'步骤 2: 创建配置文件 litellm_config.yaml
在当前目录下新建文件 litellm_config.yaml,内容如下(已针对你的 endpoint 调整):
model_list:-model_name: gpt-4o # 你在 OpenClaw 里想用的模型别名(可以随便取,OpenClaw 配置时就用这个名字)litellm_params:model: azure/gpt-4o-deployment # 格式必须是 azure/ + 你在 Azure 门户创建的实际 Deployment 名称api_base: https://xxx.openai.azure.com/ # 你的 endpoint(注意结尾不加 /openai/deployments/...)api_key:"your-azure-openai-api-key-here"# 从 Azure 门户 "Keys and Endpoint" 复制的 KEYapi_version:"2024-10-21"# 推荐使用较新的版本,根据你的部署支持情况可改成 "2024-02-15-preview" 或 "2025-04-01-preview" 等# 可选:如果需要额外参数# temperature: 0.7# max_tokens: 4096-model_name: gpt-4o-mini # 可以加多个模型/Deploymentlitellm_params:model: azure/gpt-4o-mini-deployment api_base: https://xxx.openai.azure.com/ api_key:"your-azure-openai-api-key-here"api_version:"2024-10-21"# 可选:全局设置(如果多个模型共用 api_key / api_version,可以提到外面)general_settings:master_key: sk-1234567890abcdef # 强烈推荐设置一个 master key,OpenClaw 连接时用这个作为 apiKey# 可选:如果想用环境变量(更安全,不把 key 写死在 yaml 里)# litellm_params:# api_key: os.environ/AZURE_OPENAI_KEY关键替换点:
- 把
gpt-4o-deployment改成你在 Azure AI Studio / Azure OpenAI 里实际创建的 Deployment Name(不是模型名,是你自己命名的 deployment,例如 “my-gpt4o-2025”)。 - 把
your-azure-openai-api-key-here替换成真实的 API Key。 api_version:去 Azure 门户看你的部署支持的版本,或者用最新稳定版(2026 年常用 2024-10-21 或更高)。
步骤 3: 启动 LiteLLM 代理(两种方式)
方式 A:直接命令行启动(最简单)
litellm --config litellm_config.yaml --port4000# 或加 --detailed_debug 看详细日志 litellm --config litellm_config.yaml --detailed_debug启动后,它会在 http://0.0.0.0:4000 (或 http://localhost:4000)运行。
方式 B:用 Python 脚本启动(更灵活,可放进代码里自动化)
新建一个文件 start_litellm_proxy.py:
# start_litellm_proxy.pyimport litellm from litellm.proxy import proxy_server # 加载配置文件(相对路径或绝对路径) config_path ="litellm_config.yaml"# 启动 proxy 服务器 proxy_server.run_server( config=config_path, port=4000,# 可改端口# host="0.0.0.0", # 默认就是 0.0.0.0# detailed_debug=True, # 调试日志)# 如果想在代码里直接运行(不推荐生产环境)# litellm.proxy.proxy_cli.run() # 但通常用上面方式然后执行:
python start_litellm_proxy.py 步骤 4: 在 OpenClaw 中配置使用这个代理
在 OpenClaw 的配置文件(~/.openclaw/openclaw.json 或 UI 设置)中,把模型 provider 指向 LiteLLM:
{"models":{"providers":{"openai":{"baseUrl":"http://localhost:4000/v1",// 注意 /v1 结尾"apiKey":"sk-1234567890abcdef"// 如果你设了 master_key,就用它;没设可以留空或用任意值}}}}- 模型名用你在 yaml 里定义的
model_name,如 “gpt-4o” 或 “gpt-4o-mini”。 - 测试:让 OpenClaw 跑一个简单任务,看是否能正常调用你的 Azure 模型。