这篇文章是我折腾本地AI编程助手一段时间以来的“血泪总结”。从OpenCode到Aider,从14B模型折腾到30B模型,中间踩过的坑比我家门口的减速带还多。
先说结论:
如果你追求“一句话搞定全部”,选OpenCode+云端免费模型
如果你追求“数据不出电脑”,选Aider+Ollama+30B模型
如果显卡跑不动30B,14B+llama.cpp硬撑也能用
我的硬件配置
先交代一下我的设备:
系统:Ubuntu 24.04
显卡:RTX 3090 24GB
CUDA:12.4
模型1:Qwen2.5-Coder-14B(量化后约9GB,llama.cpp运行)
模型2:Qwen3-Coder-30B(量化后约20GB,Ollama运行)
第一回合:OpenCode+Big Pickle —— “一键躺平”型选手
OpenCode是我用的第一个工具。安装简单到离谱:
npm install -g opencode-ai装完就能用,内置免费模型Big Pickle,不需要配任何API Key。
它的表现怎么样?
我提了同样的需求:“帮我写一个博客系统”。
OpenCode的流程是这样的:
先问我用啥技术栈:Flask还是Django?要不要数据库?
我回答之后,它自动判断环境:检测到我用的是虚拟环境,自动pip install依赖
创建目录和文件全程不用确认:刷刷刷就建好了
项目需求理解到位:模板、路由、数据库映射,该有的都有
整个过程交互极少,说人话就是——它自己就把活儿干完了。
优点
✅ 开箱即用,零配置
✅ 自动装依赖,不用你操心
✅ 文件创建无确认,效率极高
✅ 需求理解能力强,Big Pickle虽然免费但脑子够用
缺点
❌ 数据走云端(虽然它说是本地优先,但某些功能会走它自己的服务)
❌ 免费模型有调用次数限制
❌ 涉密项目不敢用
第二回合:Aider+14B模型(llama.cpp版)——“硬撑”型选手
为了数据不出电脑,我转向了Aider+本地模型。第一步是用llama.cpp跑Qwen2.5-Coder-14B。
模型下载
hf download Qwen/Qwen2.5-Coder-14B-Instruct-GGUF \--include "qwen2.5-coder-14b-instruct-q4_k_m.gguf" \--local-dir ~/models/qwen2.5-coder-14b
启动命令
终端1:启动llama.cpp服务
~/ai/llama.cpp/build/bin/llama-server \-m ~/models/qwen2.5-coder-14b/qwen2.5-coder-14b-instruct-q4_k_m.gguf \--gpu-layers 999 \-t 8 \-c 32768 \--host 127.0.0.1 \--port 65530
export OPENAI_API_BASE=http://127.0.0.1:65530/v1export OPENAI_API_KEY="sk-dummy-key"aider --model openai/qwen2.5-coder-14b --edit-format whole
它的表现怎么样?
能跑,但是……
生成简单项目没问题(单个文件、简单脚本)
遇到复杂需求就容易出格式错误:
The LLM did not conform to the edit format必须加
--edit-format whole才能稳定一点修改已有代码时容易“犹豫”,偶尔需要人工介入
优点
✅ 完全离线,数据安全
✅ 24GB显存跑得动(9GB占用)
✅ 简单任务能胜任
缺点
❌ 必须加
--edit-format whole才能稳定❌ 复杂任务容易出格式错误
❌ 需要一定的“人工引导”才能完成
怎么解决格式错误?
当遇到格式错误时,我用的策略是:
“删除文件并重新生成”
这个策略特别管用——本地模型擅长“从零生成”,不擅长“精确修改”。
第三回合:Aider+30B模型(Ollama版)——“真香”型选手
转折点出现在我开始用Ollama跑Qwen3-Coder-30B。
模型下载
ollama pull qwen3-coder:30b启动命令
aider --model ollama/qwen3-coder:30b这次没有加任何额外参数。
它的表现怎么样?
提同样的需求:“帮我写一个博客系统”:
自动选择技术栈:它自己决定用Flask+SQLite
创建文件需要确认:每个文件会问一次“创建吗?”——安全性更好
修改代码没问题:让我改个功能,它直接给出diff修改,一次成功
没有格式错误
优点
✅ 完全离线,数据安全
✅ 不用加
--edit-format whole,默认就能用✅ 修改代码稳定,不犹豫
✅ 需求理解能力接近云端模型
✅ RTX 3090 24GB刚好能跑
缺点
❌ 创建文件需要人工确认(安全性更好,但不够“一键”)
❌ 30B模型较大,下载需要耐心
❌ 显存占用高,24GB基本跑满(约20GB)
三款组合怎么选?
直接上个对比表:
| 安装难度 | |||
| 数据隐私 | |||
| 首次上手速度 | |||
| 需求理解能力 | |||
| 文件创建 | |||
| 修改代码稳定性 | whole格式 | ||
| 显存占用 | |||
| 命令示例 | opencode | aider --model openai/qwen2.5-coder-14b --edit-format whole | aider --model ollama/qwen3-coder:30b |
| 适合场景 |
我的最终建议
1. 新手想快速体验 → OpenCode+Big Pickle不用折腾,装完就能用,效果还很好。先感受一下“AI写代码”的快乐。
2. 项目涉密、显卡一般 → Aider+14B(llama.cpp)数据不出电脑,加上 --edit-format whole 也能稳定干活。遇到格式错误就让它“删除重生成”。
3. 项目涉密、显卡够好 → Aider+30B(Ollama)这是我目前的主力配置。稳定、理解能力强、修改代码不犹豫。虽然创建文件要确认,但换来的是更强的安全感。
写给想折腾的人:怎么选工具链?
写在最后
从OpenCode到Aider,从14B到30B,从llama.cpp到Ollama,折腾了很长时间,中间踩了无数坑。但现在回头看,值了。
本地AI编程助手的好处是实打实的:数据不出电脑、不限次数、响应飞快。
如果你也在折腾这条路,希望这篇文章能帮你少踩几个坑。
你有在尝试本地AI编程工具吗?欢迎在评论区分享你的经历。
觉得有用的话,点个关注,我还会继续分享这种真实体验过的工具。 😄
夜雨聆风