dsh-gateway-billing: 逐對話模型計費顯示

前言

DSH(DeepSeek Harness)採用插件化架構,任何開發者都可以通過擴展來增強功能。對於自建 New API 或 One API 兼容網關的用戶,在 Web Composer 中查看當前對話的模型調用成本是一個常見需求。現有的網關計費看板通常位於獨立頁面,缺乏與對話上下文的聯動。

dsh-gateway-billing 插件將這一功能集成到了 DSH Web Composer 的 Dock 區域,無需離開對話界面即可實時查看費用。

插件簡介

本插件由維護者 LeslieWylie 開發,基於內部網關計費看板脫敏泛化而來。它是一個獨立的 Skill,適用於任何自建的、暴露 New API / One API 格式 /pricing 接口的網關。

核心功能

  1. 價格表拉取
    自動從配置的網關地址拉取價格表,服務端每 10 分鐘刷新一次並緩存。

  2. 雙計費模式支持
    兼容兩種計費方式:
    - 按 token 計價(quota_type=0)
    - 固定單價計費(quota_type=1)

  3. 逐對話折算
    遍歷當前對話的所有模型調用節點,根據 usage(輸入/輸出/cache token)與價格表折算總費用。

  4. Composer Dock 展示
    在輸入欄下方展示一行信息:
    - 總費用
    - 最近調用模型及次數
    - 輸入/輸出/cache token 數量
    支持多模型對話時自動分行。

  5. 狀態區分
    區分「未配置」與「拉取失敗」兩種狀態,並高亮顯示價格表中未找到條目的模型調用。

安裝與啓用

方式一:手動安裝(當前推薦)

  1. 克隆倉庫到本地:
   git clone https://github.com/LeslieWylie/dsh-gateway-billing.git ~/Desktop/01-Projects/dsh-gateway-billing
  1. 進入你的 DSH profile 目錄,編輯 package.json,添加依賴:
   "dsh-gateway-billing": "link:~/Desktop/01-Projects/dsh-gateway-billing"
  1. 編輯 cordis.patch.yml,添加插件配置並指定價格表地址:
   - id: gateway-billing
     name: 'dsh-gateway-billing'
     config:
       pricingUrl: 'https://your-gateway.example.com/api/pricing'
  1. 運行 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
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