dsh-offpeak:在 DeepSeek 高峯時段暫停模型調用

前言

DeepSeek Harness(DSH)裏,智能體一旦跑起來,模型調用會按任務節奏連續發出。DeepSeek 官方路由在部分時段按高峯定價計費;若你在這些時段仍照常調用,費用會按高峯價結算。手動掐表、改 cron 或在外層包一層調度,都能錯開高峯,但都要自己維護時間表,且很難保證「請求在發出前就被攔住、窗口結束後再自動繼續」。

下面介紹社區插件 dsh-offpeak(維護者 TetraSsky,分類:工作流)。它在 DSH web profile 下,按你配置的暫停窗口攔截模型調用,窗口內請求不發送到適配器、不產生計費;窗口結束後由插件自行恢復。可選能力還包括讀取賬戶餘額與近期 spend 圖表。插件爲獨立包,只讀寫自身相關文件,不依賴其他 DSH 插件。

這是什麼

dsh-offpeak 是 DeepSeek Harness 插件:在高峯定價時段 hold DeepSeek 模型調用,待非高峯再發送,以便按 off-peak 費率計費。窗口打開期間,請求不會被髮出,智能體等待,窗口結束後自動繼續。

DSH 生態理念是「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

核心功能

「暫停」由三部分共同構成

機制 作用
Request gate 所有模型調用經 llm/stream 瀑布流;窗口內調用在到達 adapter 前被 park,不發送、不計費。
Goal freeze 處於 active 階段的 goal 被暫停,不再推進,界面顯示爲 paused 而非 busy;用戶自行暫停的 goal 不會被改動。
Status tool 提供只讀工具 offpeak_status,供模型說明爲何在等待;不能改時間表。

沒有按請求的 override,也沒有按窗口的 skip;時間表是何時 hold 的唯一依據。若要提前結束暫停,需改時間表或關閉插件。

被 hold 的請求會在窗口結束、請求被 abort、時間表變更使其不再被 hold、或插件卸載時釋放。重啓後,插件會按 $DSH_HOME/offpeak-paused.json 中的記錄,僅恢復由本插件暫停過的 goal。

時間表與時區

高峯定價以 北京時間 定義。插件區分:

  • Schedule time zone:寫入暫停窗口的時區,屬於時間表身份的一部分。
  • Show times in:僅用於展示的時區;修改只會重標時間,不會改變窗口本身。

狀態機在 schedule 時區下求值,瀏覽器與 host 對狀態一致。

設置頁提供 Apply DeepSeek peak hours:將北京時間工作日 09:00–12:00、14:00–18:00(含兩分鐘餘量)換算到你選的 schedule 時區並追加,不改動你的時區、不丟棄已有窗口。若 schedule 時區有夏令時,換算窗口相對北京高峯每年會漂移兩次;設置頁說明可用北京時間表達 schedule 以避免漂移。

餘額與 spend 圖表(可選)

開啓 Show API balance 且已在 Models 頁保存 DEEPSEEK_API_KEY 時,host 讀取 DeepSeek 賬戶餘額並在 header 展示;懸停可看 spend 分解,點擊可看近八小時、十分鐘粒度的柱狀圖。僅暫停窗口不依賴 API Key。

  • Key 不離開 host;瀏覽器經認證路由獲取衍生數字。
  • Spend 爲餘額 下降 之和,充值不會抵消真實 spend。
  • 插件 enabled 時每五分鐘採樣一次(不限於展示餘額時),寫入 $DSH_HOME/offpeak-history.json(288 條樣本,約 24 小時)。
  • 歷史從插件啓用後開始,無法還原安裝前的用量。

餘額 API 返回賬戶本幣(可能 USD 或 CNY)。Balance currency 可覆蓋符號,並在選定固定符號時配置 CNY per USD 做換算。

界面提示

窗口即將或正在打開時,header 會顯示通知及 Dismiss。Dismiss 僅在本頁會話內靜音該次窗口;換聊天不會再次出現,刷新頁面會重新提示。不同窗口視爲不同 occurrence,都會公告。

安裝與啓用

要求:帶 web profile 的 DeepSeek Harness。餘額與 spend 圖需要 Models 頁配置 DEEPSEEK_API_KEY;暫停本身不需要。

從 GitHub 安裝:

dsh plugin --profile web add github:TetraSsky/dsh-offpeak

本地 checkout 安裝:

dsh plugin --profile web add <path-to-this-package>

然後在 $DSH_HOME/profiles/web/package.json 的 dsh.profile.bundles 中加入 dsh-offpeak,並重啓。包的 cordis.patch.yml 會插入對應行。

配置落在 $DSH_HOME/settings.yaml 的 offpeak 命名空間下。插件還會在 $DSH_HOME 寫入 offpeak-history.json(餘額採樣)與 offpeak-paused.json(本插件暫停的 goal 記錄)。

典型用法

  1. 安裝並加入 bundle,重啓 DSH web profile。
  2. 在插件設置中打開 Enable off-peak pause。
  3. 選擇 Schedule time zone,配置 Pause windows(pauseAt–resumeAt 及各自 weekdays)與 Days that pause(週末默認 off-peak,通常不納入)。
  4. 需要對齊官方高峯時,使用 Apply DeepSeek peak hours 追加窗口,再按需微調。
  5. Applies to 默認僅 DeepSeek official routes(高峯定價僅存在於官方路由);也可選全部調用。
  6. 可選:開啓 Show API balance、配置 Balance currency;用 Warn before pause 控制提前多久出現 header 通知。

語言隨 Harness 的 zh / en 切換,插件無單獨語言項。

適用場景與注意

適合:長期用 DSH web profile 跑智能體、主要走 DeepSeek 官方路由、希望在已知高峯段自動停發請求以按 off-peak 計費的用戶。

注意:

  • 窗口內任務會等待,不適合對延遲極度敏感且無法錯開高峯的在線交互。
  • 無 per-request 跳過;臨時要發請求需改時間表或關插件。
  • 插件以當前 DSH 進程權限運行,安裝前請自行查看 源碼 與 MIT 許可證,確認可接受其行爲與文件讀寫範圍。
  • 夏令時時區下,若用「Apply DeepSeek peak hours」換算窗口,相對北京高峯可能漂移;可按 README 改用北京時間作 schedule 時區。

結尾

dsh-offpeak 把「高峯不發出、低峯自動續」做成 DSH 內建工作流:request gate、goal freeze 與 offpeak_status 一起定義暫停語義,時間表以 schedule 時區爲準,並可一鍵追加 DeepSeek 官方高峯段。需要成本可見性時,可疊加餘額與 spend 圖表。

羽毛球分组比赛记分
小程序二维码

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

小夜