ML Observability(機械学習・LLM 可観測性)

article technology medium #ml-observability#llm-observability#model-monitoring#drift-detection#opentelemetry#mlops#llmops#langfuse#arize#mlflow#evidently#ragas
Created: 2026-05-28 Updated:

ML 可観測性を 3 本柱+ML 拡張・pre-prod/prod・ドリフト・LLM トレース・OTel GenAI semconv・学習/データ品質/FinOps・3 構成・10 AP・2026 で俯瞰し tech-69/tech-80 観測層を整理。

ML Observability(機械学習・LLM 可観測性)

ML 可観測性は APM 3 本柱(メトリクス/ログ/トレース)に ML 固有シグナル(ドリフト/品質/予測ログ/コスト/評価)を重ねた観測層で、tech-69 サービング・tech-80 クラスタ・tech-48 学習・tech-71 物理基盤の上に乗る。訓練 ~2025-08 依存で confidence: medium 固定、未確認は [VERIFY]

3 本柱と ML 固有シグナル

クラシカル 3 本柱 = メトリクス (Prometheus)・ログ (Loki/ELK)・トレース (Jaeger/Tempo)、OpenTelemetry で統一。ML 追加軸 = データドリフト (P(X) でサイレント劣化)・コンセプトドリフト (P(Y|X))・モデル品質 (ground-truth 遅延)・予測ログフィードバックループ埋め込みドリフトトークン/コスト評価/ハルシネーション。APM は「動いているか」、ML 可観測性は「モデルが正しく機能しているか」、モデル/プロンプトバージョン・MFU・ground-truth が追加軸。

Pre-prod と Production

Pre-prod = 実験トラッキング: MLflow (Apache 2.0、2.x で LLM Tracing [VERIFY])、W&B (商用、Sweeps/Weave)、TensorBoardPyTorch Profiler、他 Neptune/Comet/ClearML/Aim。Production = モデル監視: Arize + Phoenix (Phoenix OSS、OpenInference)、Fiddler (公平性・SHAP)、WhyLabs (whylogs)、Evidently (OSS、HTML+CI)、他 Aporia。モデルレジストリ (MLflow 等) で両者を繋ぐのが MLOps 骨格。

ドリフト検出タクソノミ

データドリフト: KS、PSI (<0.1/0.1–0.2/>0.2 [VERIFY])、JSD、KL、MMD (高次元)、Chi2、Wasserstein。多変量は PCA/UMAP 後 or MMD。コンセプトドリフト (P(Y|X)): CUSUM/ADWIN/Page-Hinkley、ラベル遅延は代理指標補完。予測ドリフト (P(ŷ)): ground-truth 不要で即時。埋め込みドリフト: UMAP・コサイン分布・MMD。ライブラリ: NannyML (CBPE = ground-truth なし性能推定)、EvidentlyAlibi-Detectriver (オンライン)、Frouros。

LLM 可観測性

トレーシング: Langfuse (OSS MIT、@observe+プロンプト管理+LLM-as-judge) がセルフホスト OSS 最普及。Arize Phoenix (Apache 2.0、OpenInference) はローカル完結。LangSmith (商用) は LangChain/LangGraph 最深部統合。HeliconeTraceloop OpenLLMetry (OTel GenAI semconv)、他 Lunary/W&B Weave。本番評価: Ragas (RAG Faithfulness/Relevancy/Context Precision/Recall)、DeepEval (pytest)、promptfoo (CI)、他 TruLens/OpenAI Evals/Phoenix Evals、オフライン+オンライン+A/B 併用。ハルシネーション: Vectara HHEM-2.1-Open (NLI [VERIFY])、RAGTruth。トークン/コスト/レイテンシ: per-request で input/output_tokenscost_usdTTFT・total、テナント別予算+アラート。LLM ゲートウェイ: LiteLLM Proxy (MIT、コスト+予算+Prometheus)、Helicone/Portkey/OpenRouter。プロンプトバージョニング: Langfuse get_prompt(version=3)、LangSmith ハブ。ガードレール観測: Guardrails AI/NeMo/Llama Guard 3 (13 カテゴリ [VERIFY])/Azure/Bedrock、必須は FP 率・FN 率・p99・intervention_rate・カテゴリ別。

エージェント可観測性

