Live 18/11 · Cohorte 318 nov à 19h00 MSK — atelier pratique gratuit sur les agents IA · La Cohorte 3 démarre le 23/11Atelier 18/11 →Cohorte 3 (23/11)
SortieAnalyse · Sur le radarPyTorch Blog→ original

Deux ingénieurs ont intégré SGLang à IBM Spyre en une semaine et multiplié le débit par 3,6

Un nouvel accélérateur nécessite souvent une intégration spécifique au serveur de modèles de langage. Deux ingénieurs ont intégré SGLang à IBM Spyre en moins d’une semaine avec l’aide d’agents d’IA, qui ont adapté du code existant aux interfaces disponibles. Le plugin compte environ 1500 lignes et le débit a été multiplié par 3,6 par rapport à l’implémentation de référence sous PyTorch. La clé de ce délai : une prise en charge matérielle déjà opérationnelle.

Traité par IA depuis PyTorch Blog ; édité par Hamidun News
Deux ingénieurs ont intégré SGLang à IBM Spyre en une semaine et multiplié le débit par 3,6
Source : PyTorch Blog. Collage: Hamidun News.
Écouter l'article
Fiche synthèse et chiffres clés
ParamètreDonnées
Source primairePyTorch Blog ↗
Rédacteur en chef
Chiffre clé #1Sur les charges mesurées avec deux modèles, SGLang a obtenu des résultats au niveau de vLLM.
Chiffre clé #2RadixCache réutilise les préfixes communs des requêtes sans adaptation spécifique à Spyre.
Chiffre clé #3L’exécution nécessite l’environnement Spyre, torch-spyre, le plugin et des correctifs de compatibilité.

Intégrer un nouvel accélérateur à un serveur de modèles de langage peut vite devenir un projet d’ingénierie à part entière. Il faut coordonner la gestion de la mémoire, les calculs d’attention et le traitement des requêtes, puis vérifier que l’ensemble est effectivement plus rapide que la solution de départ. Une équipe de deux ingénieurs indique avoir intégré SGLang à IBM Spyre en moins d’une semaine avec l’aide d’agents d’IA. Le plugin compte environ 1500 lignes et son débit est 3,6 fois supérieur à celui de l’implémentation de référence d’inférence sous PyTorch avec torch-spyre. Les auteurs présentent ces résultats sur le blog de PyTorch.

L’intérêt pratique tient à l’organisation du travail. Les ingénieurs disposaient déjà d’une prise en charge du matériel et d’un exemple d’intégration à un autre serveur. Les agents ont reçu du code existant et des interfaces précises auxquelles le raccorder. Pour une équipe qui porte l’inférence sur un autre matériel, c’est un exemple utile de la manière de délimiter la tâche et de réutiliser les développements antérieurs.

Les composants de l’intégration

Spyre est un accélérateur d’IBM destiné à l’inférence en entreprise. La bibliothèque torch-spyre l’enregistre comme périphérique PyTorch et le raccorde à torch.compile. Une partie de la prise en charge matérielle est donc déjà accessible par les mécanismes standard de PyTorch.

Le deuxième point d’appui était l’intégration existante de Spyre à vLLM. Les ingénieurs en ont repris les implémentations de l’attention, la gestion des formes des tenseurs, le regroupement des données d’entrée par taille et l’approche d’allocation de mémoire pour le cache KV. Ce cache conserve des données intermédiaires afin que le modèle n’ait pas à les recalculer à chaque nouveau token généré.

SGLang a fourni les points d’intégration : enregistrement du périphérique, implémentation de l’attention, gestion du cache KV et sélection des opérations de calcul. Les agents d’IA ont adapté le code à ces interfaces. L’ordonnanceur de requêtes et la boucle principale de traitement sont restés des composants prêts à l’emploi de SGLang.

Quatre petits correctifs ont également été nécessaires dans SGLang lui-même. Deux ont rendu accessibles des chemins d’exécution existants sans dépendances à CUDA ; les deux autres ont enregistré le périphérique Spyre et une implémentation de l’attention qui se passe de Triton. Selon les auteurs, une partie de ces modifications sera également utile à d’autres accélérateurs.

