PromCopilot: Simplifying Prometheus Metric Querying in Cloud Native Online Service Systems via Large Language Models

Cet article présente PromCopilot, un cadre basé sur les grands modèles de langage et les graphes de connaissances qui simplifie l'interrogation de Prometheus en traduisant le langage naturel en requêtes PromQL, et introduit le premier jeu de données de référence pour cette tâche.

Chenxi Zhang, Bicheng Zhang, Dingyu Yang, Xin Peng, Miao Chen, Senyu Xie, Gang Chen, Wei Bi, Wei Li

Publié Thu, 12 Ma
📖 4 min de lecture☕ Lecture pause café

Each language version is independently generated for its own context, not a direct translation.

🚀 PromCopilot : Le Traducteur Magique pour les Gardiens du Système

Imaginez que vous gérez une ville immense et complexe (votre système informatique en ligne). Cette ville est remplie de millions de capteurs : ils mesurent la température des bâtiments (CPU), le niveau d'eau dans les réservoirs (mémoire), le trafic sur les routes (réseau), etc.

Pour surveiller cette ville, les ingénieurs utilisent un outil appelé Prometheus. Mais pour poser une question à ce système, ils ne peuvent pas simplement dire : "Dis-moi quelle rue est la plus encombrée ?". Ils doivent écrire un code très précis et complexe, un peu comme un langage de sorcier appelé PromQL.

C'est là que PromCopilot entre en scène.

1. Le Problème : Le Mur de la Langue des Sorciers 🧙‍♂️

Jusqu'à présent, pour obtenir une information, un ingénieur devait :

  1. Connaître par cœur le code secret (PromQL).
  2. Savoir exactement où se trouve chaque bâtiment dans la ville.
  3. Passer des heures à chercher dans des manuels pour trouver le bon nom de rue ou de bâtiment.

C'est comme si vous deviez écrire un poème en latin ancien pour demander à un serveur de café de vous faire un cappuccino. C'est lent, difficile et source d'erreurs.

2. La Solution : PromCopilot, le Traducteur Universel 🗣️

Les auteurs de l'article ont créé PromCopilot. C'est un assistant intelligent qui permet aux ingénieurs de poser leurs questions en langage naturel (français, anglais, etc.), comme s'ils parlaient à un humain.

  • L'ingénieur dit : "Quel serveur a le plus de mémoire libre parmi ceux qui hébergent le service de commande ?"
  • PromCopilot répond : Il génère instantanément le code complexe (PromQL) exact pour obtenir cette réponse.

3. Comment ça marche ? La Carte au Trésor et le Détective 🗺️🕵️‍♂️

Pour que ce système fonctionne, PromCopilot ne se contente pas de deviner. Il utilise deux outils magiques :

  • La Carte au Trésor (Le Graphique de Connaissances) :
    Imaginez une carte géante et dynamique qui relie tous les éléments de la ville : les serveurs, les applications, les bases de données, et même les capteurs de température. Cette carte sait exactement qui dépend de qui. Si le service "Commandes" est sur le serveur "A", la carte le sait.

    • Analogie : C'est comme avoir un plan de la ville à jour en temps réel, montrant chaque tuyau et chaque câble.
  • Le Détective (L'Intelligence Artificielle / LLM) :
    C'est un cerveau très fort (comme GPT-4) qui comprend le langage humain.

    • L'astuce : Au lieu de laisser le détective deviner au hasard, PromCopilot lui montre d'abord la Carte au Trésor.
    • Le détective lit la question, regarde la carte pour trouver les bons noms de rues et de bâtiments, et ensuite écrit le code secret.

Le processus en 3 étapes :

  1. Écoute : PromCopilot entend la question de l'ingénieur.
  2. Recherche : Il consulte la Carte au Trésor pour trouver les bons noms de serveurs et de capteurs (par exemple, il sait que "mémoire libre" correspond à un capteur précis nommé node_memory_MemAvailable_bytes).
  3. Traduction : Il combine la question et les infos de la carte pour écrire le code parfait.

4. Les Résultats : Une Révolution de Productivité 📉⏱️

Les chercheurs ont testé PromCopilot avec de vrais ingénieurs et des centaines de questions.

  • Précision : PromCopilot a réussi à traduire correctement environ 69 % des questions complexes en code parfait. C'est énorme, car les méthodes précédentes (sans la carte) échouaient presque tout le temps (moins de 5 % de réussite !).
  • Vitesse : Les ingénieurs ont fini leurs tâches 4 fois plus vite avec PromCopilot. Au lieu de chercher pendant 6 minutes, ils ont trouvé la réponse en 1 minute.
  • Fiabilité : Même quand le code n'était pas parfait à 100 %, il était si proche de la vérité que les ingénieurs pouvaient le corriger en une seconde.

5. Pourquoi c'est important ? 🌟

Aujourd'hui, les systèmes informatiques sont devenus si vastes qu'aucun humain ne peut tout connaître par cœur. PromCopilot agit comme un super-pouvoir :

  • Il libère les ingénieurs de la corvée d'apprendre des codes obscurs.
  • Il leur permet de se concentrer sur ce qui compte vraiment : garder le système stable et rapide.
  • Il transforme une tâche de "sorcière" en une simple conversation.

En résumé 🎁

PromCopilot, c'est comme donner un GPS vocal à un chauffeur de course. Au lieu de devoir mémoriser chaque virage et chaque panneau (le code complexe), le chauffeur dit simplement : "Emmène-moi au serveur le plus rapide". Le GPS (PromCopilot) consulte sa carte (le graphique de connaissances) et trace la route parfaite (le code PromQL) instantanément.

C'est une étape de plus vers des systèmes informatiques plus simples à gérer, même pour les plus complexes.