Swiftlet fait tourner un LLM 80B dans 4,3 Go de RAM sur un Mac. Voici comment développer avec.

Un nouveau projet open-source appelé Swiftlet utilise une quantification agressive pour faire tourner Qwen3-80B dans 4,3 Go de RAM sur un MacBook, et Qwen3-35B sur un iPhone. Ce guide couvre ce que ça signifie réellement pour les développeurs, où se trouvent les compromis de qualité, et comment brancher un point de terminaison LLM local dans un vrai produit dès aujourd'hui.

Questions fréquentes

Qu'est-ce que Swiftlet ?

Swiftlet est un projet open-source (github.com/leonickson1/Swiftlet) qui fait tourner des grands modèles de langage sur du matériel Apple en utilisant des techniques de quantification extrême. Il peut faire tourner Qwen3-80B dans 4,3 Go de RAM sur un Mac et Qwen3-35B sur un iPhone. Il est écrit en Swift et optimisé pour le framework GPU Metal d'Apple.

Comment Swiftlet fait-il tenir un modèle 80B dans 4,3 Go de RAM ?

Swiftlet utilise une quantification agressive, probablement inférieure à 2 bits, pour compresser les poids du modèle bien en dessous de leur taille d'origine. Un modèle de 80 milliards de paramètres en pleine précision (FP16) nécessite environ 160 Go de mémoire. En quantification 4 bits, il lui faut environ 40 Go. Au niveau de 4,3 Go atteint par Swiftlet, la quantification est extrême, environ 0,4 bit par paramètre en moyenne, ce qui utilise des techniques comme la quantification groupée et l'allocation de bits pondérée par l'importance pour préserver la qualité sur les poids les plus critiques.

La qualité est-elle assez bonne pour une utilisation en production ?

Cela dépend de la tâche. La quantification extrême préserve bien la connaissance générale du modèle et sa capacité à suivre des instructions, mais dégrade la performance sur les tâches nécessitant un raisonnement numérique précis, une logique complexe à plusieurs étapes, ou de longues sorties structurées. Pour les interfaces conversationnelles, la génération de contenu et la classification, la qualité est étonnamment utilisable. Pour la génération de code ou le raisonnement complexe, un modèle plus petit moins quantifié (comme Qwen3-35B en 4 bits) peut produire de meilleurs résultats. Faites un benchmark avant de déployer.

Puis-je construire une application qui utilise un LLM local tournant via Swiftlet ?

Oui. Swiftlet expose un point de terminaison HTTP local (généralement sur localhost:8080) qui accepte des invites et retourne des complétions. N'importe quelle application web peut appeler ce point de terminaison. Avec We.Inc, vous pouvez décrire votre application en langage courant, obtenir une application React fonctionnelle immédiatement, ajouter un appel fetch vers le point de terminaison Swiftlet local, et avoir un produit fonctionnel en quelques minutes. Le code généré est à vous, exportable vers GitHub, donc vous n'êtes enfermé dans aucune plateforme.

Swiftlet a atteint la page d'accueil de Hacker News en août, le 3, 2026, avec 260 points et 116 commentaires. L'argument : faire tourner Qwen3-80B, un grand modèle de langage de classe frontière avec 80 milliards de paramètres, dans 4,3 Go de RAM sur un MacBook. Un modèle de 35B tourne sur un iPhone.

En bref : Swiftlet (github.com/leonickson1/Swiftlet) utilise une quantification extrême pour faire tenir des modèles qui nécessitent normalement 160 Go de mémoire dans du matériel Apple grand public. Le compromis de qualité est réel mais plus étroit qu'on pourrait s'y attendre. Si vous voulez construire un produit propulsé par un LLM local sans coûts d'API, c'est le moyen le plus accessible de commencer. Branchez une application We.Inc au point de terminaison local, publiez-la, et vos utilisateurs ne sauront jamais que le modèle tourne sur votre ordinateur portable.

Ce que fait réellement Swiftlet

L'astuce principale n'est pas magique. C'est de la quantification poussée plus loin que la plupart des outils.

Le calcul : Qwen3-80B en FP16 (la précision standard pour l'inférence) nécessite environ 160 Go de mémoire. En quantification 4 bits couramment utilisée (GGUF Q4_K_M), il lui faut environ 40 Go. Swiftlet pousse jusqu'à environ 0,4 bit par paramètre en moyenne, en utilisant une quantification groupée avec allocation de bits pondérée par l'importance. Les poids les plus critiques (têtes d'attention, premières et dernières couches) obtiennent plus de bits ; le gros des couches feed-forward en obtient moins.

