apple/foundation-models-utilities

Emerging and experimental patterns for building with the Foundation Models framework

解決的問題

此套件提供一組實用工具,用以簡化在 Apple Foundation Models 框架內整合與管理大型語言模型(LLM)的過程。它特別解決了管理長對話歷程、連接到各種主機模型伺服器,以及在不污染模型上下文視窗的情況下新增任務特定指示的挑戰。

工作原理

該程式庫提供三個主要元件:

  • ChatCompletionsLanguageModel:一個客戶端,允許開發者連接到任何實作聊天補全 REST API 的伺服器,使其與廣泛的開源 LLM 工具相容。
  • 歷史管理:一組設定修飾器,透過壓縮對話記錄來防止上下文視窗溢出。這透過滾動視窗、總結先前互動或刪除已完成的工具呼叫等策略實現。
  • 技能:一種為會話新增即時指示的系統。技能可作為提示新增(避免使鍵值快取失效)或作為指示新增(優先權高但可能使快取失效)。模型可透過工具呼叫激活這些技能,基於指示的技能可選擇性停用,以進一步減少上下文污染。

適用對象

在 Apple 平台或支援的 Linux 發行版上使用 Foundation Models 框架開發 AI 應用的 Swift 開發者。

主要特色

  • REST API 相容性:可連接到任何支援聊天補全的伺服器。
  • 彈性歷史壓縮:支援滾動視窗與摘要的可組合策略。
  • 動態上下文管理:即時「技能」可優化首次令牌產生時間並減少上下文污染。
  • 跨平台支援:可在 Apple 平台與 Ubuntu 等部分 Linux 發行版上運作。

相關

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