semantic-conventions/model/gen-ai/spans.yaml

87 lines
3.7 KiB
YAML

groups:
- id: trace.gen_ai.client.common
type: span
brief: >
Describes GenAI operation span.
attributes:
- ref: gen_ai.system
requirement_level: required
- ref: gen_ai.request.model
requirement_level: required
note: >
The name of the GenAI model a request is being made to. If the model is supplied by a vendor,
then the value must be the exact name of the model requested. If the model is a fine-tuned
custom model, the value should have a more specific name than the base model that's been fine-tuned.
- ref: gen_ai.operation.name
requirement_level: required
- ref: gen_ai.request.max_tokens
requirement_level: recommended
- ref: gen_ai.request.temperature
requirement_level: recommended
- ref: gen_ai.request.top_p
requirement_level: recommended
- ref: gen_ai.request.stop_sequences
requirement_level: recommended
- ref: gen_ai.request.frequency_penalty
requirement_level: recommended
- ref: gen_ai.request.presence_penalty
requirement_level: recommended
- ref: gen_ai.response.id
requirement_level: recommended
- ref: gen_ai.response.model
requirement_level: recommended
note: >
If available. The name of the GenAI model that provided the response. If the model is supplied by a vendor,
then the value must be the exact name of the model actually used. If the model is a
fine-tuned custom model, the value should have a more specific name than the base model that's been fine-tuned.
- ref: gen_ai.response.finish_reasons
requirement_level: recommended
- ref: gen_ai.usage.input_tokens
requirement_level: recommended
- ref: gen_ai.usage.output_tokens
requirement_level: recommended
- ref: server.address
brief: GenAI server address.
requirement_level: recommended
- ref: server.port
brief: GenAI server port.
requirement_level:
conditionally_required: If `server.address` is set.
- ref: error.type
requirement_level:
conditionally_required: "if the operation ended in an error"
note: |
The `error.type` SHOULD match the error code returned by the Generative AI provider or the client library,
the canonical name of exception that occurred, or another low-cardinality error identifier.
Instrumentations SHOULD document the list of errors they report.
- id: trace.gen_ai.client
extends: trace.gen_ai.client.common
brief: >
Describes a GenAI operation span.
attributes:
- ref: gen_ai.request.top_k
requirement_level: recommended
- id: trace.gen_ai.openai.client
extends: trace.gen_ai.client.common
brief: >
Describes an OpenAI operation span.
attributes:
- ref: gen_ai.openai.request.seed
requirement_level:
conditionally_required: if the request includes a seed
- ref: gen_ai.openai.request.response_format
requirement_level:
conditionally_required: if the request includes a response_format
- ref: gen_ai.openai.request.service_tier
requirement_level:
conditionally_required: if the request includes a service_tier and the value is not 'auto'
- ref: gen_ai.openai.response.service_tier
requirement_level:
conditionally_required: if the response was received and includes a service_tier
- ref: gen_ai.usage.input_tokens
brief: The number of tokens used in the prompt sent to OpenAI.
- ref: gen_ai.usage.output_tokens
brief: The number of tokens used in the completions from OpenAI.