apple/foundation-models-utilities

Emerging and experimental patterns for building with the Foundation Models framework

解決する課題

このパッケージは、Apple Foundation Modelsフレームワーク内での大規模言語モデル(LLM)の統合と管理を簡素化するためのユーティリティのセットを提供します。特に、長い会話履歴の管理、さまざまなホストされたモデルサーバーへの接続、モデルのコンテキストウィンドウを汚染せずにタスク固有の指示を追加するという課題に対処しています。

動作方法

このライブラリは3つの主要なコンポーネントを提供します:

  • ChatCompletionsLanguageModel: 任意のチャットコンプリーションREST APIを実装するサーバーに接続できるクライアントで、幅広いオープンソースLLMユーティリティと互換性があります。
  • 履歴管理: トランスクリプトを圧縮することでコンテキストウィンドウのオーバーフローを防ぐためのプロファイル修飾子のセット。ローリングウィンドウ、以前の相互作用の要約、完了したツール呼び出しの削除などの戦略を用いて実現されます。
  • スキル: セッションに即時的な指示を追加するためのシステム。スキルはプロンプトとして追加(キーバリューキャッシュを無効化しない)または指示として追加(高優先度だがキャッシュを無効化する可能性あり)できます。モデルはツール呼び出しによりこれらのスキルを活性化でき、指示ベースのスキルはオプションで無効化可能で、さらにコンテキストの汚染を低減できます。

対象ユーザー

Appleプラットフォームまたは対応するLinuxディストリビューション上でAIアプリケーションを開発しているSwift開発者で、Foundation Modelsフレームワークを使用している方。

特徴

  • REST API互換性: 任意のチャットコンプリーション互換サーバーに接続可能。
  • 柔軟な履歴圧縮: ローリングウィンドウと要約の組み合わせ可能な戦略。
  • 動的コンテキスト管理: 時間対最初のトークンを最適化し、コンテキストの汚染を低減する即時「スキル」。
  • クロスプラットフォーム対応: AppleプラットフォームおよびUbuntuなど一部のLinuxディストリビューションで動作。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト