vscode的continue插件配置ollama本地模型,autocomplete模型改到TaoToken 1. 为什么 Continue 的 autocomplete 总是识别不到本地模型VS Code 里装 Continue 插件、接上 Ollama 本地模型聊天面板能正常对话但敲代码时补全死活不出来——这是很多人第一次配 Continue 时最常撞的墙。问题基本不在 Ollama也不在模型本身而在config.yaml里 autocomplete 这个角色没有被显式绑定。Continue 的自动探测Autodetect只会把识别到的模型挂到 chat 上补全模型必须你手动写一条带roles: - autocomplete的条目否则插件根本不知道拿哪个模型去跑 inline completion。Continue 是 VS Code 里一个开源 AI 编程助手插件支持 chat、edit、autocomplete 三类角色模型来源可以是云端 API也可以是本地 Ollama。Ollama 则是一个把大模型跑在本机的运行时装好后用ollama run就能对话默认监听http://localhost:11434。把这两个接起来你就能在完全离线的情况下让 VS Code 拥有代码补全和对话能力适合对数据敏感、或者想省 API 费用的开发者。这篇要解决的核心链路是Ollama 起服务 → Continue 的config.yaml写对 provider 和 model → 单独给 autocomplete 指定模型 → 触发补全验证 → 出错了怎么查。同时我会把 TaoToken 作为备选 endpoint 的写法也放进去本地模型跑不动大任务时可以切到统一 Key 通道不用改插件结构。先说清楚一个前提Continue 现在的配置文件是config.yaml不是早期的config.json。YAML 对缩进敏感冒号后面要空格列表用短横线这些细节错一个字符插件就会静默失败或者报 schema 错误。我见过太多人把 JSON 的写法直接粘进 YAML结果模型列表整个不生效。配置文件的位置在 VS Code 里点 Continue 侧边栏的齿轮图标选 Open Config会打开~/.continue/config.yamlWindows 是C:\Users\你的用户名\.continue\config.yaml。所有改动都在这个文件里完成改完保存Continue 会自动重载不需要重启 VS Code。下面按顺序拆先确认 Ollama 服务正常再写基础 config再单独配 autocomplete最后验证和排错。2. 前置准备Ollama 服务地址与模型拉取在动config.yaml之前先把 Ollama 这一端确认好否则后面报错你分不清是插件问题还是服务问题。第一步确认 Ollama 在跑。打开终端执行ollama list如果能看到已下载的模型列表说明服务正常。如果提示连接失败先启动 Ollama桌面版直接打开应用Linux 用ollama serve。第二步拉一个适合补全的小模型。补全对延迟极其敏感7B 以上的模型在普通机器上首 token 就要等一两秒体验很差。推荐用 1.5B 到 3B 的 coder 模型ollama pull qwen2.5-coder:1.5b拉完后确认模型名ollama list输出的第一列就是你要填进 config 的model字段。注意 Ollama 的模型名带 tag比如qwen2.5-coder:1.5b少写 tag 会默认找latest可能和你拉的不是同一个。第三步验证 Ollama 的 HTTP 接口能通。Continue 是通过 HTTP 调 Ollama 的不是走命令行所以要用 curl 确认curl http://localhost:11434/api/tags返回一段 JSON里面有models数组就说明接口正常。这个地址http://localhost:11434就是后面 config 里要填的apiBase。这里有个容易忽略的点如果你把 Ollama 装在另一台机器或者用容器跑localhost就不对了要换成实际 IP并且 Ollama 默认只监听127.0.0.1跨机访问需要设置OLLAMA_HOST0.0.0.0再启动。不过大多数人是本机跑保持默认即可。关于 TaoToken 作为备选通道本地小模型补全够快但遇到复杂重构、长上下文分析时能力有限。TaoToken 提供统一的 API 通道兼容 OpenAI 风格的接口你可以在同一个config.yaml里加一个云端模型条目需要时在 Continue 界面切换。它的 API 地址是https://taotoken.net/apiKey 在控制台生成。这样本地和云端两套模型共存补全用本地保速度重活切云端保质量。前置做完你应该有三个确定的信息Ollama 地址http://localhost:11434、模型名qwen2.5-coder:1.5b、以及可选的 TaoToken Key。接下来写配置。3. 可复制的 config.yamlautocomplete 字段改在哪这一节是全文核心。Continue 的config.yaml结构分三层顶层是name、version、schema然后是models列表每个模型条目里有name、provider、model、roles、defaultCompletionOptions等字段。autocomplete 能不能生效全看roles这一行。先给一份完整可复制的配置你可以直接替换自己~/.continue/config.yaml的内容name: Local Assistant version: 1.0.0 schema: v1 models: - name: Qwen Coder Autocomplete provider: ollama model: qwen2.5-coder:1.5b apiBase: http://localhost:11434 roles: - autocomplete defaultCompletionOptions: contextLength: 32768 maxTokens: 8192 - name: Qwen Chat provider: ollama model: qwen2.5-coder:1.5b apiBase: http://localhost:11434 roles: - chat - edit - apply - name: TaoToken GPT provider: openai model: gpt-4o-mini apiBase: https://taotoken.net/api apiKey: sk-你的TaoToken密钥 roles: - chat - edit context: - provider: code - provider: docs - provider: diff - provider: terminal - provider: problems - provider: folder - provider: codebase逐段解释关键字段。provider: ollama告诉 Continue 用 Ollama 的接口协议去请求它会自动拼/api/chat或/api/generate。model必须和ollama list里的名字完全一致包括 tag。apiBase是 Ollama 的根地址不要带/api后缀Continue 自己会加。roles是重点。Continue 支持的角色有chat、edit、apply、autocomplete、embed、rerank。一个模型可以挂多个角色但 autocomplete 建议单独一个模型条目因为补全对参数的要求和 chat 不一样。你如果只在 chat 模型上加- autocomplete也能用但补全的上下文长度、maxTokens 会跟着 chat 的设置走容易出问题。defaultCompletionOptions里contextLength是模型能吃的上下文窗口maxTokens是单次生成上限。补全场景 maxTokens 不用太大8192 足够设太大反而拖慢响应。contextLength 要和你模型的真实能力匹配qwen2.5-coder 支持 32k填 32768 没问题。关于 TaoToken 那条provider填openai因为 TaoToken 兼容 OpenAI 接口格式apiBase填https://taotoken.net/api注意这里不带 UTM 参数就是纯 API 地址apiKey填你在控制台生成的 Key。这条挂chat和edit不挂 autocomplete避免云端延迟影响补全手感。改完保存Continue 会自动重载。如果侧边栏模型下拉里出现了你写的名字说明 YAML 语法没问题。如果没出现八成是缩进错了——YAML 里同级字段必须对齐roles下面的短横线要比roles多缩进两个空格。一个常见误区有人把roles写成role或者把- autocomplete写成autocomplete少了短横线。前者字段名不匹配被忽略后者会被当成字符串而不是列表插件解析时直接跳过这个模型。这两种错都不会报明显错误只是补全不生效很难查。4. 验证补全是否生效触发请求与看日志配置写完怎么确认 autocomplete 真的在工作分三步验证。第一步看模型是否被识别。打开 VS Code点 Continue 侧边栏在聊天输入框上方有个模型选择下拉点开应该能看到Qwen Coder Autocomplete和Qwen Chat。如果只看到 chat 没看到 autocomplete说明 autocomplete 那条的roles没写对。第二步实际触发补全。新建一个.py或.js文件输入一段不完整的代码比如def calculate_total(items): total 0 for item in items:正常情况停在这里一两秒会出现灰色的补全建议按 Tab 接受。如果没反应先确认 Continue 的补全开关是打开的——VS Code 状态栏右下角有 Continue 图标点一下能看到 autocomplete 的启用状态。第三步看日志确认请求真的发出去了。Continue 的日志在 VS Code 的输出面板菜单 View → Output右上角下拉选Continue。触发补全时日志里会出现类似这样的行Autocomplete: using model Qwen Coder Autocomplete POST http://localhost:11434/api/generate同时Ollama 那边也能看到请求。在终端执行ollama ps如果补全刚触发过会看到qwen2.5-coder:1.5b处于运行状态UNTIL列显示它还会驻留多久。这能证明请求确实打到了 Ollama。再进一步你可以直接 curl 模拟 Continue 的请求确认 Ollama 返回正常curl http://localhost:11434/api/generate -d { model: qwen2.5-coder:1.5b, prompt: def add(a, b):\n return, stream: false }返回 JSON 里有response字段且内容是补全的代码说明 Ollama 端完全正常问题只可能在 Continue 配置。如果 autocomplete 一直不触发但 chat 能用重点查三处roles是否含autocomplete、模型名是否和ollama list一致、apiBase是否写成了http://localhost:11434/api多了/api会 404。这三处占了 autocomplete 失效原因的九成。验证通过后你会明显感觉到补全延迟。1.5B 模型在本机通常 200-500ms 出结果如果超过 2 秒要么模型太大要么机器没 GPU 加速。这时候可以考虑把 autocomplete 切到 TaoToken 的云端小模型或者换更小的模型。5. 常见报错排查401、local proxy failed、reading choices配 Continue Ollama 的过程中报错信息往往很隐晦。下面按真实遇到的错误逐条拆。报错一401 Unauthorized或invalid api key这个通常出现在你配了 TaoToken 那条之后。原因有三种Key 复制时带了空格、Key 已失效、或者apiBase写错导致请求打到了别的服务。检查config.yaml里apiKey字段确保没有多余空格和换行。TaoToken 的 Key 在控制台的 API Keys 页面生成如果怀疑失效重新生成一个替换。注意apiBase必须是https://taotoken.net/api不要写成带/v1的地址Continue 的 openai provider 会自己处理路径。报错二local proxy failed或connect ECONNREFUSED 127.0.0.1:11434这是 Ollama 服务没起来或者地址不对。先在终端curl http://localhost:11434/api/tags确认。如果 curl 也失败说明 Ollama 没运行启动它。如果 curl 成功但 Continue 报这个错检查apiBase是不是写成了http://127.0.0.1:11434而 Ollama 只监听localhost——虽然通常等价但某些系统下 IPv6 解析会导致差异统一用http://localhost:11434最稳。报错三Error reading choices或unexpected response format这个错误说明 Continue 收到了响应但格式不是它预期的。常见于 provider 填错比如你把 Ollama 的模型provider写成了openaiContinue 会按 OpenAI 格式解析 Ollama 的返回字段对不上就报这个。反过来把 TaoToken 的模型provider写成ollama也会这样。记住对应关系Ollama 用provider: ollamaTaoToken 用provider: openai。报错四OAuth相关或authentication failed如果你之前配过其他云端 providerContinue 可能残留了 OAuth 凭据和新的 API Key 冲突。解决方法是打开 Continue 的命令面板CtrlShiftP 输入 Continue执行Continue: Sign Out清掉旧凭据然后重新加载配置。这个在从云端 provider 切到本地 Ollama 时偶尔会遇到。报错五补全不报错但就是不出现这种最折磨人因为没有任何错误信息。排查顺序先看 Output 面板的 Continue 日志有没有Autocomplete字样没有说明请求根本没发是roles问题有请求但没结果看 Ollama 日志有没有收到收到了但返回空可能是 prompt 模板不匹配试试换模型。另外确认 VS Code 设置里continue.enableAutocomplete是 true有些主题或插件会干扰 inline suggestion 的显示。把这几类错误对照一遍基本能覆盖 95% 的配置问题。核心原则先确认 Ollama 端 curl 能通再确认 Continue 日志有请求最后确认响应格式匹配 provider。三层逐层排除比盲目改配置高效得多。6. 本地补全 云端备选把 TaoToken 写进同一份配置本地 Ollama 跑 autocomplete 的优势是快、免费、数据不出本机但小模型在复杂场景下补全质量有限。一个实用的做法是autocomplete 用本地小模型保速度chat 和 edit 用 TaoToken 的云端模型保质量两套共存于同一份config.yaml在 Continue 界面按需切换。TaoToken 在这里的角色是统一 Key 通道。你不需要为每个云端模型单独管理 Key一个 Key 走https://taotoken.net/api就能调不同模型。配置写法在第三节已经给出这里补充几个实操细节。第一模型名要填 TaoToken 支持的模型 ID。填错模型名会返回model not found这个错误和 401 不同日志里能直接看到。建议先在模型对话页面确认可用模型列表再填进 config。第二apiBase的写法。Continue 的 openai provider 会在apiBase后面自动拼/chat/completions所以apiBase填到/api为止不要自己加/v1或/chat/completions。填多了会变成https://taotoken.net/api/v1/chat/completions/chat/completions直接 404。第三切换逻辑。Continue 界面顶部的模型下拉可以随时切换 chat 模型autocomplete 则是在设置里单独指定。你可以在config.yaml里给 autocomplete 只挂本地模型chat 挂本地 云端两个日常补全走本地遇到难题手动切云端。第四Key 的安全。config.yaml是明文存储的apiKey直接写在里面。如果这台机器多人使用建议用环境变量引用Continue 支持apiKey: $TAOTOKEN_API_KEY这种写法把真实 Key 放在系统环境变量里。一个我实际用下来的组合autocomplete 挂qwen2.5-coder:1.5b本地跑响应稳定在 300ms 左右chat 挂 TaoToken 的模型处理重构和解释edit 也走云端因为改代码需要更强的理解力。这样既保留了本地补全的即时感又不会在复杂任务上被小模型拖累。配置改完后记得在 Continue 里触发一次补全和一次对话分别确认两条链路都通。本地链路看ollama ps有没有模型驻留云端链路看日志有没有 200 响应。两条都验证过这套混合方案才算真正落地。如果你还没生成 TaoToken 的 Key可以去控制台创建一个然后在接入文档里对照 OpenAI 兼容格式的字段说明确认apiBase和模型名的填法。补全和对话都跑通之后这套配置就能长期用了。