OpenRouter 提供商
Claude-mem 支持 OpenRouter 作为观察提取的备用提供者。OpenRouter 提供统一的 API,可访问来自不同提供者的 100+ 模型,包括 Google、Meta、Mistral、DeepSeek 以及许多其他提供者,而且通常还提供慷慨的免费额度。
免费模型可用:OpenRouter 提供几种完全免费的模型,使其成为在保持质量的同时将观测提取成本降至零的绝佳选择。
为什么使用 OpenRouter?
- 访问100个模型:通过一个API从多个提供商的模型中进行选择
- 免费套餐选项:有几个高质量的模型可以完全免费使用
- 成本灵活性:高端型号按使用付费,无需承诺
- 无缝回退:如果 OpenRouter 无法使用,将自动回退到 Claude
- 热插拔:无需重新启动工作进程即可切换提供商
- 多轮对话:在 API 调用中保持完整的对话历史
OpenRouter 上的免费模型
OpenRouter 通过提供免费模型积极支持 AI 访问的民主化。这些是适合观察提取的可投入生产的模型。
精选免费模型
| 模型 | ID | 参数 | 上下文 | 最适合 |
|---|---|---|---|---|
| 小米 MiMo-V2-Flash | xiaomi/mimo-v2-flash:free | 309B (15B 活跃, MoE) | 256K | 推理、编程、代理 |
| Gemini 2.0 闪存 | google/gemini-2.0-flash-exp:free | — | 1M | 通用用途 |
| Gemini 2.5 闪存 | google/gemini-2.5-flash-preview:free | — | 1M | 最新功能 |
| DeepSeek R1 | deepseek/deepseek-r1:free | 671B | 64K | 推理,分析 |
| Llama 3.1 70B | meta-llama/llama-3.1-70b-instruct:free | 70B | 128K | 通用 |
| Llama 3.1 8B | meta-llama/llama-3.1-8b-instruct:free | 8B | 128K | 快速、轻量 |
| Mistral Nemo | mistralai/mistral-nemo:free | 12B | 128K | 高效性能 |
默认模型:Claude-mem 默认使用 xiaomi/mimo-v2-flash:free——一个 3090 亿参数的专家混合模型,在 SWE-bench Verified 排名第一,并在编码和推理任务中表现出色。
免费模型注意事项
- 速率限制:免费模型的速率限制可能比付费模型更严格
- 可用性:空闲容量取决于供应商合作关系和需求
- 排队时间:在高峰使用期间,请求可能会被短暂排队
- 最大 token 数:大多数免费模型支持 65,536 个 completion token
所有免费模型支持:
- 工具使用和函数调用
- 温度和取样控制
- 停止序列
- 流式响应
获取 API 密钥
- 前往 OpenRouter
- 使用 Google、GitHub 或电子邮件登录
- 打开 API Keys
- 点击 创建密钥
- 复制并安全存储您的 API 密钥
免费开始:创建账户或使用免费模型无需信用卡。只有在你想使用高级模型时才需要添加信用。
配置
设置
| 设置 | 值 | 默认值 | 描述 |
|---|---|---|---|
CLAUDE_MEM_PROVIDER | claude, gemini, openrouter | claude | 用于观察提取的人工智能提供商 |
CLAUDE_MEM_OPENROUTER_API_KEY | 字符串 | — | 您的 OpenRouter API 密钥 |
CLAUDE_MEM_OPENROUTER_MODEL | 字符串 | xiaomi/mimo-v2-flash:free | 模型标识符(见上表) |
CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES | 数字 | 20 | 对话历史中的最大消息数 |
CLAUDE_MEM_OPENROUTER_MAX_TOKENS | 数字 | 100000 | token 预算安全限额 |
CLAUDE_MEM_OPENROUTER_SITE_URL | 字符串 | — | 可选:用于分析归因的 URL |
CLAUDE_MEM_OPENROUTER_APP_NAME | 字符串 | claude-mem | 可选:用于分析的应用名称 |
使用设置界面
- 在 http://localhost:37777 打开查看器
- 点击齿轮图标以打开设置
- 在AI 提供商下,选择OpenRouter
- 输入您的 OpenRouter API 密钥
- 可选择不同的模型
设置会立即生效——无需重启。
手动配置
编辑 ~/.claude-mem/settings.json:
{
"CLAUDE_MEM_PROVIDER": "openrouter",
"CLAUDE_MEM_OPENROUTER_API_KEY": "sk-or-v1-your-key-here",
"CLAUDE_MEM_OPENROUTER_MODEL": "xiaomi/mimo-v2-flash:free"
}或者,通过环境变量设置 API 密钥:
设置文件优先于环境变量。
模型选择指南
免费使用(无费用)
推荐: xiaomi/mimo-v2-flash:free
- 在编码基准测试中表现最佳
- 256K 上下文窗口可处理大规模观察
- 最大 completion token 数为 65K
- 专家混合架构(15B 活跃参数)
替代方案:
google/gemini-2.0-flash-exp:free- 1M 上下文,Google的旗舰deepseek/deepseek-r1:free- 出色的推理能力meta-llama/llama-3.1-70b-instruct:free- 强大的通用型
付费使用(更高质量/更快速度)
| 型号 | 价格(每一百万个标记) | 最适合 |
|---|---|---|
anthropic/claude-3.5-sonnet | $3 入 / $15 出 | 最高质量的观察 |
google/gemini-2.0-flash | $0.075 入 / $0.30 出 | 快速,经济实惠 |
openai/gpt-4o | 2.50 美元输入 / 10 美元输出 | GPT-4 质量 |
上下文窗口管理
OpenRouter 代理实现了智能上下文管理,以防止成本失控:
自动截断
该代理使用滑动窗口策略:
- 检查消息数量是否超过
MAX_CONTEXT_MESSAGES(默认:20) - 检查估算的 token 数是否超过
MAX_TOKENS(默认值:100,000) - 如果超出限制,只保留最近的消息
- 记录带有丢失消息计数的警告
token 估算
- 保守估计:1 个标记 ≈ 4 个字符
- 用于主动上下文管理
- 从 API 响应记录的实际使用情况
费用跟踪
日志包括详细的使用信息:
OpenRouter API usage: {
model: "xiaomi/mimo-v2-flash:free",
inputTokens: 2500,
outputTokens: 1200,
totalTokens: 3700,
estimatedCostUSD: "0.00",
messagesInContext: 8
}提供商切换
您可以随时在提供商之间切换:
- 无需重启:更改将在下次观察时生效
- 对话记录已保存:在会话中途切换时,新提供者可以看到完整的对话上下文
- 无缝过渡:所有提供者使用相同的观察格式
通过界面切换
- 在查看器中打开设置
- 更改 AI 提供商 下拉菜单
- 下一次观察将使用新的提供者
通过设置文件切换
{
"CLAUDE_MEM_PROVIDER": "openrouter"
}回退行为
如果 OpenRouter 遇到错误,claude-mem 会自动回退到 Claude Agent SDK:
触发回退:
- 速率限制(HTTP 429)
- 服务器错误(HTTP 500、502、503)
- 网络问题(连接被拒绝,超时)
- 通用获取失败
不会触发回退:
- 缺少 API 密钥(记录警告,从一开始就使用 Claude)
- 无效的 API 密钥(错误导致失败)
当回退发生时:
- 已记录警告
- 任何正在进行的消息将被重置为待处理
- Claude SDK 在完整的对话上下文中接管
回退是透明的:您的观察将继续处理而不会中断。回退会保留所有对话上下文。
多轮对话支持
OpenRouter 代理在 API 调用中保持完整的对话历史:
Session Created
↓
Load Pending Messages (observations from queue)
↓
For each message:
→ Add to conversation history
→ Call OpenRouter API with FULL history
→ Parse XML response
→ Store observations in database
→ Sync to Chroma vector DB
↓
Session complete这启用:
- 连贯的多轮交流
- 跨观察的上下文保留
- 会话中无缝切换提供商
故障排除
OpenRouter API 密钥未配置
要么:
- 在
~/.claude-mem/settings.json中设置CLAUDE_MEM_OPENROUTER_API_KEY,或者 - 设置
OPENROUTER_API_KEY环境变量
速率限制
免费模型在高峰使用期间可能有速率限制。如果你达到速率限制:
- Claude-mem 会自动回退到 Claude SDK
- 考虑切换到其他免费的模型
- 为高级模型访问添加积分
未找到模型
请验证模型ID是否正确:
- 查看 OpenRouter Models 以获取当前可用性
- 对于免费模型变体使用
:free后缀 - 模型 ID 区分大小写
高 token 使用警告
如果你看到关于高 token 使用量的警告(每次请求超过 50,000):
- 减少
CLAUDE_MEM_OPENROUTER_MAX_CONTEXT_MESSAGES - 减少
CLAUDE_MEM_OPENROUTER_MAX_TOKENS - 考虑一个具有更大上下文窗口的模型
连接错误
如果您看到连接错误:
- 检查你的网络连接
- 在 status.openrouter.ai 验证 OpenRouter 服务状态
- 该代理将自动回退到Claude
API 详情
OpenRouter 使用与 OpenAI 兼容的 REST API:
端点: https://openrouter.ai/api/v1/chat/completions
标题:
Authorization: Bearer {apiKey}
HTTP-Referer: https://github.com/thedotmack/claude-mem
X-Title: claude-mem
Content-Type: application/json请求格式:
{
"model": "xiaomi/mimo-v2-flash:free",
"messages": [
{"role": "system", "content": "..."},
{"role": "user", "content": "..."}
],
"temperature": 0.3,
"max_tokens": 4096
}比较服务提供商
| 功能 | Claude (SDK) | Gemini | OpenRouter |
|---|---|---|---|
| 费用 | 按 token 付费 | 免费层 付费 | 免费模型 付费 |
| 模型 | 仅 Claude | 仅 Gemini | 100 个模型 |
| 质量 | 最高 | 高 | 根据型号而异 |
| 速率限制 | 根据级别 | 5-4000 每分钟请求数 | 取决于型号 |
| 备用 | 不适用(主要) | → Claude | → Claude |
| 设置 | 自动 | 需要 API 密钥 | 需要 API 密钥 |
推荐:从 OpenRouter 的免费 xiaomi/mimo-v2-flash:free 模型开始,以零成本提取观察。如果您需要更高质量或遇到速率限制,可以切换到 Claude 或为高级模型增加 OpenRouter 积分。
下一步
- Configuration - 完整设置参考
- Gemini Provider - 替代的免费提供者
- Getting Started - 基本使用指南
- Troubleshooting - 常见问题