canwhite/Krebs

An agent focused on attention management

解決的問題

Krebs 是一個自托管 AI 網關,專為管理長期互動與複雜任務而設計,不會遺失原始目標。它透過積極的上下文壓縮、持久記憶與自主子代理,解決了 LLM 中的「上下文漂移」與令牌限制耗盡問題。

工作原理

Krebs 作為使用者與 LLM(如 DeepSeek 或 Claude)之間的中間層。它採用多層方法來維持一致性:

  • 注意力管理:監控令牌使用量,並在對話增長時觸發不同的壓縮層(摘要、修剪與坍縮)。
  • 記憶與 RAG:使用兩階段記憶系統(將摘要整合至 MEMORY.md 檔案)與基於 BM25 的 RAG,從過去會話中檢索相關資訊。
  • 目標約束:系統提取對話的核心目標,並使用混合評分檢測代理是否偏離任務,自動注入修正訊息。
  • 自我驗證:回應後,代理會將自身輸出與原始任務比對,若檢測到不一致則自動重試。
  • 執行環境:提供基於 WASM 的沙箱,確保檔案系統寫入操作的安全性,同時允許唯讀 shell 存取。
  • 子代理:主代理可產生自主子代理來處理特定任務,管理任務佇列,並排程重複性工作。

適用對象

適合希望擁有能處理複雜、多輪對話與自主任務執行的自托管 AI 助手,且具高可靠性與最小上下文損失的開發者與高階使用者。

主要特色

  • 多層上下文壓縮:根據令牌閾值自動修剪與摘要。
  • 目標漂移檢測:主動監控並修正對話偏移。
  • 自主子代理:可啟動一整支代理團隊進行平行任務管理。
  • WASM 沙箱:安全隔離檔案系統寫入操作。
  • 可擴展工具:支援自訂 Lua 腳本與技能檔案。
  • 會話持久化:透過 SQLite 與檔案儲存,實現完整的會話歷史管理。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案