9
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DatadogAdvent Calendar 2024

Day 7

Datadogが提供するAI関連機能(AIOps, LLM Observability)

Last updated at Posted at 2024-12-06

はじめに

こんにちは、DatadogでSales EngineerをしているTaka2です。

今回はDatadogのAI関連の機能について整理してみたいと思います。

この記事はDatadog Advent Calendar 2024の12/7の投稿となります。

本記事ではAI"で"監視をするAIOpsと、AI"を"監視するAI Observabilityの二つの観点でDatadogのAI関連機能をみていきます。
文字数が多くなってしまったため、興味あるところだけ抽出して読んでいただけたらと思います。

よろしくお願いします。

Datadogが提供するAI関連機能

AIOpsとAI Observability

まずはDatadogが提供するAI関連機能の全般についてみていきたいと思います。
Datadogが提供するAI関連機能をAIOpsとAI Observabilityに分けて整理すると以下の通りとなります。
image.png

AI関連機能の概要とメリット

まずは先に挙げたAI関連機能の個々の概要とメリットをみていきます。より詳細については次のセクションで触れます。

AIOps関連機能概要

Watchdog

Datadogが自動で異常を検知し、根本原因の示唆やユーザー影響を示してくれる機能です。
特に追加設定をしなくても連携したデータから自動で異常や示唆を示してくれる点がメリットです。image.png

Bits AI

Datadogの中に組み込まれた生成AIチャットアプリです。Datadogに連携したデータやDatadogが検知したイベントに対して自然言語で問い合わせることができる機能です。
Datadogというツールの理解がなくても欲しい情報にアクセスできる点がメリットです。image.png

機械学習アラート

監視対象と監視条件を定義して機械学習ロジックを活用したアラートを活用できる機能です。具体的なアラート種別としては、異常検知モニター予測値モニター外れ値モニターがあります。
複雑な設定や閾値定義をしなくても監視対象と通知先を絞って機械学習をベースとした監視ができる点がメリットです。image.png

自然言語クエリ

DatadogではDDSQL Editorというクエリ機能をPreview版で提供しています。この機能には"自然言語でクエリできる機能"が含まれています。
ツール特有のクエリの学習をしなくても、自然言語でリソースの検索が可能となる点がメリットです。image.png

ユーザーテストの自動生成

リアルユーザーモニタリング(RUM)というフロントエンド監視をおこなっておくと、そこで検知した実際のユーザー操作をベースにして、自動でSynthetics(外型監視)のテストシナリオを作成することが可能となる機能です。
実際にユーザーが実施した操作をベースにテストシナリオの作成ができる点がメリットです。image.png

関連データの自動相関付け

メトリックスとイベントに対して自動相関機能が提供されています。

  • メトリックスの相関機能は、1つ波形を選択することで、同時刻に検知した類似波形のデータを自動で抽出する機能です。image.png
  • イベントの相関機能は、Datadogに取り込まれたイベント、アラート、およびDatadog Watchdogからのインサイトを、定義した条件もしくは機械学習ロジックに従い、自動でグルーピングする機能です。image.png

何か異常を検知した際に、関連するデータを自動で検索し、まとめて調査できる点がメリットです。

自動復旧

Workflowという機能を活用することで検知したアラートやスケジュールをトリガーとして、AWS,Azure,GCPなどのシステムリソースに対して再起動などの定義した処理を自動実行することが可能です。
自動復旧対応までDatadogという一つのツール内で完結させることができる点がメリットです。image.png

AIアプリとの連携

WorkflowもしくはApp Builderという機能から、OpenAIのAPIなどAIに関する外部APIを実行することが可能です。この機能により、Datadogで検知したデータをAIに連携することが可能です。
例えば、検知したアラートを要約させたり、社内のナレッジベースと付き合わせて対応の示唆を提示させることなどが可能となります。
AI関連のAPIの呼び出しをDatadogが提供する機能を使って実装できる点がメリットです。image.png

AI Observability関連機能概要

続いてAI"を"監視するAI Observabilityに関する機能についてみていきたいと思います。ここまでで話が長くなってしまったため、再度、AI関連機能の一覧を掲載します。
image.png

AI Integration

OpenAIのアカウントなど、AI関連サービスのアカウントとAPI連携を行い、アカウント全体のAPIコール数やトークンの使用率などを可視化する機能です。
また、APMの機能の一部として、アプリからLLMのAPI呼び出しを検知し、アプリの処理自体からプロンプトのインプットアウトプットやトークン数を可視化する機能もあります。
Datadogが提供するデフォルトのダッシュボードで可視化ができたり、推奨するアラートを活用できる点がメリットです。image.png

