渠道與模型
模型接入分兩層:渠道(channel) 管「連到哪、用什麼協議」,模型(model) 掛在渠道下,管「具體哪個模型、什麼能力、怎麼計價」。兩層全部在後臺維護、存資料庫,增刪改零程式碼發版,儲存後即生效。

- 渠道頁:「模型 > 渠道」(
/admin/channels) - 模型頁:「模型 > 模型」(
/admin/models),每個模型有獨立的設定頁/admin/models/:id
渠道
一個渠道 = 一個 Base URL + 一個 API Key + 一種協議型別。同類型可以建多個渠道(例如兩個 openai 渠道分別指向不同閘道器、不同 Key)。
渠道欄位
| 欄位 | 說明 |
|---|---|
| 名稱 | 必填,後臺內部標識,如 Anthropic production |
| 型別 | openai / claude / gemini,決定請求體、工具呼叫和流式格式用哪家協議 |
| 介面格式 | 僅 openai 型別出現:chat(經典 Chat Completions)或 responses(Responses API),建渠道時選定,該渠道下所有對話模型統一使用 |
| Base URL | 留空使用廠商預設端點;可指向官方端點、自有統一閘道器或任意相容端點 |
| API Key | 加密儲存,API 響應不回顯;編輯時留空表示保留原金鑰 |
| 啟用 | 關閉後該渠道下的模型不再可用 |
接入 DeepSeek、one-api/new-api 閘道器、自部署推理服務等「OpenAI 相容」上游時:型別選 openai,介面格式通常選 chat(很多第三方相容端點只實現了 Chat Completions),Base URL 填該服務的地址。也就是說,常見的四類上游(Anthropic、OpenAI、Gemini、OpenAI 相容)分別對應 claude、openai(responses 或 chat)、gemini、openai(chat)。
若端點實際只支援 Chat Completions,卻選了 responses 格式,工具呼叫與流式會整體出錯。對渠道端點(含中轉閘道器)的最低要求是透傳各家原生對話端點的 function calling 欄位與 SSE 流式;建議完整透傳原生協議,否則思考塊、快取斷點等會丟失。
渠道的驗證與管理
- 驗證:渠道頁沒有單獨的「測試」按鈕。建完渠道並掛上模型後,建議直接在聊天介面對該模型發一條會觸發工具呼叫的流式訊息(例如讓它聯網搜尋),一次驗證協議、金鑰與工具透傳三件事。
- 排序:列表支援拖拽排序(或行內上移/下移),順序會持久化。
- 刪除:刪除渠道會級聯刪除其下所有模型,有確認彈窗。
- 列表行上會顯示型別徽章、介面格式徽章、「已停用」徽章,以及 Base URL 與「已設金鑰 / 未設定金鑰」狀態。
模型
「新建模型」對話方塊只要求建立必需項:所屬渠道、型別(kind)、顯示名、request_id、圖示、簡介;其餘全部在設定頁調整。新建的模型預設:啟用、工具模式 native、視覺開、流式開、深度研究開。
點選模型行的齒輪圖示進入設定頁,按分割槽說明如下。
基本資訊
| 欄位 | 說明 |
|---|---|
| 渠道 | 模型所屬的主渠道 |
| 兜底渠道 | 可選,見下方兜底渠道一節 |
| 型別(kind) | chat(對話)/ image(圖片生成)/ embedding(向量嵌入)。型別決定後續顯示哪些分割槽:對話行為僅 chat,向量維度僅 embedding,單張價格與生成超時僅 image |
| 顯示名 | 使用者在模型選擇器裡看到的名稱,如 Claude Opus 4.8 |
| request_id | 實際發給上游 API 的模型 ID(與內部 ID 解耦),如 claude-opus-4-8 |
| 圖示 | 三種寫法任選:留空(用預設圖示)、emoji 字元、圖片 URL;也可以直接上傳圖示檔案 |
| 簡介 | 一行文字,顯示在模型選擇器中 |
| 啟用 | 關閉後對使用者不可見 |
| 顯示順序 | 數字越小越靠前 |
上傳僅接受 PNG、JPEG、SVG,單檔案不超過 256 KB(前端預檢,服務端二次校驗)。圖示在選擇器裡以約 16 到 32 px 渲染,不需要大圖。上傳成功後返回的 URL 會自動填入圖示輸入框。
刪除模型時注意:引用該模型的已有對話仍可瀏覽,但無法繼續傳送。
對話行為(僅 chat 模型)
工具模式(tool_mode) 三種取值,決定平臺工具(搜尋、Python 沙箱、畫圖、知識庫檢索等)怎麼掛給模型:
| 取值 | 行為 | 適用 |
|---|---|---|
native | 用該模型所屬渠道的原生 function calling 格式下發工具定義、解析呼叫 | 支援原生工具呼叫的模型(預設) |
prompt | 不走原生欄位,改用提示詞拼接的文本協議描述工具與呼叫格式 | 不支援 function calling、但指令遵循尚可的模型 |
none | 完全不掛工具,純對話 | 不需要或無法使用工具的模型 |
三個開關:
| 開關 | 說明 |
|---|---|
| 視覺(vision) | 是否支援圖片輸入。關閉後該模型收不到圖片附件,也不參與需要視覺能力的內部流程 |
| 流式(stream) | 關閉時改為阻塞式呼叫,拿到完整回覆後一次性推給前端。個別不支援 SSE 的上游用 |
| 深度研究 | 是否允許在該模型上開啟深度研究模式 |
系統提示詞:模型級 system prompt,與平臺提示詞組合下發,可用來給某個模型設定專屬人設。
引數控制(param_controls):宣告式定義該模型暴露給使用者的可調引數(如「深度思考」開關、「思考強度」選擇器)。視覺化編輯器支援兩種控制元件:
| 控制元件 | 配置項 |
|---|---|
| 開關(toggle) | 鍵名 key、顯示文字、圖示、預設值、「開啟時 / 關閉時」各一段 JSON 片段 |
| 下拉(select) | 鍵名 key、顯示文字、圖示、預設值、若干選項(值 / 文字 / 一段 JSON 片段),可選「僅當某鍵等於某值時顯示」 |
每個取值對映的 JSON 片段就是直接深合併進上游請求體的真實引數(Claude 填 thinking、OpenAI/Gemini 按各自 API 文件填),按該模型的真實 API 文件編寫。使用者只能在預定義控制元件中選值,不能注入任意引數。編輯器提供「高階:原始 JSON」直接編輯整段配置。
工具呼叫方式(僅 OpenAI Responses 渠道的模型):開啟「使用 OpenAI 官方工具」後,可勾選 web_search、code_interpreter、image_generation,由 OpenAI 在服務端執行這些內建工具,替代系統自建工具。
模型級內容稽核
每個 chat 模型可獨立開啟「生成前稽核提示」開關:每條新的使用者提示(不含歷史)在生成前先過稽核,命中即攔截,該回合以拒答結束(不計次、不扣積分)。兩種模式:
| 模式 | 行為 |
|---|---|
| 關鍵詞匹配(keyword) | 提示與全域性「違規關鍵詞」列表匹配,命中即攔截 |
| 稽核模型(model) | 提示先發給全域性指定的「稽核模型」,按「違規型別」列表做放行/攔截判定 |
全域性部分在「系統 > 內容稽核」頁配置:
| 欄位 | 說明 |
|---|---|
| 違規關鍵詞 | 每行一個,keyword 模式使用,頁面即時顯示關鍵詞計數 |
| 稽核模型 | 從 chat 模型中選,model 模式使用;「未選擇」時 model 模式無法生效 |
| 違規型別 | 每行一個類別(如政治、色情、暴力),作為稽核模型的判定依據 |
| 攔截提示語 | 提示被攔截時展示給使用者的文字 |
稽核模型的呼叫會以「內容稽核」用途記入用量日誌,可在「資料 > 用量」按用途檢視,見用量與分析。
許可權與配額(chat 與 image 模型)
「許可權」分割槽按使用者組授予模型使用權並設定週期額度(次數或額度),未啟用任何組時模型對所有人無限開放。欄位語義與超額行為詳見使用者、配額與積分。
計費
管理員按模型配價,系統在每次呼叫後按真實用量記賬(並作為積分扣費的依據):
| 欄位 | 適用 kind | 說明 |
|---|---|---|
| 輸入價格 (/1M token) | chat / embedding | 每百萬輸入 token 的美元價 |
| 輸出價格 (/1M token) | chat / embedding | 每百萬輸出 token 的美元價 |
| 快取讀取 $/1M | chat | 命中提示快取的 token 單獨按此價計,不與輸入價重複 |
| 快取寫入 $/1M | chat | 寫快取斷點的 token 價 |
| 單張圖片價格 | image | 每生成一張圖的美元價 |
| 生成超時(秒) | image | 單次圖片請求超過該秒數即中斷並報「生成超時」;0 = 不限 |
| 向量維度 | embedding | 該嵌入模型輸出的向量維度,建知識庫時鎖定,務必按上游文件填寫 |
每模型兜底渠道
每個模型可單獨指定一個備用「兜底渠道」(留空 = 無兜底),用於提升可用性:
- 觸發:主渠道上一次請求發生傳輸層錯誤(撥號、TLS、連線重置、響應頭超時),或返回 HTTP
401 / 403 / 408 / 409 / 429 / 5xx時,後端自動改用兜底渠道重試一次;使用者不會立刻看到錯誤,只有兜底也失敗才提示失敗。 - 不觸發:使用者主動停止、
400等換渠道也修不了的客戶端錯誤。僅覆蓋請求建立階段;流式開始(200)之後中斷不重試,因為重放已流出的內容不安全。 - 約束:兜底渠道必須與主渠道同類型、同介面格式(重試複用主渠道的報文格式,換渠道不等於換協議),只有 URL 和 Key 不同。設定頁的下拉只會列出滿足條件的渠道。
- 工具迴圈友好:一輪多次工具呼叫中,任意一次上游子請求失敗都會就地切到兜底繼續,不重跑整輪工具;該回合只要用過一次兜底,整輪即標記為兜底。
用量側的可觀測性:每條呼叫記錄都帶服務渠道;走了兜底的記錄在「資料 > 用量」顯示「兜底」徽標。失敗的請求也會記一行(狀態為錯誤、零 token 零費用,不佔使用者額度),點「錯誤」徽標可檢視上游原始報錯,支援「僅錯誤」篩選,方便判斷主渠道的健康度。
本節的兜底渠道是換線路不換模型。「系統 > 全域性設定」裡另有「兜底模型 + 首字超時(秒)」:所選模型在 N 秒內無任何輸出時,切換到另一個模型作答。兩者獨立,可同時配置,後者見站點設定。
全域性模型指定
若干平臺級功能各由一個全域性設定指向某個模型,配置位置如下:
| 設定 | 位置 | 說明 |
|---|---|---|
| 預設對話模型 | 系統 > 全域性設定 | 新使用者/未選擇時的預設模型 |
| 任務模型 | 系統 > 全域性設定 | 內部 LLM 呼叫統一走它:標題生成、查詢路由、上下文壓縮摘要、記憶抽取等。推薦便宜、快、指令遵循好的小模型 |
| 圖片提示詞模型 | 系統 > 全域性設定 | 繪圖前潤色提示詞的文本模型;選「無」則跳過潤色 |
| 審校(審計)模型 | 系統 > 全域性設定 | 審校模式下核查答案的第二個模型,理想是與主答不同廠商的強模型;選「無」則全站關閉審校模式 |
| 兜底模型 + 首字超時 | 系統 > 全域性設定 | 見上節說明 |
| 稽核模型 | 系統 > 內容稽核 | model 模式內容稽核的判定模型 |
| 嵌入模型 | 能力 > 文件 | 知識庫與文件向量化必需,從 kind=embedding 的模型裡選;首次配置後鎖定,避免舊向量與新模型維度失配 |
任務模型、審校模型、稽核模型、圖片提示詞模型的每次呼叫都按各自用途記入用量日誌,這部分開銷同樣計入使用者成本口徑。
模型標籤管理
標籤用於在模型選擇器中分類與篩選模型(如「推薦」「New」「實驗」):
- 管理標籤:
/admin/model-tags(從模型列表或模型編輯頁的「管理標籤」入口進入),支援新增、重新命名、刪除;名稱重複會被拒絕。 - 分配標籤:在模型設定頁的「標籤」分割槽點選,即時生效於選擇器的標籤篩選。
下一步:配好模型後,到使用者、配額與積分為不同使用者組劃分模型許可權與額度;部署層面的上游連通問題參見反向代理與 FAQ。