raatools/

Estimateur d'inférence ML

Estimez la latence d'inférence et les FPS pour les modèles ML sur appareils en périphérie.

Latence

150 ms

FPS max

6.7 FPS

Practical Note: Les FPS réels peuvent être inférieurs en raison de la surcharge de prétraitement et du chargement du modèle.

Comparaison de latence (tous les appareils)

Pi 4 (4GB)
150ms
Pi 5 (8GB)
50ms
Pi 5 + Coral TPU
5ms

Détails du modèle

MobileNet V2: Lightweight image classification. Good for real-time inference on edge devices.

Qu'est-ce que l'inférence ML ?

Cet estimateur d'inférence ML indique la vitesse d'inférence typique de petits modèles d'apprentissage automatique populaires sur du matériel embarqué : Raspberry Pi 4, Raspberry Pi 5 et Raspberry Pi 5 avec un accélérateur Coral Edge TPU. L'inférence consiste à utiliser un modèle entraîné pour faire des prédictions sur de nouvelles données. Les chiffres proviennent d'un tableau fixe de résultats de benchmarks approximatifs : considérez-les comme un guide pour choisir le matériel, et non comme une mesure de votre propre installation.

La vitesse d'inférence dépend de la taille du modèle, de la précision numérique (FP32, FP16, INT8) et du matériel utilisé : le processeur, un GPU ou un accélérateur dédié comme le Coral Edge TPU, qui n'exécute que des modèles TensorFlow Lite quantifiés en 8 bits. Les grands modèles de langage et les modèles vocaux sont surtout limités par la mémoire et la bande passante mémoire, c'est pourquoi ils tournent lentement — voire pas du tout — sur de petits ordinateurs monocartes.

Comment utiliser cet outil

Choisissez un modèle (classification d'images, détection d'objets, petit modèle de langage ou reconnaissance vocale) et un appareil. L'outil affiche la latence approximative par inférence et le débit qui en résulte : images par seconde pour les modèles de vision, tokens par seconde pour le modèle de langage, et vitesse par rapport au temps réel pour Whisper (au-delà de 1×, l'audio est transcrit plus vite qu'il n'est lu). Un graphique à barres compare tous les appareils pour le modèle choisi.

Concepts clés

  • Paramètres — les poids appris dans un modèle. Davantage de paramètres signifie généralement une meilleure qualité, mais des besoins en ressources plus élevés.
  • Précision — FP32 utilise 4 octets par paramètre, FP16/BF16 utilise 2 octets, INT8 utilise 1 octet. Une précision plus faible réduit la mémoire et augmente la vitesse avec une perte de qualité minimale.
  • Taille de lot (batch size) — traiter plusieurs entrées simultanément améliore le débit mais nécessite plus de mémoire.
  • Cache KV — pour les modèles transformeurs, le cache clé-valeur croît avec la longueur de la séquence et consomme une mémoire supplémentaire importante.

Matériel d'inférence courant

GPU grand public : RTX 3090 (24 Go), RTX 4090 (24 Go) — adaptés aux modèles jusqu'à 13 milliards de paramètres en INT8. Professionnels : A100 (40/80 Go), H100 (80 Go) — requis pour les modèles plus grands. Options cloud : AWS, GCP et Azure proposent des instances GPU à l'heure. Pour l'inférence sur CPU : possible pour les petits modèles mais 10 à 100 fois plus lente que sur GPU. Les puces Apple M offrent une mémoire unifiée capable de faire tourner des modèles étonnamment grands.

Exemple concret

Un modèle de langage à 7 milliards de paramètres en précision 16 bits nécessite 7 000 000 000 × 2 octets = 14 Go rien que pour les poids. Le quantifier en 4 bits ramène cela à environ 3,5 Go, ce qui lui permet de tenir sur un GPU grand public. Si le GPU offre 300 Go/s de bande passante mémoire, lire 3,5 Go par jeton plafonne le débit vers 85 jetons par seconde.

Erreurs courantes

Une erreur courante est de juger la vitesse d'inférence au seul calcul (FLOPS) ; pour les grands modèles, c'est souvent la bande passante mémoire qui limite la génération de jetons, non le calcul brut. Une autre est d'ignorer la différence entre latence (temps jusqu'au premier jeton) et débit (jetons par seconde sur un lot). Oublier que regrouper de nombreuses requêtes augmente le débit au prix de la latence par requête est aussi fréquent.

Questions fréquentes

L'inférence locale est-elle aussi précise que sur serveur ?

Pour les modèles équivalents, oui — la précision dépend du modèle, pas de l'environnement d'exécution. Cependant, sur navigateur on utilise souvent des modèles plus petits (par contrainte de taille téléchargeable), ce qui peut réduire la précision face à un GPT-4 hébergé en cloud.

Mes données sont-elles partagées ?

Non. Tout se passe dans votre navigateur. C'est l'avantage majeur de l'inférence locale par rapport aux API cloud où vos données transitent par les serveurs du fournisseur.

Pourquoi la quantification accélère-t-elle l'inférence ?

La quantification stocke les poids sur moins de bits — 8 bits ou 4 bits au lieu de 16 — il y a donc moins de données à déplacer de la mémoire pour chaque jeton. Comme l'inférence des grands modèles est généralement limitée par la bande passante mémoire, diviser par deux les octets par poids double environ le débit de jetons, avec une perte de précision faible et souvent acceptable.