Amin Musahは、Hugging Faceモデル用のオープンソースのブラウザプレイグラウンドであるForgeを構築しました。これは別のコードモデルを使用して動的にユーザーインターフェースを生成します。システムはタスク仕様に基づいてTSXコンポーネントを作成し、ブラウザはesbuild-wasmを使用してクライアントサイドでコンパイルし、サンドボックス化されたiframe内で実行します。

  • 専用のサーバーサイドコードモデルが、入出力の形状を記述したタスク仕様からUIコンポーネントを生成します。
  • ブラウザはビルドサーバーなしでローカルに生成されたコードをコンパイルし、コンパイルが失敗した場合は最大2回再試行します。
  • サンドボックス化されたUIはクッキーやストレージから隔離され、推論のためにメッセージのみを通じて親ウィンドウと通信します。
  • 単一のバックグラウンドワーカーが重み読み込みを処理するための1つのモデルインスタンスを管理し、共有されたReactインスタンスがフックエラーを防ぎます。

このアプローチにより、ユーザーは各タスクタイプに対して手動でインターフェースを構築することなく、transformers.js + WebGPUを使用してローカルのGPU上でモデルをテストできます。