解决 VS Code 中 GitHub Copilot Chat 遇到的 `claude-3.7` 模型不支持问题

解决 VS Code 中 GitHub Copilot Chat 遇到的 `claude-3.7` 模型不支持问题

解决 VS Code 中 GitHub Copilot Chat 遇到的 claude-3.7 模型不支持问题

最近在 VS Code 中使用 Cline、Roo Code 插件的时候,尝试切换到 claude-3.7 模型时遇到了如下错误:

API 请求失败 请求失败: 400 {"error":{"message":"此请求不支持模型","param":"model","code":"model_not_supported","type":"invalid_request_error"}} 

然而,当选择 claude-3.5 模型时,功能正常。本文将介绍问题的原因以及如何手动解决该问题。


问题描述

Cline、Roo Code 等插件可以使用 VS Code LM API 来工作, VS Code LM API 提供了多种语言模型选项,但我发现,虽然插件中启用了 claude-3.7 模型,但在实际使用时却提示模型不被支持。而其他模型(如 claude-3.5)则可以正常使用。

在这里插入图片描述

原因分析

经过进一步调查,这一问题是由 Microsoft 引发的,具体表现为 GitHub Copilot Chat 在发送 API 请求时包含了特定的头信息(x-onbehalf-extension-id),导致 API 服务器拒绝了对 claude-3.7 模型的支持。简单来说,Microsoft 的服务尚未完全准备好支持 claude-3.7 模型。


解决方案

尽管这是由 Microsoft 引发的问题,但我们可以采取一些手动措施来绕过限制,从而启用 claude-3.7 模型。

以下是详细步骤:

步骤 1:找到扩展文件夹

Windows:

查找类似以下名称的文件夹:

github.copilot-chat-<版本号> 

打开文件资源管理器并导航到:

%USERPROFILE%\.vscode\extensions\ 
macOS/Linux:

找到类似以下名称的文件夹:

github.copilot-chat-<版本号> 

打开终端并导航到:

~/.vscode/extensions/ 

步骤 2:打开 extension.js 文件

  1. 进入文件夹 github.copilot-chat-<版本号>/dist/
  2. 使用你喜欢的文本编辑器(如 VS Code)打开文件 extension.js

步骤 3:定位标头代码

使用编辑器的搜索功能(快捷键通常是 Ctrl+FCmd+F)搜索以下内容:

"x-onbehalf-extension-id" 

步骤 4:移除或注释掉标头代码

找到包含以下内容的代码段:

S==="getExtraHeaders"?function(){return{...f.getExtraHeaders?.()??{},"x-onbehalf-extension-id":`${A}/${c}`};}:S==="acquireTokenizer"? f.acquireTokenizer.bind(f): Reflect.get(f,S,D);
解决方法 :直接删除标头代码

完全删除以下部分:

"x-onbehalf-extension-id":`${A}/${c}`

并确保删除逗号以保持语法正确。


步骤 5:保存并重启 VS Code

  1. 保存对 extension.js 文件的修改。
  2. 关闭所有正在运行的 VS Code 实例。
  3. 重新打开 VS Code,以使更改生效。

步骤 6:验证更改

  1. 打开你常用的代码文件。
  2. 启动 Cline、Roo Code并尝试使用 claude-3.7 模型。
  3. 如果一切正常,你应该能够看到模型的响应。
在这里插入图片描述

注意事项

  1. 备份文件:在修改扩展文件之前,请务必备份原始的 extension.js 文件,以免出现问题时无法恢复。
  2. 更新风险:如果你更新了 GitHub Copilot Chat 插件,你的更改可能会被覆盖。
  3. 安全性:尽管 GitHub 官方确认这些操作是安全的,但仍然建议仅在了解风险的情况下进行此类修改。

总结

通过手动移除不必要的头信息,我们可以暂时解决 VS Code 中 Cline、Roo Code 对 claude-3.7 模型不支持的问题。希望 Microsoft 能尽快修复此问题,让所有用户都能无缝使用最新模型!

如果你有任何疑问或遇到问题,请随时在评论区留言,我们将尽力协助你解决问题。


祝编程愉快!

.

.

Read more

本地化部署方案:GraphRAG+LangChain+Ollama 驱动 LLaMa 3.1 集成 Neo4j 实战

本地化部署方案:GraphRAG+LangChain+Ollama 驱动 LLaMa 3.1 集成 Neo4j 实战

本文将带您从零开始,用不到50行核心代码实现基于本地大模型 LLaMa 3.1 的 GraphRAG 应用开发。我们将整合 LangChain 工作流、Ollama 模型管理工具与 Neo4j 图数据库,构建一套支持实体关系挖掘与混合检索的增强生成系统,全程无需依赖云端 API,兼顾数据安全与开发效率。 一、先搞懂核心概念:什么是 GraphRAG? 传统 RAG(检索增强生成)依赖向量数据库的语义相似度匹配,容易丢失实体间的关联信息。而 GraphRAG(图检索增强生成) 则通过"节点-关系"的图结构建模数据,将分散的文本块转化为结构化知识网络,让 LLM 能基于实体关联进行推理,输出更具逻辑性的答案。 其核心价值在于: * 结构化上下文:将"蒂姆·库克""苹果公司&

AI 编程新王 Codex 全面上手指南

AI 编程新王 Codex 全面上手指南 一篇文章带你精通 Codex 四大环境 + 免费使用方法 💡 前言:AI 编程的新时代 AI 编程的竞争正进入“第二轮洗牌期”。 过去几个月,Claude Code 一度成为开发者的宠儿,但频繁的限速、封号、降智问题让不少人头疼。 如今,OpenAI 推出的 Codex 迅速崛起,凭借强大的编程能力和超高性价比,成为“AI 编程新王”。 Codex 是什么? 它是基于 GPT-5 模型打造的专用编程环境,支持命令行、VS Code 插件、SDK 集成、云端操作等多种运行模式。 不论你是写脚本、做项目、还是维护仓库,Codex 都能像“AI 结对程序员”一样协助你高效开发。

【TaskbarDelegate】屏蔽上滑返回桌面手势功能

一、需求描述 基于Android 14 平台,在应用界面中默认使用上滑手势会返回桌面,某些应用要求不能返回到桌面,需要屏蔽上滑手势。 二、需求分析 我们知道手势导航的底部导航横线的逻辑是在 SystemUI 的 NavigationBarView -> NavigationBar -> NavigationBarController -> TaskbarDelegate 等相关的类控制,在手势导航中上滑手势有 2 种功能: * 从屏幕底部向上滑动,即可进入主屏幕 * 从底部向上滑动、按住再松开,可切换应用 如果想要屏蔽,可以直接返回消费掉 InputEvent 事件,就不会走后续的流程了,我尝试在NavigationBarView 的 onInterceptTouchEvent 返回 true,但是只屏蔽了返回Home的功能,最近任务还是会启动。在 TaskbarDelegate 中有设置相关的 sys ui flag

使用Llama-Factory微调教育领域解题模型的效果评测

使用Llama-Factory微调教育领域解题模型的效果评测 在当前AI驱动的教育变革浪潮中,一个现实问题日益凸显:尽管通用大语言模型如Qwen、LLaMA等在开放对话和常识推理上表现惊艳,但当学生问出“请用初中方法解这个方程”时,模型却常常跳步、漏单位,甚至给出不符合教学规范的答案。这背后反映的是专业性与泛化能力之间的鸿沟——而填补这一鸿沟的关键,正是领域微调。 我们最近在一个中学智能辅导项目中尝试了多种微调方案,最终将目光锁定在 Llama-Factory 上。它不仅让我们用一张RTX 3090就在48小时内完成了对Qwen-7B的数学解题能力定制,更重要的是,它的模块化设计让整个过程变得可复现、可迭代。下面,我将结合实战经验,深入拆解这套框架如何真正解决教育场景下的模型适配难题。 从“跑不通”到“跑得快”:为什么选择Llama-Factory? 早前我们试过手写PyTorch训练脚本做LoRA微调,结果光是环境配置就耗掉三天——HuggingFace Transformers版本不兼容、Peft库加载失败、显存OOM频发……更别说还要自己写数据预处理逻辑和评估代码。对于