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

Application Real-Time Monitoring Service:LLM Trace フィールド定義

最終更新日:Nov 09, 2025

Alibaba Cloud は、OpenTelemetry の標準と大規模言語モデル (LLM) アプリケーションドメインの概念に基づいて LLM Trace フィールドを定義しています。これらのフィールドは、Attributes、Resources、Events を拡張して、LLM アプリケーションのトレースデータのセマンティクスを記述します。これらは、LLM の入出力リクエストやトークン消費などの主要な操作を反映します。Completion、Chat、検索拡張生成 (RAG)、Agent、Tool などのシナリオに対して、コンテキストを認識した豊富なセマンティックデータを提供し、データのトレースとレポート作成を容易にします。これらのセマンティックフィールドは、コミュニティの進化に伴い、継続的に更新および最適化されます。

トップレベルの Span フィールド定義は、OpenTelemetry のオープン標準に基づいています。Managed Service for OpenTelemetry によって保存されるトップレベルの Trace フィールドの詳細については、「Trace 分析パラメーター」をご参照ください。

説明

LLM 関連の SpanKind は Attribute です。これは、OpenTelemetry Traces で定義されている Span kind とは異なります。

共通フィールド

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.session.id

セッション ID

String

ddde34343-f93a-4477-33333-sdfsdaf

条件付きで必須

gen_ai.user.id

アプリケーションのエンドユーザーの ID。

String

u-lK8JddD

条件付きで必須

gen_ai.span.kind

操作タイプ

String

LLM Span Kind をご参照ください

必須

gen_ai.framework

使用されるフレームワークのタイプ。

String

langchain; llama_index

条件付きで必須

Resources

ResourceKey

説明

タイプ

値の例

要件レベル

service.name

アプリケーション名

String

test-easy-rag

必須

Chain

Chain は、LLM を他の複数のコンポーネントと接続して複雑なタスクを実行するツールです。これには、Retrieval、Embedding、LLM の呼び出し、さらにはネストされた Chain が含まれる場合があります。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。Chain の場合、値は 必ず CHAIN にする必要があります。

String

CHAIN

必須

gen_ai.operation.name

セカンダリ操作タイプ

String

WORKFLOW; TASK

条件付きで必須

input.value

入力内容

String

Who Are You!

推奨

output.value

返される内容

String

I am ChatBot

推奨

gen_ai.user.time_to_first_token

最初のトークンまでの時間。サーバーがユーザーのリクエストを受信してから、応答の最初のパケットが返されるまでの全体的な時間。単位はナノ秒です。

Integer

1000000

推奨

Retriever

Retriever は通常、ベクターストアまたはデータベースにアクセスしてデータを取得します。これは、LLM の応答の精度と効率を向上させるためにコンテキストを補足するためによく使用されます。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。Retriever の場合、値は 必ず RETRIEVER にする必要があります。

String

RETRIEVER

必須

retrieval.query

取得のための短いクエリ。

String

what is the topic in xxx?

推奨

retrieval.document

取得されたドキュメントのリスト。

JSON array

[{"document":{"content":"This is a sample document content.","metadata":{"source":"https://aliyun.com/xxx/wiki","title":"How LLM Works"},"score":0.7680862242896571,"id":"7af0e529-2531-42d9-bf3a-d5074a73c184"}}]

必須

Reranker

Reranker は、クエリとの関連性に基づいて複数の入力ドキュメントをソートします。LLM のために上位 K 個のドキュメントを返すことがあります。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。Reranker の場合、値は 必ず RERANKER にする必要があります。

String

RERANKER

必須

reranker.query

Reranker リクエストの入力パラメーター。

String

How to format timestamp?

任意

reranker.model_name

Reranker で使用されるモデルの名前。

String

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

任意

reranker.top_k

再ランキング後のランク。

Integer

3

任意

reranker.input_document

再ランキングのための入力ドキュメントに関連するメタデータ。JSON 配列構造です。メタデータには、パス、ファイル名、ソースなどの基本的なドキュメント情報が含まれます。

String

-

必須

reranker.output_document

再ランキング後の出力ドキュメントに関連するメタデータ。JSON 配列構造です。メタデータには、パス、ファイル名、ソースなどの基本的なドキュメント情報が含まれます。

String

-

必須

LLM

LLM スパンは、SDK や OpenAPI を使用してさまざまな大規模モデルに推論やテキスト生成をリクエストするなど、大規模言語モデルへの呼び出しを示します。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。LLM の場合、値は 必ず LLM にする必要があります。

String

LLM

必須

gen_ai.operation.name

セカンダリ操作タイプ

String

chat; completion

任意

gen_ai.prompt_template.template

プロンプトテンプレート

String

Weather forecast for {city} on {date}

任意

gen_ai.prompt_template.variables

