---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/embeddings/webllm/types/type-aliases/CreateWebLLMEmbeddingsEngine.md
description: >-
  Factory for lazily creating a WebLLM engine. Defaults to `CreateMLCEngine`
  from `@mlc-ai/web-llm`; override to inject a pre-configured engine, a
  web-worker engine, or a test double.
---

# Type Alias: CreateWebLLMEmbeddingsEngine

```ts
type CreateWebLLMEmbeddingsEngine = (input: {
  chatOptions?: ChatOptions | ChatOptions[];
  engineConfig?: MLCEngineConfig;
  model: string;
  onInitProgress?: (report: InitProgressReport) => void;
}) => Promise<WebLLMEmbeddingsEngine>;
```

Defined in: [src/batteries/embeddings/webllm/types.ts:37](https://github.com/NHTIO/ADK/blob/v1.20261003.0/src/src/batteries/embeddings/webllm/types.ts#L37)

Factory for lazily creating a WebLLM engine. Defaults to `CreateMLCEngine` from
`@mlc-ai/web-llm`; override to inject a pre-configured engine, a web-worker engine, or a test
double.

## Parameters

| Parameter               | Type                                                                                                                                                                          |
| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `input`                 | { `chatOptions?`: `ChatOptions` | `ChatOptions`\[]; `engineConfig?`: `MLCEngineConfig`; `model`: `string`; `onInitProgress?`: (`report`: `InitProgressReport`) => `void`; } |
| `input.chatOptions?`    | `ChatOptions` | `ChatOptions`\[]                                                                                                                                              |
| `input.engineConfig?`   | `MLCEngineConfig`                                                                                                                                                             |
| `input.model`           | `string`                                                                                                                                                                      |
| `input.onInitProgress?` | (`report`: `InitProgressReport`) => `void`                                                                                                                                    |

## Returns

`Promise`<[`WebLLMEmbeddingsEngine`](WebLLMEmbeddingsEngine.md)>
