Skip to content
2 min read · 381 words

Class: OpenAIEmbeddingsAdapter

Defined in: batteries/embeddings/openai/adapter.ts:47

Embeddings adapter for the OpenAI /v1/embeddings wire shape.

Remarks

Reusable: construct once, call OpenAIEmbeddingsAdapter.embed / embedMany as many times as needed. embedMany issues one request per call (OpenAI embeds a batch in a single round-trip); embed is sugar over embedMany([text]).

Constructors

Constructor

ts
new OpenAIEmbeddingsAdapter(options: unknown): OpenAIEmbeddingsAdapter;

Defined in: batteries/embeddings/openai/adapter.ts:64

Parameters

ParameterTypeDescription
optionsunknownConstructor options. Validated eagerly.

Returns

OpenAIEmbeddingsAdapter

Throws

@nhtio/adk/batteries/embeddings/openai/exceptions!E_INVALID_OPENAI_EMBEDDINGS_OPTIONS when options does not satisfy @nhtio/adk/batteries/embeddings/openai/validation!openAIEmbeddingsOptionsSchema (e.g. missing model).

Accessors

dimensions

Get Signature

ts
get dimensions(): number | undefined;

Defined in: batteries/embeddings/openai/adapter.ts:69

Declared output dimensionality (from options), or undefined if not configured.

Returns

number | undefined

Methods

embed()

ts
embed(text: string, opts?: EmbedOptions): Promise<number[]>;

Defined in: batteries/embeddings/openai/adapter.ts:100

Embeds a single string.

Parameters

ParameterTypeDescription
textstringThe input text.
opts?EmbedOptionsPer-call options (kind).

Returns

Promise<number[]>

The embedding vector as a plain number[].


embedMany()

ts
embedMany(texts: string[], opts?: EmbedOptions): Promise<number[][]>;

Defined in: batteries/embeddings/openai/adapter.ts:115

Embeds a batch of strings in a single request.

Parameters

ParameterTypeDescription
textsstring[]The input texts.
opts?EmbedOptionsPer-call options (kind). Defaults to kind: 'document'.

Returns

Promise<number[][]>

One embedding vector per input, in input order, each a plain number[].

Throws

@nhtio/adk/batteries/embeddings/openai/exceptions!E_OPENAI_EMBEDDINGS_HTTP_ERROR on a non-2xx response or transport failure.

Throws

@nhtio/adk/batteries/embeddings/openai/exceptions!E_OPENAI_EMBEDDINGS_REQUEST_TIMEOUT when the handshake exceeds requestTimeoutMs.

Throws

@nhtio/adk/batteries/embeddings/openai/exceptions!E_OPENAI_EMBEDDINGS_MALFORMED_RESPONSE when the 2xx body is not the expected shape.


isAvailable()

ts
isAvailable(): boolean;

Defined in: batteries/embeddings/openai/adapter.ts:74

See OpenAIEmbeddingsAdapter.isAvailable. Instance alias for surface-parity.

Returns

boolean


preload()

ts
preload(): Promise<void>;

Defined in: batteries/embeddings/openai/adapter.ts:82

No-op warm-up. The OpenAI battery has no engine to preload; present for surface-parity with the WebLLM battery so callers can treat the two interchangeably.

Returns

Promise<void>


reset()

ts
reset(): void;

Defined in: batteries/embeddings/openai/adapter.ts:89

No-op state reset. Present for surface-parity with the WebLLM battery.

Returns

void


isAvailable()

ts
static isAvailable(): boolean;

Defined in: batteries/embeddings/openai/adapter.ts:55

Whether this battery can run in the current environment. For the HTTP-backed OpenAI battery this is always true (a fetch is always resolvable); present for surface-parity with the WebLLM battery's WebGPU gate.

Returns

boolean