プロンプトテンプレートの特定の値。

String

{ context: "<context from retrieval>", subject: "math" }

任意

gen_ai.prompt_template.version

プロンプトテンプレートのバージョン番号。

String

1.0

任意

gen_ai.system

大規模モデルのプロバイダー。

String

openai

必須

gen_ai.request.parameters

LLM 呼び出しの入力パラメーター。

String

{"temperature": 0.7}

任意

gen_ai.model_name

モデル名

String

gpt-4

任意

gen_ai.conversation.id

会話の一意の ID。イベントトラッキング中にセッション ID を簡単に取得できる場合は、これを収集する必要があります

String

conv_5j66UpCpwteGg4YSxUnt7lPY

条件付きで必須

gen_ai.output.type

LLM リクエストで指定された出力タイプ。利用可能で、リクエストが出力フォーマットなどのタイプを指定している場合は、これを収集する必要があります

String

text; json; image; audio

条件付きで必須

gen_ai.request.choice.count

LLM にリクエストされた候補生成の数。

Int

3

値が 1 でない場合に条件付きで必須

gen_ai.request.model

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

String

gpt-4

必須

gen_ai.request.seed

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

String

gpt-4

条件付きで必須

gen_ai.request.frequency_penalty

LLM リクエストで設定された周波数ペナルティ。

Float

0.1

推奨

gen_ai.request.max_tokens

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

Integer

100

推奨

gen_ai.request.presence_penalty

LLM リクエストで設定された存在ペナルティ。

Float

0.1

推奨

gen_ai.request.temperature

LLM リクエストで指定された温度。

Float

0.1

推奨

gen_ai.request.top_p

LLM リクエストで指定された top_p 値。

Float

1.0

推奨

gen_ai.request.top_k

LLM リクエストで指定された top_k 値。

Float

1.0

推奨

gen_ai.request.is_stream

応答がストリーミングされるかどうかを示します。このフィールドが存在しない場合、値は false と見なされます。

Boolean

false

推奨

gen_ai.request.stop_sequences

LLM の停止シーケンス。

String[]

["stop"]

推奨

gen_ai.request.tool_calls

ツール呼び出しの内容。(非推奨になり、gen_ai.tool.definitions に置き換えられる予定です)。

String

[{"tool_call.function.name": "get_current_weather"}]

推奨

gen_ai.response.id

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

String

gpt-4-0613

推奨

gen_ai.response.model

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

String

gpt-4-0613

推奨

gen_ai.response.finish_reason

LLM が生成を停止した理由。

String[]

["stop"]

推奨

gen_ai.response.time_to_first_token

ストリーミング応答シナリオにおける大規模モデル自体の最初のトークンまでの時間。サーバーがユーザーのリクエストを受信してから、応答の最初のパケットが返されるまでの全体的な時間を表します。単位はナノ秒です。

Integer

1000000

推奨

gen_ai.response.reasoning_time

推論モデルの推論時間。応答における推論プロセスの期間を表します。単位はミリ秒です。

Integer

1248

推奨

gen_ai.usage.input_tokens

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

Integer

100

推奨

gen_ai.usage.output_tokens

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

Integer

200

推奨

gen_ai.usage.total_tokens

使用されたトークンの総数。

Integer

300

推奨

gen_ai.input.messages_ref

モデル入力内容へのリンク。

String

s3://acme.prod.support_bot.chats.2025/conv_1234/run_42.json

推奨

gen_ai.output.messages_ref

モデル出力内容へのリンク。

String

s3://acme.prod.support_bot.chats.2025/conv_1234/run_42.json

推奨

gen_ai.system.instructions_ref

システムプロンプトの内容へのリンク。システムプロンプト (/system instruction) の内容への外部リンクを個別に記録するために使用されます。システムプロンプトの内容を個別に取得できる場合は、このフィールドに記録する必要があります。システムプロンプトの内容がモデル呼び出しの一部である場合は、gen_ai.input.messages_ref プロパティに対応するリンクに記録する必要があります。

String

s3://acme.prod.support_bot.chats.2025/conv_1234/invocation_42.json

利用可能な場合は推奨

gen_ai.input.messages

モデルの入力内容。メッセージは、モデルまたはエージェントに送信される順序で提供される必要があります

デフォルトでは、ユーザーが明示的に有効にしない限り、この情報は収集されるべきではありません

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

モデルの出力内容。メッセージは、モデルまたはエージェントに送信される順序で提供される必要があります

デフォルトでは、ユーザーが明示的に有効にしない限り、この情報は収集されるべきではありません

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

システムプロンプトの内容。システムプロンプト (/system instruction) の内容を JSON 文字列として個別に記録するために使用されます。システムプロンプトの内容を個別に取得できる場合は、このフィールドに記録する必要があります。システムプロンプトの内容がモデル呼び出しの一部である場合は、gen_ai.input.messages プロパティに記録する必要があります。

