Ollama + VS Code / Continue:打造一个本地 AI 代码助手 前言前面几篇文章我们已经把 Ollama 的基础使用、API 调用、本地知识库和 Open WebUI 都讲了一遍。到这里Ollama 已经可以做很多事情在终端里运行本地大模型通过 API 被 Python 和 JavaScript 调用通过 Open WebUI 变成网页聊天界面结合 embedding 做本地知识库问答。但如果你是开发者或者平时经常写代码那么还有一个非常实际的场景能不能把 Ollama 接到 VS Code 里变成一个本地 AI 代码助手比如让它帮你解释代码 生成函数 修改代码 找 bug 写注释 写 README 理解项目结构 做简单代码补全这一篇文章就来记录如何把 Ollama 和 VS Code 结合起来打造一个本地 AI 编程助手。一、为什么要把 Ollama 接入 VS Code如果只是问问题我们可以直接用ollama run qwen2.5-coder:7b或者打开 Open WebUI。但写代码时这样还是不够方便。因为开发时真正需要的是在编辑器里选中代码 直接让 AI 解释 直接让 AI 修改 直接让 AI 生成代码 直接把 AI 回答应用到当前文件如果每次都要复制代码到网页或终端再把回答复制回来流程就很割裂。所以更理想的方式是VS Code ↓ AI 插件 ↓ Ollama 本地模型 ↓ 返回代码建议这样 AI 就真正进入了开发环境。这也是 Ollama 很适合开发者折腾的原因。它不只是一个聊天工具而是可以作为本地模型后端接入各种开发工具。二、本地 AI 代码助手有什么优势和云端 AI 编程助手相比本地 AI 代码助手有几个明显优势。1. 不按 token 计费如果使用云端 API写代码时频繁请求模型会不断消耗额度。而 Ollama 是本地运行模型下载模型后日常使用主要消耗的是自己的电脑资源。这对学习、测试、折腾项目很友好。2. 代码隐私更可控很多时候我们不想把项目代码发送到云端。比如个人项目源码 学校项目 公司内部代码 还没公开的产品原型 API 配置文件 本地实验代码本地模型至少可以减少代码上传云端的风险。当然这不等于绝对安全。如果你安装的插件、扩展或其他工具本身会联网仍然要看它们的权限和设置。但相比直接把代码发给云端模型本地模型给了用户更多控制权。3. 适合学习 AI 编程工具原理用 Copilot、Cursor、Claude Code 这类工具时很多东西已经被封装好了。但用 Ollama VS Code / Continue 时你能更清楚地看到模型从哪里来 模型怎么调用 插件如何连接本地 API 不同模型角色有什么区别 上下文长度为什么影响速度 代码补全为什么要用小模型这对理解 AI 编程工具很有帮助。4. 适合低成本测试如果你正在做 AI 编程工具、代码助手、项目生成器、网页开发助手用 Ollama 作为本地测试后端很方便。等项目成熟后再决定是否接入更强的云端模型。三、整体方案这篇主要讲两个方向。方案一VS Code 自带模型选择器接入 Ollama较新的 VS Code 和相关扩展已经可以通过模型选择器加载 Ollama 模型。这个方式更像是把 Ollama 接进 VS Code 自带的 AI Chat 体验里。它的优点是配置相对直接 和 VS Code 结合较自然 适合想体验官方集成的人缺点是对 VS Code 版本和相关扩展版本有要求 可能需要登录 GitHub 具体体验依赖当前 VS Code 的 AI 功能支持方案二使用 Continue 插件接入 OllamaContinue 是一个开源 AI 代码助手插件支持 VS Code也支持配置本地模型。它的优点是更偏开发者工作流 支持聊天、编辑、代码补全等功能 配置灵活 适合折腾本地代码助手这篇主要以 Continue 为重点因为它更适合写成一个完整的本地 AI 编程助手教程。四、准备工作开始之前先准备以下环境。1. 已安装 VS Code 2. 已安装 Ollama 3. 已下载代码模型 4. 已安装 Continue 插件 5. 电脑内存和显存足够先检查 Ollama 是否正常ollama --version检查 Ollama 服务是否正常curl http://localhost:11434/api/tags如果能返回模型列表说明 Ollama API 正常。如果没有模型可以先下载模型。五、推荐下载哪些代码模型普通聊天模型可以写代码但专门的 coder 模型通常更适合代码任务。新手可以先从 Qwen Coder 系列开始。1. 轻量代码补全模型ollama pull qwen2.5-coder:1.5b这个模型比较小速度更快更适合做代码补全测试。代码补全场景对速度要求比较高。如果模型太大每次补全都等很久体验会很差。2. 主要聊天和代码解释模型ollama pull qwen2.5-coder:7b7B 模型更适合解释代码 生成函数 分析 bug 写注释 写 README 理解项目结构如果你的电脑配置还可以可以把 7B 作为主要代码助手模型。3. 查看本地模型下载完成后运行ollama list确认能看到类似qwen2.5-coder:1.5b qwen2.5-coder:7b六、方案一VS Code 直接接入 Ollama如果你想先体验 VS Code 对 Ollama 的直接支持可以尝试 Ollama 的 VS Code 集成。运行ollama launch vscode如果环境支持VS Code 会引导你把 Ollama 模型加载到 VS Code 的模型选择器中。也可以指定模型ollama launch vscode --model qwen2.5-coder:7b进入 VS Code 后可以打开 Chat 面板选择本地 Ollama 模型。这个方案的重点是VS Code 负责聊天界面 Ollama 负责本地模型如果模型列表没有出现可以检查1. Ollama 是否运行 2. VS Code 版本是否足够新 3. 相关 Chat 扩展是否安装 4. 模型是否已经 pull 到本地 5. 是否选择了 Local 模型来源。这个方案适合快速体验。但如果你想要更完整的代码助手功能比如明确配置聊天模型、编辑模型、补全模型Continue 会更适合。七、方案二安装 Continue 插件打开 VS Code进入扩展市场搜索Continue安装 Continue 插件。安装完成后VS Code 左侧一般会出现 Continue 图标。如果没看到可以尝试Ctrl L或者在命令面板中搜索 Continue。命令面板打开方式Ctrl Shift P然后搜索Continue八、Continue 和 Ollama 是怎么连接的Continue 本身不是模型。它更像是 VS Code 里的 AI 助手界面和中间层。整体结构是VS Code ↓ Continue 插件 ↓ Ollama 本地 API ↓ 本地代码模型Ollama 默认 API 地址是http://localhost:11434Continue 通过配置文件知道我要使用 Ollama 作为模型提供方 我要调用哪个本地模型 这个模型负责聊天、编辑还是补全所以关键在于配置 Continue。九、打开 Continue 配置文件安装 Continue 后需要打开配置文件。一般可以在 Continue 面板中找到设置按钮然后选择打开配置。也可以在 VS Code 命令面板中搜索Continue: Open Config现在 Continue 新版主要使用 YAML 配置。配置文件通常类似config.yaml如果你看到旧版config.json说明你可能在使用旧配置方式。新写文章建议用 YAML因为现在的 Continue 文档主要推荐 YAML 配置。十、最简单的 Ollama 配置下面是一个最小配置示例。name: Local Ollama Coding version: 0.0.1 schema: v1 models: - name: Qwen Coder 7B provider: ollama model: qwen2.5-coder:7b roles: - chat - edit这段配置的意思是配置名称Local Ollama Coding 模型名称Qwen Coder 7B 模型来源Ollama 模型 IDqwen2.5-coder:7b 模型用途聊天和编辑保存配置后点击 Continue 里的 reload config或者重启 VS Code。如果配置成功你应该能在 Continue 中选择这个本地模型。十一、加入代码补全模型聊天和代码补全的需求不一样。聊天可以稍慢一点但回答要更完整。代码补全必须快否则写代码时会很难受。所以建议这样配置name: Local Ollama Coding version: 0.0.1 schema: v1 models: - name: Qwen Coder 7B Chat provider: ollama model: qwen2.5-coder:7b roles: - chat - edit - name: Qwen Coder 1.5B Autocomplete provider: ollama model: qwen2.5-coder:1.5b roles: - autocomplete这里的思路是7B 模型负责聊天和代码编辑 1.5B 模型负责代码补全这样比较合理。因为 autocomplete 场景非常吃响应速度小模型更容易获得流畅体验。十二、配置上下文长度避免内存爆掉有些用户会遇到一个问题终端里 Ollama 可以跑模型 但 Continue 一用就提示内存不够一个常见原因是 Continue 默认使用的上下文长度比较高。上下文越长占用的内存和显存越多。可以在配置里降低上下文长度name: Local Ollama Coding version: 0.0.1 schema: v1 models: - name: Qwen Coder 7B Chat provider: ollama model: qwen2.5-coder:7b roles: - chat - edit defaultCompletionOptions: contextLength: 2048 - name: Qwen Coder 1.5B Autocomplete provider: ollama model: qwen2.5-coder:1.5b roles: - autocomplete defaultCompletionOptions: contextLength: 1024如果你的电脑配置一般可以先用较低上下文测试。后面如果运行稳定再慢慢调大。十三、测试一让 Continue 解释代码准备一段简单代码function calculateTotal(items) { let total 0; for (const item of items) { total item.price * item.quantity; } return total; }选中这段代码然后在 Continue 里提问解释这段代码的作用并指出它可能缺少哪些边界处理。正常情况下模型应该能解释1. 函数接收 items 数组 2. 遍历每个 item 3. 用 price * quantity 计算小计 4. 累加到 total 5. 返回总价。同时它可能会提醒1. 没有检查 items 是否为空 2. 没有检查 price 和 quantity 是否是数字 3. 没有处理负数 4. 没有处理缺失字段。这就是代码解释功能。十四、测试二让 Continue 生成函数可以让它生成一个简单函数。例如输入帮我写一个 JavaScript 函数接收一个学生成绩数组返回平均分、最高分和最低分。模型可能生成function analyzeScores(scores) { if (!Array.isArray(scores) || scores.length 0) { return { average: 0, max: null, min: null }; } const total scores.reduce((sum, score) sum score, 0); return { average: total / scores.length, max: Math.max(...scores), min: Math.min(...scores) }; }这类任务很适合本地代码模型。不过要注意AI 生成的代码一定要自己检查。特别是边界条件、类型判断、异常处理不能完全相信模型。十五、测试三让 Continue 修改代码假设有一段代码function login(username, password) { if (username admin password 123456) { return true; } return false; }可以让 Continue 修改把这段代码改得更安全一点不要硬编码密码并加上简单的输入校验。模型可能会给出更好的版本比如function login(username, password, storedUser) { if (!username || !password || !storedUser) { return false; } if (username ! storedUser.username) { return false; } return password storedUser.passwordHash; }当然这个例子还不是真正安全的登录系统。真实项目里还需要密码哈希、盐值、数据库、会话管理等。但这个测试可以说明Continue 更适合在编辑器里对代码进行解释和修改。十六、测试四让 Continue 找 bug准备一段有问题的代码def average(nums): total 0 for n in nums: total n return total / len(nums)提问这段 Python 代码有什么潜在 bug请给出修改版本。模型应该能指出如果 nums 是空列表会出现除以 0 的错误。修改版可能是def average(nums): if not nums: return 0 total 0 for n in nums: total n return total / len(nums)这个功能对学习编程很有帮助。尤其是刚学算法、Python、JavaScript 时本地代码助手可以帮你快速发现一些基础问题。十七、测试五生成 README 或注释除了写代码代码模型也可以做文档类任务。例如根据当前项目结构帮我写一个简单 README包括项目介绍、安装方法、运行命令和目录说明。或者给这个函数加上清晰的中文注释适合初学者理解。这类任务不一定需要最强模型。7B 代码模型通常已经能完成很多基础文档工作。十八、常用提示词模板下面是一些适合在 Continue 里使用的提示词。1. 解释代码请解释这段代码的作用按执行顺序说明每一步在做什么。最后指出可能的边界问题。2. 找 bug请检查这段代码是否有潜在 bug重点关注空值、类型错误、边界条件和异常处理。请给出修改建议。3. 优化代码请在不改变功能的前提下优化这段代码让它更清晰、更容易维护并解释你改了什么。4. 生成注释请给这段代码添加适合初学者阅读的中文注释不要改变原本逻辑。5. 重构代码请把这段代码重构得更模块化减少重复逻辑并保持功能不变。6. 写测试请为这个函数写几个测试用例包括正常输入、空输入、边界值和异常情况。7. 写 README请根据这个项目内容写一个 README包含项目介绍、功能列表、安装步骤、运行方法和目录结构说明。十九、本地代码助手的局限性Ollama Continue 很有用但它不是万能的。1. 本地模型能力有限本地 7B 模型能做很多基础代码任务但和顶级云端模型相比复杂推理和大型项目理解能力还是会弱一些。如果你让它理解一个大型代码库或者修改复杂架构代码效果可能不稳定。2. 速度取决于电脑配置如果模型太大显存不够回答会很慢。尤其是代码补全如果延迟太高体验会非常差。所以建议聊天模型可以稍大一点 补全模型尽量小一点比如qwen2.5-coder:7b 用于 chat / edit qwen2.5-coder:1.5b 用于 autocomplete3. AI 写的代码必须检查AI 可能会编造不存在的 API 忽略边界条件 写出能跑但不安全的代码 误解项目上下文 生成过度复杂的实现所以不能把本地 AI 当成完全可靠的程序员。更合理的定位是它是一个代码辅助工具不是代码最终负责人。4. 不适合直接处理敏感项目虽然模型本地运行但 VS Code 插件、扩展生态、项目设置仍然要注意。如果是特别敏感的代码建议先确认插件是否联网 是否开启遥测 是否调用外部 API 配置里是否只使用本地模型本地模型只是降低风险不代表整个开发环境绝对安全。二十、常见问题排查问题 1Continue 里看不到模型先确认 Ollama 里有模型ollama list再确认 API 正常curl http://localhost:11434/api/tags然后检查 Continue 配置里的模型名是否完全一致。例如本地模型叫qwen2.5-coder:7b配置里也必须写model: qwen2.5-coder:7b不要写错 tag。问题 2提示模型需要更多内存可以尝试降低上下文长度defaultCompletionOptions: contextLength: 2048或者换更小的模型ollama pull qwen2.5-coder:1.5b问题 3代码补全很慢原因通常是模型太大 显存不足 上下文太长 电脑后台占用太高解决方法用 1.5B 或 3B 小模型做 autocomplete 减少上下文长度 关闭其他占显存的软件 不要用 thinking 模型做补全代码补全最重要的是快不是模型最大。问题 4回答质量一般可以尝试换更强的代码模型 给出更明确的提示词 选中相关代码再提问 让模型先解释再修改 分步骤处理复杂任务比如不要只说修一下而是说请检查这段代码的边界条件和异常处理指出问题后再给出修改版本。提示词越清楚模型越容易给出可用答案。问题 5Continue 配置报错检查 YAML 格式。YAML 对缩进很敏感。例如models: - name: Qwen Coder 7B provider: ollama model: qwen2.5-coder:7b这里的缩进不能乱。如果配置失败先写最小配置确认能跑后再加 autocomplete、contextLength 等内容。二十一、推荐配置总结如果你只是想要一个比较稳的新手配置可以从下面这个开始name: Local Ollama Coding version: 0.0.1 schema: v1 models: - name: Qwen Coder 7B Chat provider: ollama model: qwen2.5-coder:7b roles: - chat - edit defaultCompletionOptions: contextLength: 2048 - name: Qwen Coder 1.5B Autocomplete provider: ollama model: qwen2.5-coder:1.5b roles: - autocomplete defaultCompletionOptions: contextLength: 1024对应模型下载命令ollama pull qwen2.5-coder:7b ollama pull qwen2.5-coder:1.5b这套配置的思路是7B负责回答、解释、修改代码 1.5B负责快速补全如果你的电脑配置更强可以再尝试更大的模型。如果配置一般就先从小模型开始。二十二、Ollama Continue 适合谁我觉得它特别适合这几类人1. 想学习 AI 编程工具原理的人 2. 想降低 API 成本的人 3. 想把代码尽量留在本地的人 4. 经常写小项目、网页、脚本的人 5. 想做本地 AI 开发环境的人 6. 想折腾免费 Copilot 替代方案的人。但如果你追求最强代码能力或者要处理复杂大型项目云端顶级模型目前通常还是更强。所以 Ollama Continue 的定位不是完全替代所有 AI 编程工具而是一个本地、低成本、可控、适合学习和中小项目的 AI 代码助手方案。二十三、本篇总结这一篇主要讲了如何把 Ollama 接入 VS Code 和 Continue打造一个本地 AI 代码助手。核心流程是安装 Ollama ↓ 下载代码模型 ↓ 安装 VS Code / Continue ↓ 配置 Continue 使用 Ollama ↓ 设置 chat / edit / autocomplete 角色 ↓ 在编辑器里解释、生成、修改代码最关键的模型下载命令是ollama pull qwen2.5-coder:7b ollama pull qwen2.5-coder:1.5b最关键的 Continue 配置是name: Local Ollama Coding version: 0.0.1 schema: v1 models: - name: Qwen Coder 7B Chat provider: ollama model: qwen2.5-coder:7b roles: - chat - edit - name: Qwen Coder 1.5B Autocomplete provider: ollama model: qwen2.5-coder:1.5b roles: - autocomplete到这里Ollama 就不只是能聊天、能做知识库了。它已经可以进入代码编辑器变成一个真正的本地开发助手。下一篇可以继续写模型选择方向Ollama 模型推荐中文、代码、轻量、知识库模型应该怎么选