端ollama:把settings.json改到TaoToken)
1. 為什么要在 VS Code 里把 Continue 指向遠(yuǎn)端 Ollama如果你已經(jīng)在本地跑過(guò) Ollama大概率遇到過(guò)這種尷尬筆記本風(fēng)扇狂轉(zhuǎn)、顯存吃滿寫兩行代碼補(bǔ)全要等三秒。Continue 插件本身很好用但默認(rèn)配置是連本地http://localhost:11434一旦模型換到遠(yuǎn)端機(jī)器或者你想統(tǒng)一走一個(gè) Key/API 通道settings.json不改就永遠(yuǎn)連不上。這篇要解決的就是這條鏈路VS Code 裝 Continue 插件 → 配置遠(yuǎn)端 Ollama → 把 endpoint 改到 TaoToken 統(tǒng)一通道 → 保留本地 Ollama 做對(duì)照。核心檢索詞是「Continue 插件配置遠(yuǎn)端 Ollama」適合三類人本地顯卡不夠想借遠(yuǎn)端算力的、團(tuán)隊(duì)里多人共用一套模型服務(wù)的、以及想把 Continue 的模型出口統(tǒng)一管理的開(kāi)發(fā)者。Continue 的配置本質(zhì)是一個(gè) YAML 文件放在~/.continue/config.yaml新版或settings.json舊版。很多人卡住不是因?yàn)椴粫?huì)寫 YAML而是沒(méi)搞清楚provider、apiBase、model三個(gè)字段的對(duì)應(yīng)關(guān)系。provider: ollama時(shí)它走 Ollama 原生協(xié)議provider: openai時(shí)走 OpenAI 兼容協(xié)議——TaoToken 的 API 就是后者所以配置寫法要換一套。我實(shí)測(cè)下來(lái)最容易踩的坑是遠(yuǎn)端 Ollama 的apiBase寫成了http://10.x.x.x:11434/v1多加了/v1反而 404而走 TaoToken 時(shí)又忘了加/v1。這兩個(gè)協(xié)議路徑不一樣下面會(huì)分別給可復(fù)制片段。先明確目標(biāo)讓 Continue 的 Chat、Edit、Autocomplete 三個(gè)角色都能正常工作且能在本地 Ollama 和 TaoToken 之間切換對(duì)照。下面從裝插件開(kāi)始一步步來(lái)。2. 前置準(zhǔn)備Continue 插件安裝與 TaoToken Key 獲取2.1 安裝 Continue 插件打開(kāi) VS Code左側(cè)擴(kuò)展面板搜索Continue認(rèn)準(zhǔn) publisher 是 Continue 的那個(gè)圖標(biāo)是藍(lán)色方塊帶箭頭。安裝后左側(cè)會(huì)出現(xiàn) Continue 的側(cè)邊欄圖標(biāo)點(diǎn)開(kāi)它會(huì)提示你登錄或跳過(guò)。這里直接選「Skip / 本地配置」我們要手寫配置文件。插件裝好后配置文件默認(rèn)路徑WindowsC:\Users\你的用戶名\.continue\config.yamlmacOS / Linux~/.continue/config.yaml如果目錄不存在手動(dòng)建一個(gè).continue文件夾即可。舊版本 Continue 用的是settings.json字段結(jié)構(gòu)類似但鍵名不同本文以新版config.yaml為主同時(shí)在關(guān)鍵處標(biāo)注settings.json的差異。2.2 拿到 TaoToken 的 Key 和 Base URLTaoToken 的 API 入口是https://taotoken.net/api注意這個(gè)地址不帶任何查詢參數(shù)。你需要先去控制臺(tái)創(chuàng)建一個(gè) API Key控制臺(tái)入口https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewriteKey 管理頁(yè)https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite創(chuàng)建后復(fù)制那串sk-開(kāi)頭的 Key只顯示一次丟了就重建。Base URL 填https://taotoken.net/api模型 ID 填你在模型列表里看到的名稱比如claude-sonnet-4-5或gpt-4o這類。具體可用模型以控制臺(tái)展示為準(zhǔn)別照抄我這里的示例名。注意TaoToken 是統(tǒng)一的 Key/API 通道不是讓你繞過(guò)什么而是把多個(gè)模型的出口收斂到一個(gè)地址和一把 Key方便 Continue 這種需要配多個(gè)模型的場(chǎng)景。2.3 遠(yuǎn)端 Ollama 的連通性先確認(rèn)在改 Continue 之前先用 curl 確認(rèn)遠(yuǎn)端 Ollama 活著。假設(shè)遠(yuǎn)端機(jī)器 IP 是10.159.188.214curl http://10.159.188.214:11434/api/tags返回 JSON 里能看到models數(shù)組就說(shuō)明通了。如果超時(shí)先查防火墻和 Ollama 是否監(jiān)聽(tīng)0.0.0.0。Ollama 默認(rèn)只監(jiān)聽(tīng)127.0.0.1遠(yuǎn)端訪問(wèn)需要在啟動(dòng)時(shí)設(shè)OLLAMA_HOST0.0.0.0OLLAMA_HOST0.0.0.0 ollama serve這一步不做后面 Continue 報(bào)local proxy failed你會(huì)以為是插件問(wèn)題其實(shí)是服務(wù)端沒(méi)開(kāi)監(jiān)聽(tīng)。3. 可復(fù)制配置config.yaml 與 settings.json 雙版本3.1 新版 config.yaml 完整片段下面這份配置同時(shí)掛了遠(yuǎn)端 Ollama 和 TaoToken 兩組模型你可以按需刪減。注意provider字段Ollama 用ollamaTaoToken 用openai因?yàn)樗嫒?OpenAI 協(xié)議。name: Remote Ollama TaoToken Assistant version: 1.0.0 schema: v1 models: # 遠(yuǎn)端 Ollama - Chat/Edit/Apply - name: qw2.5coder7b (Remote Ollama) provider: ollama model: qw2.5coder7b:latest apiBase: http://10.159.188.214:11434 roles: - chat - edit - apply defaultCompletionOptions: temperature: 0.1 contextLength: 8192 maxTokens: 4096 # 遠(yuǎn)端 Ollama - 自動(dòng)補(bǔ)全 - name: qw2.5coder1.5b (Remote Autocomplete) provider: ollama model: qw2.5coder1.5b:latest apiBase: http://10.159.188.214:11434 roles: - autocomplete defaultCompletionOptions: temperature: 0.1 maxTokens: 512 # TaoToken 統(tǒng)一通道 - Chat/Edit - name: TaoToken Claude (Chat/Edit) provider: openai model: claude-sonnet-4-5 apiBase: https://taotoken.net/api apiKey: sk-你的TaoTokenKey roles: - chat - edit - apply defaultCompletionOptions: temperature: 0.2 contextLength: 200000 maxTokens: 8192 # TaoToken - 自動(dòng)補(bǔ)全可選用輕量模型 - name: TaoToken Fast (Autocomplete) provider: openai model: gpt-4o-mini apiBase: https://taotoken.net/api apiKey: sk-你的TaoTokenKey roles: - autocomplete defaultCompletionOptions: temperature: 0.1 maxTokens: 256 context: - provider: code - provider: docs - provider: diff - provider: terminal - provider: problems - provider: folder - provider: codebase關(guān)鍵點(diǎn)apiBase對(duì) Ollama 是http://IP:11434不加/v1對(duì) TaoToken 是https://taotoken.net/apiContinue 內(nèi)部會(huì)自己拼/v1/chat/completions。如果你手賤加了/v1會(huì)變成/api/v1/v1/...直接 404。3.2 舊版 settings.json 對(duì)照寫法如果你用的是老版本 Continue配置在settings.json里結(jié)構(gòu)是數(shù)組套對(duì)象{ models: [ { title: qw2.5coder7b (Remote Ollama), provider: ollama, model: qw2.5coder7b:latest, apiBase: http://10.159.188.214:11434, contextLength: 8192 }, { title: TaoToken Claude, provider: openai, model: claude-sonnet-4-5, apiBase: https://taotoken.net/api, apiKey: sk-你的TaoTokenKey, contextLength: 200000 } ], tabAutocompleteModel: { title: qw2.5coder1.5b (Remote Autocomplete), provider: ollama, model: qw2.5coder1.5b:latest, apiBase: http://10.159.188.214:11434 }, allowAnonymousTelemetry: false }settings.json里自動(dòng)補(bǔ)全單獨(dú)用tabAutocompleteModel字段而新版config.yaml是靠roles: [autocomplete]區(qū)分。這是兩版最大的結(jié)構(gòu)差異改配置時(shí)別混用。3.3 三件套對(duì)照表不管哪版連一個(gè)模型都逃不開(kāi)這三樣缺一不可項(xiàng)目遠(yuǎn)端 OllamaTaoTokenBase URLhttp://10.159.188.214:11434https://taotoken.net/apiKey無(wú)需內(nèi)網(wǎng)直連sk-開(kāi)頭的 API KeyModel IDqw2.5coder7b:latest控制臺(tái)展示的模型名提示如果你用 CC Switch 或 Cline MCP 這類工具同樣遵循這三件套邏輯Base URL、Key、Model ID 一個(gè)都不能少只是字段名可能叫baseURL、apiKey、model。4. 驗(yàn)證請(qǐng)求從 curl 到 Continue 面板實(shí)測(cè)4.1 先用 curl 驗(yàn)證 TaoToken 通道配置寫完后別急著在 VS Code 里點(diǎn)先用命令行確認(rèn) Key 和地址沒(méi)問(wèn)題curl https://taotoken.net/api/v1/chat/completions \ -H Authorization: Bearer sk-你的TaoTokenKey \ -H Content-Type: application/json \ -d { model: claude-sonnet-4-5, messages: [{role: user, content: 用一句話說(shuō)明什么是遞歸}], max_tokens: 100 }返回里有choices[0].message.content就說(shuō)明通道通了。如果返回401是 Key 錯(cuò)了或沒(méi)帶Bearer返回404多半是模型名寫錯(cuò)或路徑多了/v1。4.2 驗(yàn)證遠(yuǎn)端 Ollamacurl http://10.159.188.214:11434/v1/chat/completions \ -H Content-Type: application/json \ -d { model: qw2.5coder7b:latest, messages: [{role: user, content: hello}] }注意這里 Ollama 的 OpenAI 兼容層路徑是/v1/chat/completions和原生/api/chat不同。Continue 用provider: ollama時(shí)走的是原生協(xié)議所以apiBase不帶/v1但你手動(dòng) curl 測(cè)試時(shí)用/v1路徑也能通這是 Ollama 同時(shí)提供兩套接口。4.3 在 Continue 面板里切換模型回到 VS Code點(diǎn)開(kāi) Continue 側(cè)邊欄底部有個(gè)模型下拉框。你應(yīng)該能看到qw2.5coder7b (Remote Ollama)和TaoToken Claude兩個(gè)選項(xiàng)。選 TaoToken 那個(gè)輸入「寫一個(gè) Python 快速排序」能流式返回代碼就成功了。自動(dòng)補(bǔ)全的驗(yàn)證方式新建一個(gè).py文件輸入def bubble_sort(arr):然后換行停頓如果出現(xiàn)灰色補(bǔ)全建議說(shuō)明autocomplete角色生效。沒(méi)反應(yīng)就去 Continue 設(shè)置里確認(rèn)tabAutocompleteModel指向了正確的模型。實(shí)測(cè)下來(lái)遠(yuǎn)端 Ollama 的補(bǔ)全延遲取決于網(wǎng)絡(luò)內(nèi)網(wǎng)通常 200ms 內(nèi)TaoToken 走公網(wǎng)首 token 延遲看模型Claude 系列一般 1 秒左右出字。5. 常見(jiàn)報(bào)錯(cuò)排查401、local proxy failed、reading choices5.1 401 Unauthorized最常見(jiàn)。Continue 面板報(bào)401或invalid api key按順序查第一Key 有沒(méi)有復(fù)制全。sk-后面那串經(jīng)常被截?cái)嘀匦氯?https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 復(fù)制。第二apiBase和provider是否匹配。provider: openai配https://taotoken.net/api別寫成https://taotoken.net少了/api。第三YAML 縮進(jìn)。apiKey必須和apiBase同級(jí)縮進(jìn)錯(cuò)了 Continue 讀不到會(huì)當(dāng)成空 Key 發(fā)出去照樣 401。5.2 local proxy failed這個(gè)報(bào)錯(cuò)通常出現(xiàn)在 Ollama 場(chǎng)景Continue 嘗試連localhost:11434但連不上。原因有兩個(gè)一是你apiBase還寫著http://localhost:11434但本地根本沒(méi)跑 Ollama二是遠(yuǎn)端 Ollama 沒(méi)監(jiān)聽(tīng)0.0.0.0。排查命令# 看遠(yuǎn)端 Ollama 監(jiān)聽(tīng)地址 ss -tlnp | grep 11434如果顯示127.0.0.1:11434而不是0.0.0.0:11434就是監(jiān)聽(tīng)問(wèn)題用前面說(shuō)的OLLAMA_HOST0.0.0.0 ollama serve重啟。另外檢查防火墻sudo ufw allow 11434/tcp5.3 reading choices 相關(guān)報(bào)錯(cuò)報(bào)錯(cuò)長(zhǎng)這樣Cannot read properties of undefined (reading choices)。這是 Continue 拿到了非預(yù)期響應(yīng)解析choices字段時(shí)崩了。根因一般是模型名不存在服務(wù)端返回了錯(cuò)誤 JSON沒(méi)有choices字段。去控制臺(tái)核對(duì)模型 ID。apiBase路徑錯(cuò)誤請(qǐng)求打到了 HTML 頁(yè)面而不是 API。用 curl 復(fù)現(xiàn)一下就知道。流式響應(yīng)被中間層截?cái)?。如果你在defaultCompletionOptions里設(shè)了stream: false但服務(wù)端強(qiáng)制流式也會(huì)出問(wèn)題去掉這個(gè)字段用默認(rèn)值。5.4 OAuth 與登錄態(tài)問(wèn)題Continue 有時(shí)會(huì)彈 OAuth 登錄窗口如果你用的是自建配置直接關(guān)掉。在config.yaml頂部加allowAnonymousTelemetry: false舊版settings.json同理。如果它反復(fù)彈登錄刪掉~(yú)/.continue下的auth緩存文件夾再重啟 VS Code。6. 長(zhǎng)期編碼場(chǎng)景把 Continue 接入 TaoToken Coding Plan如果你不只是偶爾問(wèn)兩句而是想讓 Continue 承擔(dān)日常的代碼補(bǔ)全、重構(gòu)、Agent 任務(wù)單次按量調(diào)用不如走 Coding Plan。它的定位是長(zhǎng)期編碼和 Agent 場(chǎng)景適合把 Continue 的 Chat/Edit 角色固定指向一個(gè)穩(wěn)定通道。接入方式還是那三件套只是 Key 換成 Coding Plan 對(duì)應(yīng)的憑證Base URL 依然是https://taotoken.net/apiModel ID 按控制臺(tái)給的填。配置片段和 §3.1 里 TaoToken 那段一模一樣改apiKey和model即可。Coding Plan 入口https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite如果你更想先驗(yàn)證模型效果再?zèng)Q定用模型對(duì)話頁(yè)快速試https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel-chatutm_campaignrewrite接入文檔在這里字段細(xì)節(jié)以文檔為準(zhǔn)https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite最后說(shuō)個(gè)實(shí)用技巧Continue 的config.yaml支持多個(gè)模型并存你可以把遠(yuǎn)端 Ollama 當(dāng)離線兜底TaoToken 當(dāng)主力。網(wǎng)絡(luò)斷了切 Ollama需要強(qiáng)模型切 TaoToken下拉框一點(diǎn)就換不用改配置。這個(gè)雙通道策略我用了幾個(gè)月比死磕一個(gè) endpoint 穩(wěn)得多。