OpenClaw 模型配置:多提供商管理
OpenClaw 支持多种 AI 模型提供商,包括 OpenAI、Anthropic、Google 等。本文将详细介绍如何配置和管理多个模型提供商,以及如何设置故障转移策略。
支持的模型提供商
OpenClaw 原生支持以下模型提供商:
| 提供商 | 支持的模型 | 认证方式 |
|---|---|---|
| OpenAI | GPT-4o, GPT-4, GPT-3.5, Codex | API Key |
| Anthropic | Claude 3.5 Sonnet, Claude 3 Opus | API Key |
| Gemini 1.5 Pro, Gemini 1.5 Flash | OAuth / API Key | |
| DeepSeek | DeepSeek-V2, DeepSeek-Coder | API Key |
| 本地模型 | Ollama, LM Studio | 本地运行 |
配置模型提供商
OpenAI 配置
最简单的配置方式,使用 API Key:
{
"models": {
"default": "openai/gpt-4o",
"providers": {
"openai": {
"apiKey": "sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"baseUrl": "https://api.openai.com/v1"
}
}
}
}
Anthropic 配置
{
"models": {
"default": "anthropic/claude-3-5-sonnet-20241022",
"providers": {
"anthropic": {
"apiKey": "sk-ant-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"baseUrl": "https://api.anthropic.com"
}
}
}
}
Google 配置
支持 OAuth 和 API Key 两种认证方式:
{
"models": {
"default": "google/gemini-1.5-pro",
"providers": {
"google": {
"clientId": "YOUR_CLIENT_ID",
"clientSecret": "YOUR_CLIENT_SECRET",
"refreshToken": "YOUR_REFRESH_TOKEN"
}
}
}
}
模型故障转移
模型故障转移功能允许你在主提供商失败时自动切换到备用提供商,确保服务的高可用性。
配置故障转移
{
"models": {
"default": "openai/gpt-4o",
"failover": {
"enabled": true,
"providers": [
{
"provider": "openai",
"model": "gpt-4o",
"priority": 1,
"maxRetries": 2,
"retryDelay": 1000
},
{
"provider": "anthropic",
"model": "claude-3-5-sonnet-20241022",
"priority": 2,
"maxRetries": 2,
"retryDelay": 1000
},
{
"provider": "google",
"model": "gemini-1.5-pro",
"priority": 3
}
],
"fallbackPolicy": "next_provider"
}
}
}
故障转移策略
| 策略 | 说明 |
|---|---|
next_provider |
切换到下一个提供商(默认) |
retry_same |
重试同一提供商直到成功 |
immediate_fallback |
立即切换,不重试 |
每个 Agent 使用不同模型
你可以为不同的 Agent 配置不同的模型:
{
"models": {
"default": "openai/gpt-4o"
},
"agents": {
"list": [
{
"id": "default",
"name": "Default Assistant",
"model": "openai/gpt-4o"
},
{
"id": "coder",
"name": "Code Assistant",
"model": "openai/gpt-4o"
},
{
"id": "writer",
"name": "Writing Assistant",
"model": "anthropic/claude-3-5-sonnet-20241022"
},
{
"id": "translator",
"name": "Translation Agent",
"model": "google/gemini-1.5-flash"
}
]
}
}
本地模型配置
Ollama 配置
使用 Ollama 运行本地模型:
首先安装 Ollama:
# macOS
$ brew install ollama
# Linux
$ curl -fsSL https://ollama.com/install.sh | sh
下载并运行模型:
$ ollama pull llama3.1:8b
$ ollama serve
配置 OpenClaw 使用 Ollama:
{
"models": {
"default": "ollama/llama3.1:8b",
"providers": {
"ollama": {
"baseUrl": "http://localhost:11434",
"apiKey": ""
}
}
}
}
模型参数调优
全局模型参数
{
"models": {
"default": "openai/gpt-4o",
"parameters": {
"temperature": 0.7,
"maxTokens": 4096,
"topP": 0.9,
"topK": 40
}
}
}
按 Agent 配置参数
{
"agents": {
"list": [
{
"id": "creative",
"model": "openai/gpt-4o",
"modelParameters": {
"temperature": 0.9,
"maxTokens": 2000
}
},
{
"id": "analytical",
"model": "openai/gpt-4o",
"modelParameters": {
"temperature": 0.1,
"maxTokens": 4096
}
}
]
}
}
认证凭证管理
使用配置文件
直接在配置文件中存储 API Key:
{
"models": {
"providers": {
"openai": {
"apiKey": "sk-xxxxx"
}
}
}
}
使用环境变量
更安全的方式是使用环境变量:
# 设置环境变量
$ export OPENAI_API_KEY="sk-xxxxx"
$ export ANTHROPIC_API_KEY="sk-ant-xxxxx"
配置文件:
{
"models": {
"providers": {
"openai": {
"apiKey": "$OPENAI_API_KEY"
},
"anthropic": {
"apiKey": "$ANTHROPIC_API_KEY"
}
}
}
}
模型选择建议
根据任务选择模型
| 任务类型 | 推荐模型 | 理由 |
|---|---|---|
| 代码生成 | OpenAI GPT-4o | 最强的代码能力 |
| 文本创作 | Anthropic Claude 3.5 | 更好的创意写作 |
| 翻译 | Google Gemini 1.5 Flash | 快速且准确 |
| 简单问答 | GPT-3.5 Turbo | 成本低,响应快 |
| 隐私敏感 | Ollama 本地模型 | 数据不离本地 |
成本优化
- 使用更便宜的模型:简单任务使用 GPT-3.5 Turbo
- 限制 Token:设置合理的 maxTokens
- 启用缓存:对重复查询启用缓存
- 故障转移策略:主模型失败时切换到更便宜的模型
性能优化
并发请求
配置并发限制以优化性能:
{
"models": {
"providers": {
"openai": {
"maxConcurrentRequests": 10,
"timeout": 30000
}
}
}
}
响应缓存
对相同的查询启用缓存:
{
"models": {
"cache": {
"enabled": true,
"ttl": 3600,
"maxSize": 1000
}
}
}
故障排查
认证失败
# 检查 API Key
$ openclaw configure --section models
速率限制
如果遇到速率限制,考虑:
- 增加重试延迟
- 使用多个 API Key
- 切换到其他提供商
总结
OpenClaw 的模型配置非常灵活,支持多个提供商和故障转移策略。根据任务选择合适的模型,并合理配置参数,可以让你的 AI 助手既高效又经济。
相关资源
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。







