vscode+ollama+Qwen2.5本地大模型部署:把settings.json改到TaoToken
1. 为什么要在 VS Code 里同时接本地 Ollama 和云端通道VS Code 里跑本地大模型这件事很多人第一次尝试都会卡在同一个地方模型是拉下来了Continue 插件也装好了但补全要么半天不出字要么报一个看不懂的连接错误。我自己最开始用 Ollama 跑 Qwen2.5 的时候机器风扇转得像起飞补全延迟却高得离谱写一行代码要等三四秒。后来才想明白本地推理适合的是「隐私敏感 短上下文 高频小请求」而真正需要长上下文、复杂推理的任务交给云端模型更划算。这篇要讲的就是把这两条链路统一起来VS Code 通过 Continue 插件调用 Ollama 上的 Qwen2.5 本地模型同时把插件的 settings.json 里 Base URL 和 API Key 指向 TaoToken 统一通道让本地推理和云端兜底走同一套配置。这样你既保留了本地模型的离线能力和数据不出本机的优势又能在本地模型扛不住的时候切到云端不用来回改插件配置。适合谁看已经在用 VS Code 写代码、想试试本地大模型补全、但又不想被单一模型绑死的开发者。你需要的基础是会用命令行、知道 VS Code 插件怎么装、能看懂 JSON 配置。不需要你懂模型量化原理也不需要你有 GPU 服务器一台普通开发机就能跑起来。核心检索词先明确一下vscode ollama Qwen2.5 本地大模型部署本质是把「编辑器插件 → 本地推理服务 → 模型文件」这条链路打通再通过统一通道做云端兜底。下面按步骤来每一步都给可复制的命令和配置。2. 前置准备Ollama 安装与 Qwen2.5 模型拉取2.1 安装 Ollama 服务Ollama 的安装方式在不同系统上不太一样。Linux 下可以直接下载官方 release 包Windows 和 macOS 有对应的安装程序。这里以 Linux 为例因为服务器和开发机场景最常见。先确认你的系统架构然后下载对应的包。官方 release 页面在 GitHub 上如果下载速度慢可以用镜像加速站点替换域名前缀。下载完成后解压到系统目录# 下载 Linux amd64 版本版本号按最新 release 替换 wget https://github.com/ollama/ollama/releases/download/v0.9.6/ollama-linux-amd64.tgz # 解压到 /usr 目录需要 sudo 权限 sudo tar -C /usr -xzf ollama-linux-amd64.tgz # 验证安装 ollama --version如果你用的是 Windows直接去官网下载 OllamaSetup.exe 双击安装即可安装完 Ollama 会常驻在系统托盘。macOS 用户下载 dmg 拖进 Applications 就行。安装完成后Ollama 默认会在 11434 端口起一个本地服务。手动启动服务用这条命令ollama serve正常情况下你会看到类似Listening on 127.0.0.1:11434的输出。这个端口后面配置插件时要用到。注意如果你已经通过系统服务方式启动了 Ollama再手动ollama serve会提示端口被占用这时候不用管服务已经在跑了。2.2 拉取 Qwen2.5 模型Qwen2.5 系列在 ModelScope 上有官方 GGUF 量化版本适合本地推理。以代码场景常用的 Qwen2.5-Coder-1.5B-Instruct 为例拉取命令是ollama run modelscope.cn/Qwen/Qwen2.5-Coder-1.5B-Instruct-GGUF第一次执行会从 ModelScope 下载模型文件1.5B 的量化版本大概几百 MB 到 1GB 左右取决于量化精度。下载完成后会自动进入交互模式你可以直接输入一句话测试 写一个 Python 函数判断一个数是否为质数如果模型能正常返回代码说明本地推理链路已经通了。退出交互模式用/bye或者 CtrlD。这里有个坑要注意ModelScope 的模型名格式是modelscope.cn/组织名/模型名如果你直接写qwen2.5-coder这种短名Ollama 会去官方 registry 找可能找不到或者拉到不同版本。建议用完整的 ModelScope 路径确保拉到的是你想要的量化版本。模型拉下来之后用ollama list可以看到本地已有的模型列表。记住你拉取的模型完整名称后面配置插件时要填进去。2.3 安装 Continue 插件VS Code 里调用 Ollama 最顺手的插件是 Continue。在 VS Code 扩展市场搜索 Continue安装后侧边栏会出现 Continue 的图标。首次打开会让你选模型提供商这里先随便选一个跳过因为我们要手动改配置文件。Continue 的配置文件默认在用户目录下的.continue文件夹里VS Code 里也可以通过命令面板打开Continue: Open Config。配置文件是 JSON 格式路径通常是~/.continue/config.json旧版或~/.continue/config.yaml新版。这篇以 JSON 配置为例因为 settings.json 风格的配置更直观也方便和 VS Code 原生设置对照。3. 可复制配置settings.json 与 Continue config 改到 TaoToken3.1 理解配置结构Continue 的配置里模型定义分两部分models数组里每个对象描述一个模型包含title、provider、model、apiBase、apiKey等字段。本地 Ollama 的 provider 是ollama云端 OpenAI 兼容接口的 provider 是openai。我们要做的是保留一个 Ollama 本地模型条目再加一个指向 TaoToken 统一通道的条目。这样在 Continue 的模型选择器里可以随时切换本地模型负责快速补全云端模型负责复杂任务。TaoToken 的 API 地址是https://taotoken.net/api兼容 OpenAI 的接口格式。API Key 需要在控制台创建创建后复制出来填到配置里。模型 ID 填你在 TaoToken 上可用的模型名比如claude-sonnet-4-5或gpt-4o这类。3.2 完整的 config.json 片段下面是一份可以直接复制修改的配置。注意把apiKey换成你自己的model字段换成你实际要用的模型 ID{ models: [ { title: Qwen2.5 Coder Local, provider: ollama, model: modelscope.cn/Qwen/Qwen2.5-Coder-1.5B-Instruct-GGUF, apiBase: http://127.0.0.1:11434 }, { title: TaoToken Cloud, provider: openai, model: claude-sonnet-4-5, apiBase: https://taotoken.net/api, apiKey: sk-你的TaoToken密钥, contextLength: 200000 } ], tabAutocompleteModel: { title: Qwen2.5 Coder Local, provider: ollama, model: modelscope.cn/Qwen/Qwen2.5-Coder-1.5B-Instruct-GGUF, apiBase: http://127.0.0.1:11434 }, embeddingsProvider: { provider: ollama, model: nomic-embed-text, apiBase: http://127.0.0.1:11434 } }几个关键点解释一下。tabAutocompleteModel是代码补全用的模型这里指向本地 Qwen2.5因为补全请求频率高走本地延迟低、不消耗云端额度。embeddingsProvider用于代码索引本地跑一个 embedding 模型就够。models数组里的云端条目用于对话和复杂任务需要手动在 Continue 界面里切换。如果你用的是新版 Continue 的 YAML 配置结构类似只是格式换成 YAML。核心字段名不变provider、model、apiBase、apiKey。3.3 VS Code 原生 settings.json 的配合有些场景下你还会用到 VS Code 原生的settings.json比如某些插件会读取github.copilot或自定义的 API 配置。如果你想把 VS Code 层面的默认 API 端点也指向 TaoToken可以在用户 settings.json 里加{ continue.enableTabAutocomplete: true, continue.telemetryEnabled: false }这里主要是关掉遥测、开启补全。真正决定请求打到哪里的还是 Continue 自己的 config.jsonVS Code 原生 settings.json 只控制插件行为开关。不要混淆这两个文件的位置VS Code 的 settings.json 在~/.config/Code/User/settings.jsonLinux或%APPDATA%\Code\User\settings.jsonWindowsContinue 的 config.json 在~/.continue/下。3.4 三件套对照表配置云端模型时Base URL、Key、Model ID 这三件套必须同时正确缺一个都会报错。对照如下配置项本地 OllamaTaoToken 云端Base URLhttp://127.0.0.1:11434https://taotoken.net/apiAPI Key不需要留空sk-开头控制台创建Model IDmodelscope.cn/Qwen/Qwen2.5-Coder-1.5B-Instruct-GGUFclaude-sonnet-4-5 等本地 Ollama 的 apiBase 不要加/v1后缀Continue 的 ollama provider 会自动处理路径。云端 OpenAI 兼容接口的 apiBase 填到/api即可不要自己拼/v1/chat/completions插件会补全。4. 验证请求一次对话确认命中预期端点4.1 启动 Ollama 并确认服务配置改完后先确保 Ollama 服务在跑# 检查服务状态 curl http://127.0.0.1:11434/api/tags如果返回一个 JSON里面有你拉取的模型列表说明本地服务正常。如果返回Connection refused说明 Ollama 没启动执行ollama serve再试。4.2 在 Continue 里切换模型并对话打开 VS Code按CtrlShiftP调出命令面板输入Continue: Focus Chat打开对话面板。在面板顶部的模型选择器里你应该能看到两个条目Qwen2.5 Coder Local和TaoToken Cloud。先选本地模型输入一句测试用 Python 写一个快速排序观察响应速度。本地 1.5B 模型在普通 CPU 上大概每秒出 10-20 个 token如果明显更慢可能是模型太大或者机器负载高。响应正常说明本地链路通了。然后切换到TaoToken Cloud输入同样的问题。这次请求会打到https://taotoken.net/api由云端模型返回。如果配置正确你会看到响应速度明显更快内容质量也更高。4.3 用 curl 直接验证云端端点如果想绕过插件直接确认 TaoToken 端点可用可以用 curl 发一个最小请求curl https://taotoken.net/api/v1/chat/completions \ -H Content-Type: application/json \ -H Authorization: Bearer sk-你的密钥 \ -d { model: claude-sonnet-4-5, messages: [{role: user, content: 回复OK两个字}], max_tokens: 10 }如果返回的 JSON 里有choices数组且内容正常说明 Key 和端点都没问题。这一步能帮你快速区分是插件配置问题还是账号/Key 问题。4.4 确认请求命中预期端点怎么知道请求真的打到了 TaoToken 而不是别的地方两个办法。一是看 Continue 的输出日志VS Code 底部面板切到 Output选择 Continue里面会打印每次请求的 URL。二是看 TaoToken 控制台的用量记录每次调用都会有日志。两边对照就能确认请求路径符合预期。本地模型的验证更简单Ollama 的日志会打印每次推理请求。你可以在启动ollama serve的终端里看到POST /api/chat之类的记录。5. 常见报错排查401、local proxy failed、reading choices5.1 401 Unauthorized这是最常见的云端配置错误。原因通常是 API Key 填错、Key 过期、或者 Key 前面多了空格。检查步骤第一确认 config.json 里apiKey字段的值是完整的sk-开头字符串没有换行、没有多余引号嵌套。第二去 TaoToken 控制台确认这个 Key 还在有效期内没有被你手动删除。第三确认apiBase填的是https://taotoken.net/api不是https://taotoken.net少了/api也不是https://taotoken.net/api/v1多了/v1。如果 curl 直接请求也返回 401那就是 Key 本身的问题重新创建一个再试。如果 curl 正常但插件报 401那就是 config.json 的字段名写错了检查是不是写成了api_key或apikeyContinue 用的是驼峰apiKey。5.2 local proxy failed这个报错通常出现在 Continue 尝试连接本地 Ollama 但连不上的时候。可能原因有三个一是 Ollama 服务没启动。执行ollama serve或者检查系统服务状态。二是端口被占用或改了。默认 11434如果你改过OLLAMA_HOST环境变量config.json 里的apiBase也要跟着改。三是防火墙拦截。某些系统上本地回环请求也会被安全软件拦临时关掉试试。还有一个隐蔽原因Continue 的 ollama provider 在某些版本里会先尝试走系统代理。如果你系统设了 HTTP_PROXY 环境变量本地请求可能被代理到外部导致失败。解决办法是在 VS Code 的启动环境里清掉代理变量或者在 config.json 里给 ollama 条目加apiBase: http://127.0.0.1:11434明确指定不走代理。5.3 reading choices 报错这个报错一般长这样Cannot read properties of undefined (reading choices)。意思是插件期望返回体里有choices字段但实际返回的结构不对。原因通常是接口返回了错误信息而不是正常的 chat completion 结构。比如 Key 无效时服务端返回的是{error: {...}}插件去读choices就报 undefined。所以看到这个错先按 401 的排查步骤检查 Key 和端点大概率是认证或路径问题。另一个可能是模型 ID 写错了。如果model字段填了一个 TaoToken 上不存在的模型名服务端会返回错误插件同样读不到choices。去控制台确认模型 ID 的准确拼写注意大小写和连字符。5.4 OAuth 相关报错如果你在配置里误用了需要 OAuth 的 provider比如某些插件的 GitHub Copilot 通道会看到 OAuth token 相关的错误。Continue 里如果 provider 写成github-copilot但没走官方登录流程就会报这个。解决办法很简单把 provider 改成openai用 API Key 方式认证。TaoToken 走的是标准 Bearer Token不需要 OAuth 流程。检查 config.json 里云端条目的provider字段是不是openai不是的话改过来。5.5 模型拉取失败ollama run拉模型时如果卡住或报错先检查网络能不能访问 ModelScope。国内访问 ModelScope 一般没问题如果超时可以换一个量化版本或者用ollama pull代替ollama run先拉取再运行。模型名写错也会导致拉取失败。ModelScope 上的模型路径要完整复制包括modelscope.cn/前缀。如果提示model not found去 ModelScope 网站搜一下确切的模型名。6. 把本地推理和云端兜底串成日常工作流配置跑通之后实际用起来可以这样分工。日常写代码时的行内补全走本地 Qwen2.5因为补全请求频繁本地响应快且不消耗云端额度。遇到需要解释复杂逻辑、重构大段代码、或者本地模型明显答不好的问题手动切到 TaoToken Cloud 条目用云端模型处理。Continue 的模型切换在对话面板顶部点一下就能换不用改配置文件。如果你想让某个操作默认走云端可以在 config.json 里把云端模型放到models数组第一位插件默认选第一个。还有一个实用技巧Continue 支持在对话里用引用文件把相关代码文件拖进上下文。本地模型上下文窗口小引用太多文件会截断这时候切云端模型更合适。云端模型上下文长能一次吃下整个模块的代码。关于成本本地推理除了电费没有额外开销云端按 token 计费。把高频小请求留给本地、低频大请求交给云端是性价比比较高的组合。你可以在 TaoToken 控制台设置用量提醒避免意外超支。最后提醒一点本地模型的文件和配置都在你自己机器上代码不会离开本机。云端请求会经过 TaoToken 通道敏感代码建议脱敏后再发或者干脆只用本地模型处理。这个边界自己把握好就行。配置过程中如果遇到本文没覆盖的报错可以去 TaoToken 的接入文档对照接口格式或者用模型对话功能直接问云端模型怎么排查。文档地址在 https://taotoken.net/docAPI Key 在 https://taotoken.net/api-keys 创建。长期做编码和 Agent 任务的话Coding Plan 页面有更详细的套餐说明https://taotoken.net/coding-plan。
上一篇/下一篇内容由系统自动关联
返回资讯列表 →