# `Vllm.Tracing.SpanAttributes`
[🔗](https://github.com/nshkrdotcom/vllm/blob/v0.3.0/lib/snakebridge_generated/vllm/tracing/span_attributes.ex#L7)

Wrapper for Python class SpanAttributes.

# `t`

```elixir
@opaque t()
```

# `gen_ai_latency_e2_e`

```elixir
@spec gen_ai_latency_e2_e(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_in_model_decode`

```elixir
@spec gen_ai_latency_time_in_model_decode(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_in_model_execute`

```elixir
@spec gen_ai_latency_time_in_model_execute(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_in_model_forward`

```elixir
@spec gen_ai_latency_time_in_model_forward(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_in_model_inference`

```elixir
@spec gen_ai_latency_time_in_model_inference(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_in_model_prefill`

```elixir
@spec gen_ai_latency_time_in_model_prefill(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_in_queue`

```elixir
@spec gen_ai_latency_time_in_queue(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_in_scheduler`

```elixir
@spec gen_ai_latency_time_in_scheduler(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_latency_time_to_first_token`

```elixir
@spec gen_ai_latency_time_to_first_token(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_request_id`

```elixir
@spec gen_ai_request_id(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_request_max_tokens`

```elixir
@spec gen_ai_request_max_tokens(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_request_n`

```elixir
@spec gen_ai_request_n(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_request_temperature`

```elixir
@spec gen_ai_request_temperature(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_request_top_p`

```elixir
@spec gen_ai_request_top_p(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_response_model`

```elixir
@spec gen_ai_response_model(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_usage_completion_tokens`

```elixir
@spec gen_ai_usage_completion_tokens(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_usage_num_sequences`

```elixir
@spec gen_ai_usage_num_sequences(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `gen_ai_usage_prompt_tokens`

```elixir
@spec gen_ai_usage_prompt_tokens(SnakeBridge.Ref.t()) ::
  {:ok, term()} | {:error, Snakepit.Error.t()}
```

# `new`

```elixir
@spec new(
  [term()],
  keyword()
) :: {:ok, SnakeBridge.Ref.t()} | {:error, Snakepit.Error.t()}
```

Initialize self.  See help(type(self)) for accurate signature.

## Parameters

- `args` (term())
- `kwargs` (term())

---

*Consult [api-reference.md](api-reference.md) for complete listing*
