---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/generation/transformers_js/types/type-aliases/CreateTransformersJsGenerationModel.md
description: >-
  Factory for lazily creating the Janus model. Defaults to a dynamic import of
  `@huggingface/transformers` + `MultiModalityCausalLM.from_pretrained(model,
  …)`; override to inject a pre-built model or a test double.
---

# Type Alias: CreateTransformersJsGenerationModel

```ts
type CreateTransformersJsGenerationModel = (input: {
  device?: TransformersJsGenerationDeviceType;
  dtype?: TransformersJsGenerationDataType;
  model: string;
  onInitProgress?: TransformersJsGenerationProgressCallback;
}) => Promise<TransformersJsGenerationModel>;
```

Defined in: [src/batteries/generation/transformers\_js/types.ts:143](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/generation/transformers_js/types.ts#L143)

Factory for lazily creating the Janus model. Defaults to a dynamic import of
`@huggingface/transformers` + `MultiModalityCausalLM.from_pretrained(model, …)`; override to inject
a pre-built model or a test double.

## Parameters

| Parameter               | Type                                                                                                                                                                                                                                                                                                                  |
| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `input`                 | { `device?`: [`TransformersJsGenerationDeviceType`](TransformersJsGenerationDeviceType.md); `dtype?`: [`TransformersJsGenerationDataType`](TransformersJsGenerationDataType.md); `model`: `string`; `onInitProgress?`: [`TransformersJsGenerationProgressCallback`](TransformersJsGenerationProgressCallback.md); } |
| `input.device?`         | [`TransformersJsGenerationDeviceType`](TransformersJsGenerationDeviceType.md)                                                                                                                                                                                                                                         |
| `input.dtype?`          | [`TransformersJsGenerationDataType`](TransformersJsGenerationDataType.md)                                                                                                                                                                                                                                             |
| `input.model`           | `string`                                                                                                                                                                                                                                                                                                              |
| `input.onInitProgress?` | [`TransformersJsGenerationProgressCallback`](TransformersJsGenerationProgressCallback.md)                                                                                                                                                                                                                             |

## Returns

`Promise`<[`TransformersJsGenerationModel`](../interfaces/TransformersJsGenerationModel.md)>
