# `Tinkex.Types.SampleRequest`
[🔗](https://github.com/North-Shore-AI/tinkex/blob/v0.4.0/lib/tinkex/types/sample_request.ex#L1)

Request for sampling/text generation.

Mirrors Python tinker.types.SampleRequest.

Supports two modes:
- Mode 1: Via sampling session (sampling_session_id)
- Mode 2: Direct model specification (base_model or model_path)

CRITICAL: prompt_logprobs is Optional[bool] = None, NOT bool = False.
This is a tri-state field where nil means "not set" and must be omitted from JSON.

# `t`

```elixir
@type t() :: %Tinkex.Types.SampleRequest{
  base_model: String.t() | nil,
  model_path: String.t() | nil,
  num_samples: pos_integer(),
  prompt: Tinkex.Types.ModelInput.t(),
  prompt_logprobs: boolean() | nil,
  sampling_params: Tinkex.Types.SamplingParams.t(),
  sampling_session_id: String.t() | nil,
  seq_id: integer() | nil,
  topk_prompt_logprobs: non_neg_integer(),
  type: String.t()
}
```

---

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