在聊什么)
從 100K 到十億級單會話:billion-context 上線的第 71 天,社區(qū)在聊什么【免費下載鏈接】billion-contextA context-compression plugin for small context windows (a 100K context is enough), token savings (5x fewer tokens), and month-long single sessions (billions of tokens).上下文壓縮插件兼顧小窗口(100k上下文足矣)省token(省5倍token)和超長會話(數(shù)月級別幾十億token單會話)。billion-context is all you need項目地址: https://gitcode.com/gh_mirrors/bil/billion-context一個夾在編碼 Agent 和模型 API 之間的本地代理,把上下文不夠用拆成了一道可審計的工程問題:不擴窗口、不加顯存、不堆向量庫,而是讓模型自己決定把已消費的對話折疊成可逆摘要。billion-context 于 2026-08-06 開源,今天是它上線的第 71 天。這個時間點的觀察價值在于:它已經(jīng)跑出了真實的用戶反饋回路——GitHub 的 issue/PR 編號推進到 3200,npm 版本號從 0.1.34 走到了 0.1.197,倉庫里沉淀了 800 多個測試文件和一篇 MIT 許可的預(yù)印本論文。本文基于倉庫源碼、CHANGELOG、論文與最近的社區(qū)文章,回答三個問題:71 天的增長軌跡是什么形狀;100K 上下文撐幾十億 token 單會話的量級跨度是否可信;以及接下來值得盯的里程碑在哪里。一、71 天的增長軌跡:一周一個功能面,一天一個補丁先看節(jié)奏。倉庫里的版本證據(jù)鏈很密:8 月 8 日(上線第 3 天),reference/release.md中的發(fā)布分支示例已是2026-08-08_release-v0.1.17;到8 月 11 日,CHANGELOG 記錄已推進到0.1.34——頭一周就密集修掉了 thinking 模式reasoning_content回傳 400、round-2 流式緩沖、compress 死循環(huán)這類第一天就會遇到的問題;8 月 24 日前后,CHANGELOG 已記錄到0.1.49,devlog 目錄(devlog/)在 8 月 13 日至 9 月 27 日間沉淀了 36 個迭代記錄,每條都帶實施前寫好的REQ.md和實施中寫好的WORKLOG.md;當前package.json中的版本是0.1.197。71 天,160 多個 npm 發(fā)布,平均不到一天一個版本?;顒恿可?tests/目錄最大的回歸測試編號已到issue3250,最近一次合并的 PR 是#3234,71 天內(nèi) issue/PR 編號推進到 3200,意味著平均每天 40 多個社區(qū)事件(提交、討論、回歸)。測試規(guī)模同樣可觀:tests/下 700 多個測試文件,kernel/tests/96 個,pi-subagents/tests/16 個,tests/e2e/17 個套件——其中 E2E 直接驅(qū)動真實的codexCLI 穿過代理與 Responses 兼容上游,斷言 warmup → 負載增長 → ACP 壓縮 → 原生 compact 攔截的完整生命周期。社區(qū)討論的密度也能佐證。10 月 14 日,CSDN 上出現(xiàn)了一篇專門講如何為 billion-context 貢獻代碼的開發(fā)者指南,通篇是 500 測試體系、原生插件協(xié)議(x-bili-plugin頭 GET /__bili/plugin/manifestPOST /__bili/plugin/tool)與統(tǒng)一存儲架構(gòu)的拆解——當一個 71 天的項目開始有第三方寫貢獻指南,說明它的社區(qū)敘事已經(jīng)從怎么用切換到了怎么共建??蛻舳烁采w面也在持續(xù)擴張。README.md的 Which do I need? 表格里現(xiàn)在列了 20 多個宿主:pi、opencode、omp、dsh、kimi、hermes、zcode、claude、codex、gemini、iflow、qwen、antigravity、mcode、aider、copilot、amp、crush、zed、goose、codebuddy、qoder、trae、jcode——有插件接縫的走bili plugin install client原生模式,沒有的走bili client啟動器(cert-MITM 或/bili/baseURL 改寫),兜底方案是把 baseURL 前綴換成http://localhost:8787/bili/。還有一個容易被忽略的信號:10 月上旬的發(fā)布注記(release-notes/package.json,由 CI 從本倉庫發(fā)布到獨立 npm 包)在 10 月 1 日至 12 日間出了 5 個版本,其中 3 個是critical級——0.1.186(修 codex 啟動器與 claude code 賬號場景)、0.1.192/0.1.193(修 dsh/codex 切模型導致會話 fork、壓縮狀態(tài)失效、緩存重付)。critical 級發(fā)布集中出現(xiàn)在上線第 56–67 天,恰好是真實用戶把 dsh 桌面版、codex 訂閱登錄這類長尾場景用出來的階段:這 71 天里,項目經(jīng)歷了跑通 → 跑順 → 長尾場景挨個打補丁的完整過程,而它的自動更新 critical 分級注記 advisories/強制更新通道(獨立 npm 包,當前 advisory 列表為空,即從未觸發(fā)過)構(gòu)成了完整的線上修復閉環(huán)。二、社區(qū)焦點一:量級跨度到底可不可信100K 上下文夠用、單會話幾十億 token——這是 README 第一行的承諾,也是社區(qū)質(zhì)疑最多的一點??尚诺年P(guān)鍵在于分清倉庫里三個不同口徑的數(shù)字,它們都來自隨代碼開源的論文(paper/目錄下,MIT 許可的活文檔,v0.2 版,2026-09-07):口徑一:實測多會話總量。主宿主機上 4.5 個月(2026-04-23 → 2026-09-07)的生產(chǎn)日志:4,843 個會話、174,327 次模型調(diào)用、18.76B 累計輸入 token(其中 1.75B 是新鮮輸入,17.01B 是緩存讀取),三臺宿主合計約 24.7B。注意這是累計輸入口徑、跨會話的,且緩存讀取占絕對大頭(讀:新 ≈ 9.7:1)——billion 首先是這個名字的由來,而不是單次請求的大小??趶蕉?實測單會話馬拉松。真正對應(yīng)十億級單會話的數(shù)字:OpenCode 宿主上最長的會話跑了12,049 次調(diào)用、1.52B 累計輸入 token,峰值上下文 374,946(1M 級窗口);Pi 宿主上最長的會話8,584 次調(diào)用、1.01B token,峰值 257,721。這兩個數(shù)字是逐次調(diào)用從 API usage 里實測的,不是推演??趶饺?仿真外推上限。論文 §7 給出的1M 窗口單會話可支撐28.6B token / 106 天是閉式推導 離散事件仿真的結(jié)果,論文明確標注為[A: simulation],且承認這是對最大實測會話約 19 倍的純外推,tier-3 蒸餾率甚至是設(shè)計值(未觀測到)。附錄 B 的 Claims register 把每個聲明逐條標了[V](有日志證據(jù))/[A](分析模擬)/[P](計劃實驗)——把哪些是實測、哪些是模型寫進論文正文,這本身就是回應(yīng)量級可信度質(zhì)疑的方式。支撐這套數(shù)字的工程事實有三條,都在源碼里有對應(yīng)物:零窗口違規(guī)。204,800 窗口模型上 42,986 次調(diào)用零溢出(峰值 198,628);第三臺宿主(ework,自主 agent 服務(wù))12.2 天 32,733 次調(diào)用對 262,144 窗口同樣零違規(guī),峰值 229,355(87.5%)。Pi 宿主更干凈的逐次計費顯示平均 88K / 中位 72K / p99 218K——典型的鋸齒震蕩在窗口帶內(nèi),而不是爬升。折疊只壓縮已消費的增量。生產(chǎn)數(shù)據(jù):229M token 被壓縮,但 62% 集中在 1.3% 的超大會話里(≥1000 條消息)——論文稱之為馬拉松現(xiàn)象:短會話基準根本觀測不到壓縮真正起作用的地帶。單次壓縮的產(chǎn)出中位只有185 token、97.5% 不超 2K;每次折疊中位吃掉 2.6K 增量。重負載會話(歷史中位 ~530K)最終只留 ~13K 常駐摘要,宏觀折疊比約70×。前綴緩存不被壓縮破壞。這是省 5 倍 token的經(jīng)濟學核心:歷史 append-only、壓縮只把后綴區(qū)段置為摘要,已建立的 KV 前綴永不失效。實測緩存讀取占比 90.7%(主宿主混合值),按調(diào)用間隔分層后,間隔 2 分鐘(占 89% 流量)的請求緩存讀取占比達94.2%,miss 歸因里只有 16% 來自新追加的后綴,其余是 provider 側(cè) TTL 過期——與布局無關(guān)。README 的健康判據(jù)也寫得很直白:健康會話保持95–97%前綴緩存命中,壓縮本身的成本 ≤2%。受控實驗給了另一組佐證:在 Session Marathon 試點里,壓縮組相對保留基線計費 token 降 31–54%、重復取數(shù)(re-fetch)調(diào)用降 63%(2.7×),而記憶探針得分持平;階段結(jié)構(gòu)化負載上默認配置在質(zhì)量、成本、方差三個維度全部最優(yōu)。論文也誠實地記錄了反面:128K 窗口的靜默對照組(不執(zhí)行任何壓縮、只保留 doctrine 文本和消息標簽)獨自復現(xiàn)了幾乎全部的 re-fetch 降幅(?62% vs ?63%),說明收益大部分來自判斷內(nèi)容 標簽布局這個組合,而不是壓縮動作本身。三、社區(qū)焦點二:實現(xiàn)路徑——一個 fold,而不是更大的窗口2026 年的Agent 上下文工程已經(jīng)是條熱鬧賽道:火山引擎的 OpenViking 把 Agent 記憶做成可自進化的上下文數(shù)據(jù)庫,headroom 主打上下文壓縮層、最高省 95% token,Context Mode 用 SQLite FTS5 BM25 把大輸出轉(zhuǎn)進本地沙箱(21K stars),Lindy 走共享記憶服務(wù)路線——同一時間窗里,掘金、CSDN 上關(guān)于上下文數(shù)據(jù)庫上下文節(jié)流輕量級上下文模式的解讀一篇接一篇。billion-context 的差異化答案很明確:不動模型(免訓練)、不動窗口(200K 夠)、不搬數(shù)據(jù)(蒸餾物留在會話內(nèi)),在代理層做增量分層折疊。拆開源碼看,實現(xiàn)路徑是四個部件:1. 折疊布局(the fold)。模型窗口 金字塔分級摘要塊 逐字最近區(qū)。tier-1 塊總結(jié)一段消息區(qū)間;tier-1 積累到一定體量后被折成 tier-2,tier-2 再折成 tier-3——論文的原話是an LSM tree over prose。關(guān)鍵不變量是每段內(nèi)容一生只被折疊一次,然后以摘要塊形式常駐不再變:所以早期內(nèi)容的保留率恒在 ~1/8(工具主導的塊中位 24×),不會像閾值觸發(fā)式一次性 compaction 那樣按 ρ^k 幾何衰減(四輪只剩 3–13%)。塊攜帶directBlockIds/effectiveMessageIds血統(tǒng)鏈,任意塊可decompress還原,還有 decompress-to-file 模式把全文寫到文件系統(tǒng)而不是上下文,還原時不擾動緩存前綴。2. 模型驅(qū)動的壓縮決策。代理注入四個工具——compress/decompress/search_context/acp_status——由模型自己調(diào)用。觸發(fā)是需求側(cè)的:增長門(growth-gate)默認每50K token 增量注入一次 nudge(kernel 契約里 growthFloor/growthCap 都是平的 50000,故意不做窗口百分比縮放,見AGENTS.md關(guān)鍵設(shè)計決策第 8 條),nudge 只帶候選區(qū)段 真實大小的推薦清單,從不告訴模型窗口占用百分比,且模型有權(quán)拒絕。生產(chǎn)日志顯示這不只是紙面設(shè)計:五天窗口內(nèi) 23/103 次有效壓縮發(fā)生在引擎刻意不注入 nudge 的回合上(22%),模型會自發(fā)發(fā)起壓縮;內(nèi)核還會把無法恢復的 drop 直接拋錯而不是靜默降級。3. 會話身份。代理以客戶端自己提供的 conversation id逐字作為壓縮狀態(tài)鍵(src/session-id.ts),不做哈希、不摻協(xié)議/上游/API-key 維度——因為那些會中途變化,歷史上正是它們在用戶還在說話時把狀態(tài)孤兒化。無頭客戶端(如裸 pi)走src/prefix-affinity.ts的匿名前綴親和:歷史從位置 0 起字節(jié)級復現(xiàn)才重新附著到已有會話,否則鑄造獨立的pfa-…會話。子會話在出生時上報parentConversationId,獲得只讀的derivedFrom鏈,decompress/search_context可以沿父鏈回查(循環(huán)保護 深度上限 8)。4. 可機檢的不變量。這是倉庫里最非典型的部分:proof/spec/下用 SMT-LIB 對出站請求體的組裝寫了字節(jié)級模型,在 Z3 上證明了兩條定理——T1(增長穩(wěn)定性:追加一條消息后,新舊請求體共享長度 ≥D 的字節(jié)前綴,除聲明過的 carrier 位置外逐字節(jié)相等)、T2(ref id 永不復用:單調(diào)游標下已發(fā)號不會重發(fā)),每條定理配一個變異孿生(注入已知缺陷,solver 必須在時間預(yù)算內(nèi)給出反例,否則證明視為無效),再配 grounding 測試把每條公理釘回真實代碼(kernel/src/rebuild.ts、kernel/src/refs.ts等)。proof/README.md甚至單列了一節(jié)Trust boundary,明說定理證明的是滿足公理的組裝函數(shù),代碼?公理的同步由 grounding 測試 計費套件雙機制兜底。對前綴緩存這種錯一個字節(jié)就重付整個前綴的系統(tǒng),用求解器鎖字節(jié)前綴,是社區(qū)在討論實現(xiàn)路徑時反復被引用的一點。此外,壓縮有 proxy / plugin 兩種模式、摘要載體不同(proxy 模式用acp_summary消息,plugin 模式用工具調(diào)用本身),內(nèi)核源碼就 vendored 在kernel/(npm 名acp-kernel,550 獨立測試,構(gòu)建時內(nèi)聯(lián)進dist/index.js),統(tǒng)一存儲走 SQLite(src/storage/,node:sqlite內(nèi)置優(yōu)先),當前默認shadow模式雙寫對賬——這些細節(jié)構(gòu)成了第三方寫貢獻指南時的全部骨架。四、社區(qū)焦點三:工程治理與貢獻門檻71 天里最容易被低估的部分,是這個項目把怎么修 bug寫成了規(guī)范。AGENTS.md(倉庫自述的最高優(yōu)先級開發(fā)規(guī)范)里能看到一套完整的治理機器:自動合并 8 條門檻:單模塊、有復現(xiàn)原 bug 的回歸測試、rebase 最新 master 全綠、不碰配置 schema/持久化格式/wire 形狀/kernel、純fix:、diff 干凈、引用 issue、不碰承重基建——歷史數(shù)據(jù)里約 7% 的 PR 需要二輪返工,主因是過期 base和只修癥狀路徑;kernel 變更人類門檻:觸碰kernel/**的 PR 必須在正文聲明kernel-change: reason,先經(jīng) owner 批準,內(nèi)核版本 bump 由 CI 強制,永不自動合并;版本紀律:版本號只在*_release-v*發(fā)布分支變更,lock-syncCI 校驗package-lock.json同步——絕不在內(nèi)容分支碰version;發(fā)布通道:CI 全自動發(fā)布到 npm tag Release;billion-context-release-notes(分層、模型撰寫的發(fā)布注記)與billion-context-advisories(critical 缺陷強制更新,可指定回滾目標版本)作為獨立 npm 包,代理每 3 分鐘輪詢,失敗時指數(shù)退避(5 分鐘起、上限 6 小時)且不阻塞模型流量;許可證:MIT 一條附加條款——任何終端用戶可見/可交互且使用了本軟件的產(chǎn)品,須在首頁或文檔中注明使用了 billion-context 并附倉庫鏈接(LICENSE末尾)。這條MIT1在社區(qū)討論里也是話題,它劃清了誰算下游的邊界。可觀測性則直接面向終端用戶:客戶端內(nèi)/acp面板(會話、塊、可壓縮區(qū)段、用量)、/acp-cache緩存歸因報告( GRAND LEDGER / FOLD ECONOMICS / LINE ITEMS / MODEL SWITCHES 四個區(qū)塊,把 miss 分解成新增內(nèi)容、壓縮重付、TTL 過期、密鑰輪換),以及 Web 控制臺(會話列表、逐會話明細、命中率折線圖、配置編輯、上游連通性測試)。健康判據(jù)就一行:命中率低于 95–97% 時,報告按上游 TTL → 模型切換 → bili bug → 其他的順序告訴你嫌疑對象。五、下一步值得盯的里程碑從CHANGELOG.md的 Unreleased 段、論文[P](planned)標記和最近的 devlog,可以列出一個有明確倉庫證據(jù)的觀察清單:增量回合(#3248)——客戶端停止重發(fā)全量歷史。原生宿主現(xiàn)在可以在普通模型請求上打x-bili-plugin-turn: 1,首回合 seed 規(guī)范態(tài)、后續(xù)回合只發(fā) delta(含上一條 assistant 回復),代理端組裝完整 body 重入管線,嚴格x-bili-applied-seq回執(zhí),409 強制 resync。對數(shù)十億 token 單會話而言,這砍掉的是每輪重發(fā)完整歷史的 O(full) 管線開銷,是當前 roadmap 上杠桿最大的一條。R3 內(nèi)存平面(#3050)——把最長會話的常駐內(nèi)存降下來??臻e會話的元數(shù)據(jù)、塊內(nèi)容、raw tail 在保存后折疊成懶加載殼(實測最肥的 dogfood 會話分別省 ~19.6 / ~27 / ~47 MB),啟動預(yù)熱集默認關(guān)閉(空閑 RSS ?151 MB),新增GET /__bili/memory診斷端點。超長會話的另一個瓶頸從來不只是 token,還有代理自身的內(nèi)存。統(tǒng)一存儲 Phase 3。SQLite 索引已是 shadow 默認真相源(storage.unified當前默認shadow),下一步是storage.jsonWriter: off——JSON 信封徹底退役,SQLite 成為唯一持久副本;fork 檢查點已隨本階段落地。持久化格式變更是這個項目自己劃的承重區(qū),值得盯它怎么過回滾契約。論文 [P] 項落地。RQ1 的 7 臂全量評估(含 oracle 全上下文臂與忠實的 LCM 無損遞歸實現(xiàn),OOLONG 與 SWE-ContextBench 基準)、RQ4 的脫敏語料公開(目前 4,843 會話的原始存儲尚未公開,論文寫明sanitized corpus planned)。多個月、多宿主、24.7B token 的壓縮語料一旦放出,會直接改變這條賽道誰有生產(chǎn)數(shù)據(jù)的格局。doctrine → weights,以及 ~50K 極端壓縮區(qū)間。論文 §9 把壓縮 doctrine 定位成可版本化的判斷規(guī)格,兩條延伸:把日志里的壓縮決策做成 SFT 課程蒸餾進權(quán)重(模型不再需要腳手架提示),以及針對 ~50K 總上下文的極端壓縮配置(受速率限制的 nudge 是缺的安全閥)。前者如果走通,免訓練這個項目的立身之本會進化成先免訓練、后蒸餾。28.6B 仿真外推會被實測追上多少。當前最長實測會話(1.52B)只觸及模型上限的 5.3%,論文自己標注這是 ~19× 外推、tier-3 蒸餾率尚屬設(shè)計值。未來幾個月馬拉松會話繼續(xù)跑,實測與仿真的差距本身就是最好的進度條;順帶留意 tier-3 蒸餾在生產(chǎn)中是否開始被觀測到(當前 1,711 塊中 tier-2 只有 60 個)。71 天,billion-context 交出的不只是一個省 token 的代理,而是一整套可審計的證據(jù)鏈:實測數(shù)字標[V]、仿真數(shù)字標[A]、計劃實驗標[P],前綴穩(wěn)定性有求解器背書,修復通道有 critical 分級與強制更新兜底。社區(qū)討論的重心從它能不能做到轉(zhuǎn)向怎么貢獻代碼和下一個里程碑是什么——對一個上線第七周的項目來說,這已經(jīng)是相當少見的社區(qū)狀態(tài)?!久赓M下載鏈接】billion-contextA context-compression plugin for small context windows (a 100K context is enough), token savings (5x fewer tokens), and month-long single sessions (billions of tokens).上下文壓縮插件兼顧小窗口(100k上下文足矣)省token(省5倍token)和超長會話(數(shù)月級別幾十億token單會話)。billion-context is all you need項目地址: https://gitcode.com/gh_mirrors/bil/billion-context創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考