Imaginez un monde où votre assistant IA préféré devient soudainement indisponible pendant des heures. C’est exactement ce qui s’est passé mercredi dernier lorsque ChatGPT, la plateforme de chatbot alimentée par l’IA d’OpenAI, ainsi que son générateur vidéo Sora et son API pour développeurs, ont connu des perturbations majeures à partir de 15h, heure du Pacifique. OpenAI a rapidement reconnu le problème et s’est mis au travail pour le résoudre, mais il aura fallu environ trois heures à l’entreprise pour rétablir tous les services.
Un nouveau service de télémétrie mis en cause
Dans un postmortem publié jeudi soir, OpenAI a expliqué que la panne n’était pas due à un incident de sécurité ou à un lancement de produit récent, mais à un service de télémétrie déployé mercredi pour collecter des métriques Kubernetes. Pour ceux qui ne sont pas familiers, Kubernetes est un programme open source qui aide à gérer les conteneurs, c’est-à-dire des paquets d’applications et de fichiers associés utilisés pour exécuter des logiciels dans des environnements isolés.
Les services de télémétrie ont une empreinte très large, de sorte que la configuration de ce nouveau service a provoqué par inadvertance des opérations de l’API Kubernetes gourmandes en ressources. Les serveurs de l’API Kubernetes d’OpenAI ont été submergés, faisant tomber le plan de contrôle de Kubernetes dans la plupart de nos grands clusters.
– Extrait du postmortem d’OpenAI
Un effet domino complexe
En termes plus simples, le nouveau service de télémétrie a affecté les opérations Kubernetes d’OpenAI, y compris une ressource dont dépendent de nombreux services de l’entreprise pour la résolution DNS. Pour rappel, la résolution DNS convertit les adresses IP en noms de domaine. C’est la raison pour laquelle vous pouvez taper « Google.com » au lieu de « 142.250.191.78 ».
L’utilisation par OpenAI de la mise en cache DNS, qui contient des informations sur les noms de domaine précédemment recherchés (comme les adresses de sites web) et leurs adresses IP correspondantes, a compliqué les choses en « retardant la visibilité » et en « permettant au déploiement de se poursuivre avant que l’ampleur du problème ne soit comprise », a écrit OpenAI.
Une détection rapide mais une résolution lente
OpenAI affirme avoir pu détecter le problème « quelques minutes » avant que les clients ne commencent à en ressentir l’impact, mais n’a pas pu mettre en place rapidement une solution car il a dû contourner les serveurs Kubernetes submergés.
Il s’agissait d’une confluence de plusieurs systèmes et processus défaillants simultanément et interagissant de manière inattendue. Nos tests n’ont pas détecté l’impact que le changement avait sur le plan de contrôle de Kubernetes et la remédiation a été très lente en raison de l’effet de verrouillage.
– Extrait du postmortem d’OpenAI
Des mesures pour éviter de futurs incidents
OpenAI promet d’adopter plusieurs mesures pour éviter que des incidents similaires ne se reproduisent à l’avenir, notamment :
- Améliorer les déploiements progressifs avec une meilleure surveillance des changements d’infrastructure
- Mettre en place de nouveaux mécanismes pour garantir que les ingénieurs d’OpenAI puissent accéder aux serveurs de l’API Kubernetes en toutes circonstances
La société s’est excusée pour l’impact que cet incident a eu sur tous ses clients, des utilisateurs de ChatGPT aux développeurs en passant par les entreprises qui dépendent des produits OpenAI. « Nous n’avons pas été à la hauteur de nos propres attentes », a reconnu OpenAI.
Les leçons à tirer pour l’IA
Cet incident met en lumière les défis auxquels sont confrontées les entreprises d’IA alors qu’elles étendent leurs services à un public de plus en plus large. Même les acteurs les plus avancés comme OpenAI ne sont pas à l’abri de problèmes techniques complexes pouvant entraîner des pannes majeures.
Alors que l’IA devient de plus en plus intégrée dans nos vies quotidiennes, de telles perturbations pourraient avoir des conséquences de plus en plus importantes. Les entreprises devront redoubler de vigilance dans la gestion de leurs infrastructures et mettre en place des processus robustes pour détecter et résoudre rapidement les problèmes.
En même temps, les utilisateurs devront peut-être s’habituer à l’idée que même les IA les plus avancées ne sont pas infaillibles. Tout comme nos ordinateurs et nos smartphones peuvent parfois tomber en panne, nos assistants IA pourraient aussi avoir besoin de temps d’arrêt de temps en temps.
L’important sera de tirer les leçons de chaque incident pour continuellement améliorer la fiabilité et la robustesse de ces systèmes dont nous dépendons de plus en plus. La transparence dont fait preuve OpenAI dans ce postmortem est un pas dans la bonne direction.