デフォルトでは、ユーザーが明示的に有効にしない限り、この情報は収集されるべきではありません

String

{"role": "system", "message": {"type": "text", "content": "You are a helpful assistant"}}

任意

gen_ai.response.reasoning_content

推論モデルからの推論内容。応答における推論プロセスの内容を表します。デフォルトの長さ制限は 1024 文字です。この制限を超える内容は切り捨てられる必要があります。

String

Okay, let's tackle this question about xxx.

任意

gen_ai.tool.definitions

ツール定義

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"]}}]

推奨

Embedding

Embedding スパンは、テキストを大規模モデルに埋め込む操作など、埋め込みプロセスを示します。これは後で類似性クエリに使用して、後続の操作を最適化できます。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。Embedding の場合、値は 必ず EMBEDDING にする必要があります。

String

EMBEDDING

必須

gen_ai.usage.input_tokens

入力テキストのトークン消費量。

Integer

10

任意

gen_ai.usage.total_tokens

埋め込みの総トークン消費量。

Integer

10

任意

embedding.model_name

埋め込みモデルの名前。(非推奨になり、gen_ai.request.model に置き換えられる予定です)。

String

text-embedding-v1

任意

embedding.embedding_output

埋め込み結果。(非推奨)。

String

-

任意

gen_ai.operation.name

セカンダリ操作タイプ

String

embeddings

条件付きで必須

gen_ai.encoding.formats

エンコーディングフォーマット

String

["base64"]

推奨

gen_ai.embeddings.dimension.count

埋め込みディメンションの数。

Integer

100

推奨

gen_ai.request.model

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

String

text-embedding-v1

条件付きで必須

Tool

Tool スパンは、外部ツールへの呼び出しを示します。たとえば、電卓を呼び出したり、天気 API から最新の天気情報をリクエストしたりすることが含まれる場合があります。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。Tool の場合、値は 必ず TOOL にする必要があります。

String

TOOL

必須

tool.name

ツール名。(非推奨になり、gen_ai.tool.name に置き換えられる予定です)。

String

WeatherAPI

必須

tool.description

ツールの説明。(非推奨になり、gen_ai.tool.description に置き換えられる予定です)。

String

An API to get weather data.

必須

tool.parameters

ツールの入力パラメーター。(非推奨になり、gen_ai.tool.call.arguments に置き換えられる予定です)。

String

{'a': 'int' }

必須

gen_ai.operation.name

セカンダリ操作タイプ

String

execute_tool

条件付きで必須

gen_ai.tool.call.id

ツール ID

String

call_mszuSIzqtI65i1wAUOE8w5H4

推奨

gen_ai.tool.description

ツールの説明

String

Multiply two numbers

推奨

gen_ai.tool.name

ツール名

String

get_weather

推奨

gen_ai.tool.type

ツールタイプ

String

function; extension; datastore

推奨

gen_ai.tool.call.arguments

ツール呼び出しの入力引数。

String

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

任意

gen_ai.tool.call.result

ツール呼び出しの戻り値。

String

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

任意

Agent

Agent スパンは、エージェントシナリオを表します。これは、大規模モデルの推論結果に基づいて次のステップの決定を行う、より複雑なタイプの Chain です。たとえば、LLM や Tool への複数回の呼び出しを行い、最終的な回答に到達するために段階的な決定を下すことが含まれる場合があります。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。Agent の場合、値は 必ず AGENT にする必要があります。

String

AGENT

必須

input.value

入力パラメーター。元の入力を記録します。

String

Please help me plan xxxx

必須

input.mime_type

入力 MIME タイプ。

String

text/plain; application/json

任意

output.value

戻り結果。最終的な出力を返します。

String

Planning is complete. Please check the result xxx

必須

output.mime_type

出力 MIME タイプ。

String

text/plain; application/json

任意

gen_ai.response.time_to_first_token

Agent の最初のトークンまでの時間。サーバーがユーザーのリクエストを受信してから、応答の最初のパケットが返されるまでの全体的な時間を表します。単位はナノ秒です。

Integer

1000000

推奨

Task

Task スパンは、内部のカスタムメソッドを示します。たとえば、ローカル関数やその他のアプリケーション定義ロジックの呼び出しが含まれる場合があります。

Attributes

AttributeKey

説明

タイプ

値の例

要件レベル

gen_ai.span.kind

操作タイプ。LLM spanKind 専用の列挙です。Task の場合、値は 必ず TASK にする必要があります。

String

TASK

必須

input.value

入力パラメーター

String

カスタム JSON フォーマット

任意

input.mime_type

入力 MIME タイプ。

String

text/plain; application/json

任意

output.mime_type

出力 MIME タイプ。

String

text/plain; application/json

任意