LLM Observability

単にLLMのAPIを監視するにとどまらず、実際のLLMのプロンプト単位のパフォーマンスや、LLMアプリケーションにおけるRAGやToolの呼び出しといったLLM Chain全体を監視する機能です。
この機能により、LLM Chain内の個々の処理におけるトークン数の可視化、回答品質の評価、プロンプトインジェクションといったセキュリティリスクの検知などが可能となります。image.png

AIOps関連機能詳細

ここまで機能の概要をみてきましたが、続いてAIOpsの全体感および、AIOps関連機能としてユニークなEvent Correlation、Bits AI、Watchdogについて深掘りしてみていきたいと思います。

まず、Datadogで実現できるAI Opsを一枚絵で表現したものが以下となります。公式ページにはもう少しかっこいい絵があるのですが、自分なりに整理した絵が以下となります。image.png

こちらのAIOpsの流れ自体は、前職の先輩方が執筆された以下のAIOps本をベースに定義し、それらにDatadogの機能をマッピングする形で作成しました。

検知、調査支援、そして復旧対応というオペレーションの全てのステップにおいて、Datadogの機能が活用できる可能性があります。

続いて、Event CorrelationBits-AIWatchdogの三つの機能に絞ってより詳細にみていきたいと思います。

Event Correlation

Event Managementの処理全体:
image.png

まず一つ目の機能は、関連するイベント、アラートやデータを、検知したタイミングや属性情報をもとに自動でグループ化してくれるEvent Correlationという機能です。
このイベントに対する自動相関付機能は今年2024年にリリースされたばかりの機能なのですが、アラート疲れを解消するべく実装された機能となります。

まず、Event Management自体ですが、こちらは当初からある機能で、Datadogに連携したサービスのイベントや、APIやメールで取り込んだデータを一元的にイベントとして管理できる機能です。
より具体的には、例えばAWSのEventHub上のイベントや、ZabbixやPrometheusで検知したアラート、Datadogで検知したアラートをDatadogのイベントとして一元的に管理することが可能です。

様々なソースからのEventの取り込み例:
image.png

その上で、取り込んだイベントに対して、Event Pipelineの機能を活用することで付加情報を付与し、分類や検索ができるようにすることが可能です。1
そして、このEvent Management機能に今年新たに追加された機能が、Event Correlationの機能です。こちらは、Datadogにイベントして取り込まれたデータを、ユーザーが指定したルールもしくは機械学習機能により自動でまとめてくれる機能となります。
この機能により、何か特定のアラートを検知した際、同じタイミングで検知したイベントや、そのタイミングにおけるメトリックスのスパイクなどを、環境やサービスなどの属性情報をベースにまとめて可視化、通知、管理することが可能となります。

EventやMetricsが相関付られている例:
image.png
これにより、大量のアラート自体を削減することが難しい場合にも、大量に発生したアラートをDatadogにEventとして取り込んでおきさえすれば、まとめて対処が可能となります。
さらに、単にアラートをまとめるだけでなく、Datadogに取り込まれたメトリックスのスパイクや、DatadogのWatchdogが検知したインサイトも合わせて見ることができるため、原因調査を加速させることが可能となります。
現在、この相関付(グループ化)機能の条件は、ユーザー定義で実施するパターンベースの方法と、ユーザー定義不要でDatadogの機械学習ロジックを使用して自動でまとめる方法の二つの方法で実現可能です。

Bits AI

続いてBits AIです。こちらはDatadogの画面UI上で生成AIのチャットbotに問い合わせ、自然言語でシステムの状態を確認できるようにする機能です。この機能を活用することでDatadogというツールの利用方法を覚えなくても自然言語で欲しい情報にアクセスすることが可能となります。
また、Datadogのインシデント管理機能と組み合わせて活用すると、Bits AIに自然言語で問い合わせることで、インシデントの対応状況のサマリーを回答してもらったり、類似インシデントを教えてもらうことなどが可能となります。

対応中のインシデント用Slackチャネルで、関連アラートをBits AIに問い合わせてみた例:
image.png

Watchdog

