dsh-context-lens:查看相鄰模型請求之間的變化與緩存複用

前言

在 DSH 會話中,一次對話往往會觸發多次真實 LLM 請求。相鄰兩次請求之間,system prompttool set、請求配置等提交狀態是否變化,緩存複用又是否隨之變化,通常需要反覆翻日誌才能判斷。dsh-context-lens 是一個 DeepSeek Harness 插件,用來連續回答一個問題:這次 harness 發給模型的請求是什麼,相對上一次請求發生了什麼變化。

它強調“純觀察者”:讀取會話日誌,不向日誌添加內容,也不接觸模型調用。下面介紹它的定位、能力、安裝方式和適用邊界。

這是什麼

dsh-context-lens 的倉庫爲 gordonlu/dsh-context-lens,維護者爲 gordonlu,許可證爲 MIT。

它的定位是 Request Context Profiler for DeepSeek Harness。核心用途是:爲每個真實 LLM 請求生成一行可檢查的記錄,展示已提交請求上下文、緩存複用讀數,以及與上一次請求相比的變化。

核心功能

爲每個真實 LLM 請求記錄一行

插件爲每個真實 LLM 請求記錄以下信息:

  • 請求標識
  • 已提交請求上下文
  • 緩存複用讀數
  • 與前一次請求的 diff
  • 下降告警

可比較的內容包括:modelproviderrequest configsystem prompttool settool 聲明順序、估計上下文表面積和緩存複用邊界。

這裏強調“已提交”:插件比較的是實際進入真實模型請求的狀態,不聲稱觀察 harness 內存狀態。

緩存複用讀數

緩存複用讀數嚴格基於提供商的 usage buckets

uncached input
cache reads
cache writes
billed input

插件用這些字段呈現緩存複用變化,而不是推斷提供商內部緩存實現。

變化優先視圖

插件提供 zh/enconversation.view,包含:

  • 會話狀態條
  • 最近請求列表
  • 檢查器
  • 技術細節摺疊區

最近請求列表最多保留 100 條。

邊界與不做什麼

插件是純觀察者:讀取會話日誌,不向日誌添加內容,且不接觸模型調用。

它不新增 session events,不使用 model tools,不做 prompt injection,不做 KV simulation

下降告警只展示相關變化,並明確“相關不等於因果”。

插件不聲稱能確定以下內容:

  • 提供商內部緩存鍵構造
  • 前綴複用斷裂的精確 token
  • 哪一項變化導致緩存複用下降
  • 離開 100 條保留窗口後的會話/請求緩存狀態
  • harness 內存狀態

已測試不變量

即時 fold 與從 init replay 的 replay consistency 被描述爲已測試不變量。

安裝與啓用

dsh-context-lens 是 npm 包。運行時需要 Node >=20.19.0,運行時依賴爲 zod ^3.23.8

倉庫中所有 @deepseek-ai/* 引用爲 type-only,幷包含 dev-time type-only vendor-stubs。瀏覽器 bundle 復現 harness client-bundle ABI

先安裝插件到 web profile:

dsh plugin --profile web add dsh-context-lens

典型用法

經過上面的步驟後,可以這樣使用:

1、打開任意會話。

2、切換到 Request Context 標籤頁。

3、查看每個模型請求的一行記錄:相對上一次請求的變化,以及緩存複用如何變化。

如果是從源碼開發,先做依賴安裝、類型檢查、測試和構建:

pnpm install
pnpm typecheck
pnpm test
pnpm build

真實運行時 smoke 腳本位於 smoke/,包括:

  • server-side smoke
  • client-loader ABI smoke
  • full GUI E2E against a second web instance with a mock LLM

適用場景與注意

適合用來檢查 DSH 會話中真實 LLM 請求的上下文變化,尤其是 system prompttool settool 聲明順序request config 等提交狀態,以及緩存複用讀數隨請求變化的趨勢。

使用前需要注意:

  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與 MIT 許可證。
  • 下降告警只是相關性提示,不是因果判斷。
  • 最近請求列表最多保留 100 條,離開該窗口後的緩存狀態不聲稱可確定。
  • 插件不接觸模型調用,也不觀察 harness 內存狀態。

鏈接

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

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

小夜