---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/interfaces/TransformersJsSttAdapterOptions.md
description: Constructor options for the transformers.js STT adapter.
---

# Interface: TransformersJsSttAdapterOptions

Defined in: [src/batteries/specialists/stt/transformers\_js/types.ts:105](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L105)

Constructor options for the transformers.js STT adapter.

## Remarks

`model` is required — no default, since Whisper-family models are multi-hundred-megabyte downloads
and this battery never triggers one silently (the loud-config rule shared with every on-device
battery).

## Extends

* [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md)

## Properties

| Property                                               | Type                                                                                                                                                             | Description                                                                                                                                                                                                                                                                                                                                                                                       | Inherited from                                                                                                                                                                                           | Defined in                                                                                                                                                                    |
| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|  `chunkLengthS?`     | `number`                                                                                                                                                         | The length of audio chunks to process, in seconds, forwarded to the pipeline call. Default `30`.                                                                                                                                                                                                                                                                                                  | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:120](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L120) |
|  `createPipeline?` | [`CreateTransformersJsSttPipeline`](../type-aliases/CreateTransformersJsSttPipeline.md)                                                                          | Override the pipeline factory. Default: `pipeline('automatic-speech-recognition', …)` via dynamic import.                                                                                                                                                                                                                                                                                         | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:114](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L114) |
|  `decodeAudio?`       | [`DecodeAudioFn`](../specialists/_shared/type-aliases/DecodeAudioFn.md)                                                                                          | Override the audio-decode step (encoded container bytes → mono PCM). Default: [@nhtio/adk/batteries/specialists/\_shared!defaultDecodeAudio](../specialists/_shared/variables/defaultDecodeAudio.md).                                                                                                                                                                                             | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:125](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L125) |
|  `device?`                 | | `"auto"` | `"gpu"` | `"cpu"` | `"wasm"` | `"webgpu"` | `"cuda"` | `"dml"` | `"coreml"` | `"webnn"` | `"webnn-npu"` | `"webnn-gpu"` | `"webnn-cpu"` | Inference device forwarded to `pipeline()`. Default: transformers.js environment default.                                                                                                                                                                                                                                                                                                         | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:116](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L116) |
|  `dtype?`                   | | `"auto"` | `"fp32"` | `"fp16"` | `"q8"` | `"int8"` | `"uint8"` | `"q4"` | `"bnb4"` | `"q4f16"` | `"q2"` | `"q2f16"` | `"q1"` | `"q1f16"`          | Quantization/precision dtype forwarded to `pipeline()`.                                                                                                                                                                                                                                                                                                                                           | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:118](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L118) |
|  `isAvailable?`       | () => `boolean`                                                                                                                                                  | Override the availability probe. Default: `true` whenever the peer is importable (env-neutral).                                                                                                                                                                                                                                                                                                   | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:135](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L135) |
|  `model`                    | `string`                                                                                                                                                         | The Whisper (or compatible) ASR model id, e.g. `onnx-community/whisper-base`. Required.                                                                                                                                                                                                                                                                                                           | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:107](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L107) |
|  `modelSource?`       | [`TransformersJsSttModelSource`](../type-aliases/TransformersJsSttModelSource.md)                                                                                | Custom model-source resolver (OPFS / separate source / bundled bytes). When set, model files load through it behind the global-`env` mutex; otherwise straight from HF (unchanged). See [TransformersJsSttModelSource](../type-aliases/TransformersJsSttModelSource.md).                                                                                                                          | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:131](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L131) |
|  `onCompiling?`       | [`BatteryLifecycleCallback`](../llm/transformers_js/helpers/type-aliases/BatteryLifecycleCallback.md)                                                            | Engine/graph/shader compilation after download, before the first token. A COARSE marker: the on-device runtimes (LiteRT `Engine.create`, transformers.js `from_pretrained`) expose the boundary — download done, opaque WebGPU/WASM graph build about to run — but NOT a progress stream, so `progress` is usually absent. Often the slowest part of a cold start; without this it was invisible. | [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md).[`onCompiling`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md#property-oncompiling)   | [src/batteries/llm/chat\_common/lifecycle.ts:89](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/llm/chat_common/lifecycle.ts#L89)                           |
|  `onComplete?`         | [`BatteryLifecycleCallback`](../llm/transformers_js/helpers/type-aliases/BatteryLifecycleCallback.md)                                                            | After the turn's output is parsed + persisted, before `ack` (fires per turn).                                                                                                                                                                                                                                                                                                                     | [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md).[`onComplete`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md#property-oncomplete)     | [src/batteries/llm/chat\_common/lifecycle.ts:95](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/llm/chat_common/lifecycle.ts#L95)                           |
|  `onError?`               | [`BatteryLifecycleCallback`](../llm/transformers_js/helpers/type-aliases/BatteryLifecycleCallback.md)                                                            | A load or generation failure (paired with `nack`).                                                                                                                                                                                                                                                                                                                                                | [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md).[`onError`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md#property-onerror)           | [src/batteries/llm/chat\_common/lifecycle.ts:97](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/llm/chat_common/lifecycle.ts#L97)                           |
|  `onGenerating?`     | [`BatteryLifecycleCallback`](../llm/transformers_js/helpers/type-aliases/BatteryLifecycleCallback.md)                                                            | Immediately before the provider generate call (fires per turn).                                                                                                                                                                                                                                                                                                                                   | [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md).[`onGenerating`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md#property-ongenerating) | [src/batteries/llm/chat\_common/lifecycle.ts:93](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/llm/chat_common/lifecycle.ts#L93)                           |
|  `onInitProgress?` | `ProgressCallback`                                                                                                                                               | Called with model-load progress reports while weights download/compile.                                                                                                                                                                                                                                                                                                                           | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:133](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L133) |
|  `onLifecycle?`       | [`BatteryLifecycleCallback`](../llm/transformers_js/helpers/type-aliases/BatteryLifecycleCallback.md)                                                            | Fires on EVERY phase transition (the firehose).                                                                                                                                                                                                                                                                                                                                                   | [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md).[`onLifecycle`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md#property-onlifecycle)   | [src/batteries/llm/chat\_common/lifecycle.ts:80](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/llm/chat_common/lifecycle.ts#L80)                           |
|  `onLoading?`           | [`BatteryLifecycleCallback`](../llm/transformers_js/helpers/type-aliases/BatteryLifecycleCallback.md)                                                            | Weights/runtime loading — may fire repeatedly with `progress` as the provider reports it.                                                                                                                                                                                                                                                                                                         | [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md).[`onLoading`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md#property-onloading)       | [src/batteries/llm/chat\_common/lifecycle.ts:82](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/llm/chat_common/lifecycle.ts#L82)                           |
|  `onReady?`               | [`BatteryLifecycleCallback`](../llm/transformers_js/helpers/type-aliases/BatteryLifecycleCallback.md)                                                            | Engine/pipeline resolved and cached, before the first generation.                                                                                                                                                                                                                                                                                                                                 | [`BatteryLifecycleHooks`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md).[`onReady`](../llm/transformers_js/helpers/interfaces/BatteryLifecycleHooks.md#property-onready)           | [src/batteries/llm/chat\_common/lifecycle.ts:91](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/llm/chat_common/lifecycle.ts#L91)                           |
|  `pipeline?`             | `AutomaticSpeechRecognitionPipeline`                                                                                                                             | A pre-built pipeline. When provided, the battery uses it directly and skips lazy creation.                                                                                                                                                                                                                                                                                                        | -                                                                                                                                                                                                        | [src/batteries/specialists/stt/transformers\_js/types.ts:109](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/specialists/stt/transformers_js/types.ts#L109) |
