现在位置: 首页 > Ollama 教程 > 正文

Ollama 本地 AI 编程助手

本章节定制一个编码专用的本地模型 runoob-coder,并把它接进 VS Code 和 Claude Code,打造一套完全离线、不花 token 费用的编程助手。

核心工作是三件事:选对代码模型、写好编码 Modelfile、接进顺手的工具。


第一步:选代码模型,显存说了算

代码模型的能力差距比对话模型更明显,但门槛也更高,按显存对号入座:

你的硬件推荐模型预期表现
24GB 以上显存qwen3-coder专用代码模型,跨文件理解最强;30B 级参数对显存要求高,长上下文还需更多余量
16GB 内存无独显qwen3.5:9b 定制版日常补全、解释代码、写单测足够
8GB 内存老机器qwen3.5:4b / 0.8b 定制版轻量问答,复杂任务交给云端

显存不够跑 qwen3-coder 也不用遗憾:用 :cloud 标签直接调用云端版本,代码敏感的团队记得先过一遍合规。

按硬件选择拉取:

ollama pull qwen3-coder        # 24GB+ 显存
ollama pull qwen3.5:9b         # 16GB 内存

第二步:写编码场景的 Modelfile

裸模型写代码能用但不"专业"——不注释、爱跑题、格式随意。用 Modelfile 把编码规范固化下来:

实例

# 文件路径:Modelfile
# 显存 24GB+ 把基座换成 qwen3-coder
FROM qwen3.5:9b

SYSTEM """
你是 RUNOOB 团队的编程助手,遵守以下规范:
1. 优先给出完整、可直接运行的代码,而不是片段
2. 每个关键步骤写中文注释,解释"
为什么"
3. 遵循 PEP 8(Python)或语言官方风格
4. 涉及不熟悉的 API 时提醒查官方文档,不臆造接口
5. 回答结构:思路一句话 - 代码 - 注意事项
"
""

# 代码场景要稳定,压低随机性
PARAMETER temperature 0.2

# Agent/编辑器场景代码上下文很大,给足窗口
PARAMETER num_ctx 65536

构建专属编码模型:

ollama create runoob-coder -f Modelfile

验收它是否"调教到位",用三个标准任务测试:让一个函数直接可用(看完整性)、解释一段带坑的旧代码(看理解力)、要求写单测(看规范遵循)。三个都合格再接入编辑器。

num_ctx 65536 是给编辑器与 Agent 场景准备的:它们会把整个文件甚至多个文件塞进上下文。显存吃紧时降到 32768,并用 ollama ps 观察 PROCESSOR 是否仍为 100% GPU。


第三步:接进你的编辑器

定制模型与裸模型在工具眼里没有区别,接入方式与第 11 篇完全一致。

编码助手三层结构:工具层、协议层、模型层

VS Code Chat 接入

安装 Ollama 官方扩展后,在 Chat 的模型选择器里选中 runoob-coder 即可,无需其他配置。

Claude Code 接入

实例

# 一键方式
ollama launch claude --model runoob-coder

# 手动方式:环境变量指向本地,模型名用定制模型
export ANTHROPIC_AUTH_TOKEN=ollama
export ANTHROPIC_BASE_URL=http://localhost:11434
claude --model runoob-coder

接入后,Claude Code 的文件编辑、命令执行、多轮重构能力全部由本地模型驱动,跑长任务前记得确认上下文窗口已按上文设置。


效果对比与模型切换策略

不同任务该用不同量级的模型,把选择策略固化下来避免每次纠结:

任务类型推荐模型原因
函数补全、解释代码、写单测runoob-coder(本地)快、免费、隐私
跨文件重构、复杂调试qwen3-coder 或云端旗舰需要更强的长上下文理解
批量生成、脚本化处理本地小模型 + API零成本跑量

切换成本要足够低才可能真的切换:

实例

# 终端对话中不退出直接换模型
/load qwen3-coder

# VS Code 在模型选择器中点选即可
# Claude Code 启动时用 --model 指定

一个实用的组合策略:日常 90% 的请求交给本地小模型,遇到真正的硬骨头再切大模型或云模型。Ollama 的多标签共存让这种"梯队"策略没有任何切换成本。