すべてのプロダクト
Search
ドキュメントセンター

Application Real-Time Monitoring Service:LLM トレースフィールドの定義

最終更新日:Jun 25, 2026

大規模言語モデル (LLM) のトレースフィールドは、Alibaba Cloud が OpenTelemetry 標準と LLM アプリケーションドメインの概念に基づいて定義したものです。これらのフィールドは、属性、リソース、イベントを拡張して、LLM アプリケーションのトレースデータのセマンティクスを記述します。LLM の入出力リクエストやトークン消費などの主要な操作をキャプチャします。コンプリーション、チャット、検索拡張生成 (RAG)、エージェント、ツール呼び出しなどのシナリオ向けに、コンテキストを意識した豊富なセマンティックデータを提供し、効果的なデータトレースとレポート作成を可能にします。

このセマンティック仕様は、コミュニティとともに進化します。お使いのアプリケーションが Python の場合、可観測性データを手動で収集する必要があります。データ統合と収集には、loongsuite-util-genai コンポーネントを使用できます。詳細については、「README」をご参照ください。

スパンレベルのフィールド定義は、OpenTelemetry のオープン標準に準拠しています。Alibaba Cloud Managed Service for OpenTelemetry に保存されるトップレベルのトレースフィールドの詳細については、「Trace Explorer parameters」をご参照ください。

説明

LLM 固有の SpanKind は属性であり、OpenTelemetry のトレース仕様で定義されている スパンの種類 ではありません。このセマンティック仕様は、OpenTelemetry GenAI セマンティック規約 を拡張したものです。その仕様はアクティブに開発されており、今後のメンテナンスリリースで変更される可能性があります。

共通セクション

属性

属性キー

説明

値の例

要件レベル

gen_ai.session.id

セッション ID

string

ddde34343-f93a-4477-33333-sdfsdaf

利用可能な場合は必須

gen_ai.user.id

エンドユーザー識別子

string

u-lK8JddD

利用可能な場合は必須

gen_ai.span.kind

オペレーションタイプ [1]

string

「LLM Span Kind」を参照してください

必須

gen_ai.operation.name

セカンダリオペレーションタイプ [2]

string

「LLM Operation Name」を参照してください

必須

gen_ai.framework

使用したフレームワークの種類

string

langchain;llama_index

利用可能な場合は必須

[1] gen_ai.span.kindgen_ai.operation.name とのマッピングは以下のとおりです。

gen_ai.span.kind

gen_ai.operation.name

説明

RETRIEVER

retrieval

ドキュメント検索

LLM

chat;generate_content;text_completion

モデルの呼び出し

EMBEDDING

embeddings

埋め込み

TOOL

execute_tool

ツール呼び出し

AGENT

create_agent;invoke_agent

エージェントの呼び出し

RERANKER

-

再ランキングの呼び出し

CHAIN

-

チェーン (呼び出し単位)

TASK

-

タスクの呼び出し

ENTRY

-

エントリ呼び出しマーカー

STEP

-

ReAct ラウンドマーカー

[2] gen_ai.operation.name:セカンダリのオペレーションタイプです。以下の列挙値のいずれかを使用するか、カスタム値を定義してください。

説明

chat

チャット補完オペレーション

create_agent

GenAI エージェント作成オペレーション

embeddings

単語埋め込みオペレーション

execute_tool

ツール呼び出しオペレーション

generate_content

マルチモーダルコンテンツ生成オペレーション

invoke_agent

GenAI エージェント呼び出しオペレーション

retrieval

ドキュメント検索オペレーション

text_completion

テキスト補完オペレーション

リソース

リソースキー

説明

値の例

要件レベル

service.name

アプリケーション名

string

test-easy-rag

必須

acs.cms.workspace

Cloud Monitor ワークスペース

string

arms-test

利用可能な場合は必須

acs.arms.service.id

ARMS サービス ID

string

ggxw4lnjuz@b63ba5a1d60b517ae374f

利用可能な場合は必須

ali.trace.source

