VS Code 中把「自己部署的 Coder 模型」变成 AI 编程助手
公司内部部署了一个QWen-Coder的7B小模型,这个模型虽然不大,但是验证后发现效果还不错。所以,希望能够在VS Code中使用这个模型来辅助编写代码,这样就可以避免使用其他付费模型。
1. 安装插件
在 VS Code 的开源 AI 插件中,Continue 这个插件评价还不错,功能也能满足要求:
[*]同时支持「对话」和「Tab 自动补全」两种交互方式
[*]后端可接任何兼容 OpenAI API 格式的模型(本地/云端均可)
[*]完全离线运行,保护源码隐私
因此,决定使用此插件来构建AI编程助手。
插件在:https://marketplace.visualstudio.com/items?itemName=Continue.continue
安装之后,VS Code 的边栏上会多一个图标。
2. 配置本地模型
接下来,我们配置它使用我们自己部署的模型:
依次点击左侧活动栏上 Continue 图标 -->选择Models --> 右上角齿轮。
就可以打开 Continue 的配置文件(yaml格式的),然后参照如上图的配置。
配置文件中,各个元素的含义如下:
[*]基本信息
name: Local Assistant
version: 1.0.0
schema: v1
[*]name: 配置名称,标识为 "Local Assistant"(本地助手)。
[*]version: 配置文件版本(1.0.0)。
[*]schema: 使用的配置架构版本(v1)。
[*]模型配置
models:
- name: Qwen2.5-Coder-7B-Instruct
provider: "openai"
model: "Qwen2.5-Coder-7B-Instruct"
apiBase: "http://ip:port/v1"
apiKey: ""
completion_options:
temperature: 0.5
top_p: 0.9
roles:
- chat
- autocomplete
- edit
- apply
[*]模型定义:使用 Qwen2.5-Coder-7B-Instruct(一个针对代码任务的7B参数模型)。
[*]provider: 设置为 "openai",表示兼容OpenAI API格式(这里根据你的实际情况修改)。
[*]apiBase: 模型API的终端地址(http://ip:port/v1),指向一个本地或远程服务。
[*]apiKey: 你的模型API密钥。
[*]生成参数:
[*]temperature: 0.5(平衡生成结果的创造性和确定性)。
[*]top_p: 0.9(核采样,限制生成时仅考虑概率最高的90% token)。
[*]支持的功能 (roles):
[*]chat: 对话交互。
[*]autocomplete: 代码自动补全。
[*]edit: 代码编辑。
[*]apply: 可能指应用代码更改。
[*]上下文集成
context:
- provider: code
- provider: docs
- provider: diff
- provider: terminal
- provider: problems
- provider: folder
- provider: codebase配置工具可访问的上下文来源(增强模型对当前任务的理解):
[*]code: 当前编辑的代码文件。
[*]docs: 项目文档或注释。
[*]diff: 代码变更差异(如Git diff)。
[*]terminal: 终端输出或命令历史。
[*]problems: 错误或警告(如IDE提示)。
[*]folder: 当前目录文件结构。
[*]codebase: 整个代码库的元信息(如符号定义)。
总得来说,此配置文件定义了一个本地代码助手,通过HTTP API连接到一个 Qwen2.5-Coder 模型,支持代码补全、编辑、聊天等功能,并集成了开发环境的多维度上下文(代码、终端、文档等)。
3. 验证效果
最后,我们来验证下模型的效果。
首先 **@** 一个代码文件,下面的示例中是我的一个工程中的代码:
接下来,我们让AI帮我们生成CreateTask这个函数的代码:
然后,点击生成的代码右上角的 【Apply】按钮,就能将生成的代码填充到文件中。
点击右上角绿色的勾,就能将代码写入文件,如果代码有错误,可以继续通过prompt交互来修改代码,
或者直接修改代码文件也行。
4. 总结
十分钟内,你就能在 VS Code 里用上「完全属于自己」的 AI 编程助手,既省钱又安心。Happy coding!
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页:
[1]