Avancé·2 min·3 mai 2026

SHARP dans le navigateur : génère des Gaussian splats en local

La technologie de synthèse 3D d'Apple tourne maintenant directement dans ton navigateur sans serveur.
SHARP dans le navigateur : génère des Gaussian splats en local

Pourquoi ça compte pour toi

Jusqu'à présent, générer des Gaussian splats (modèles 3D ultra-compacts) demandait une API cloud ou du matériel spécialisé. Là, tout s'exécute chez toi : tu importes une image, le navigateur calcule, tu télécharges le résultat .ply. C'est utile si tu crées du contenu 3D, tu veux tester sans connexion au cloud, ou tu as des contraintes de confidentialité.

Ce qu'il faut retenir

  • 1.Importe une image → génère des Gaussian splats → télécharge le fichier .ply, tout dans le navigateur
  • 2.Basé sur SHARP (Apple) + ONNX Runtime Web : aucune dépendance serveur
  • 3.Requis : 2,4 Go de RAM/disque, Chrome/Edge desktop, Bun + Python pour exporter le modèle
  • 4.Prototype expérimental : les performances dépendent du WebGPU et de la RAM disponible

Pourquoi c'est sympa

Les Gaussian splats sont devenus le standard pour la capture 3D légère (bien plus compact qu'un mesh classique). Sauf que jusqu'à maintenant, soit tu utilisais une API cloud (coûteux, données envoyées ailleurs), soit tu devais faire tourner du code Python en local (lourd pour un créateur non-dev).

Ce projet fait tourner l'inférence complète dans le navigateur. Aucune requête API. Zéro upload de données. Tu gardes le contrôle total.

Comment ça marche en 4 étapes

  1. Clone : bun install télécharge ONNX Runtime Web (les assets WebAssembly)
  2. Exporte le modèle : Python exporte SHARP en ONNX (deux fichiers : .onnx + .onnx.data ~2,4 Go)
  3. Sers les fichiers : place les deux fichiers dans public/models/
  4. Lance : bun dev, importe ton image, génère, télécharge

Le point critique : le fichier .onnx.data contient la majorité des poids du modèle. L'app peut utiliser une version hébergée par défaut si tu ne veux pas gérer les 2,4 Go localement.

Pièges et prérequis

  • RAM/disque : le modèle SHARP est lourd. Sur une machine modeste (8 Go de RAM), ça sera tendu.
  • Navigateur : Chrome ou Edge recommandé (meilleure prise en charge de WebGPU).
  • Export du modèle : tu dois configurer Python + les dépendances d'Apple, puis lancer un script d'export. Pas trivial si tu es non-dev.
  • Performances : l'inférence côté navigateur est plus lente qu'un serveur GPU. La première génération peut prendre du temps (initialisation du runtime + chargement du modèle).

Cas d'usage réalistes

  • Créateurs de contenu 3D qui veulent tester et itérer sans API cloud.
  • Recherche avec des données sensibles (médical, industriel).
  • Démo autonome qu'on peut héberger en statique sans backend.

État actuel

C'est un prototype expérimental (working title sur le repo). Ça fonctionne de bout en bout, mais la prise en charge de WebGPU varie selon le navigateur et l'OS, et les performances dépendent de ta machine. Les erreurs courantes (WASM mal servi, fichier sidecar manquant) sont bien documentées.

📊 Cours en bourse

Newsletters Noésis

3 minutes d'IA dans ta boîte mail, chaque matin.

Rejoins les francophones qui comprennent, essaient et progressent avec l'IA. Choisis ce que tu veux recevoir. Désabonnement en 1 clic.