diff --git a/.chloggen/genai-request-seed.yaml b/.chloggen/genai-request-seed.yaml new file mode 100644 index 0000000000..0c19365120 --- /dev/null +++ b/.chloggen/genai-request-seed.yaml @@ -0,0 +1,5 @@ +change_type: 'enhancement' +component: gen_ai +note: Introduce gen_ai.request.seed and deprecated gen_ai.openai.request.seed + +issues: [1710] diff --git a/docs/attributes-registry/gen-ai.md b/docs/attributes-registry/gen-ai.md index 6606150d2e..5ada7b3cdb 100644 --- a/docs/attributes-registry/gen-ai.md +++ b/docs/attributes-registry/gen-ai.md @@ -9,6 +9,7 @@ - [GenAI Attributes](#genai-attributes) - [OpenAI Attributes](#openai-attributes) - [Deprecated GenAI Attributes](#deprecated-genai-attributes) +- [Deprecated OpenAI GenAI Attributes](#deprecated-openai-genai-attributes) ## GenAI Attributes @@ -22,6 +23,7 @@ This document defines the attributes used to describe telemetry in the context o | `gen_ai.request.max_tokens` | int | The maximum number of tokens the model generates for a request. | `100` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.request.model` | string | The name of the GenAI model a request is being made to. | `gpt-4` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.request.presence_penalty` | double | The presence penalty setting for the GenAI request. | `0.1` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| `gen_ai.request.seed` | int | Requests with same seed value more likely to return same result. | `100` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.request.stop_sequences` | string[] | List of sequences that the model will use to stop generating further tokens. | `["forest", "lived"]` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.request.temperature` | double | The temperature setting for the GenAI request. | `0.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.request.top_k` | double | The top_k sampling setting for the GenAI request. | `1.0` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -88,7 +90,6 @@ Thie group defines attributes for OpenAI. | Attribute | Type | Description | Examples | Stability | |---|---|---|---|---| | `gen_ai.openai.request.response_format` | string | The response format that is requested. | `json` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| `gen_ai.openai.request.seed` | int | Requests with same seed value more likely to return same result. | `100` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.openai.request.service_tier` | string | The service tier requested. May be a specific tier, default, or auto. | `auto`; `default` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.openai.response.service_tier` | string | The service tier used for the response. | `scale`; `default` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | `gen_ai.openai.response.system_fingerprint` | string | A fingerprint to track any eventual change in the Generative AI environment. | `fp_44709d6fcb` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | @@ -122,3 +123,11 @@ Describes deprecated `gen_ai` attributes. | `gen_ai.prompt` | string | Deprecated, use Event API to report prompt contents. | `[{'role': 'user', 'content': 'What is the capital of France?'}]` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Removed, no replacement at this time. | | `gen_ai.usage.completion_tokens` | int | Deprecated, use `gen_ai.usage.output_tokens` instead. | `42` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `gen_ai.usage.output_tokens` attribute. | | `gen_ai.usage.prompt_tokens` | int | Deprecated, use `gen_ai.usage.input_tokens` instead. | `42` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `gen_ai.usage.input_tokens` attribute. | + +## Deprecated OpenAI GenAI Attributes + +Describes deprecated `gen_ai.openai` attributes. + +| Attribute | Type | Description | Examples | Stability | +|---|---|---|---|---| +| `gen_ai.openai.request.seed` | int | Deprecated, use `gen_ai.request.seed`. | `100` | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `gen_ai.request.seed` attribute. | diff --git a/docs/gen-ai/openai.md b/docs/gen-ai/openai.md index 0584c16344..35b274b17a 100644 --- a/docs/gen-ai/openai.md +++ b/docs/gen-ai/openai.md @@ -40,7 +40,7 @@ attributes and ones specific the OpenAI. | [`gen_ai.request.model`](/docs/attributes-registry/gen-ai.md) | string | The name of the GenAI model a request is being made to. [2] | `gpt-4` | `Required` | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`error.type`](/docs/attributes-registry/error.md) | string | Describes a class of error the operation ended with. [3] | `timeout`; `java.net.UnknownHostException`; `server_certificate_invalid`; `500` | `Conditionally Required` if the operation ended in an error | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | | [`gen_ai.openai.request.response_format`](/docs/attributes-registry/gen-ai.md) | string | The response format that is requested. | `json` | `Conditionally Required` if the request includes a response_format | ![Experimental](https://img.shields.io/badge/-experimental-blue) | -| [`gen_ai.openai.request.seed`](/docs/attributes-registry/gen-ai.md) | int | Requests with same seed value more likely to return same result. | `100` | `Conditionally Required` if the request includes a seed | ![Experimental](https://img.shields.io/badge/-experimental-blue) | +| [`gen_ai.openai.request.seed`](/docs/attributes-registry/gen-ai.md) | int | Deprecated, use `gen_ai.request.seed`. | `100` | `Conditionally Required` if the request includes a seed | ![Deprecated](https://img.shields.io/badge/-deprecated-red)
Replaced by `gen_ai.request.seed` attribute. | | [`gen_ai.openai.request.service_tier`](/docs/attributes-registry/gen-ai.md) | string | The service tier requested. May be a specific tier, default, or auto. | `auto`; `default` | `Conditionally Required` [4] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`gen_ai.openai.response.service_tier`](/docs/attributes-registry/gen-ai.md) | string | The service tier used for the response. | `scale`; `default` | `Conditionally Required` [5] | ![Experimental](https://img.shields.io/badge/-experimental-blue) | | [`server.port`](/docs/attributes-registry/server.md) | int | GenAI server port. [6] | `80`; `8080`; `443` | `Conditionally Required` If `server.address` is set. | ![Stable](https://img.shields.io/badge/-stable-lightgreen) | diff --git a/model/gen-ai/deprecated/registry-deprecated.yaml b/model/gen-ai/deprecated/registry-deprecated.yaml index 2115482f36..43270e6b00 100644 --- a/model/gen-ai/deprecated/registry-deprecated.yaml +++ b/model/gen-ai/deprecated/registry-deprecated.yaml @@ -28,3 +28,14 @@ groups: deprecated: "Removed, no replacement at this time." brief: "Deprecated, use Event API to report completions contents." examples: ["[{'role': 'assistant', 'content': 'The capital of France is Paris.'}]"] + - id: registry.gen_ai.openai.deprecated + type: attribute_group + brief: Describes deprecated `gen_ai.openai` attributes. + display_name: Deprecated OpenAI GenAI Attributes + attributes: + - id: gen_ai.openai.request.seed + stability: experimental + type: int + deprecated: Replaced by `gen_ai.request.seed` attribute. + brief: "Deprecated, use `gen_ai.request.seed`." + examples: [100] diff --git a/model/gen-ai/registry.yaml b/model/gen-ai/registry.yaml index 918b0a2f21..ddf79f91ed 100644 --- a/model/gen-ai/registry.yaml +++ b/model/gen-ai/registry.yaml @@ -100,6 +100,11 @@ groups: note: > In some GenAI systems the encoding formats are called embedding types. Also, some GenAI systems only accept a single format per request. + - id: gen_ai.request.seed + stability: experimental + type: int + brief: Requests with same seed value more likely to return same result. + examples: [100] - id: gen_ai.response.id stability: experimental type: string @@ -168,11 +173,6 @@ groups: brief: > Thie group defines attributes for OpenAI. attributes: - - id: gen_ai.openai.request.seed - stability: experimental - type: int - brief: Requests with same seed value more likely to return same result. - examples: [100] - id: gen_ai.openai.request.response_format stability: experimental type: