作者用一台 16GB M4 Mac mini 做了个实验:完全离线跑编程助手,代码不出本机、不付订阅费,日常干活是否可用。结论是可行,硬约束是内存,软约束是上下文长度。文章附全部命令、配置和基准测试方法,可自行复现。
本地运行的理由有三点:隐私(客户代码、内部仓库、NDA 内容不出机器)、成本(订阅约 $100–240/年,机器已买)、离线可用(飞机、酒店、咖啡馆都能用)。短板是原始能力——云端前沿模型在多文件推理上明显更强。
关键硬件约束:Apple Silicon 上 GPU 与 CPU 共享统一内存。16GB 机器上 macOS 加开发环境先吃掉 6–8GB,模型实际可用约 7–9GB。macOS 默认允许 GPU 使用约 75% 总内存作为显存。
模型选择上,16GB 推荐 qwen2.5-coder:7b 负责聊天和编辑,qwen2.5-coder:1.5b 专跑行内补全。小模型专司补全、大模型负责对话,是让整体响应跟手的关键。14B 可尝试 q4_K_M 量化版,32B 和 qwen3-coder:30b 需要 32GB 以上内存。
接入 VS Code 用 Continue 扩展,配置指向本地 Ollama 服务。注意 model 标签必须与 ollama list 完全一致,否则静默失败。contextLength 设 8192 是刻意的——32K 上下文的 KV 缓存比省下的权重内存更贵。
调优三个环境变量:OLLAMA_KEEP_ALIVE 保持模型常驻、OLLAMA_MAX_LOADED_MODELS 限制同时加载模型数、OLLAMA_NUM_PARALLEL 限制并发请求。ollama ps 中 PROCESSOR 列应为 100% GPU,出现 CPU 说明模型溢出统一内存,需换更小模型或量化版。
本地 7B 模型擅长单函数生成与重构、样板代码、解释报错和正则、跨文件机械重命名;短板在多文件推理、长上下文、最新库 API 和 agentic 多步任务。作者的评价:相当于一个读过全部文档、响应即时、不泄露代码但看不到当前文件之外的初级工程师。
是否退订 Copilot 取决于工作类型:以函数级私有代码为主可退;大量跨文件脚手架和 agentic 工作流建议保留;多数人可两者并用,本地处理 80% 常规编辑,云端处理难啃的 20%。
#开发者 #工具 #Ollama #Qwen #Macmini #本地LLM #Copilot #VS Code #Continue #离线编程
@DevToolboxHub