Image du titre

SmolLM3 & SmolVLM2 : l’interface multimodale locale, simple, rapide… et vraiment privée

SmolLM3 & SmolVLM2 : l’interface multimodale locale, simple, rapide… et vraiment privée

TL;DR — J’ai publié une interface web (Gradio) qui réunit SmolLM3-3B (texte) et SmolVLM2-2.2B-Instruct (vision) pour générer du texte et analyser des images100 % en local.

Pas d’API, pas d’abonnement, pas d’upload de données. Windows, macOS, Linux — détection auto du GPU (CUDA), d’Apple Silicon (MPS) ou CPU. Installation en quelques minutes.

👉 Code & docs : https://github.com/mikecastrodemaria/SmolLM3-M2-Interface-Multimodale

Pourquoi ce projet ?

Les IA locales ont fait un bond : on peut désormais travailler hors-ligne, protéger ses données, et prototyper sans friction ni coûts variables. Le problème ? Trop d’outils restent arides.
SmolLM3 & SmolVLM2 Multimodal Interface vise l’inverse : une expérience propre, multiplateforme, avec auto-détection matérielle et téléchargement/caching modèles intégrés. Bref, du plug-and-play sans sacrifier la flexibilité.

Ce que l’interface sait faire

  • Génération de texte (SmolLM3-3B) : rédaction créative, explications, code, résumés.
  • Vision (SmolVLM2-2.2B-Instruct) : Q&A visuel, description d’image, OCR léger.
  • 100 % local : aucune donnée ne quitte votre machine.
  • 6 langues : EN, FR, ES, DE, IT, PT.
  • Interface web propre (Gradio) : ergonomie minimaliste, actions claires.
  • Téléchargement/caching auto des modèles (Hugging Face).
  • Détection matérielle : CUDA (NVIDIA), MPS (Apple Silicon), sinon CPU.
  • Scripts “one-click” pour installer et lancer.

Cas d’usage concrets

  • Vision & OCR : décrire un schéma, extraire des éléments d’une facture, checker un mockup.
  • Q&A visuel : “Qu’est-ce qui cloche dans cette capture d’écran ?”
  • Dev : générer des snippets, demander une explication de code, créer des tests.
  • Rédaction : plan d’article, post LinkedIn, reformulation multilingue.
  • Analyse documentaire : résumés, questions ciblées, reformulation pédagogique.

Exemples rapides

Texte (FR)

“Explique le principe des embeddings en 150 mots, niveau étudiant, avec une analogie simple.”

Vision (FR)

“Décris cette photo en français, puis liste 3 risques d’accessibilité (contrast, lisibilité, navigation).”

Dev (EN)

“Generate a Python function that validates French VAT numbers, with docstring and unit-tests.”

Installation (3 étapes + vérifs)

Prérequis

  • Python 3.10+
  • Git recommandé
  • GPU NVIDIA (CUDA) ou Apple Silicon (M-series) ou CPU
  • Espace disque : ~ 6–8 Go (modèles + cache)

Étape 1 — Cloner le repo

git clone https://github.com/mikecastrodemaria/SmolLM3-M2-Interface-Multimodale
cd SmolLM3-M2-Interface-Multimodale

Étape 2 — Créer l’environnement & installer

Windows (PowerShell)

py -3.10 -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -U pip
pip install -r requirements.txt

macOS / Linux

python3 -m venv .venv
source .venv/bin/activate
pip install -U pip
pip install -r requirements.txt

Étape 3 — Lancer

python app.py

Ouvrez l’URL Gradio affichée dans le terminal (généralement http://127.0.0.1:7860).

Vérifications rapides

  • Dans la page, sélectionnez un modèle Texte (SmolLM3-3B) ou Vision (SmolVLM2-2.2B).
  • Première exécution : le modèle se télécharge automatiquement (cache Hugging Face).
  • Regardez la bannière matérielle : CUDA, MPS ou CPU détecté.
  • Si tout va bien : génération en quelques secondes sur GPU, plus lent sur CPU (normal).

Conseils de perf (selon votre machine)

MatérielRéglages conseillés
NVIDIA 8–12 Go VRAMActivez CUDA (auto). Gardez la taille de contexte par défaut. Évitez d’ouvrir 10 onglets Gradio en même temps.
Apple Silicon (M1/M2/M3)MPS activé automatiquement. Performances très correctes pour 2–3 B.
CPUÇa fonctionne, mais c’est plus lent : préférez les prompts plus courts, batch limité, pas d’images 4K.

Astuce : si vous jonglez entre projets, nettoyez le cache HF de temps en temps (~/.cache/huggingface).

Comment ça marche (sous le capot)

  • PyTorch + Transformers (Hugging Face) pour charger SmolLM3 (texte) et SmolVLM2 (vision).
  • Gradio gère l’interface, les uploads d’images et les prompts multilingues.
  • Auto-détection de l’accélérateur : on route vers CUDA, MPS ou CPU sans manipulation manuelle.
  • Caching : les modèles sont téléchargés une fois, puis réutilisés.

Dépannage express

  • Ça ne voit pas mon GPU : mettez à jour les drivers NVIDIA (Windows) ou Xcode CLT (macOS). Vérifiez torch.cuda.is_available() ou torch.backends.mps.is_available().
  • Téléchargement modèle trop lent : connectez-vous à Hugging Face (huggingface-cli login) ou utilisez un miroir local si vous en avez un.
  • Gradio ne s’ouvre pas : autorisez l’app dans votre firewall local ou relancez avec --server-port 7861.
  • Manque de RAM/VRAM : fermez les apps lourdes, réduisez la taille des images, baissez le contexte, ou basculez en CPU temporairement.

Feuille de route

  • Historique des conversations (multi-sessions)
  • Drag-&-drop multi-images avec chaînage d’analyses
  • Mode “compose” (vision → plan → rédaction automatique)
  • Exports (Markdown/PDF) et templates de prompts
  • Dockerfile officiel

Sécurité & confidentialité

  • Local-first : aucune donnée envoyée vers un service tiers.
  • Open-source : auditable et réutilisable.
  • Bonne hygiène : chiffrez vos disques, limitez les dossiers partagés si vous traitez des documents sensibles.

Licence, contributions, remerciements

  • Projet open-source (voir LICENSE dans le repo).
  • Contributions bienvenues : issues, PR, idées d’UX, exemples de prompts multilingues.
  • Merci à la communauté Hugging Face, aux mainteneurs de Gradio, et aux devs des modèles Smol*.

Essayez maintenant

Le plus simple : cloner, installer, lancer. 3 étapes.
Et racontez-moi vos cas d’usage : je prioriserai la feuille de route en fonction des retours terrain.

👉 Repo : https://github.com/mikecastrodemaria/SmolLM3-M2-Interface-Multimodale

Pas de commentaire

Publier un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.