LangGraph/AutoGen/CrewAI は Session → Trace → Run → Step (LLM/Tool/Retriever Call) の階層スパン、各 Step に gen_ai.usage.*latency_mstool.name/input/outputretrieval.*。固有課題: ループ検出ステップ数超過per-step コストマルチエージェント協調 (W3C traceparent)。対応: LangSmith (LangGraph 可視化最充実 [VERIFY])、Phoenix、Langfuse、Lunary、W&B Weave。

OpenTelemetry スタック

アプリ → OTel SDK → OTLP → OTel Collector (batch/sampling/Exporters) → バックエンド。Traces = Tempo/Jaeger/Honeycomb/Datadog、Metrics = Prometheus+Grafana / Mimir / VictoriaMetrics (高圧縮 [VERIFY])、Logs = Loki/ELK。GenAI Semconv 主要属性: gen_ai.systemgen_ai.request.modelgen_ai.response.modelgen_ai.usage.input/output_tokensgen_ai.operation.nametemperaturegen_ai.content.prompt/completionPII 配慮でデフォルト無効・オプトイン。2025-08 時点 Experimental→Stable 移行中 [VERIFY]OpenInference (Arize) は llm.* で並列、長期 GenAI semconv 収束予定。メリット = ベンダーロックイン回避シグナル統合 (HTTP+LLM 同一 trace_id)・既存インフラ再利用

トレーニング観測

学習品質: Train/Val Loss・Gradient Norm・LR・Perplexity・Throughput。HW 効率: MFU (H100 で ~45–60% [VERIFY])・SM Utilization (DCGM)・HBM BW Utilization (メモリ/演算バインド判別)・P2P BW (tech-82)・GPU Memory。ツール: DCGM (dcgm-exporter→Prometheus、温度/電力/SM/HBM/ECC/NVLink)、PyTorch Profiler/Kineto (NVTX で NSight 統合)。分散学習: NCCL_DEBUG=INFO per-rank ログ、Straggler 検出 = per-rank ステップ時間 max/min 比+DCGM SM 比較で律速 GPU 特定。

フィーチャーストア観測

Feast (OSS)、Tecton (商用、ドリフト/鮮度内蔵)、Hopsworks。観測軸: feature_freshness_secfeature_null_ratefeature_value_drift (KS/PSI)・online_offline_skew = Training-Serving Skewpoint_in_time_correctness・p99 latency。

データ品質観測

Great Expectations (OSS、Airflow/Dagster で fail_task_on_validation_failure=True 学習ゲート)、Soda (SodaCL [VERIFY])、Monte Carlo、Bigeye、Datadog Data Observability。概念: スキーマドリフトNULL 率スパイク鮮度 SLAボリューム異常 (前日比 30% 減 = パイプライン障害)。

FinOps for ML

分解粒度: クラスタ → ジョブ → ユーザー/チーム → モデルバージョン → リクエスト。ツール: Kubecost (OSS、GPU 強化 [VERIFY])、CloudHealth、Vantage、AWS Cost Explorer / GCP Billing Labels / Azure Cost Management。LLM トークンコスト (LiteLLM): litellm_requests_total{model,user}litellm_*_tokens_totallitellm_spend_usd{model,user} を Prometheus、テナント別予算超過時 429 が定番。

安全性・責任 AI 観測

バイアス/公平性: Fairlearn (MIT MS、Demographic Parity/Equalized Odds+緩和)、AIF360 (IBM)、Arize Fairness、Fiddler Bias。PII 検出: Presidio (MIT)、Lakera Guard (PII+インジェクション+毒性)、AWS Comprehend PII。有害コンテンツ: Perspective API、OpenAI Moderation、Detoxify。プロンプトインジェクション: Lakera Guard、Robust Intelligence、NeMo Guardrails、LLM-Guard。

リファレンス構成 3 種

クラシカル MLOps: Pre-prod = MLflow/W&B+PyTorch Profiler、Production = Prometheus+Grafana (DCGM)+Loki+Tempo (インフラ) と Evidently/Arize/NannyML (モデル) 並列。OSS なら Prometheus+Grafana+Loki+Tempo+Evidently+MLflow、商用なら Datadog+W&B+Arize。LLM アプリ: アプリ → OTel SDK+Gateway (LiteLLM/Helicone) → Collector → Langfuse+Tempo+Prometheus → Grafana、評価は Ragas/DeepEval/Phoenix Evals を CI+本番サンプリング両用。RAG: Retriever (Qdrant/Weaviate/Pinecone) は query_latency_ms P99+recall@k+index 鮮度、各 /metrics ([VERIFY])、評価は Ragas+Phoenix Evals+TruLens 多軸。

エイリアシング

「ML 可観測性」は ML Monitoring (Evidently) / ML Observability (Arize/Fiddler) / Model Monitoring (WhyLabs) / LLM Observability (Langfuse/Phoenix) / AI Observability (Datadog/New Relic) / Data Observability (Monte Carlo) で定義分散。大手 APM 参入: Datadog LLM Observability・New Relic AI Monitoring・Dynatrace (Davis AI)・Elastic。

アンチパターン 10 種

  • AP-1 [Critical] Ground-truth 未収集 → サイレント劣化。Fix: ラベル収集設計組込、代理指標、NannyML CBPE。
  • AP-2 [Critical] フルプロンプト/補完を PII 非処理保存 → GDPR/APPI 違反+コスト急騰。Fix: Presidio で OTel Processor or Gateway スクラビング、1% サンプリング。
  • AP-3 [High] トークンカウンタのテナント分離欠如 → 収益漏洩・レート制限不能。Fix: LiteLLM user、OTel tenant_id、Prometheus ラベル (カーディナリティ注意)。
  • AP-4 [High] ドリフト閾値の単一統計依存 → シーズン誤報。Fix: PSI+KS+Wasserstein 複合、時系列ベースライン、セグメント別。
  • AP-5 [High] LLM-as-Judge に同一モデル → 自己贔屓。Fix: 異プロバイダ化、人手キャリブレーション、回答順序ランダム化。
  • AP-6 [High] プロンプトバージョン未付与 → 回帰デバッグ困難。Fix: Langfuse/LangSmith or prompt_version 属性。
  • AP-7 [High] アドホック計装 → ベンダー変更で全書き直し。Fix: GenAI semconv 全社採用、openinference-*/OpenLLMetry 共通化。
  • AP-8 [Medium] 学習時 TensorBoard のみで本番監視ゼロ → 3 ヶ月後に発覚。Fix: デプロイ時 Evidently/Arize 必須。
  • AP-9 [Medium] 絶対レイテンシのみアラート → P99 8 秒見逃し。Fix: P50/P95/P99、LLM は TTFT と Total 分離。
  • AP-10 [Medium] サンプリングレート設定ミス → 100% で爆発・0.01% で欠落。Fix: ヘッド+テールベース、本番 1–5%+エラー 100%+P99 超 100%。

2026 フロンティア

全項目 [VERIFY]GenAI Semconv Stable 昇格: 2025 後半〜2026 前半で主要属性 Stable 移行見込み、計装ブレーキングチェンジ減・APM 公式サポート容易化。評価+可観測性の収束: Langfuse/Phoenix/LangSmith が Eval 強化で評価プラットフォーム化、評価スコアをトレース属性化、Phoenix-Ragas 統合、CI for Prompts = promptfoo+LangSmith を GitHub Actions で PR ごと自動検証。オンデバイス LLM 観測 (tech-81): OTel SDK はバッテリー/メモリ制約で常時困難、現実解は Apple Foundation Models PCC 監査ログ集中+骨格メトリクス+定期オフライン評価+合成テストでスコアのみ送信。マルチモーダル観測: GPT-4o/Gemini 1.5/Claude 3.5 で画像入力品質定義未確立、音声 TTFT は VAD→ASR→LLM→TTS 各段階で意味が異なる、GenAI semconv はテキスト中心。エージェント可観測性: マルチエージェント協調で W3C Trace Context 伝播が各 FW 追いつかず、並列 fan-out/fan-in 視覚化不足、長時間トレース管理、cost attribution は 2025 後半以降本格化見込み。

関連記事

tech-48 分散学習 / tech-69 サービング (メトリクス収集対象) / tech-70 GPU API (DCGM/NVTX) / tech-71 物理基盤 / tech-80 クラスタ (上位観測層) / tech-81 エッジ (2026 節) / tech-82 ネットワーク (NCCL 効率)。

Local graph