最後にWatchdogです。こちらの機能も昔からある機能ではありますが、Watchdogが対応する製品と提供する機能が格段に増えています。
まず、Watchdogの最大のメリットはDatadogにデータを連携さえしておけば追加設定不要で、自動で機能を活用できる点です。
Watchdogの代表的な機能は以下です。

それぞれみていきたいと思います。

  • パフォーマンス異常の自動検出:自動でDatadogに連携されたデータのスパイクやドロップなどを提示する機能です。この機能により予期せぬ異常に気付き、問題に早期に対応することが可能となります。image.png

  • 根本原因分析機能:異常を検知した際に、バージョン情報やアプリケーションの依存関係、検知したタイミングといったデータをもとに、問題の根本原因を示唆する機能です。これにより関連データや原因調査の手間を省き、障害復旧までの時間を短縮します。image.png

  • 調査中の文脈を考慮したインサイト:Datadogが提供する各種機能(APM,Log,Process,DBMなど)において、異常を示唆します。さらに、その示唆は検索条件をもとに、機能を横断して確認することが可能です。例えば、Logのページを見ていてもその時の検索条件に紐づいてAPMやインフラなど他の機能における異常の示唆もまとめて表示します。この機能により、ツールや画面を切り替えることなく、システムの異常を把握して対処できます。
    LogのページにAPMの示唆が出ている例:
    image.png

  • ビジネスや顧客影響の可視化:検知した異常状態における個々のユーザーへの影響を表示する機能です。この機能により、問題の影響を自動で把握し、復旧作業や顧客フォローの優先度判断に活用できます。
    image.png

これらのDatadog Watchdogを活用することで、意図していなかった異常や障害にプロアクティブに気付き、ユーザーに影響を最小限にする意思決定と対処が可能となります。

AI Observability関連機能詳細

最後にAI Observabilityについてそれぞれの機能の詳細をみていきたいと思います。

AI Integration

image.png

AI Integrationは、APIをベースとしてAI関連の情報を可視化する機能です。
Datadogでは、Langchainなどのオーケストレーションレイヤや、OpenAIなどのモデルレイヤーだけでなく、AWSやAzure、GCP、OCI、さらにはNvidiaなどのインフラレイヤーまで幅広いレイヤーに対してインテグレーションを提供しています。
主要なサービスベンダーと公式にパートナーシップを締結しているため、公式に提供する仕組みと手順で連携が行える点と、Datadog自身が運用で培った知見をベースにしたデフォルトのダッシュボードと推奨アラートで、すぐに監視を開始できる点も特徴です。
推奨アラート例:
image.png

OpenAIとのIntegrationについては、以下にサンプルアプリケーションと合わせて設定方法や具体的な見え方を整理していますので、合わせてこちらも参照ください。

LLM Observability

最後にもう一つの代表的な機能であるLLM Observabilityについてみていきます。

これらについてはAWSさんとの共同Webinerに向けて作成した資料とサンプルアプリがあるため、そちらをベースに見ていきたいと思います。

Datadogが提供する価値とそれに対応する機能を整理したものが以下の通りです。
image.png

それぞれの機能を実際の画面と合わせて紹介していきたいと思います。

トラブルシューティングの迅速化

image.png

  1. エンドツーエンドのトレース:DatadogのLLM Observabilityを有効化するとLLM Chainのエンドツーエンドのトレースを可視化することが可能となります。image.png
  2. レイヤーを横断した統合監視:LLMアプリケーションのChainが見れるだけでなく、そのLLMの処理を呼び出しているアプリケーションの処理(APM)の情報にもクリック操作で遷移して確認可能です。
    LLM Observabilityで検知したChainに"View APM Trace"というAPMに遷移するボタンがある画面イメージ:
    image.png
    さらにそのアプリケーションの処理(APM)に遷移すると、関連するログやインフラのメトリックスといった他のテレメトリーデータもタブの切り替えで把握することが可能となります。
    APMのトレースと合わせてLogが見えている例:
    image.png
    このように、LLMのModel単体だけでなく、呼び出すシステム(アプリケーションスタック)全体の監視もできる点が、Datadogのユニークな点となります。
  3. 各ステップ毎の入出力のエラーと精度の監視:LLM Chainの監視という深いレベルに視点を移してしてみた場合にも、単にAPIの呼び出しを監視するだけでなく、複数のLLM ModelのAPI呼び出しや、RAGやToolの呼び出しなど、細かなChainの処理まで可視化できます。
    LLMのChainが可視化されているイメージ:
    image.png
    このようにアプリケーション全体からアプリケーション処理の詳細まで統合的に監視ができることで、ブラックボックスになりがちなLLMアプリケーションのトラブルシューティングを迅速化できます。

