生成式AI指标的语义约定
状态: 开发中
当前正在使用 此文档 v1.36.0(或之前版本)的 GenAI 应用程序正在使用此文档。
- 默认情况下,不应更改他们发出的 GenAI约定的版本。约定包括但不限于属性、指标、跨度和事件名称、跨度种类和度量单位。
- 应引入一个名为
OTEL_SEMCONV_STABILITY_OPT_IN的环境变量,该变量包含一个逗号分隔的类别特定值列表。该列表包括:gen_ai_latest_experimental- 发出最新的实验性 GenAI 约定版本(由仪器支持)并停止发出旧版本(v1.36.0 或更早版本)。- 默认行为是继续发出当前指示所使用的任何版本的 GenAI 约定(1.36.0 或更早版本)。
此过渡计划将在 GenAI 约定被标记为稳定版本之前进行更新,以包含稳定版本。
生成式AI客户端指标
本节中描述的约定特定于生成式AI客户端应用程序。
免责声明: 这些是初步的生成式AI客户端指标仪器和属性,未来可能会添加更多。
以下指标仪器描述了生成式AI操作。操作可能是一个对 LLM 的请求、一个函数调用,或者一个更大生成式AI工作流中的其他独立动作。
各个系统可能包含其他特定于系统的属性。建议查阅系统特定的文档(如果可用)。
Metric: gen_ai.client.token.usage
当操作涉及 token 使用且计数易于获取时,推荐使用此指标。
例如,如果 GenAI 系统在流式响应中返回使用情况信息,则应使用它。或者,如果 GenAI 系统单独返回每个 token,则指示应计算输出 token 的数量并记录结果。
如果指示无法有效获取输入和/或输出 token 的数量,则可以允许用户启用离线 token 计数。否则,不得报告使用情况指标。
当系统同时报告已使用的 token 和计费 token 时,指示必须报告计费 token。
此指标应使用 ExplicitBucketBoundaries [1, 4, 16, 64, 256, 1024, 4096, 16384, 65536, 262144, 1048576, 4194304, 16777216, 67108864] 进行指定。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
gen_ai.client.token.usage | Histogram | {token} | 使用的输入和输出 token 的数量。 |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
gen_ai.operation.name | 必需 | 字符串 | 正在执行的操作的名称。[1] | chat;generate_content;text_completion | |
gen_ai.provider.name | 必需 | 字符串 | 由客户端或服务器仪器识别的生成式 AI 提供商。[2] | openai;gcp.gen_ai;gcp.vertex_ai | |
gen_ai.token.type | 必需 | 字符串 | 正在计数的 token 的类型。 | input; output | |
gen_ai.request.model | 有条件必需 如果可用。 | 字符串 | 请求的 GenAI 模型名称。 | gpt-4 | |
server.port | 如果设置了 server.address,则条件必需。 | int | GenAI 服务器端口。[3] | 80; 8080; 443 | |
gen_ai.response.model | 推荐 | 字符串 | 生成响应的模型名称。 | gpt-4-0613 | |
server.address | 推荐 | 字符串 | GenAI 服务器地址。[4] | example.com;10.1.2.80;/tmp/my.sock |
[1] gen_ai.operation.name: 如果预定义值之一适用,但特定系统使用不同名称,则建议在特定 GenAI 系统的语义约定中记录它,并在仪器中使用系统特定的名称。如果未记录不同名称,仪器库应使用适用的预定义值。
[2] gen_ai.provider.name: 属性应根据仪器尽可能多的了解来设置,并且可能与实际的模型提供商不同。
通过 OpenAI REST API 和相应的客户端库可以访问包括 Azure OpenAI、Gemini 和 AI 托管平台在内的多个提供商,但它们可能会代理或托管来自不同提供商的模型。
gen_ai.request.model、gen_ai.response.model 和 server.address 属性可能有助于识别实际使用的系统。
gen_ai.provider.name 属性充当一个区分器,用于在 GenAI 语义约定中识别该提供商特定的 GenAI 遥测格式。它应与特定于提供商的属性和信号一致。例如,与 AWS Bedrock 相关的 GenAI 跨度、指标和事件应将 gen_ai.provider.name 设置为 aws.bedrock,并包含适用的 aws.bedrock.* 属性,并且不应包含 openai.* 属性。
[3] server.port: 从客户端观察时,并且在通过中介进行通信时,server.port 应代表任何中介(例如代理)之后的服务器端口,如果可用。
[4] server.address: 从客户端观察时,并且在通过中介进行通信时,server.address 应代表任何中介(例如代理)之后的服务器地址,如果可用。
gen_ai.operation.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
chat | 聊天完成操作,例如 OpenAI Chat API | |
create_agent | 创建 GenAI 代理 | |
embeddings | 嵌入操作,例如 OpenAI 创建嵌入 API | |
execute_tool | 执行工具 | |
generate_content | 多模态内容生成操作,例如 Gemini 生成内容 | |
invoke_agent | 调用 GenAI 代理 | |
text_completion | 文本补全操作,例如 OpenAI Completions API (Legacy) |
gen_ai.provider.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
anthropic | Anthropic | |
aws.bedrock | AWS Bedrock | |
azure.ai.inference | Azure AI Inference | |
azure.ai.openai | Azure OpenAI | |
cohere | Cohere | |
deepseek | DeepSeek | |
gcp.gemini | Gemini [5] | |
gcp.gen_ai | 任何 Google 生成式 AI 端点 [6] | |
gcp.vertex_ai | Vertex AI [7] | |
groq | Groq | |
ibm.watsonx.ai | IBM Watsonx AI | |
mistral_ai | Mistral AI | |
openai | OpenAI | |
perplexity | Perplexity | |
x_ai | xAI |
[5]: 访问 'generativelanguage.googleapis.com' 端点时使用。也称为 AI Studio API。
[6]: 在特定后端未知时可能使用。
[7]: 访问 'aiplatform.googleapis.com' 端点时使用。
gen_ai.token.type 具有以下一系列已知值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
input | 输入 token(提示、输入等) | |
output | 输出 token(完成、响应等) |
Metric: gen_ai.client.operation.duration
此指标是必需的。
此指标应使用 ExplicitBucketBoundaries [0.01, 0.02, 0.04, 0.08, 0.16, 0.32, 0.64, 1.28, 2.56, 5.12, 10.24, 20.48, 40.96, 81.92] 进行指定。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
gen_ai.client.operation.duration | Histogram | s | GenAI 操作持续时间。 |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
gen_ai.operation.name | 必需 | 字符串 | 正在执行的操作的名称。[1] | chat;generate_content;text_completion | |
gen_ai.provider.name | 必需 | 字符串 | 由客户端或服务器仪器识别的生成式 AI 提供商。[2] | openai;gcp.gen_ai;gcp.vertex_ai | |
error.type | 如果操作以错误结束,则条件必需 | 字符串 | 描述操作结束的错误类别。[3] | timeout;java.net.UnknownHostException;server_certificate_invalid;500 | |
gen_ai.request.model | 有条件必需 如果可用。 | 字符串 | 请求的 GenAI 模型名称。 | gpt-4 | |
server.port | 如果设置了 server.address,则条件必需。 | int | GenAI 服务器端口。[4] | 80; 8080; 443 | |
gen_ai.response.model | 推荐 | 字符串 | 生成响应的模型名称。 | gpt-4-0613 | |
server.address | 推荐 | 字符串 | GenAI 服务器地址。[5] | example.com;10.1.2.80;/tmp/my.sock |
[1] gen_ai.operation.name: 如果预定义值之一适用,但特定系统使用不同名称,则建议在特定 GenAI 系统的语义约定中记录它,并在仪器中使用系统特定的名称。如果未记录不同名称,仪器库应使用适用的预定义值。
[2] gen_ai.provider.name: 属性应根据仪器尽可能多的了解来设置,并且可能与实际的模型提供商不同。
通过 OpenAI REST API 和相应的客户端库可以访问包括 Azure OpenAI、Gemini 和 AI 托管平台在内的多个提供商,但它们可能会代理或托管来自不同提供商的模型。
gen_ai.request.model、gen_ai.response.model 和 server.address 属性可能有助于识别实际使用的系统。
gen_ai.provider.name 属性充当一个区分器,用于在 GenAI 语义约定中识别该提供商特定的 GenAI 遥测格式。它应与特定于提供商的属性和信号一致。例如,与 AWS Bedrock 相关的 GenAI 跨度、指标和事件应将 gen_ai.provider.name 设置为 aws.bedrock,并包含适用的 aws.bedrock.* 属性,并且不应包含 openai.* 属性。
[3] error.type: error.type 应匹配生成式 AI 提供商或客户端库返回的错误代码、发生的异常的规范名称或另一个低基数错误标识符。仪器应记录它们报告的错误列表。
[4] server.port: 从客户端观察时,并且在通过中介进行通信时,server.port 应代表任何中介(例如代理)之后的服务器端口,如果可用。
[5] server.address: 从客户端观察时,并且在通过中介进行通信时,server.address 应代表任何中介(例如代理)之后的服务器地址,如果可用。
error.type 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
_OTHER | 当检测不到自定义值时使用的回退错误值。 |
gen_ai.operation.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
chat | 聊天完成操作,例如 OpenAI Chat API | |
create_agent | 创建 GenAI 代理 | |
embeddings | 嵌入操作,例如 OpenAI 创建嵌入 API | |
execute_tool | 执行工具 | |
generate_content | 多模态内容生成操作,例如 Gemini 生成内容 | |
invoke_agent | 调用 GenAI 代理 | |
text_completion | 文本补全操作,例如 OpenAI Completions API (Legacy) |
gen_ai.provider.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
anthropic | Anthropic | |
aws.bedrock | AWS Bedrock | |
azure.ai.inference | Azure AI Inference | |
azure.ai.openai | Azure OpenAI | |
cohere | Cohere | |
deepseek | DeepSeek | |
gcp.gemini | Gemini [6] | |
gcp.gen_ai | 任何 Google 生成式 AI 端点 [7] | |
gcp.vertex_ai | Vertex AI [8] | |
groq | Groq | |
ibm.watsonx.ai | IBM Watsonx AI | |
mistral_ai | Mistral AI | |
openai | OpenAI | |
perplexity | Perplexity | |
x_ai | xAI |
[6]: 访问 'generativelanguage.googleapis.com' 端点时使用。也称为 AI Studio API。
[7]: 在特定后端未知时可能使用。
[8]: 访问 'aiplatform.googleapis.com' 端点时使用。
生成式AI模型服务器指标
以下指标仪器描述了生成式AI模型服务器的操作指标。它包括功能性和性能指标。
Metric: gen_ai.server.request.duration
此指标推荐用于报告模型服务器的延迟,以每次请求的时间来衡量。
此指标应使用 ExplicitBucketBoundaries [0.01, 0.02, 0.04, 0.08, 0.16, 0.32, 0.64, 1.28, 2.56, 5.12, 10.24, 20.48, 40.96, 81.92] 进行指定。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
gen_ai.server.request.duration | Histogram | s | 生成式AI服务器请求持续时间,例如到最后一个字节或最后一个输出 token 的时间。 |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
gen_ai.operation.name | 必需 | 字符串 | 正在执行的操作的名称。[1] | chat;generate_content;text_completion | |
gen_ai.provider.name | 必需 | 字符串 | 由客户端或服务器仪器识别的生成式 AI 提供商。[2] | openai;gcp.gen_ai;gcp.vertex_ai | |
error.type | 如果操作以错误结束,则条件必需 | 字符串 | 描述操作结束的错误类别。[3] | timeout;java.net.UnknownHostException;server_certificate_invalid;500 | |
gen_ai.request.model | 有条件必需 如果可用。 | 字符串 | 请求的 GenAI 模型名称。 | gpt-4 | |
server.port | 如果设置了 server.address,则条件必需。 | int | GenAI 服务器端口。[4] | 80; 8080; 443 | |
gen_ai.response.model | 推荐 | 字符串 | 生成响应的模型名称。 | gpt-4-0613 | |
server.address | 推荐 | 字符串 | GenAI 服务器地址。[5] | example.com;10.1.2.80;/tmp/my.sock |
[1] gen_ai.operation.name: 如果预定义值之一适用,但特定系统使用不同名称,则建议在特定 GenAI 系统的语义约定中记录它,并在仪器中使用系统特定的名称。如果未记录不同名称,仪器库应使用适用的预定义值。
[2] gen_ai.provider.name: 属性应根据仪器尽可能多的了解来设置,并且可能与实际的模型提供商不同。
通过 OpenAI REST API 和相应的客户端库可以访问包括 Azure OpenAI、Gemini 和 AI 托管平台在内的多个提供商,但它们可能会代理或托管来自不同提供商的模型。
gen_ai.request.model、gen_ai.response.model 和 server.address 属性可能有助于识别实际使用的系统。
gen_ai.provider.name 属性充当一个区分器,用于在 GenAI 语义约定中识别该提供商特定的 GenAI 遥测格式。它应与特定于提供商的属性和信号一致。例如,与 AWS Bedrock 相关的 GenAI 跨度、指标和事件应将 gen_ai.provider.name 设置为 aws.bedrock,并包含适用的 aws.bedrock.* 属性,并且不应包含 openai.* 属性。
[3] error.type: error.type 应匹配生成式AI服务返回的错误代码、发生的异常的规范名称,或其他低基数错误标识符。指示应记录其报告的错误列表。
[4] server.port: 从客户端观察时,并且在通过中介进行通信时,server.port 应代表任何中介(例如代理)之后的服务器端口,如果可用。
[5] server.address: 从客户端观察时,并且在通过中介进行通信时,server.address 应代表任何中介(例如代理)之后的服务器地址,如果可用。
error.type 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
_OTHER | 当检测不到自定义值时使用的回退错误值。 |
gen_ai.operation.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
chat | 聊天完成操作,例如 OpenAI Chat API | |
create_agent | 创建 GenAI 代理 | |
embeddings | 嵌入操作,例如 OpenAI 创建嵌入 API | |
execute_tool | 执行工具 | |
generate_content | 多模态内容生成操作,例如 Gemini 生成内容 | |
invoke_agent | 调用 GenAI 代理 | |
text_completion | 文本补全操作,例如 OpenAI Completions API (Legacy) |
gen_ai.provider.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
anthropic | Anthropic | |
aws.bedrock | AWS Bedrock | |
azure.ai.inference | Azure AI Inference | |
azure.ai.openai | Azure OpenAI | |
cohere | Cohere | |
deepseek | DeepSeek | |
gcp.gemini | Gemini [6] | |
gcp.gen_ai | 任何 Google 生成式 AI 端点 [7] | |
gcp.vertex_ai | Vertex AI [8] | |
groq | Groq | |
ibm.watsonx.ai | IBM Watsonx AI | |
mistral_ai | Mistral AI | |
openai | OpenAI | |
perplexity | Perplexity | |
x_ai | xAI |
[6]: 访问 'generativelanguage.googleapis.com' 端点时使用。也称为 AI Studio API。
[7]: 在特定后端未知时可能使用。
[8]: 访问 'aiplatform.googleapis.com' 端点时使用。
Metric: gen_ai.server.time_per_output_token
此指标推荐用于报告模型服务器的延迟,以生成第一个 token 后的每个 token 的时间来衡量,适用于支持 LLM 服务的所有模型服务器。它通过从请求持续时间中减去生成第一个输出 token 所需的时间,然后将剩余时间除以生成的第一个 token 之后的输出 token 数量来计算。这对于衡量 LLM 推理的解码阶段的性能至关重要。
此指标应使用 ExplicitBucketBoundaries [0.01, 0.025, 0.05, 0.075, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.75, 1.0, 2.5] 进行指定。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
gen_ai.server.time_per_output_token | Histogram | s | 成功响应后,生成第一个 token 之后的每个输出 token 所花费的时间。 |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
gen_ai.operation.name | 必需 | 字符串 | 正在执行的操作的名称。[1] | chat;generate_content;text_completion | |
gen_ai.provider.name | 必需 | 字符串 | 由客户端或服务器仪器识别的生成式 AI 提供商。[2] | openai;gcp.gen_ai;gcp.vertex_ai | |
gen_ai.request.model | 有条件必需 如果可用。 | 字符串 | 请求的 GenAI 模型名称。 | gpt-4 | |
server.port | 如果设置了 server.address,则条件必需。 | int | GenAI 服务器端口。[3] | 80; 8080; 443 | |
gen_ai.response.model | 推荐 | 字符串 | 生成响应的模型名称。 | gpt-4-0613 | |
server.address | 推荐 | 字符串 | GenAI 服务器地址。[4] | example.com;10.1.2.80;/tmp/my.sock |
[1] gen_ai.operation.name: 如果预定义值之一适用,但特定系统使用不同名称,则建议在特定 GenAI 系统的语义约定中记录它,并在仪器中使用系统特定的名称。如果未记录不同名称,仪器库应使用适用的预定义值。
[2] gen_ai.provider.name: 属性应根据仪器尽可能多的了解来设置,并且可能与实际的模型提供商不同。
通过 OpenAI REST API 和相应的客户端库可以访问包括 Azure OpenAI、Gemini 和 AI 托管平台在内的多个提供商,但它们可能会代理或托管来自不同提供商的模型。
gen_ai.request.model、gen_ai.response.model 和 server.address 属性可能有助于识别实际使用的系统。
gen_ai.provider.name 属性充当一个区分器,用于在 GenAI 语义约定中识别该提供商特定的 GenAI 遥测格式。它应与特定于提供商的属性和信号一致。例如,与 AWS Bedrock 相关的 GenAI 跨度、指标和事件应将 gen_ai.provider.name 设置为 aws.bedrock,并包含适用的 aws.bedrock.* 属性,并且不应包含 openai.* 属性。
[3] server.port: 从客户端观察时,并且在通过中介进行通信时,server.port 应代表任何中介(例如代理)之后的服务器端口,如果可用。
[4] server.address: 从客户端观察时,并且在通过中介进行通信时,server.address 应代表任何中介(例如代理)之后的服务器地址,如果可用。
gen_ai.operation.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
chat | 聊天完成操作,例如 OpenAI Chat API | |
create_agent | 创建 GenAI 代理 | |
embeddings | 嵌入操作,例如 OpenAI 创建嵌入 API | |
execute_tool | 执行工具 | |
generate_content | 多模态内容生成操作,例如 Gemini 生成内容 | |
invoke_agent | 调用 GenAI 代理 | |
text_completion | 文本补全操作,例如 OpenAI Completions API (Legacy) |
gen_ai.provider.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
anthropic | Anthropic | |
aws.bedrock | AWS Bedrock | |
azure.ai.inference | Azure AI Inference | |
azure.ai.openai | Azure OpenAI | |
cohere | Cohere | |
deepseek | DeepSeek | |
gcp.gemini | Gemini [5] | |
gcp.gen_ai | 任何 Google 生成式 AI 端点 [6] | |
gcp.vertex_ai | Vertex AI [7] | |
groq | Groq | |
ibm.watsonx.ai | IBM Watsonx AI | |
mistral_ai | Mistral AI | |
openai | OpenAI | |
perplexity | Perplexity | |
x_ai | xAI |
[5]: 访问 'generativelanguage.googleapis.com' 端点时使用。也称为 AI Studio API。
[6]: 在特定后端未知时可能使用。
[7]: 访问 'aiplatform.googleapis.com' 端点时使用。
Metric: gen_ai.server.time_to_first_token
此指标推荐用于报告模型服务器的延迟,以生成响应的第一个 token 所花费的时间来衡量,适用于支持 LLM 服务的所有模型服务器。它有助于衡量在队列中和预填充阶段花费的时间。这对于流式请求尤为重要。它在请求级别计算,并使用下面提到的桶作为直方图报告。
此指标应使用 ExplicitBucketBoundaries [0.001, 0.005, 0.01, 0.02, 0.04, 0.06, 0.08, 0.1, 0.25, 0.5, 0.75, 1.0, 2.5, 5.0, 7.5, 10.0] 进行指定。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
gen_ai.server.time_to_first_token | Histogram | s | 成功响应的第一个 token 生成时间。 |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
gen_ai.operation.name | 必需 | 字符串 | 正在执行的操作的名称。[1] | chat;generate_content;text_completion | |
gen_ai.provider.name | 必需 | 字符串 | 由客户端或服务器仪器识别的生成式 AI 提供商。[2] | openai;gcp.gen_ai;gcp.vertex_ai | |
gen_ai.request.model | 有条件必需 如果可用。 | 字符串 | 请求的 GenAI 模型名称。 | gpt-4 | |
server.port | 如果设置了 server.address,则条件必需。 | int | GenAI 服务器端口。[3] | 80; 8080; 443 | |
gen_ai.response.model | 推荐 | 字符串 | 生成响应的模型名称。 | gpt-4-0613 | |
server.address | 推荐 | 字符串 | GenAI 服务器地址。[4] | example.com;10.1.2.80;/tmp/my.sock |
[1] gen_ai.operation.name: 如果预定义值之一适用,但特定系统使用不同名称,则建议在特定 GenAI 系统的语义约定中记录它,并在仪器中使用系统特定的名称。如果未记录不同名称,仪器库应使用适用的预定义值。
[2] gen_ai.provider.name: 属性应根据仪器尽可能多的了解来设置,并且可能与实际的模型提供商不同。
通过 OpenAI REST API 和相应的客户端库可以访问包括 Azure OpenAI、Gemini 和 AI 托管平台在内的多个提供商,但它们可能会代理或托管来自不同提供商的模型。
gen_ai.request.model、gen_ai.response.model 和 server.address 属性可能有助于识别实际使用的系统。
gen_ai.provider.name 属性充当一个区分器,用于在 GenAI 语义约定中识别该提供商特定的 GenAI 遥测格式。它应与特定于提供商的属性和信号一致。例如,与 AWS Bedrock 相关的 GenAI 跨度、指标和事件应将 gen_ai.provider.name 设置为 aws.bedrock,并包含适用的 aws.bedrock.* 属性,并且不应包含 openai.* 属性。
[3] server.port: 从客户端观察时,并且在通过中介进行通信时,server.port 应代表任何中介(例如代理)之后的服务器端口,如果可用。
[4] server.address: 从客户端观察时,并且在通过中介进行通信时,server.address 应代表任何中介(例如代理)之后的服务器地址,如果可用。
gen_ai.operation.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
chat | 聊天完成操作,例如 OpenAI Chat API | |
create_agent | 创建 GenAI 代理 | |
embeddings | 嵌入操作,例如 OpenAI 创建嵌入 API | |
execute_tool | 执行工具 | |
generate_content | 多模态内容生成操作,例如 Gemini 生成内容 | |
invoke_agent | 调用 GenAI 代理 | |
text_completion | 文本补全操作,例如 OpenAI Completions API (Legacy) |
gen_ai.provider.name 具有以下知名值列表。如果其中之一适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
anthropic | Anthropic | |
aws.bedrock | AWS Bedrock | |
azure.ai.inference | Azure AI Inference | |
azure.ai.openai | Azure OpenAI | |
cohere | Cohere | |
deepseek | DeepSeek | |
gcp.gemini | Gemini [5] | |
gcp.gen_ai | 任何 Google 生成式 AI 端点 [6] | |
gcp.vertex_ai | Vertex AI [7] | |
groq | Groq | |
ibm.watsonx.ai | IBM Watsonx AI | |
mistral_ai | Mistral AI | |
openai | OpenAI | |
perplexity | Perplexity | |
x_ai | xAI |
[5]: 访问 'generativelanguage.googleapis.com' 端点时使用。也称为 AI Studio API。
[6]: 在特定后端未知时可能使用。
[7]: 访问 'aiplatform.googleapis.com' 端点时使用。