来源选 Claude,填一个 Anthropic 控制台生成的密钥就能用。
适合认准 Anthropic 模型的人。这条路和别家有两点不一样:密钥走
x-api-key 请求头而不是 Bearer,而且点连接不会真的去拉模型列表。
怎么配
- 顶部 API 下拉选「聊天补全」。
- 「聊天补全来源」选 Claude。
- 密钥粘进「Claude API 密钥」。
- 在「Claude 模型」下拉里选一个。这个列表是前端自带的静态清单,不依赖连接。
- 发一条测试消息,用它来确认是否真的连通。
请求发到哪,长什么样
发到 https://api.anthropic.com/v1/messages,不是别家那个
/chat/completions。请求头带三样:Content-Type、
anthropic-version: 2023-06-01 和 x-api-key。
基础地址对应 SillyTavern 的
API_CLAUDE,
两个固定请求头在
同一文件的 382 行附近。
除此之外还会带一个 anthropic-beta,内容随模型和功能变化。
| 要填什么 | 来源 | 说明 |
|---|---|---|
| 端点 | 代码常量,不用填 | 走中转时改填「反向代理」 |
| 密钥 | Anthropic 控制台 | 存为 api_key_claude,以 x-api-key 发出 |
| 模型名 | 前端自带的静态下拉 | 不联网获取,所以可能落后于上游的最新型号 |
为什么点「连接」拉不出模型列表
因为服务端对 Claude 这个来源根本不去请求上游,直接返回一个「跳过检查」的空结果。 SillyTavern 的前端本来就自带模型清单,不需要问上游。
结论是:连接按钮变绿不等于密钥是对的。判断是否真的接通,只能靠发一条消息。 如果模型下拉里没有你想用的新型号,那是前端清单没更新,不是密钥的问题。
为什么我调的温度没起作用
部分 Claude 模型只接受一个采样参数。服务端按模型名判断:命中受限名单时, 如果 top-p 小于 1 就删掉温度,否则删掉 top-p。两个只能留一个。
开了扩展思考的请求更彻底:温度、top-p、top-k 三个会被一起删掉。 还有一类模型走的是自适应思考,请求体里发的是强度档位而不是 token 预算。 所以「参数调了没反应」在 Claude 这条路上往往是正常现象,不是 bug。
思考预算是怎么算出来的
传统模式下按「推理强度」乘一个比例:最小档固定 1024,低档取最大输出的
10%,中档 25%,高档 50%,最高档 95%,结果不低于 1024。
非流式请求还会再压到 21333 以内。自适应模式下不算数字,直接发
low、medium、high、max 这样的档位。
连不上时先查什么
| 现象 | 多半是 |
|---|---|
| 连接显示成功,但发消息报 400 | 状态检查本来就不验密钥。这个 400 通常是上游 401 被改写过来的 |
| 发消息立刻返回 400,没有上游正文 | 密钥为空,服务端在本地就拦下了 |
| 报模型不存在 | 前端的静态清单里有,但你的账号没有该型号权限 |
| 502 | 连不上 api.anthropic.com |
常见问题
第三方的 Claude 中转怎么填
看那家是什么格式。如果它提供的是 Anthropic 原生格式,用 Claude 来源加「反向代理」, 凭据填进「代理密码」。如果它提供的是 OpenAI 兼容格式,改用 「自定义(兼容 OpenAI)」来源。 两者填错位置都会得到看不懂的报错。
提示词缓存有吗
服务端实现了,但默认是关的:系统提示缓存默认关闭,按深度缓存默认为
-1(即禁用),缓存 TTL 默认 5m。
开启后请求会额外带上缓存相关的 beta 标记。
能不发系统提示吗
能。关掉「使用系统提示词」,请求体里就完全没有 system 这个键,
原本要进系统位的内容会按转换规则并入消息数组。
为什么最后一条助手消息有时候变成了用户消息
开了思考的请求不允许助手预填。这种情况下服务端会把消息数组末尾那条助手消息的角色改成
user 再发出去。部分新模型即使不开思考也走这个规则。
换成别的接入方式
不想按量付费,看手机端侧模型或 Ollama;想用一个密钥试多家,看 OpenRouter。 对照表在枢纽页。