パフォーマンス向上とコスト削減

image.png

  1. 各ステップ毎のメトリックスのリアルタイム監視:続いて提供するのが、Chainの各Step毎のメトリックスを見ることができる点です。この機能により、個々の処理の中で消費されたToken数や、RAGやToolの呼び出しにかかった時間、その統計情報や傾向を見ることが可能となります。
    LLM Chain内で呼び出されたOpenAIのAPIにおいて、消費されたToken数や推定Costが表示されている例:
    image.png
  2. パフォーマンスとコストの統合ダッシュボード:単に個々の処理単位での情報が見れるだけでなく、デフォルトで提供されるLLM Observability専門のページおよびデフォルトで提供するダッシュボードにより、統計情報や傾向の分析結果を見ることが可能となります。
    デフォルト提供のダッシュボード例:
    image.png
    これらの機能により、LLMに対する運用管理ツールの学習やメンテナンスにかかる工数を抑えて、LLMアプリケーションの開発と改善自体にリソースを割き、パフォーマンス向上やコスト削減を可能とします。

品質と安全性の向上

image.png

  1. プロンプトインジェクションやハルシネーション、ユーザー感情に対する評価:Datadogでは、プロンプトインジェクションなど、セキュリティリスクのあるインプットを自動検知する機能を提供しています。セキュリティ観点での検知以外にも、ハルシネーションやあらかじめ定義しておいたトピックとの相関、ユーザー感情などを自動で分析して検知する機能も提供しています。
    デフォルトで提供されるセキュリティチェックの仕組みで検知された例:
    image.png
    これらのDatadogによる自動評価以外に、ユーザー側の評価結果を表示させる機能もCustom Evaluationとして提供しています。2
  2. プロンプト応答クラスターのグルーピング:プロンプトに対する評価結果をClusterとして表示させる機能も提供しています。このClusterの可視化により、チューニングやRAGの精度を上げるべきInputのグループを特定するなどの活用が可能です。
    プロンプトの入力グルーピングした上で、回答が誤っていると評価したものを色分けして表示している例:image.png

これらの機能により、LLMの応答品質の向上および、安全性を向上させることが可能となります。

おわりに

AI関連機能は進化と変化が早く、このような公開blogでは公開ができない既に実装済みの新機能や予定している機能改善も多数あるため、興味を持っていただいた際にはぜひお気軽にお問い合わせいただけたらと思います。

おまけ

  • このBlogでは冗長になり過ぎてしまうことを防ぐため、APMやRUMなど、一部前提機能の説明を省略している箇所があります。
    もしDatadogの基本機能を確認されたい場合には、以下リンク先の動画にて各機能につき5分から10分ほどで紹介していますので、合わせて確認ください。
    登録が必要なリンクしか公開できなくて申し訳ありませんが、頑張って収録したのでぜひ活用いただけたら幸いです。

  • DatadogによらないLLM Observability全般については、自分も(大変僭越ながら)レビューに参加させていただいた以下のLLM Observability本にて触れられていますので、もしよろしければ目を通してみてください。3

  • DatadogのLLM Observabilityの検証のため、簡単に検証できるアプリと手順を以下に公開しています。見え方や設定方法を確認したい場合にはこちらも参照ください。

  • LambdaからLLM Model APIを呼び出すアプリ実装をする際に参考にさせていただいたblogです。いつもQiitaの皆さんの記事に助けられています。ありがとうございます。
    作成したデモアプリUI:image.png

以上です。少しでもなにか価値ある情報の提供ができていたら幸いです。

  1. このEventの処理については、@ynakaokuさんが同じくDatadog Advent Calendar 2024の12/19の記事で触れてくださる予定ですので、そちらも参照ください

  2. このCustom Evaluationについては、JDDUG(Japan Datadog User Group)の生みの親@chaspyさんがこの内容に触れた記事を、同じくDatadog Advent Calendar 2024の12/10の記事で書いてくださる予定のため、そちらで勉強させてもらいたいと思っています!

  3. 本書の執筆に携わられた逆井(@k6s4i53rx)先生も同じくDatadog Advent Calendar 2024の12/20に「何か書く」そうなので、乞うご期待ですね!ワクワクで夜も寝れないですね!圧

9
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?