# `WhisperCt2.Model`
[🔗](https://github.com/rubas/whisper_ct2/blob/v0.5.0/lib/whisper_ct2/model.ex#L1)

Loaded Whisper model handle.

Holds an opaque NIF reference plus cached metadata (`:sampling_rate`,
`:n_samples`, `:multilingual`). The reference is garbage-collected by the
BEAM when no longer reachable; CTranslate2 frees the model at that point.

# `compute_type`

```elixir
@type compute_type() ::
  :default
  | :auto
  | :float32
  | :float16
  | :bfloat16
  | :int8
  | :int8_float32
  | :int8_float16
  | :int8_bfloat16
  | :int16
```

# `device`

```elixir
@type device() :: :cpu | :cuda
```

# `t`

```elixir
@type t() :: %WhisperCt2.Model{
  compute_type: compute_type(),
  device: device(),
  multilingual: boolean(),
  n_samples: pos_integer(),
  path: Path.t(),
  ref: reference(),
  sampling_rate: pos_integer()
}
```

---

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