Ollama + Continue 实战:搭建本地 AI 编程助手,四款代码模型横评

9 阅读7分钟

一、引子:当 API 账单成为隐形成本

上个月和一个做自由开发的朋友聊天,他说自己每个月光 AI 编程助手的 API 费用就要一千多。我问他:"公司的代码你敢随便往外发?"他愣了一下。

这件事其实有两面:一面是钱,一面是安全。用 Claude 或者 GPT 做代码补全确实爽,但你公司的内部 API key、业务逻辑、数据库结构——所有这些都经过第三方服务器。很多团队不敢用 AI 编程助手,不是因为不好用,而是因为隐私合规过不去。

本地部署 LLM 解决的就是这两个问题:零 API 成本 + 数据不出本机

Ollama 是目前最流行的本地 LLM 运行工具,一行命令就能跑起各种模型。配合 Continue 插件,VS Code 里就能像用 Copilot 一样用本地模型做代码补全和对话。

本文用四款主流代码模型做了一次完整实测,从安装到 IDE 接入全流程覆盖。

二、Ollama 安装与基础用法

Ollama 支持 Windows / macOS / Linux,安装完成后终端里一行命令就能下载并运行模型:

# 启动一个模型
ollama run qwen2.5-coder:7b

它会自动下载模型并启动交互式对话。你也可以用 REST API 调它——这在后面 IDE 集成时很有用:

# API 默认在 localhost:11434
curl http://localhost:11434/api/generate -d {
  "model": "qwen2.5-coder:7b",
  "prompt": "用 Python 写一个二分查找",
  "stream": false
}

Ollama 会自动从模型仓库拉取 GGUF 格式的模型文件。不同模型的大小差别很大——从 2B(约 1.5GB)到 70B(约 40GB)都有。对个人开发者来说,7B-14B 参数量的模型是性价比最高的区间:16GB 内存的笔记本就能流畅运行。

三、四款代码模型横评

我选了目前最主流的四款本地代码模型做对比,全部用 7B 参数版本(普通笔记本能跑的上限):

模型参数量磁盘占用内存需求代码能力中文支持
Qwen2.5-Coder7B4.5GB8-10GB优秀完美
DeepSeek Coder V27B4.2GB8-10GB极佳良好
CodeGemma7B4.0GB8GB良好一般
CodeLlama7B3.8GB8GB良好一般

实测结论

  • 中文场景首选 Qwen2.5-Coder:中文注释理解最好,生成注释也是中文,对国内开发者最友好
  • 代码能力最强 DeepSeek Coder:在 HumanEval 基准上表现最佳,尤其是 Python/JS 代码生成
  • CodeGemma 启动最快:Google 优化过的模型,首次推理延迟最低
  • CodeLlama 资源占用最小:内存占用最低,老机器也能跑

如果你的笔记本是 16GB 内存,推荐首选 Qwen2.5-Coder:7b。如果是 32GB+,可以尝试 14B 甚至 32B 版本。

四、VS Code 集成:Continue 插件配置

Continue 是一个开源的 VS Code 插件(也支持 JetBrains),它能作为各种 LLM 后端的统一前端——包括 Ollama。

安装方式:

  1. VS Code 扩展市场搜索 "Continue" 安装
  2. 创建 ~/.continue/config.json 配置文件
{
  "models": [
    {
      "title": "Qwen2.5-Coder",
      "provider": "ollama",
      "model": "qwen2.5-coder:7b",
      "contextLength": 32768
    }
  ],
  "tabAutocompleteModel": {
    "title": "Qwen2.5-Coder",
    "provider": "ollama",
    "model": "qwen2.5-coder:7b"
  },
  "embeddingsProvider": {
    "provider": "ollama",
    "model": "nomic-embed-text"
  }
}

配置好后,VS Code 里就能用 Tab 键触发代码补全,用 Cmd+I(Mac)/ Ctrl+I(Win)打开内联对话。

五、实测:本地 vs API 方案对比

我用同一个 Python 函数(带缓存的斐波那契数列生成器)测试了各方案的响应速度:

方案首字符延迟完整响应补全质量月费用
Ollama + Qwen2.5-Coder:7b1.2s4.8s良好¥0
Ollama + DeepSeek Coder:7b1.5s5.2s优秀¥0
GitHub Copilot0.3s1.5s优秀$10/月
Claude API0.8s2.1s优秀~$20/月