アプリケーションソース

string

mse-gateway;alb

利用可能な場合は必須

acs.arms.service.feature

アプリケーション機能

string

genai_app

条件付きで必須

説明

acs.arms.service.feature = genai_app. この値により、アプリケーションが AI アプリケーションとして自動的に識別され、タグ付けされます。LLM またはエージェントのシナリオでは必須です。

チェーン

チェーンは、LLM と他のコンポーネントを接続し、取得、埋め込み、LLM 呼び出し、ネストされたチェーンなどの複雑なタスクを実行するためのツールです。

スパンに chain {chain_name} という名前を付けます。chain_name を取得できない場合は、chain と名付けます。

説明

OpenTelemetry コミュニティでは、このスパンタイプのセマンティック規約はまだ定義されていません。現時点では、チェーンスパンは LangChain フレームワークにのみ適用されます。

属性

属性キー

説明

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

文字列

CHAIN

必須

gen_ai.operation.name

セカンダリオペレーションタイプ

文字列

workflow; task

利用可能な場合は必須

input.value

入力内容

文字列

Who Are You!

推奨

output.value

応答内容

文字列

I am ChatBot

推奨

gen_ai.user.time_to_first_token

最初のトークンまでの時間 [2]

整数

1000000

推奨

[1] gen_ai.span.kind: LLM spanKind 専用の列挙型。 Chain 内では、この値は CHAIN である必要があります

[2] gen_ai.user.time_to_first_token: サーバーがユーザーリクエストを受信してから、最初の応答パケットが返されるまでの時間。単位: ナノ秒。

レトリーバー

レトリーバーは、ベクトルストアまたはデータベースにアクセスしてデータを取得します。通常、LLM の応答精度と効率を向上させるためにコンテキストを補完します。

gen_ai.operation.nameretrieval に設定します。gen_ai.operation.nameretrieval の場合、gen_ai.span.kind を RETRIEVER として推論します。

スパンには {gen_ai.operation.name} {gen_ai.data_source.id} という名前を付けます。特殊なケースでは、他の命名形式も使用できます。

属性

属性キー

説明

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

文字列

RETRIEVER

必須

gen_ai.operation.name

セカンダリオペレーションタイプ [2]

文字列

retrieval

必須

gen_ai.data_source.id

データソース一意識別子 [3]

文字列

H7STPQYOND

利用可能な場合は必須

gen_ai.provider.name

LLM プロバイダー

文字列

openai

利用可能な場合は必須

gen_ai.request.model

リクエストで指定されたモデル名

文字列

gpt-4

利用可能な場合は必須

gen_ai.request.top_k

リクエストで指定された Top-K 値

単精度浮動小数点数

1.0

推奨

gen_ai.retrieval.documents

取得したドキュメントリスト [4]

文字列

[{"id": "doc_123","score": 0.95},{"id": "doc_456","score": 0.87},{"id": "doc_789","score": 0.82}]

任意

gen_ai.retrieval.query.text

クエリテキストスニペット

文字列

what is the topic in xxx?

任意

[1] gen_ai.span.kind: LLM スパンカインド専用の列挙値。レトリーバーでは、この値は RETRIEVER である必要があります

[2] gen_ai.operation.name: セカンダリオペレーションタイプ。

[3] gen_ai.data_source.id: 一意のデータソース ID。これは、AI エージェントまたは RAG アプリケーションが依存するデータソースです。外部データベース、Object Storage Service、ドキュメントセット、ウェブサイト、またはその他のストレージシステムが該当します。

[4] gen_ai.retrieval.documents: 取得したドキュメントリストを記録します。各ドキュメントオブジェクトには、少なくとも次のプロパティが含まれている必要があります: id (文字列):一意のドキュメント識別子。 score (倍精度浮動小数点数):関連性スコア。

リランカー

リランカーは、クエリに基づいて複数の入力ドキュメントの関連性を評価し、それらを並べ替え、LLM への入力としてトップ K のドキュメントを返すことがあります。