La cible matérielle : Apple Silicon. Swiftlet est écrit en Swift et utilise Metal pour l'accélération GPU. Les Mac M1/M2/M3/M4 avec mémoire unifiée sont le point idéal car le GPU et le CPU partagent le même pool de RAM, ce qui évite le goulot d'étranglement de copie mémoire qui limite l'inférence locale basée sur NVIDIA.

Ce que vous obtenez : un serveur HTTP local (généralement localhost:8080) qui accepte des invites et retourne des complétions. La vitesse de génération de tokens sur un MacBook Pro M3 est rapportée à 8-12 tokens par seconde pour le modèle 80B, ce qui est utilisable pour des applications interactives mais pas instantané.

Où se situe le compromis de qualité

La quantification extrême n'est pas gratuite. Voici où elle tient bon et où elle ne tient pas, d'après la discussion HN et les tests précoces :

Tient bon :

Se dégrade nettement :

Le point pratique à retenir : si votre produit est un chatbot, un résumeur, ou un outil de contenu, le 80B en quantification extrême est étonnamment capable. Si votre produit génère du code ou fait des maths, testez plutôt le 35B en quantification plus élevée. Plus de bits par paramètre sur un modèle plus petit bat souvent moins de bits sur un plus gros.

Comment brancher un point de terminaison Swiftlet local dans une application

Le chemin de construction est simple. Vous n'avez pas besoin d'une clé API cloud ou d'un compte de facturation.

Étape 1 : installer et démarrer Swiftlet. Clonez le dépôt, téléchargez les poids quantifiés de Qwen3-80B (le fichier de 4,3 Go), et lancez le serveur. Sur un Mac avec 8 Go de RAM ou plus, il démarre en environ 30 secondes.

Étape 2 : confirmer que le point de terminaison fonctionne. Envoyez une invite test à localhost:8080 avec curl ou n'importe quel client HTTP. Vous devriez obtenir une complétion en quelques secondes.

Étape 3 : construire la couche application. C'est là que vous passez la majorité de votre temps. Il vous faut un frontend qui envoie l'entrée utilisateur au point de terminaison local et affiche la réponse. Avec We.Inc, décrivez l'application que vous voulez (« un assistant d'écriture qui prend un paragraphe et retourne trois versions réécrites ») et l'IA construit une application React fonctionnelle avec un aperçu en direct. Puis modifiez l'appel API pour qu'il pointe vers votre point de terminaison Swiftlet.

Étape 4 : publier ou exporter. Vous pouvez publier directement depuis We.Inc vers un domaine personnalisé (l'application appelle votre point de terminaison local à l'exécution), ou exporter le code vers GitHub et le déployer vous-même. Le code est du React, Vite et TypeScript standard sans dépendances propriétaires.

Le résultat : une application web de qualité production propulsée par un modèle local de 80B, sans coûts d'API continus.

Quand l'inférence locale a du sens (et quand elle n'en a pas)

Le local gagne quand :

Le cloud gagne quand :

Le juste milieu honnête : utilisez Swiftlet pour le développement et les démos, puis passez à un point de terminaison cloud (OpenRouter, Together AI, l'API Qwen) pour l'échelle de production. Le code de l'application est le même dans les deux cas ; vous changez juste l'URL du point de terminaison.

Ce que cela signifie pour la catégorie

Faire tourner un modèle 80B sur un ordinateur portable est une étape marquante, non pas parce que la qualité égale un datacenter, mais parce que cela supprime entièrement la barrière de la clé API. N'importe qui avec un MacBook peut désormais faire tourner un modèle de classe frontière localement et développer dessus.

Pour les développeurs qui construisent des outils propulsés par l'IA, l'équation de coût change. Les factures d'API pour les produits au stade prototype ont été un vrai point de friction. Swiftlet élimine cette friction pendant le développement et les tests. Le modèle tourne sur votre machine, ça ne coûte rien par requête, et l'inférence est assez rapide pour un usage interactif.

Combiné à un créateur comme We.Inc qui gère le frontend et l'hébergement, le chemin de « j'ai une idée d'outil IA » à « c'est en ligne sur un domaine personnalisé » est désormais : installer Swiftlet, décrire l'application, la pointer vers localhost, publier. C'est une réduction significative du nombre d'étapes entre l'idée et le produit.

Commencez à construire avec We.Inc gratuitement et branchez-le à votre point de terminaison Swiftlet local. Exportez le code vers GitHub quand vous voulez.

Commencer gratuitement · Sans carte bancaire

Product

Who It's For

Features

Resources

Company

View Sitemap