本地模型的延迟明显高于云方案,但对于日常的代码补全场景,1-2 秒的首字符延迟是完全可接受的。

推荐组合方案:本地模型做日常补全 + API 做复杂重构需求。Continue 可以配置两个模型同时在线,自动根据任务复杂度切换后端。

六、踩坑与优化建议

坑 1:内存不足导致 OOM

7B 模型在 Ollama 中默认使用 4-bit 量化(Q4_K_M),不需要手动指定。但如果你同时运行其他应用,16GB 内存可能会吃紧:

# 限制 CPU 线程数
set OLLAMA_NUM_THREADS=4
ollama run qwen2.5-coder:7b

坑 2:首次推理慢

模型加载到内存需要时间,第一次请求通常要 3-5 秒。保持 Ollama 进程常驻即可(后续请求会快很多)。

坑 3:补全不如 Copilot 连贯

本地 7B 模型的上下文理解能力确实不如 GPT-4 级别的云端模型。对跨文件重构、复杂业务逻辑的场景建议还是用 API。

优化建议:

  • ollama pull 提前下载模型,避免首次运行时等待
  • 检查是否启用了 GPU 加速
ollama ps
# 输出中有 "GPU" 字样表示已启用硬件加速
  • 不使用 Continue 时关掉自动补全,避免模型常驻内存

七、总结

Ollama + Continue 的组合,是目前搭建本地 AI 编程助手的最优解。它不能完全替代 Copilot 或 ChatGPT,但填补了一个重要的场景:当代码不能出本机、当预算有限、或者网络延迟不可接受时

对于个人开发者:推荐配置一个本地模型(Qwen2.5-Coder:7b)做日常补全 + 一个 API 模型做复杂任务,两者互补。

对于团队:至少可以在开发环境中用本地模型覆盖代码补全场景,把 API 调用集中到 Code Review 和架构设计等高价值环节。

欢迎在评论区分享你的本地部署经验,或者聊聊你踩过的坑 👇

实际使用场景:谁适合本地部署?

场景推荐方案原因
个人学习/实验纯本地 7B 模型零成本、自由尝试
创业团队(代码敏感)本地 7B + API 混合日常补全走本地,复杂逻辑走 API
企业合规环境本地 14B-32B 模型数据完全不出网
网络受限地区纯本地方案不依赖外部服务
高频代码补全本地 7B + Copilot本地做离线兜底

各模型安装命令速查

# Qwen2.5-Coder 7B(推荐,中文好)
ollama pull qwen2.5-coder:7b

# DeepSeek Coder V2 7B(代码强)
ollama pull deepseek-coder-v2:7b

# CodeGemma 7B(启动快)
ollama pull codegemma:7b

# CodeLlama 7B(省内存)
ollama pull codellama:7b

# 查看已下载的模型列表
ollama list

性能调优:如何让本地模型跑得更快

如果你用的是 N 卡(支持 CUDA),Ollama 会自动启用 GPU 加速。确认方法:

# 查看运行时状态
ollama ps

如果没看到 GPU 加速,检查驱动版本和 CUDA 环境变量。Windows 用户建议安装 CUDA 12.x 版本。

另外几个实用技巧:

  1. 模型量化版本:Ollama 默认用 Q4_K_M 量化(4-bit),质量不错。想更快可以用 Q3_K_S(3-bit),想更准用 Q6_K(6-bit)
  2. Keep Alive:让模型常驻内存避免重复加载
# 设置 keep_alive 为 -1(常驻)
curl http://localhost:11434/api/generate -d {
  "model": "qwen2.5-coder:7b",
  "keep_alive": -1,
  "prompt": "test"
}
  1. 并行请求:Ollama 默认单线程处理请求,不要同时发多个请求,否则会排队

总结

回到最开始的问题——API 账单和安全合规怎么选?其实不需要二选一。本地模型 + 云端 API 的组合方案是目前性价比最高的策略:日常编码用本地,关键时刻用云端。

关键点记一下:

  • 选 Qwen2.5-Coder 7B 做主力本地模型
  • Continue 插件一键接入 VS Code
  • 本地做日常补全,API 做复杂任务
  • 数据隐私和开发效率可以兼得

延伸阅读:如果你用的是 JetBrains IDE,Continue 同样支持。安装插件后在 Settings → Tools → Continue 中配置 Ollama 后端即可,配置文件和 VS Code 版本完全兼容。