CommandCode AI: 使用 Taste Framework 提升開源模型的工具調用能力
CommandCode AI: 使用 Taste Framework 提升開源模型的工具調用能力
解決開源模型的工具混淆問題
開源 LLM 經常面臨「工具混淆」的問題,儘管它們能力強大,卻無法遵守嚴格的工具調用架構(tool-calling schemas)。CommandCode AI 的執行長 Ahmad Awais 發現,許多開源模型被認為的弱點並非能力不足,而是「框架/合約問題」——即模型與工具調用框架互動時的失敗。
在內部評估中,實施確定性的修復層(deterministic repair layer)讓 DeepSeek V4 Pro 在 10 次中有 6 次表現優於 Opus 4.7。核心問題在於開源模型可能會重複發送錯誤的 schema(例如,在需要陣列的地方發送 null 物件),並忽略標準錯誤訊息(例如 Zod 驗證錯誤),從而陷入失敗的迴圈。
「先驗證後修復」的方法
當工具調用失敗時,CommandCode AI 並非簡單地將錯誤返回給 LLM,而是實施了一個修復層,在執行工具之前確定性地修復輸入內容。
- 確定性修復:如果模型持續輸出 JSON 字串而非陣列,修復層會自動將其轉換為陣列。
- 修復提示:在修復輸入並返回工具結果後,系統會向模型發送「修復提示」。這能教導模型在未來的調用中使用正確的格式。
- 判斷性決策:對於缺失的參數(例如,讀取檔案時的 file offset),系統會做出合理的預設假設(例如,讀取前 100 行)以保持代理程式(agent)持續運作。
Awais 指出,一旦模型透過修復獲得成功結果,它通常會在隨後的調用中修正其行為,變得更加具有創意且有效。
使用組合式框架解決「設計雜訊」
除了工具調用,同樣的確定性修復與結構化引導邏輯也被應用於「設計雜訊」(design slop)——即 LLM 產生的通用、通常是重複性的美學模式(例如無處不在的靛藍色到紫色漸層)。
減少設計雜訊
CommandCode AI 透過提供組合式框架與特定約束來減少設計雜訊:
- 意圖優先設計:在實施設計之前,強制模型定義設計背後的意圖(例如,將儀表板識別為「監控介面」)。
- OKLCH 色彩空間:強制模型使用 OKLCH 而非 HSL 或 RGB。當使用 OKLCH 時,LLM 對亮度與感知色彩一致性的控制力更強,這更符合人類視覺。
- 設計異味與模式:實施一套「設計異味」(應避免的事物)以及源自專業設計師的七種核心設計模式。
透過將設計視為一組可透過確定性修復的模式,而非模糊的美學請求,系統可以消除大部分 AI 生成的設計瑕疵。
Taste Framework: 元神經符號記憶
CommandCode AI 利用名為「Taste」的框架來管理開發者的偏好與技能。Taste 被描述為一種元神經符號架構(meta-neurosymbolic architecture),能夠隨著時間推移學習開發者的特定編碼風格與偏好。
技能 vs. Taste
- 技能 (Skills):特定的、有文件記錄的規則或模式(例如,「偏好使用 pnpm 安裝套件」)。
- Taste:高階引擎,能自動識別儲存庫中的重複偏好並生成技能文件。
Taste 的關鍵特性
- 自動學習:Taste 會觀察開發者的編輯與接受/拒絕操作,以識別開發者可能不會手動記錄的微觀決策(例如特定的 PR 工作流)。
- 透明度:Taste 文件以 Markdown 格式儲存在 Git 儲存庫中,使其具備透明度,並可透過 Pull Requests 進行審查。
- 可移植性:Taste 文件可以跨專案共享。開發者可以使用高品質模型(如 Opus)來建立專案的「taste」,然後使用較便宜的開源模型來維護專案,同時遵循已建立的 taste。
未來路線圖與開源
CommandCode AI 打算將 CommandCode CLI 開源,使其完全可被修改(hackable)。目標是建立一個一個支援「頂尖中的頂尖」模型(包括開源與閉源模型)的系統,同時允許使用者整合自有的本地模型。這種方法旨在提供類似 Apple 生態系統的高品質策展體驗,而非提供一份廣泛且未經優化的可用模型清單。