スパンに rerank {reranker.model_name} という名前を付けます。reranker.model_name が取得できない場合は、スパンに rerank という名前を付けます。

説明

OpenTelemetry コミュニティは、このスパンタイプに対するセマンティック規約をまだ定義していません。

属性

属性キー

説明

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

string

RERANKER

必須

reranker.query

リランカーリクエストパラメータ

string

How to format timestamp?

任意

reranker.model_name

リランカーが使用するモデル名

string

cross-encoder/ms-marco-MiniLM-L-12-v2

任意

reranker.top_k

再ランキング後のランク

integer

3

任意

reranker.input_document

入力ドキュメントのメタデータ [2]

string

例を参照

必須

reranker.output_document

出力ドキュメントのメタデータ [3]

string

例を参照

必須

[1] gen_ai.span.kind: LLM スパン種別専用の列挙型。リランカーでは、この値は RERANKER である必要があります

[2] reranker.output_document: 再ランキング用の入力ドキュメント。JSON 配列構造。メタデータには、パス、ファイル名、ソースなどの基本的なドキュメント情報が含まれます。

[3] reranker.output_document:リランキング後の出力ドキュメント。 JSON 配列構造。 メタデータには、パス、ファイル名、ソースなどの基本的なドキュメント情報が含まれます。

LLM

LLM スパンは、LLM の呼び出しまたは推論プロセスを表します。例としては、SDK または OpenAPI を使用して、異なる LLM を推論またはテキスト生成のために呼び出すことが挙げられます。

gen_ai.operation.namechatgenerate_content、または text_completion のいずれかに設定します。gen_ai.operation.namechatgenerate_content、または text_completion の場合、gen_ai.span.kind を LLM と推論します。

スパンには {gen_ai.operation.name} {gen_ai.request.model} という名前を付けます。特殊なケースでは、他の命名形式も許容されます。

属性

属性キー

説明

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

文字列

LLM

必須

gen_ai.operation.name

セカンダリオペレーションタイプ [2]

文字列

chat; generate_content; text_completion

必須

gen_ai.provider.name

LLM プロバイダー

文字列

openai

必須

gen_ai.conversation.id

一意の会話 ID [3]

文字列

conv_5j66UpCpwteGg4YSxUnt7lPY

利用可能な場合は必須

gen_ai.output.type

LLM リクエストで指定された出力タイプ [4]

文字列

text;json;image;speech

利用可能な場合は必須

gen_ai.request.choice.count

LLM リクエストで要求された候補生成数

整数

3

1 でない場合は必須

gen_ai.request.model

LLM リクエストで指定されたモデル名

文字列

gpt-4

必須

gen_ai.request.seed

LLM リクエストで指定されたシード

整数

12345

利用可能な場合は必須

gen_ai.request.frequency_penalty

LLM リクエストで設定された頻度ペナルティ

浮動小数点

0.1

推奨

gen_ai.request.max_tokens

LLM リクエストで指定された最大トークン数

整数

100

推奨

gen_ai.request.presence_penalty

LLM リクエストで設定されたプレゼンスペナルティ

浮動小数点

0.1

推奨

gen_ai.request.temperature

LLM リクエストで指定された Temperature

浮動小数点

0.1

推奨

gen_ai.request.top_p

LLM リクエストで指定された Top-P 値

浮動小数点

1.0

推奨

gen_ai.request.top_k

LLM リクエストで指定された Top-K 値

整数

1

推奨

gen_ai.request.stop_sequences

LLM の停止シーケンス

文字列配列

["stop"]

推奨

gen_ai.response.id

LLM によって生成された一意の ID

文字列

chatcmpl-9J3uIL87gldCFtiIbyaOvTeYBRA3l

推奨

gen_ai.response.model

LLM 生成に使用されたモデル名

文字列

gpt-4-0613

推奨

gen_ai.response.finish_reasons

LLM が生成を停止した終了理由

文字列配列

["stop"]

推奨

gen_ai.response.time_to_first_token

ストリーミング応答シナリオにおける LLM の初回トークンレイテンシー [5]

