SageMaker 詳細メトリクスと CloudWatch 上の Insights ダッシュボードを使用した生成 AI 推論のモニタリングとデバッグ
Amazon SageMaker AI は、GPU ヘルス、トークンレベルのレイテンシー、KV キャッシュプレッシャー、アベイラビリティゾーン間のトラフィック分散など、100 以上の詳細な推論メトリクスを発するようになりました。これらのメトリクスは、CloudWatch の組み込み SageMaker Insights ダッシュボードに表示され、PromQL クエリをサポートします。この記事では、詳細な可観測性を有効にする方法、ダッシュボードの操作方法、およびメトリクスを外部ツールに接続する方法について説明します。
Amazon SageMaker AI は、機械学習モデル向けに完全マネージド型のリアルタイム推論ホスティングを提供します。モデルを 1 つ以上のコンピューティングインスタンスでバックアップされた SageMaker エンドポイントにデプロイすると、SageMaker がプロビジョニングとスケーリングを処理します。SageMaker は複数のエンドポイントアーキテクチャをサポートしており、この投稿では、生成 AI ワークロードに最も関連性の高い 2 つのアーキテクチャ(単一モデルエンドポイント (SME) と推論コンポーネント (IC) エンドポイント)に焦点を当てます。
SME は各モデルを専用のインスタンスでホストするため、セットアップと理解は簡単ですが、各モデルに独自の GPU インスタンス群が必要です。IC エンドポイントでは、推論コンポーネントを介して複数のモデルが同じインスタンスセットを共有します。各推論コンポーネントは、モデル、リソース要件(CPU、GPU、メモリ)、およびスケーリングポリシーを定義します。IC エンドポイントは、共有 GPU インフラストラクチャでのマルチモデルホスティング、モデルごとの独立したスケーリング、およびアベイラビリティゾーン間のコピー分散による高可用性 (HA) をサポートするため、本番環境の生成 AI ワークロードに推奨されるアーキテクチャです。
チームが GPU フリートでマルチモデルデプロイメントにスケールするにつれて、より深いシグナルが必要になります。Amazon SageMaker AI は現在、100 を超える詳細な推論メトリクスを発しています。これらは、GPU ヘルス、トークンレベルのレイテンシー、KV キャッシュプレッシャー、アベイラビリティゾーン間のトラフィック分散、推論コンポーネントの配置、コールドスタート診断をカバーしています。これらのメトリクスは、CloudWatch の組み込み SageMaker Insights ダッシュボードに流れ込みます。これは完全マネージド型の可観測性ソリューションであり、カスタム Grafana ダッシュボードや Prometheus 設定が不要です。SageMaker Insights ダッシュボードは両方のエンドポイントタイプをサポートし、推論コンポーネントが検出されると自動的に IC 固有のパネルを表示します。
詳細メトリクスの有効化
新しいエンドポイント構成では、詳細メトリクスがデフォルトで有効になります。EnableDetailedObservability パラメータはデフォルトで true です。MetricsConfig の MetricsPublishFrequencyInSeconds を使用して公開頻度を明示的に設定することもできます。デフォルトは 60 秒です。ほぼリアルタイムの監視が必要なワークロードの場合は、60 秒未満に設定できます。エンドポイント構成を作成すると、エンドポイントが InService に達してから 2 分以内に、OpenTelemetry 形式のメトリクスが CloudWatch に流れ始めます。
既存のエンドポイントの場合は、明示的なオプトインが必要です。MetricsConfig フラグを指定して新しいエンドポイント構成を作成し、エンドポイントを更新します。SageMaker コンソールには、詳細な可観測性の有効化、メトリクスの学習、OTel エンリッチメントの有効化、オプトインするエンドポイントの選択を行うためのガイド付き 3 ステップウィザードもあります。
従来の CloudWatch メトリクスの OTel エンリッチメントを有効にする
ネイティブの OpenTelemetry メトリクスは、有効化後に自動的に CloudWatch に流れます。ただし、既存の従来のメトリクス(Invocations、ModelLatency、OverheadLatency)は、SageMaker Insights ダッシュボードに表示され、PromQL でクエリ可能にするには、OTel エンリッチメントが必要です。CloudWatch コンソールに移動し、[設定] で [OTel メトリクスエンリッチメント] と [テレメトリーのリソースタグ] をオンにします。これは、1 回限りのアカウントレベルおよび AWS リージョンレベルの設定です。
SageMaker Insights ダッシュボードの操作
SageMaker Insights ダッシュボードには、SageMaker コンソールまたは CloudWatch コンソールからアクセスできます。SageMaker 内には 3 つのエントリポイントがあり、それぞれがコンテキストに事前フィルタリングされています。エンドポイント一覧ページ、エンドポイント詳細ページ、および推論コンポーネントタブです。すべてのパスは、事前に適用されたフィルターを使用してディープリンクされるため、リソースを探して空白のダッシュボードに着地することはありません。
パフォーマンスタブ
パフォーマンスタブは、ほとんどの顧客が最も時間を費やす場所です。「すべてが正常に動作しているか?」「そうでない場合、どのコンポーネントに問題があるか?」といった質問に答えます。このタブには、レイテンシーの問題を特定するために連携する複数の時系列パネルが含まれています。パフォーマンスヘルスマップ(六角形の色分け)、トークンストリーミングパネル(TTFT と ITL)、レイテンシー内訳パネル、トラフィック分布パネル、トークンスループットパネルがあります。さらに、エンジンとリクエストプレッシャーパネルは、障害を防ぐための早期警告システムです。
キャパシティタブ
キャパシティタブは、「リソースは十分か?」「どこに余裕があるか?」「別のモデルを追加できるか?」といった質問に答えます。パフォーマンスタブと同じハニカム可視化がリソース使用率とともに表示されます。
信頼性タブ
信頼性タブは、アベイラビリティゾーンの分布、スケーリングイベント、コールドスタート分析、容量不足エラーを表示します。
外部ツールへの接続
SageMaker Insights ダッシュボードは、PromQL 互換のエンドポイントも提供しており、メトリクスを Grafana、Datadog などの既存の可観測性ツールに接続できます。
まとめると、SageMaker の詳細な可観測性機能により、チームは生成 AI 推論エンドポイントの問題を迅速に診断および解決し、高可用性とコスト効率を確保できます。