SSDからエキスパートをストリーミングし、約2 GBのメモリでApple Silicon Mac上で26B Gemma 4 26B-A4Bモデルを動かすSwift・Metalランタイム。
trymirai/uzu
アプリ内でAIモデルを直接実行するRust製推論エンジン。Appleデバイス上でのオンデバイス実行に対応し、クラウドモデルも利用できます。
- スター
- 2,459
- フォーク
- 148
- 未解決の Issue
- 25
- 最終コミット
- 4 時間前
これは何?
uzuは、ネットワーク遅延をなくし、データをデバイス内に保ち、リクエストごとの推論コストを発生させずに、アプリ内でAIモデルを実行するための推論エンジンです。チャットセッション向けの高水準APIを備え、Rust、Python、Swift、TypeScript用のバインディングを提供します。モデルのダウンロードや推論設定も自動で処理します。
Appleデバイスではユニファイドメモリを使用します。iOS、macOS、Mac Catalyst向けのSwift Packageに加え、npmおよびPyPIパッケージとして配布されています。モデル設定は共通化されているため、新しいモデルのサポートは統一されたパターンに沿って追加できます。また、計算過程を追跡でき、参照実装と照合して正しさを確認できます。サンプルでは、基本的なチャット、ストリーミング応答、クラウドホスト型モデル、モデルインスタンスの共有、JSON Schemaによる構造化出力、ツール呼び出しを扱います。
読み込んだモデルは大量のRAMを使用する場合があるため、プロジェクトでは一度に1つのチャットセッションだけを読み込んでおくことを推奨しています。ドキュメントでは、パイプラインの各ステップをカスタマイズする方法を解説しています。
主な機能
- 01Rust、Python、Swift、TypeScript用のバインディングを備えた、高水準のチャットセッションAPIを提供します。
- 02モデルをオンデバイスで実行し、Appleデバイスではユニファイドメモリを使用します。
- 03JSON Schemaで制約した構造化出力に対応します。
- 04モデルが外部関数を呼び出せるツール呼び出しに対応します。
- 05読み込み済みのモデルを複数のチャットセッションで再利用できます。
- 06OpenAIのGPT-5など、クラウドモデルの呼び出しにも対応します。
ユースケース
- ユーザーデータをサーバーに送信せずに、iOSまたはmacOSアプリへオンデバイスLLMチャット機能を追加する。
- 後続処理で解析できるJSON形式の応答を、ローカルモデルで生成する。
- デバイスの位置情報の取得など、モデルがローカル関数を呼び出せるアプリを開発する。
クイックスタート
- 1
uvでPythonパッケージを追加する
uv add uzu==0.6.11 - 2
READMEのPythonの例を使ってエンジンを作成し、モデルを読み込んでダウンロードし、チャットセッションを開始する
使う前に知っておきたいこと
- コアの推論機能はAppleデバイス向けで、デバイス上での実行はiOSとmacOSに対応しています。
- クラウドモデルの利用には、完全なローカル推論ではなく外部サービスが必要です。
- Rustクレートは、安定版のcrates.ioリリースではなくgitブランチから取得されます。
トピック
よくある質問
- uzu とは?
- アプリ内でAIモデルを直接実行するRust製推論エンジン。Appleデバイス上でのオンデバイス実行に対応し、クラウドモデルも利用できます。 uzuは、ネットワーク遅延をなくし、データをデバイス内に保ち、リクエストごとの推論コストを発生させずに、アプリ内でAIモデルを実行するための推論エンジンです。チャットセッション向けの高水準APIを備え、Rust、Python、Swift、TypeScript用のバインディングを提供します。モデルのダウンロードや推論設定も自動で処理します。
- uzu は無料で使えますか?ライセンスは?
- uzu は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- uzu は今もメンテナンスされていますか?
- 活発にメンテナンス中。uzu の最終コミットは 2026年10月21日 です。
- uzu は何に使えますか?
- ユーザーデータをサーバーに送信せずに、iOSまたはmacOSアプリへオンデバイスLLMチャット機能を追加する。 後続処理で解析できるJSON形式の応答を、ローカルモデルで生成する。 デバイスの位置情報の取得など、モデルがローカル関数を呼び出せるアプリを開発する。
- uzu のインストール方法は?
- uvでPythonパッケージを追加する: uv add uzu==0.6.11 READMEのPythonの例を使ってエンジンを作成し、モデルを読み込んでダウンロードし、チャットセッションを開始する
- uzu はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/trymirai/uzu
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Apple silicon MacでSteam WorkshopのWallpaper Engine壁紙を再生できる、無料のオープンソースmacOSアプリ。
多数のLLM API、画像生成エンジン、TTS音声モデルとチャットできる、ローカルインストール型のパワーユーザー向けフロントエンド。
AIアプリ向けのオープンソース埋め込みデータベース。文書とベクトルを保存し、セマンティック検索、ハイブリッド検索、全文検索を実現します。
LLMアプリケーション構築用のRustライブラリと、その上に構築されたBevyプラグイン方式のターミナルコーディングエージェント。