整数

1000000

推奨

gen_ai.response.reasoning_time

推論モデルの推論時間 [6]。単位:ナノ秒

整数

1248

推奨

gen_ai.usage.input_tokens

使用された入力トークン数

整数

100

推奨

gen_ai.usage.output_tokens

使用された出力トークン数

整数

200

推奨

gen_ai.usage.total_tokens

使用された合計トークン数

整数

300

推奨

gen_ai.usage.cache_creation.input_tokens

モデルプロバイダーのキャッシュに書き込まれたトークン数 [7]

整数

25

推奨

gen_ai.usage.cache_read.input_tokens

モデルプロバイダーのキャッシュから読み取られたトークン数 [8]

整数

50

推奨

gen_ai.input.messages

モデル入力内容 [9]

文字列

[{"role": "user", "parts": [{"type": "text", "content": "Weather in Paris?"}]}, {"role": "assistant", "parts": [{"type": "tool_call", "id": "call_VSPygqKTWdrhaFErNvMV18Yl", "name":"get_weather", "arguments":{"location":"Paris"}}]}, {"role": "tool", "parts": [{"type": "tool_call_response", "id":"call_VSPygqKTWdrhaFErNvMV18Yl", "result":"rainy, 57°F"}]}]

任意

gen_ai.output.messages

モデル出力内容 [10]

文字列

[ { "role": "assistant", "parts": [ { "content": "Split into A(3), B(3), C(2). Weigh A vs B, then narrow down to the heavy group and weigh again.", "type": "reasoning" }, { "content": "Split into A(3), B(3), C(2).\n- **Weigh 1:** A vs B → heavier side contains it; if balanced, it's in C\n- **Weigh 2:** From the 3-ball group, weigh 1 vs 1 → heavier wins; if balanced, it's the 3rd. From C, weigh 1 vs 1 directly.", "type": "text" } ], "finish_reason": "end_turn" }]

任意

gen_ai.system_instructions

システムプロンプト内容 [11]

文字列

[{"type": "text", "content": "You are a helpful assistant"}]

任意

gen_ai.tool.definitions

ツール定義リスト [12]

文字列

[{"type":"function","name":"get_current_weather","description": "Get the current weather in a given location","parameters":{"type":"object","properties":{"location":{"type":"string","description":"The city and state, e.g. San Francisco, CA"},"unit": {"type":"string","enum":["celsius","fahrenheit"]}},"required":["location","unit"]}}]

任意

gen_ai.latency.time_in_model_prefill

LLM プレフィルレイテンシー。単位:ナノ秒

整数

1000

推奨

gen_ai.latency.time_in_model_decode

LLM デコードレイテンシー。単位:ナノ秒

整数

1000

推奨

gen_ai.latency.time_in_model_inference

LLM 推論時間。プレフィル時間とデコード時間の合計に等しい。単位:ナノ秒

整数

1000

推奨

gen_ai.input.multimodal_metadata

LLM 入力内容に含まれるマルチモーダルデータ [13]

文字列配列

[{"type":"uri","mime_type":"image/jpeg","uri":"sls://project/logstore/date/object","modality":"image"}]

推奨

gen_ai.output.multimodal_metadata

LLM 出力内容に含まれるマルチモーダルデータ [14]

文字列配列

[{"type":"uri","mime_type":"image/jpeg","uri":"sls://project/logstore/date/object","modality":"image"}]

推奨

[1] gen_ai.span.kind: LLM スパンカインド専用の列挙値。LLM スパンでは、この値は LLM でなければなりません

[2] gen_ai.operation.name: セカンダリオペレーションタイプ。

[3] gen_ai.conversation.id: 一意の会話 ID。簡単に取得できる場合は、これを収集します。

[4] gen_ai.output.type: リクエストが出力タイプ (出力形式など) を指定している場合は、これを収集します。値は、以下の列挙値のいずれか、またはカスタム値でなければなりません:

説明

image

画像

json

整形された JSON オブジェクト

speech

音声

text

プレーンテキスト

[5] gen_ai.response.time_to_first_token: サーバーがユーザーリクエストを受信してから最初の応答パケットが返されるまでの時間。単位:ナノ秒。

[6] gen_ai.response.reasoning_time: 推論プロセスの継続時間。単位:ナノ秒。

[7] gen_ai.usage.cache_creation.input_tokens: この値は、すでに gen_ai.usage.input_tokens に含まれている必要があります。

[8] gen_ai.usage.cache_read.input_tokens: この値は、すでに gen_ai.usage.input_tokens に含まれている必要があります。

[9] gen_ai.input.messages: LLM 呼び出しの入力内容を記録します。メッセージは、モデルまたはエージェントに送信された順序で提供 しなければなりませんgen_ai.input.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[10] gen_ai.output.messages: モデルの出力内容を記録します。メッセージは、モデルまたはエージェントに送信された順序で提供 しなければなりませんgen_ai.output.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[11] gen_ai.system_instructions: システムプロンプトまたは指示を個別に記録します。システムプロンプトまたは指示を独立して取得できる場合は、このフィールドを使用します。それ以外の場合は、gen_ai.input.messages 属性に記録します。gen_ai.system_instructions.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[12] gen_ai.tool.definitions: LLM に渡されたツール定義を記録します。この属性は非常に大きくなる可能性があります。デフォルトでは、type フィールドと name フィールドのみを収集します。その他のすべてのフィールドは、OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[13] gen_ai.input.multimodal_metadata: モデルの入力内容で参照されているマルチモーダルデータを集約します。UriPart メッセージ のみを含みます。gen_ai.input.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[14] gen_ai.output.multimodal_metadata: モデルの出力内容で参照されているマルチモーダルデータを集約します。UriPart メッセージ のみを含みます。gen_ai.output.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

プロンプト、入力、出力の記録

ユーザー入力とモデル応答の記録を省略するか、スパンの属性に記録するか、イベント (ログ) として記録することができます。詳細については、「LLMアプリケーション会話履歴収集動作の制御」をご参照ください。

埋め込み

埋め込みは、LLM を使用してテキストを埋め込む単一のプロセスです。その後、類似性クエリを使用して問題解決を最適化できます。

gen_ai.operation.nameembeddings に設定します。gen_ai.operation.nameembeddings の場合、gen_ai.span.kindEMBEDDING として推論します。

スパンには {gen_ai.operation.name} {gen_ai.request.model} という名前を付けます。特殊なケースでは、他の命名形式も使用できます。

属性

属性キー

説明

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

文字列

EMBEDDING

必須

gen_ai.operation.name

セカンダリオペレーションタイプ [2]

文字列

embeddings

必須

gen_ai.provider.name

LLM プロバイダー

文字列

openai

必須

gen_ai.request.model

リクエストで指定されたモデル名

文字列

gpt-4

利用可能な場合は必須

gen_ai.embeddings.dimension.count

埋め込みオペレーションで期待される次元数

整数

1024

推奨

gen_ai.request.encoding_formats

埋め込みオペレーションで要求されるエンコーディングフォーマット

文字列配列

["base64"]; ["float", "binary"]

推奨

gen_ai.usage.input_tokens

入力テキストで消費されるトークン数

整数

10

任意

gen_ai.usage.total_tokens

埋め込みで消費される合計トークン数

整数

10

任意

[1] gen_ai.span.kind: LLM スパンカインド専用の列挙値。埋め込みスパンでは、この値は EMBEDDING でなければなりません

[2] gen_ai.operation.name: セカンダリオペレーションタイプ。

ツール

ツールスパンは、外部ツールへの呼び出しを表します。例として、計算機の呼び出しや、天気 API から最新の天気情報をリクエストする場合などがあります。

gen_ai.operation.nameexecute_tool に設定します。gen_ai.operation.nameexecute_tool の場合、gen_ai.span.kind を TOOL として推論します。

