欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > VSCode Continue 扩展踩坑记录

VSCode Continue 扩展踩坑记录

2025/4/24 8:45:38 来源:https://blog.csdn.net/kobayasi/article/details/147250375  浏览:    关键词:VSCode Continue 扩展踩坑记录

Trae 是一款很优秀的 AI 开发工具,但目前支持的平台还较少,比如不支持 Win7,不支持 Linux,为了在这些平台上进行开发,我需要寻找一个替代品。经过网上搜索,选择了 VSCode + Continue 扩展,但在使用过程中踩了不少坑,这里记录下来供借鉴参考。

什么是 Continue 扩展?

Continue 是一款强大的 VS Code 扩展,旨在增强开发者的编码体验。它利用人工智能技术,提供多种功能来提高代码质量和开发效率。主要功能包括但不限于:

  • 代码生成与补全:根据上下文自动生成代码片段或完整的代码块。
  • 注释生成:为现有代码生成详细且准确的注释,支持多种编程语言。
  • 测试用例生成:根据代码逻辑自动生成单元测试用例。
  • 代码优化建议:提供代码优化建议,帮助开发者编写更高效的代码。
  • 文档生成:生成项目文档、API 文档等。
  • 自定义命令:允许用户创建和配置自定义命令,以满足特定需求。

使用背景

  • 在公司内网进行开发,不能直接接入互联网,属于离线环境;
  • 公司内网部署了 DeepSeek,提供了接口,可以供扩展调用。

遇到的问题

踩坑1:

老版 Continue 扩展使用 config.json 作为用户配置文件,但新版 Continue 扩展已经改用 config.yaml 作为用户配置文件,前者是 json 格式,后者是 yaml 格式(一种数据序列化语言),但从网上能找到的各种教程,基本都是用 json 格式,导致实际操作中需要转换格式,非常不方便,还容易遇到各种问题。

解决方法:

这是我瞎试出来的方法,无论是 config.json 还是 config.yaml,都存放在 user/.continue (Windows 和 Linxu 一样,都是在用户名目录下的 .continue 子目录),打开这个目录,如果已经有了 config.yaml,直接删除,然后创建一个 config.json 文件(可以是空文件)。再打开 VSCode,你会发现,Continue 扩展也能正确识别并使用 config.json 文件。后面就可以愉快的使用网上教程里的各种 Json 格式范例了。

踩坑2:

我按照网上的提示,添加了模型,也按照公司的接口数据进行了修改,但测试时总是遇到连接上的问题,当 provider 设置为 deepseek 时,就提示连接 deepseek 网站超时失败,设置为 openai 时,就提示连接 openai 网站超时失败,设置为 ollama时,就提示找不到 Ollama 服务。这个问题浪费了我很长时间,我一度以为 Continue 扩展是不是不能完全脱离互联网使用,或者必须安装 Ollama 用本地大模型才行。

解决方法:

首先你要理解 Continue 扩展对模型的处理逻辑,对于一个模型,Continue 扩展会检查是否有自定义地址,如果没有(或它不理解你设置的内容),它就会连接 Provider 的官方网址。而这个自定义网址,是用 apiBase 属性来设置的。所以,当你发现 Continue 扩展总是连接 Provider 官网,就要检查 apiBase 是否正确。(这里还有一个小坑,config.json 如果设置错参数,有的会提示,有的不会提示,比如这里我写成 api_Base,它就不提示出错)

另外,apiBase 属性还要设置对,设置错了也不行。

如对于 DeepSeek, "apiBase": "http://XX.XX.XX.XX:YY/v1/chat/completions", 这样的写法就不对,要写成  "apiBase": "http://XX.XX.XX.XX:YY/v1/"。 (这里仅代表我遇到的情形,不同的环境也可能会有不同要求)

此外,Continue 扩展官网还说要在 User settings 中关闭掉“Allow Anonymous Telemetry”,但个人感觉没什么影响,如果前面操作后仍有问题,可以试一试。

踩坑3:

Continue 扩展是默认是英文的,右键菜单有5个功能,实际执行都是英文,如生成注释为英文。因此想要增加中文的命令。这里折腾了很久,就是死活不生效。

解决方法:

首先,把 yaml 格式的配置文件改成 json 格式,在这种情况下,使用了网上的经验做法,目前确定能生效的属性有:

customCommands": [
{
        "name": "修复BUG",
        "prompt": "请仔细分析以下代码,找出可能存在的运行错误或逻辑问题:\n\n{{{input }}}请按照以下步骤进行:1. 识别代码中的错误,包括语法错误、运行时错误和逻辑错误。2. 修改代码以修复发现的问题,确保代码能够正确运行。3. 使用 markdown 格式提供修改后的完整代码。4. 详细说明原始代码和修改后代码的区别,解释每处修改的原因。5. 简要总结修复的主要问题。请使用简体中文回答,保持回答的简洁性和条理性,避免重复或无关的内容。",
        "description": "修复代码错误"
}]

添加后,在 Chat 对话栏输入 / ,就会出现 修改BUG 的选项,如果没有就说明没生效。

此外还有代码补全应该也可以,碰到过补全内容的提示:

"tabAutocompleteModel": {
        "title": "DeepSeek",
        "model": "deepseekr1",
        "apiKey": "",
        "apiBase": "http://XX.XX.XX.XX:YY/v1",
        "completionOptions": {"stop": ["[PREFIX]", "[SUFFIX]"] },
        "provider": "openai"
},

还没解决的问题

现在希望能把右键菜单的5个常用功能改成中文版,但试了很多方法尚未成功,如有好的方法,烦请留言,感谢~

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词