Amin Musah a construit Forge, un terrain de jeu open-source dans le navigateur pour les modèles Hugging Face qui génère dynamiquement des interfaces utilisateur en utilisant un modèle de code séparé. Le système crée un composant TSX basé sur les spécifications de la tâche, que le navigateur compile ensuite côté client avec esbuild-wasm et exécute dans un iframe isolé.

  • Un modèle de code dédié côté serveur génère le composant d'interface à partir d'une spécification de tâche décrivant les formes d'entrée/sortie.
  • Le navigateur compile le code généré localement sans serveur de build, en réessayant jusqu'à deux fois en cas d'échec de la compilation.
  • L'interface isolée est séparée des cookies et du stockage, communiquant avec la fenêtre parente uniquement via des messages pour l'inférence.
  • Un seul worker en arrière-plan gère une instance de modèle pour le chargement des poids, tandis qu'une instance React partagée prévient les erreurs de hooks.

Cette approche permet aux utilisateurs de tester des modèles localement sur leur GPU via transformers.js + WebGPU sans construire manuellement des interfaces pour chaque type de tâche.