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

この論文は、大規模言語モデルと知識グラフを連携させることで、クラウドネイティブ環境におけるPrometheusのメトリクスを自然言語からPromQLに変換するフレームワーク「PromCopilot」を提案し、初のテキスト対PromQLベンチマークを用いてその有効性を検証した研究です。

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

公開日 Thu, 12 Ma
📖 1 分で読めます☕ さくっと読める

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

この論文は、**「PromCopilot(プロムコパイロット)」**という新しいツールの紹介です。

一言で言うと、**「エンジニアが複雑なシステムの状態を、難しい専門用語(PromQL)を使わずに、普通の日本語(自然言語)で質問するだけで、自動的に正しいデータ検索コマンドを作ってくれる助手」**のようなものです。

これを、日常の生活に例えてわかりやすく解説します。

1. 背景:巨大な都市の「交通渋滞」と「案内所」

現代のオンラインサービス(Amazon や淘宝網のような巨大なネットショップなど)は、**「巨大で複雑な都市」**に例えられます。

  • 都市の構成: 何千もの建物(サーバー)、何百万もの住民(データ)、そして複雑な道路網(通信経路)があります。
  • 監視システム(Prometheus): この都市の交通状況や建物の状態を 24 時間 365 日監視する「巨大な交通管制センター」です。

エンジニアは、この都市で何か問題が起きた時(例えば「なぜ注文サービスが遅いのか?」)を調べる必要があります。

2. 問題点:難解な「暗号」を解く必要がある

通常、この交通管制センターに問い合わせるには、**「PromQL」という非常に難解な「暗号(専門言語)」**を使わなければなりません。

  • 従来の方法:
    • エンジニアは、「注文サービスが動いているサーバーの中で、メモリが最も空いているのはどれか?」という質問を、以下のような暗号に変換して入力する必要があります。
    • topk(1, node_memory_MemAvailable_bytes{service="order", instance=~".*"})
    • 大変な点:
      1. 暗号のルールを覚える必要がある: 文法が複雑で、間違えるとエラーになります。
      2. 都市の地図を全部覚えている必要がある: 「注文サービス」がどの建物(サーバー)に配置されているか、その建物の名前(ID)は何か、などをすべて頭の中で把握していないと、正しい暗号が作れません。
      3. 時間がかかる: 地図(システム情報)を探し回りながら暗号を作るのは、とても時間がかかります。

3. 解決策:PromCopilot(賢い通訳と案内係)

そこで登場するのが、この論文で提案された**「PromCopilot」です。これは、「LLM(大規模言語モデル)」「知識グラフ(都市の完全な地図)」を組み合わせた「超優秀な通訳兼案内係」**です。

仕組みのイメージ:

  1. 普通の言葉で質問する:
    エンジニアは、暗号を使わずに、ただ「注文サービスが入っているサーバーで、メモリが最も空いているのはどれ?」と普通の言葉で聞きます。

  2. 「知識グラフ」で地図を探す:
    PromCopilot は、まず**「知識グラフ」という「都市の完全なデジタル地図」**を参照します。

    • 「注文サービス」がどの「Pod(小さな部屋)」に入っているか。
    • その「Pod」がどの「Node(大きなビル)」にあるか。
    • 「メモリ」に関するデータはどの「メトリック(センサー)」で測られているか。
      これらを自動的に探します。
  3. LLM が「暗号」を生成する:
    見つかった地図情報(コンテキスト)を、**「LLM(天才的な通訳)」**に渡します。LLM は「あ、この質問なら、この暗号(PromQL)を使えばいいんだな」と理解し、正しい暗号を自動生成します。

  4. 結果の提示:
    エンジニアには、完成した「暗号(PromQL)」が表示され、すぐにデータが取得できます。

4. 実験結果:どれくらい効果的?

研究者たちは、このツールが本当に使えるかテストしました。

  • テスト: 280 種類の質問を用意し、PromCopilot に答えさせました。
  • 結果:
    • 従来の方法(暗号を自分で書く、または過去の例を参考にするだけ)では、正解率は 30〜40% 程度でした。
    • PromCopilot は、約 69% の確率で完璧な答えを出しました。
    • さらに、エンジニアが実際に使ってみたところ、作業時間が「約 6 分」から「約 1 分 40 秒」に短縮されました。

5. まとめ:なぜこれがすごいのか?

この論文の核心は、**「AI 単体では、その会社固有の『地図(システム情報)』を知らないため、間違った答えを出してしまう」という問題を見抜き、「AI に『地図(知識グラフ)』を持たせて、一緒に考えさせた」**点にあります。

  • 従来の AI: 「一般的な知識はあるけど、あなたの会社のシステムは知らないよ」と言って、適当な暗号を作ってしまう。
  • PromCopilot: 「あなたの会社の完全な地図を持っているから、その情報と AI の頭脳を合わせて、完璧な答えを作るよ」というスタイル。

結論:
PromCopilot は、複雑なシステム監視を、**「専門用語がわからない新人でも、あるいは疲れたベテランでも、普通の言葉で質問するだけで、プロ並みのデータ分析ができるようにする」**画期的なツールです。これにより、エンジニアは「暗号を解く」作業から解放され、本当に重要な「問題解決」に集中できるようになります。