スパンには {gen_ai.operation.name} {gen_ai.tool.name} という名前を付けます。特殊なケースでは、他の命名形式も使用できます。

ツールの実行がスキルをロードする場合は、関連する gen_ai.skill.* フィールドを設定します。一般的なシナリオには、load_skillread_skill、または類似の操作などのツール呼び出しが含まれます。

属性

属性キー

説明

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

文字列

TOOL

必須

gen_ai.operation.name

セカンダリオペレーションタイプ

文字列

execute_tool

必須

gen_ai.tool.call.id

ツール ID

文字列

call_mszuSIzqtI65i1wAUOE8w5H4

推奨

gen_ai.tool.description

ツールの説明

文字列

Multiply two numbers

推奨

gen_ai.tool.name

ツール名

文字列

推奨

gen_ai.tool.type

ツールタイプ

文字列

function;extension;datastore

推奨

gen_ai.skill.id

GenAI スキルの一意の識別子。

文字列

skill_29bbe8a7

スキルをロードする場合は必須。

gen_ai.skill.name

GenAI スキル名。

文字列

code_review;change_workitem

スキルをロードする場合は必須。

gen_ai.skill.description

アプリケーションが提供する、GenAI スキルの自由形式の説明。

文字列

Execute code review on GitHub repositories

推奨

gen_ai.skill.version

GenAI スキルのバージョン。

文字列

0.2.0;v2.1.0

推奨

gen_ai.tool.call.arguments

ツール呼び出しの入力パラメーター [2]

文字列

{"location": "San Francisco?","date": "2025-10-01"}

任意

gen_ai.tool.call.result

ツール呼び出しの戻り値 [3]

文字列

{"temperature_range": {"high": 75,"low": 60},"conditions": "sunny"}

任意

[1] gen_ai.span.kind: LLM スパンカインド専用の列挙型。ツールスパンでは、この値は TOOL である必要があります

[2] gen_ai.tool.call.arguments: ツール呼び出しの入力パラメーター (JSON 文字列)。OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[3] gen_ai.tool.call.result: ツール呼び出しの戻り値 (JSON 文字列)。OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

エージェント

エージェントスパンは、インテリジェントエージェントのシナリオ、つまりより複雑なチェーンを表します。エージェントは、LLM の推論結果を使用して次のステップを決定します。これには、複数の LLM およびツール呼び出しが含まれる場合があり、段階的に最終的な回答に到達します。

gen_ai.operation.nameinvoke_agent または create_agent に設定します。gen_ai.operation.nameinvoke_agent または create_agent の場合、gen_ai.span.kind を AGENT として推論します。

スパンに {gen_ai.operation.name} {gen_ai.agent.name} という名前を付けます。特殊なケースでは、他の命名形式も使用可能です。

属性

属性キー

説明

タイプ

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

string

AGENT

必須

gen_ai.operation.name

セカンダリオペレーションタイプ [2]

string

invoke_agent; create_agent

必須

gen_ai.conversation.id

一意の会話 ID [3]

string

conv_5j66UpCpwteGg4YSxUnt7lPY

利用可能な場合は必須

gen_ai.agent.description

エージェントの説明

string

Helps with math problems; Generates fiction stories

利用可能な場合は必須

gen_ai.agent.id

一意のエージェント識別子

string

asst_5j66UpCpwteGg4YSxUnt7lPY

利用可能な場合は必須

gen_ai.agent.name

エージェント名

string

Math Tutor; Fiction Writer

利用可能な場合は必須

gen_ai.data_source.id

データソースの一意の識別子 [4]

string

H7STPQYOND

利用可能な場合は必須

gen_ai.usage.input_tokens

使用された入力トークン数

integer

100

推奨

gen_ai.usage.output_tokens

使用された出力トークン数

integer

200

推奨

gen_ai.usage.total_tokens

使用された合計トークン数

integer

300

推奨

gen_ai.usage.cache_creation.input_tokens

モデルプロバイダーのキャッシュに書き込まれたトークン数 [5]

integer

25

推奨

gen_ai.usage.cache_read.input_tokens

モデルプロバイダーのキャッシュから読み取られたトークン数 [6]

integer

50

推奨

gen_ai.input.messages

モデルの入力内容 [7]

string

[{"role": "user", "parts": [{"type": "text", "content": "Weather in Paris?"}]}, {"role": "assistant", "parts": [{"type": "tool_call", "id": "call_VSPygqKTWdrhaFErNvMV18Yl", "name":"get_weather", "arguments":{"location":"Paris"}}]}, {"role": "tool", "parts": [{"type": "tool_call_response", "id":"call_VSPygqKTWdrhaFErNvMV18Yl", "result":"rainy, 57°F"}]}]

任意

gen_ai.output.messages

モデルの出力内容 [8]

string

[{"role":"assistant","parts":[{"type":"text","content":"The weather in Paris is currently rainy with a temperature of 57°F."}],"finish_reason":"stop"}]

任意

gen_ai.system_instructions

システムプロンプトの内容 [9]

string

[{"type": "text", "content": "You are a helpful assistant"}]

任意

gen_ai.tool.definitions

ツール定義リスト [10]

string

[{"type":"function","name":"get_current_weather","description": "Get the current weather in a given location","parameters":{"type":"object","properties":{"location":{"type":"string","description":"The city and state, e.g. San Francisco, CA"},"unit": {"type":"string","enum":["celsius","fahrenheit"]}},"required":["location","unit"]}}]

任意

gen_ai.response.time_to_first_token

エージェントの初回トークン応答レイテンシー

integer

1000000

推奨

[1] gen_ai.span.kind:LLM スパンカインドの専用の列挙型です。エージェントスパンでは、この値は必ず AGENT である必要があります。

[2] gen_ai.operation.name:セカンダリオペレーションタイプです。

[3] gen_ai.conversation.id:一意の会話 ID です。容易に取得できる場合は収集してください。

[4] gen_ai.data_source.id:一意のデータソース ID です。これは、AI エージェントまたは RAG アプリケーションが依存するデータソースです。外部データベース、オブジェクトストレージサービス、ドキュメントセット、ウェブサイト、またはその他のストレージシステムが該当します。

[5] gen_ai.usage.cache_creation.input_tokens:この値は、すでに gen_ai.usage.input_tokens に含まれている必要があります。

[6] gen_ai.usage.cache_read.input_tokens:この値は、すでに gen_ai.usage.input_tokens に含まれている必要があります。

[7] gen_ai.input.messages:LLM 呼び出しの入力内容を記録します。メッセージは、モデルまたはエージェントに送信された順序で提供する必要があります。gen_ai.input.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効です。

[8] gen_ai.output.messages:モデルの出力内容を記録します。メッセージは、モデルまたはエージェントに送信された順序で提供する必要があります。gen_ai.output.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効です。

[9] gen_ai.system_instructions:システムプロンプトまたはシステム指示の内容を別途記録します。システムプロンプトまたはシステム指示の内容を個別に取得できる場合は、このフィールドを使用してください。それ以外の場合は、gen_ai.input.messages 属性に記録してください。gen_ai.system_instructions.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効です。

[10] gen_ai.tool.definitions:LLM に渡されるツール定義を記録します。この属性は非常に大きくなる可能性があります。デフォルトでは、type と name フィールドのみを収集します。OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ、他のすべてのフィールドを収集します。このフラグはデフォルトで有効です。

タスク

タスクスパンは、ローカル関数の呼び出しや、その他のアプリケーション定義ロジックの実行など、カスタムの内部メソッド呼び出しを表します。

スパンに run_task {gen_ai.task.name} という名前を付けます。特別な場合には、他の命名形式も使用できます。

説明

OpenTelemetry コミュニティは、このスパンタイプのセマンティック規約をまだ定義していません。そのため、gen_ai.operation.name は変更される可能性があります。

属性

属性キー

説明

タイプ

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

string

タスク

必須

gen_ai.operation.name

セカンダリオペレーションタイプ

