使用Claude Code配合本地模型时,推理速度大幅下降,甚至下降近90% 关键解决方法

在使用Claude Code配合本地模型时,许多用户可能会发现推理速度大幅下降,甚至下降近90%。这往往是由于Claude Code自动添加了一个名为Attribution Header的标头参数,该参数直接导致本地推理服务的KV Cache失效,模型性能严重退化,从原本的高速缓存状态退化为几乎无需缓存的低效运行状态。

📉 关键问题:KV Cache失效

KV Cache(键值缓存)在本地模型推理中扮演着极为重要的角色,它能够显著提升推理速度。然而,在Claude Code最近的版本中,会自动在请求中添加一个Attribution Header。这个标头的作用虽然目的未明,但结果却是使缓存机制完全失效,从而让性能大幅度下降。

🛠 解决方案:修改Claude Code设置文件

解决这一问题的关键在于调整Claude Code的设置文件,禁用多余的标头参数。具体操作如下:

  1. 打开并编辑路径 ~/.claude/settings.json
    • 如果文件不存在,可以通过以下命令新建它:
    cat > ~/.claude/settings.json
  2. 在文件的env对象中,添加以下代码:
    {
      "CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
    }
  3. 确保修改保存后,最终settings.json文件内容应类似如下:
{
  "promptSuggestionEnabled": false,
  "env": {
    "CLAUDE_CODE_ENABLE_TELEMETRY": "0",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
    "CLAUDE_CODE_ATTRIBUTION_HEADER" : "0"
  },
  "attribution": {
    "commit": "",
    "pr": ""
  },
  "plansDirectory": "./plans",
  "prefersReducedMotion": true,
  "terminalProgressBarEnabled": false,
  "effortLevel": "high"
}

完成后,通过重启Claude Code以应用修改。

🚫 避免的错误操作

请注意,单纯通过终端执行export CLAUDE_CODE_ATTRIBUTION_HEADER=0是无效的。这种方法无法从根本上解决KV Cache失效的问题,必须直接在配置文件中进行修改。

✔ 总结

通过简单地修改settings.json文件,将CLAUDE_CODE_ATTRIBUTION_HEADER设置为0,你可以轻松解决本地模型推理速度下降的问题,大幅度提升性能。如果你正使用Claude Code运行本地模型,赶紧根据本文的方法试试吧,事半功倍!

文章评论

登录后才能发布评论哦
立即登录/注册
消息提醒
Hello, world! This is a toast message.