Podman AI Lab は、ローカル環境で LLM (Large Language Model) と連携するための Podman Desktop のオープンソース拡張機能です。一般的な AI ユースケースを含むレシピ カタログ、厳選されたオープン ソース モデルのセット、学習、プロトタイピング、実験のためのプレイグラウンドを備えた Podman AI Lab は、インフラストラクチャに依存することなく、アプリケーションへの AI の導入を迅速かつ簡単に開始できるように支援します。ラップトップでデータのプライバシーとセキュリティを確保します。
Podman AI Lab は Podman マシンを使用して、LLM モデルと AI アプリケーションの推論サーバーを実行します。 AI モデルはダウンロードでき、GGUF、Pytorch、Tensorflow などの一般的な形式がサポートされています。
Podman AI Lab は、オープンソース AI モデルと LLM の厳選されたリストを提供します。ダウンロードしたモデルは、AI アプリケーション、モデル サービス、プレイグラウンドに使用できるようになります。
モデルをダウンロードすると、モデル サービスを開始できます。モデル サービスは、コンテナ内で実行され、多くのプロバイダーに共通のよく知られたチャット API を通じてモデルを公開する推論サーバーです。
統合された Playground 環境を使用すると、ローカル環境で利用可能なモデルを試すことができます。直感的なユーザー プロンプトは、さまざまなモデルの機能と精度を調査するのに役立ち、当面のユースケースに最適なモデルを見つけるのに役立ちます。 Playground インターフェイスでは、モデルをパラメータ化して各モデルの設定と属性をさらに最適化することができます。
AI モデルがよく知られたエンドポイントを通じて利用可能になると、AI モデルに接続して使用するアプリケーションの新しい世界を想像するのは簡単です。 Podman AI Lab は、互いに接続された一連のコンテナーとして AI アプリケーションをサポートします。
Podman AI Lab には、チャット ボット、コード ジェネレーター、テキスト サマライザーなど、多数のコア AI ユース ケースや問題領域をナビゲートするのに役立つ、いわゆるレシピ カタログが付属しています。各レシピには詳細な説明と、さまざまな大規模言語モデル (LLM) で実行できるサンプル アプリケーションが付属しています。複数のモデルを試してみると、ユースケースに最適なモデルを見つけることができます。
OS:
Windows、macOS、Linux と互換性あり
ソフトウェア:
ハードウェア
LLM の AI モデルは、メモリと CPU の両方の点で大量のリソースを消費します。提供されている各モデルは約 4 GiB のメモリを消費し、実行するには少なくとも 4 つの CPU が必要です。
したがって、Podman マシンには少なくとも 12 GB のメモリと少なくとも 4 つの CPU を推奨します。
追加の推奨プラクティスとして、3 つを超えるモデルを同時に実行しないでください。
これは、WSL テクノロジとしてホスト デスクトップのメモリと CPU を使用するため、Windows 上の WSL には関係ないことに注意してください。
Podman AI Lab 拡張機能は、Podman Desktop 内に直接インストールできます。
[拡張機能] > [カタログ] > [Podman AI Lab のインストール] に移動します。
開発バージョンをインストールするには、以下の記録に示すように、 Install custom...
アクションを使用します。
使用するイメージの名前はghcr.io/containers/podman-desktop-extension-ai-lab
です。イメージのリリースされたタグは、https://github.com/containers/podman-desktop-extension-ai-lab/pkgs/container/podman-desktop-extension-ai-lab で取得できます。
カタログからモデルを選択し、ローカルのワークステーションにダウンロードしましょう。
モデルがローカルで利用可能になったら、推論サーバーを起動しましょう
Podman AI Lab の開発と貢献を支援したいですか?
Podman Desktop ディレクトリからpnpm watch --extension-folder
使用して、AI Lab 拡張機能を自動的に再構築してテストできます。
注: 適切な前提条件がインストールされていることを確認してください。
git clone https://github.com/containers/podman-desktop
git clone https://github.com/containers/podman-desktop-extension-ai-lab
cd podman-desktop-extension-ai-lab
corepack enable pnpm
pnpm install
pnpm build
cd ../podman-desktop
pnpm watch --extension-folder ../podman-desktop-extension-ai-lab/packages/backend
フロントエンド パッケージをライブ編集している場合は、packages/frontend フォルダーから次のようにします。
$ pnpm watch
ユーザーが自分の環境をクリーンアップできる方法を追加します: 問題 #469 を参照してください。当面は以下の対応をご検討ください。
$HOME/podman-desktop/ai-lab
この拡張機能は、デフォルトで、レシピ、モデル、カテゴリの厳選されたリストを提供します。ただし、このシステムは拡張可能であり、独自のシステムを定義できます。
既存のカタログを拡張するには、拡張機能ストレージフォルダー$HOME/.local/share/containers/podman-desktop/extensions-storage/redhat.ai-lab/user-catalog.json
にファイルを作成します。
拡張機能のソース内のデフォルトのカタログと同じ形式に従う必要があります。
デフォルトの動作では、ユーザーのカタログの項目がデフォルトのカタログに追加されます。
️ 各アイテム (レシピ、モデル、カテゴリ) には一意の ID があり、デフォルトのカタログとユーザーのカタログの間に競合が見つかった場合、ユーザーのアイテムがデフォルトを上書きします。
サンプル アプリケーションがカタログに追加される場合があります。詳細については、パッケージングガイドを参照してください。
ロードマップは常に公開されており、皆様からのフィードバックをお待ちしています。新しい問題を作成し、あなたにとって最も重要だと思われる問題に賛成票を投じてください。
以下の項目に取り組んでまいります。
このフォームを使用して拡張機能に関するフィードバックを送信したり、このリポジトリで問題を作成したりできます。