前段时间接了一个内部工具需求,代码必须全程留在公司内网,不允许上传任何第三方服务器。这意味着我平时用得顺手的云端AI编程助手基本全部出局。调研了一圈,最后落地的方案是 VS Code + Continue + Ollama + CodeLlama,四样东西组合起来,补全、聊天、代码解释、单测生成都能在本地完成。这篇文章把我从零搭建到日常使用中踩过的坑、调过的参数、对比过的模型整理一遍,给同样有代码保密需求、或者单纯想低成本体验 AI 编程的朋友一份可以直接抄作业的参考。
先说结论:本地 AI 编程不是替代 GitHub Copilot 的方案,而是补足“代码不出内网”这个空缺的方案。只要你吃透了这一点,后面所有配置都不难。
1. 为什么我放弃了云端助手,转投本地模型
1.1 代码不能离开内网的四类场景
很多人觉得本地跑模型是折腾,但我实际接触下来,有几类需求是云端助手永远满足不了的:
第一类是涉密项目和政务外包。甲方合同里可能明确写了“源代码不得上传至第三方服务器”,这时候不管 Copilot 多好用,合规上就过不去。第二类是金融、医疗等行业客户的内网开发环境,机器物理隔离,外网都连不上,更别提云端 API。第三类是公司自研代码还没公开,不想把核心算法、业务逻辑的上下文发给外部模型,哪怕是大厂的企业版也觉得不放心。第四类是出差或网络不稳定的场景,高铁上、客户现场,断网之后云端助手直接罢工,本地模型反而稳定。
我遇到的这个项目属于第一类和第三类的混合体,代码不给上传,但又想要 AI 辅助,所以本地模型几乎是唯一解。
1.2 本地方案的真实能力边界:什么能做,什么别指望
搭完这套链路之后,我的实际体感是:本地 CodeLlama 能够稳定承担的活儿有三类:
- 代码补全:函数体内补全、重复性样板代码、常见的算法片段,生成速度快,基本可用。
- 代码解释:把一段不熟悉的代码贴进聊天框,让模型用自然语言讲一遍逻辑,准确率相当高。
- 单测与脚手架生成:对已有函数生成单元测试用例,或者生成一个模块的基础结构,能省不少事。
但别抱幻想的地方也很多。7B 和 13B 级别的本地模型,上下文理解能力比 GPT-4 级别的云端模型差了一大截,跨文件的重构建议、复杂业务逻辑的架构设计、需要读懂整个项目意图的“大活”,基本干不了。我测试过一次让 7B 模型做“找出这个项目里所有循环引用的地方”,结果它开始一本正经地编造不存在的文件,这就是本地小模型的幻觉上限。
1.3 硬件门槛:显存、内存与模型规模的换算
本地跑模型,先要搞明白你手里的机器能撑起多大参数量的模型。这里有个非常粗略的经验公式:
- 7B 模型做 4-bit 量化,大约需要 4GB 到 6GB 空间,推理时显存占用 5GB 左右,16GB 内存的笔记本可以硬跑;
- 13B 模型 4-bit 量化,大约需要 8GB 到 10GB,建议至少 8GB 显存;
- 34B 模型 4-bit 量化,需要 20GB 左右显存,基本告别普通消费级显卡。
我用的是 8GB 显存的 RTX 4060 笔记本,跑 13B 的 CodeLlama 非常勉强,7B 的 Q4 量化模型比较流畅。如果手里没有 NVIDIA 显卡,纯 CPU 推理也不是不能跑,但补全速度会掉到每秒几个 token,体验会差很多。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Ollama 环境搭建:下载慢、装D盘、手动导入模型都在这
2.1 安装 Ollama 并迁移模型目录
Ollama 是目前本地跑大模型最省事的运行时,一条命令就能拉取模型并启动本地 API 服务。官网下载 Windows 版安装包,双击安装即可,没有太多选项。
装完之后有一个很容易被忽略的问题:模型默认存放在 C 盘用户目录下的 .ollama\models 文件夹里。一个 7B 模型动辄四五个 GB,装两三个模型 C 盘就满了。我安装完第一个模型就发现 C 盘空间告急,果断做了迁移:
- 先把
C:\Users\<你的用户名>\.ollama\models整个文件夹复制到D:\ollama_models。 - 打开系统环境变量设置,新建用户变量
OLLAMA_MODELS,值填D:\ollama_models。 - 重启 Ollama,运行
ollama list确认模型还在。
这一步强烈建议在下载模型之前就做,省得后面搬几个 GB 的文件浪费时间。
2.2 解决下载慢:从国内模型仓库拿 GGUF 再导入
Ollama 默认从官方仓库拉模型,在国内网络环境下速度经常让人崩溃,几 GB 的模型可能下到一半断掉。搜索结果里也有很多人问“ollama下载太慢了”和“ollama国内镜像源”,我试过一些社区镜像,但说实话稳定性参差不齐,今天能用明天可能就挂了。
我最后用的方案是:从国内模型仓库下载 GGUF 格式文件,再手动导入 Ollama。具体流程:
- 在 ModelScope(魔搭社区)搜索 CodeLlama-7B-Instruct 的 GGUF