string

run_task

必須

input.value

入力パラメーター

string

入力パラメーター、カスタム JSON 形式

任意

input.mime_type

入力 MIME タイプ

string

text/plain; application/json

任意

output.mime_type

出力 MIME タイプ

string

text/plain; application/json

任意

[1] gen_ai.span.kind は、LLM spanKind 用の専用の列挙型です。Task スパンでは、この値は TASK でなければなりません

エントリ

エントリスパンは、AI アプリケーションシステム呼び出しのエントリポイントを示します。

スパンに enter_ai_application_system という名前を付けます。特別な場合には、他の命名フォーマットも許容されます。

説明

OpenTelemetry コミュニティは、このスパンタイプに対するセマンティック規約をまだ定義していません。そのため、gen_ai.operation.name は変更される可能性があります。

属性

属性キー

説明

タイプ

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

string

エントリ

必須

gen_ai.operation.name

セカンダリオペレーションタイプ

string

enter

推奨

gen_ai.session.id

セッション ID

string

ddde34343-f93a-4477-3333-sdfsdaf

利用可能な場合は必須

gen_ai.user.id

エンドユーザー識別子

string

u-lK8JddD

利用可能な場合は必須

gen_ai.input.messages

モデルの入力内容 [2]

string

[{"role": "user", "parts": [{"type": "text", "content": "パリの天気は?"}]}, {"role": "assistant", "parts": [{"type": "tool_call", "id": "call_VSPygqKTWdrhaFErNvMV18Yl", "name":"get_weather", "arguments":{"location":"パリ"}}]}, {"role": "tool", "parts": [{"type": "tool_call_response", "id":" call_VSPygqKTWdrhaFErNvMV18Yl", "result":"雨、57°F"}]}]

任意

gen_ai.output.messages

モデルの出力内容 [3]

string

[{"role":"assistant","parts":[{"type":"text","content":"パリの天気は現在雨で、気温は 57°F です。"}],"finish_reason":"stop"}]

任意

gen_ai.response.time_to_first_token

ストリーミング応答のシナリオにおける最初のトークン応答レイテンシー [4]

integer

1000000

推奨

[1] gen_ai.span.kind: LLM spanKind 専用の列挙型。Entry スパンでは、この値は でなければなりません ENTRY

[2] gen_ai.input.messages: LLM 呼び出しの入力コンテンツを記録します。メッセージは、モデルまたはエージェントに送信された順序で必ず提供する必要があります。gen_ai.input.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[3] gen_ai.output.messages: モデルの出力内容を記録します。メッセージは、モデルまたはエージェントに送信された順序で提供される必要がありますgen_ai.output.messages.json に従ってください。

OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT フラグが有効な場合にのみ収集します。このフラグはデフォルトで有効になっています。

[4] gen_ai.response.time_to_first_token: サーバーがユーザーリクエストを受信してから、最初の応答パケットが返されるまでの時間。単位: ナノ秒。

ReAct ステップ

ステップスパンは、エージェント内の Reasoning-Acting の反復プロセスを示します。

スパンに react step という名前を付けます。特別な場合には、他の命名形式も許容されます。

説明

OpenTelemetry コミュニティは、このスパンタイプのセマンティック規約をまだ定義していません。そのため、 gen_ai.operation.name は変更される可能性があります。

属性

属性キー

説明

タイプ

要件レベル

gen_ai.span.kind

オペレーションタイプ [1]

string

ステップ

必須

gen_ai.operation.name

セカンダリオペレーションタイプ

string

react

推奨

gen_ai.react.finish_reason

この ReAct ラウンドが終了した理由

string

エラー

推奨

gen_ai.react.round

この ReAct 反復のラウンド番号 [2]

integer

1

推奨

[1] gen_ai.span.kind: LLM spanKind を表す専用の列挙型です。ReAct ステップスパンでは、この値は STEP である必要があります

[2] gen_ai.react.round:ReAct のラウンド数は 1 から始まり、イテレーションごとに 1 ずつ増加します。