关键要点
- VS Code使用Continue.dev扩展连接到本地模型(Ollama、LM Studio、vLLM)。
- Cursor是一个VS Code分支,具有内置的本地模型支持。无需扩展。
- 最佳代码本地模型:Qwen2.5-Coder 7B、Llama Code 13B或Mistral 7B。
- 使用7B模型在消费者GPU上预期2-5秒补全延迟。
- 截至2026年4月,本地代码补全对个人使用很实用,但对团队还不是生产级。
如何在VS Code中设置Continue.dev?
Continue.dev是VS Code扩展,用于本地和云代码补全。
# 1. 从VS Code市场安装Continue
# 搜索"Continue"并单击安装
# 2. 确保Ollama正在运行
ollama serve
# 3. 打开Continue设置(Ctrl+Shift+P → Continue:打开设置)
# config.json将打开
# 4. 为您的本地模型配置:
# 用以下内容替换默认设置:
{
"models": [{
"title": "Ollama",
"provider": "ollama",
"model": "qwen2.5-coder:7b",
"apiBase": "http://localhost:11434"
}],
"tabAutocompleteModel": {
"title": "Ollama",
"provider": "ollama",
"model": "qwen2.5-coder:7b"
}
}
# 5. 开始键入代码并按Tab获得补全
# 或Ctrl+Shift+\ 手动触发补全如何在Cursor中使用本地模型?
Cursor是针对AI辅助编程优化的VS Code分支。 它具有通过Ollama的本地模型的内置支持。
# 1. 从cursor.sh下载Cursor
# 2. 确保Ollama正在运行
ollama serve
# 3. 打开Cursor设置(Cmd/Ctrl + ,)
# 4. 搜索"Model"并设置:
# - Model Provider: "Ollama"
# - Model: "qwen2.5-coder:7b" (或您的选择)
# - API Base: "http://localhost:11434"
# 5. 键入代码并按Tab进行内联补全
# 6. Ctrl+K进行多行补全哪些模型最适合代码?
⚠️ 显存规则:始终拥有比模型需求多2-3 GB的空闲显存。Q4时的7B模型(4.7 GB)在VS Code或Cursor中运行时需要总计8 GB显存。
| 模型 | HumanEval | 显存 | 速度 | 最佳用途 |
|---|---|---|---|---|
| Qwen2.5-Coder 7B | 72% | 4.7 GB | 快速 | 最佳平衡、最快 |
| Llama Code 7B | 69% | 4.7 GB | 快速 | 通用编码 |
| Mistral 7B | 61% | 4.5 GB | 非常快 | 轻量、EU服务器 |
| Llama Code 13B | 74% | 8.5 GB | 中等 | 16GB机器质量更好 |
| DeepSeek-Coder 6.7B | 68% | 4 GB | 快速 | 轻量替代品 |
您应该期望什么样的延迟和显存?
补全延迟(到第一个token的时间)对IDE体验至关重要。 截至2026年4月,以下是典型数字:
⚠️ 延迟现实检查:本地补全比云慢2-10倍。将本地用于私人工作;将云(Copilot、Claude)用于时间敏感编码。
💡 性能调优:将`contextLength`从2048减少到1024个token以将延迟减半。权衡:建议的代码上下文行更少。
| 硬件 | 模型 | 延迟 | 吞吐量 |
|---|---|---|---|
| RTX 4090 GPU | Qwen2.5-Coder 7B | 0.3-0.5秒 | 150个token/秒 |
| RTX 4070 GPU | Qwen2.5-Coder 7B | 0.8-1.5秒 | 80个token/秒 |
| M3 MacBook Pro | Qwen2.5-Coder 7B | 2-3秒 | 20个token/秒 |
| 8核CPU仅 | Qwen2.5-Coder 7B | 5-10秒 | 3个token/秒 |
性能数据说明:使用Qwen2.5-Coder 7B Q4_K_M格式、批大小 = 1、新鲜系统(无后台任务)测量的延迟和吞吐量。您的实际性能取决于OS、显存可用性、量化格式和并发负载。
如何配置代码补全以获得最佳性能?
使用这些设置微调体验:
⚠️ 警告:在具有13B模型的8GB机器上,补全可能需要5-10秒,使IDE感觉无响应。对于流畅性能,使用7B模型。
💡 专业提示:将`debounceWaitMs`增加到400-500毫秒以减少闪烁并避免显示不完整建议。
# config.json高级设置
{
"tabAutocompleteModel": {
"contextLength": 2048, # 发送多少代码上下文
"maxTokens": 50 # 每次补全最大token
},
"completionOptions": {
"maxContextTokens": 1024,
"maxSuggestionsCount": 5,
"debounceWaitMs": 200 # 显示前等待(毫秒)
},
# 对于更快的推理,使用较小的上下文:
"models": [{
"contextLength": 1024 # 较小的上下文 = 更快
}]
}
# 8GB机器的最佳速度:
# - 使用7B模型(不是13B)
# - 将maxTokens设置为30
# - 将debounceWaitMs设置为500(较少闪烁)设置本地代码补全时有哪些常见错误?
- 不调整去抖延迟:如果补全感觉"迟缓",增加debounceWaitMs(例如400毫秒)以避免显示不完整建议。
- 使用对您的显存来说过大的模型:13B模型+编辑器开销可使用12+ GB。在8GB机器上,使用7B模型。
- 期望云级代码质量:GPT-4o在代码方面比任何7B模型好得多。本地补全达到云质量的70-80%。
- 在CPU上运行推理:CPU补全不实用(5-10秒延迟)。显存对有用补全是必需的。
常见问题:本地代码补全
本地代码补全比云更快吗?
不。云补全(GitHub Copilot)由于优化的服务器而更快。本地补全具有更高延迟但零成本和零隐私风险。
我可以在其他IDE(PyCharm、Neovim)中使用本地补全吗?
可以,但设置有所不同。PyCharm有Ollama插件。对于Neovim,使用cmp-ollama(补全插件)。始终检查IDE社区以了解集成。
我可以在Continue或Cursor中使用云模型吗?
可以。配置Continue以使用OpenAI、Claude或Gemini。您也可以混合(本地快速,云复杂代码)。
本地代码补全在离线工作吗?
可以。如果您已在Ollama中提取模型,补全完全离线工作。
相关阅读
- 本地LLM开发栈 -- 超越IDE集成的完整栈,包含API服务器搭建和生产监控。
- 安装Ollama -- 代码补全Ollama设置。
- 编码的最佳本地LLM -- 详细编码模型基准。
- How to Install LM Studio -- 使用哪个工具。
- 本地LLM OpenAI兼容API -- 代码补全API。
源代码
- Continue.dev Team. (2026). "Continue Documentation." https://docs.continue.dev/ -- Official setup guide, config.json reference, and local model integration instructions.
- Cursor. (2026). "Cursor Documentation." https://docs.cursor.com/ -- Local model configuration, Ollama integration, and inference setup guide.
- Alibaba Qwen Team. (2025). "Qwen2.5-Coder Technical Report." arXiv:2409.12186. https://arxiv.org/abs/2409.12186 -- HumanEval and code generation benchmarks for Qwen2.5-Coder variants.
- DeepSeek-AI. (2024). "DeepSeek-Coder Technical Paper." arXiv:2401.14196. https://arxiv.org/abs/2401.14196 -- Benchmark data and capability analysis for DeepSeek-Coder family.