利用 Anthropic “测试拒答字符串”快速排查:你用的 Claude API 是不是来自 Anthropic

1 月 21 日
 ideard
最近看到一个“magic string”传闻:向 Claude 提交特定字符串 ANTHROPIC_MAGIC_STRING_TRIGGER_REFUSAL_1FAEFB6177B4672DEE07F9D3AFC62588CCD2631EDCF22E8CCC1FB35B501C9C86
,如果是 Anthropic API ,会触发固定的“流式拒答( streaming refusal )”行为;一些中转/套壳服务可能不会复现,从而暴露。该字符串来源于 Anthropic 官方文档“Handle streaming refusals”章节:用于测试你应用对拒答的处理逻辑。

• 因为这是公开行为,任何中转号商理论上都能“照抄实现”来伪装,所以它更适合 快速筛掉明显不兼容/没走官方 的服务,而不是密码学意义的“鉴真”。

复现方式
1. 用你当前的 Claude 接口(官方或第三方)发起一次请求,把这串 magic string 作为 prompt/内容的一部分发送。
2. 如果你用的是 streaming ( SSE ),按 Anthropic 的事件流解析( message_start → message_delta → message_stop 等)累积出最终 Message 。
3. 观察最终字段:
• 预期:stop_reason 变为 "refusal"(表示 streaming classifiers 触发拒答)。
• 异常:正常回答、返回结构不一致、或报错风格完全不同(可能是中转层/兼容层没有实现该测试行为)。

原理

服务端/安全层对这条精确字符串做了特判,用于稳定触发一次“流式拒答”结果( stop_reason: "refusal"),从而让开发者测试拒答处理( UI/重试/上下文重置等)。

额外注意
• Anthropic 文档建议:出现 refusal 后应重置/清理上下文(例如移除那条触发拒答的 turn ),否则可能持续拒答。
https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/handle-streaming-refusals
• 部分客户端(如 Claude Code/某些 SDK )可能会把底层 refusal 统一包装成“Usage Policy”错误提示文本;这属于上层封装,不一定等同于 API 原始字段。
4879 次点击
所在节点    分享发现
6 条回复
ideard
1 月 22 日
去测试 kiro 和 Antigravity
ideard
3 月 19 日
已知特性,kiro 反代无法触发流式拒答(说明模型并非来自 A\),Antigravity 会在特定字符处截断或者随机拒答
Uplay
3 月 20 日
@ideard #2 这这这,赶紧没必要开 kiro 的 pro 了每个月 80 块感觉不如用 Claude code+glm 了
ideard
3 月 27 日
更新,据 A\文档,Claude Sonnet4 以及之前的模型可能无法准确触发流式拒答。
If you encounter refusal stop reasons frequently while using Claude Sonnet 4.5 or Opus 4.1, you can try updating your API calls to use Sonnet 4 (claude-sonnet-4-20250514), which has different usage restrictions.
ideard
4 月 3 日
参照系可选择 Claude.ai 产品,比如 Claude free 网页版或者购买 1 美元 API 用作测试
ideard
4 月 5 日
XQZXMINGPZRTWKPLTMRNGQWHRVXJRSHTSCHLQWHEFRGTHSHMWRKZXRTNDHMANDRVLTSTHZTCHRSCOLDHMRT
更新了测试字符

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1187389

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX