# GenAI オブザーバビリティ — OpenTelemetry セマンティック規約 ## 概要 LLM 呼び出しの背後にあるモデル呼び出し・ツール起動・トークン交換の連鎖を可視化するための [[OpenTelemetry]] セマンティック規約。GenAI 操作の記録方法を標準化し、モデル識別、入出力トークン数、プロンプト・補完・ツール呼び出しの全内容(有効化時)を記録する。 ## 対応ツール | ツール | テレメトリ対応状況 | |---|---| | VS Code Copilot | トレース・メトリクス・イベントを送出 | | OpenAI Codex | 構造化ログと OTel メトリクスをエクスポート | | Claude Code | メトリクスとログイベントを OTel 経由で送出(トレースはベータ) | 既定では機密コンテンツは非公開で、モデル名やトークン数等のメタデータのみが捕捉される。明示的に有効化するとプロンプト・レスポンスの全文が記録される。 ## トレース構造 - **`invoke_agent`**(最上位スパン) - **`chat`** スパン — 個別の LLM 呼び出し - **`execute_tool`** スパン — ツール起動 主要属性: `gen_ai.request.model`、`gen_ai.usage.input_tokens` / `gen_ai.usage.output_tokens`、`gen_ai.response.finish_reasons`。 コンテンツ属性(有効化時): `gen_ai.system_instructions`、`gen_ai.input.messages`、`gen_ai.output.messages`。 ## メトリクス - **`gen_ai.client.operation.duration`** — LLM レイテンシのヒストグラム(モデル別フィルタ可) - **`gen_ai.client.token.usage`** — トークン消費のヒストグラム(入力/出力別フィルタ可) リクエスト単位のコスト推定、トークン集約的なプロンプトの事前特定、レイテンシ変化の検知、モデル/エージェント横断の利用傾向監視が可能。 ## 可視化 Aspire Dashboard(Microsoft、OSS、Docker コンテナ)が OTLP データを直接受信し、GenAI テレメトリ専用ビューアでチャット形式のインタフェースを提供する。 ## 出典 - [Inside the LLM Call: GenAI Observability with OpenTelemetry](https://opentelemetry.io/blog/2026/genai-observability/)