前言¶
DSH(DeepSeek Harness)採用插件化架構,任何開發者都可以通過擴展來增強功能。對於自建 New API 或 One API 兼容網關的用戶,在 Web Composer 中查看當前對話的模型調用成本是一個常見需求。現有的網關計費看板通常位於獨立頁面,缺乏與對話上下文的聯動。
dsh-gateway-billing 插件將這一功能集成到了 DSH Web Composer 的 Dock 區域,無需離開對話界面即可實時查看費用。
插件簡介¶
本插件由維護者 LeslieWylie 開發,基於內部網關計費看板脫敏泛化而來。它是一個獨立的 Skill,適用於任何自建的、暴露 New API / One API 格式 /pricing 接口的網關。
核心功能¶
-
價格表拉取
自動從配置的網關地址拉取價格表,服務端每 10 分鐘刷新一次並緩存。 -
雙計費模式支持
兼容兩種計費方式:
- 按 token 計價(quota_type=0)
- 固定單價計費(quota_type=1) -
逐對話折算
遍歷當前對話的所有模型調用節點,根據usage(輸入/輸出/cache token)與價格表折算總費用。 -
Composer Dock 展示
在輸入欄下方展示一行信息:
- 總費用
- 最近調用模型及次數
- 輸入/輸出/cache token 數量
支持多模型對話時自動分行。 -
狀態區分
區分「未配置」與「拉取失敗」兩種狀態,並高亮顯示價格表中未找到條目的模型調用。
安裝與啓用¶
方式一:手動安裝(當前推薦)¶
- 克隆倉庫到本地:
git clone https://github.com/LeslieWylie/dsh-gateway-billing.git ~/Desktop/01-Projects/dsh-gateway-billing
- 進入你的 DSH profile 目錄,編輯
package.json,添加依賴:
"dsh-gateway-billing": "link:~/Desktop/01-Projects/dsh-gateway-billing"
- 編輯
cordis.patch.yml,添加插件配置並指定價格表地址:
- id: gateway-billing
name: 'dsh-gateway-billing'
config:
pricingUrl: 'https://your-gateway.example.com/api/pricing'
- 運行
pnpm install並重啓 DSH 進程。
方式二:插件命令(待發布)¶
dsh plugin add dsh-gateway-billing
配置說明¶
插件需要在 cordis.patch.yml 的 config 字段中提供 pricingUrl。
| 配置項 | 說明 | 示例 |
|---|---|---|
pricingUrl |
網關價格表接口地址,需返回 New API / One API 格式的數據 | https://your-gateway.example.com/api/pricing |
設計原則與注意¶
- 網關無關:插件不內置網關地址,價格表來源完全由用戶配置。
- 失敗可見:未配置與拉取失敗會展示不同提示,不靜默處理。
- 單次刷新:價格表在服務端每 10 分鐘刷新一次,Composer Dock 通過 RPC 讀取快照,不重複拉取。
結語¶
dsh-gateway-billing 爲 DSH 用戶提供了無需額外跳轉即可掌握對話成本的方案。它從內部脫敏而來,去除了敏感信息,同時保留了實用的計費功能。
- GitHub: https://github.com/LeslieWylie/dsh-gateway-billing
- 目錄頁: https://www.skillhub.cn/plugins/LeslieWylie/dsh-gateway-billing