Pourquoi le serveur doit mémoriser le début d’une requête

Imaginons un assistant d’entreprise : chaque requête commence par la même longue instruction, suivie de la question d’un salarié. Si le serveur peut réutiliser les calculs correspondant à ce début commun, il n’a pas besoin de traiter à nouveau cette partie à chaque sollicitation.

Dans SGLang, RadixCache assure le partage des préfixes. Dans cette intégration, le mécanisme a fonctionné sans modification spécifique à Spyre : l’ordonnanceur décide de la réutilisation avant même de transmettre le travail à l’accélérateur. Cet exemple montre comment une fonctionnalité du serveur peut être portée sur un nouveau matériel avec la logique générale de traitement.

La réduction du volume de code a elle aussi une explication concrète. L’intégration existante de vLLM pour Spyre comptait environ 3500 lignes. Les auteurs attribuent environ deux tiers de l’écart avec le nouveau plugin à la réutilisation de la classe de base de l’attention dans SGLang. La comparaison de la taille des plugins, à elle seule, renseigne donc peu sur la productivité de l’IA : une part importante du résultat tient à l’architecture des bibliothèques.

Les points à vérifier avant une intégration dans un produit

Le débit multiplié par 3,6 correspond à la comparaison avec l’implémentation de référence sous PyTorch. Dans une comparaison distincte avec vLLM sur Spyre, les résultats de SGLang étaient comparables sur les charges mesurées pour Granite 3.3 8B et Gemma 4 26B A4B. Rien ne permet encore de généraliser ces conclusions à tous les modèles et à tous les profils de requêtes.

L’intégration initiale repose également sur le compilateur, l’environnement d’exécution et les opérations matérielles existants. Les auteurs présentent la prise en charge des formes dynamiques et de Triton comme les prochaines étapes. Pour exécuter l’exemple, il faut installer et configurer au préalable l’environnement Spyre, torch-spyre, le plugin SGLang et les correctifs de compatibilité.

Pour les développeurs, l’enseignement utile réside dans la manière de définir la tâche confiée à l’agent : fournir une implémentation fonctionnelle des opérations, préciser l’interface cible et vérifier le résultat sur du matériel réel. Les responsables produit doivent prévoir du temps pour les tests de charge et la maintenance. Une semaine pour parvenir à une première intégration est un résultat convaincant, mais l’aptitude à servir un produit donné devra être confirmée par des mesures propres à chaque équipe.

Dossier

Questions clés sur cet article

Que sait-on sur Les composants de l’intégration ?

Spyre est un accélérateur d’IBM destiné à l’inférence en entreprise. La bibliothèque torch-spyre l’enregistre comme périphérique PyTorch et le raccorde à torch.compile. Une partie de la prise en charge matérielle est donc déjà accessible par les mécanismes standard de PyTorch. Le deuxième point d’appui était l’intégration existante de Spyre à vLLM.

Pourquoi le serveur doit mémoriser le début d’une requête?

Imaginons un assistant d’entreprise : chaque requête commence par la même longue instruction, suivie de la question d’un salarié. Si le serveur peut réutiliser les calculs correspondant à ce début commun, il n’a pas besoin de traiter à nouveau cette partie à chaque sollicitation. Dans SGLang, RadixCache assure le partage des préfixes.

Que sait-on sur Les points à vérifier avant une intégration dans un produit ?

Le débit multiplié par 3,6 correspond à la comparaison avec l’implémentation de référence sous PyTorch. Dans une comparaison distincte avec vLLM sur Spyre, les résultats de SGLang étaient comparables sur les charges mesurées pour Granite 3.3 8B et Gemma 4 26B A4B. Rien ne permet encore de généraliser ces conclusions à tous les modèles et à tous les profils de requêtes. L’intégration initiale repose également sur le compilateur, l’environnement d’exécution et les opérations matérielles existants.

ZK
Zhemal Khamidun — CPO d'Alpina Digital, product manager d'AlpinaGPT. Conçoit des produits IA depuis 2019. Hamidun News est un projet personnel devenu un agrégateur en production avec plus de 6 000 lecteurs.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
Qu'en pensez-vous ?
Chargement des commentaires…