Skip to main content

Class: Leuria

Defined in: packages/client/src/leuria.ts:119

Constructors​

Constructor​

new Leuria(options): Leuria

Defined in: packages/client/src/leuria.ts:131

Parameters​

options​

LeuriaOptions

Returns​

Leuria

Properties​

providers​

readonly providers: Provider[]

Defined in: packages/client/src/leuria.ts:120

Methods​

chat()​

chat<T>(request): ChatRun<T>

Defined in: packages/client/src/leuria.ts:255

One request. Iterate the run for events, or await .text() / .object().

Type Parameters​

T​

T = unknown

Parameters​

request​

ChatRequest<T>

Returns​

ChatRun<T>


chooseInstead()​

chooseInstead(providerId): void

Defined in: packages/client/src/leuria.ts:215

The visitor picked this provider instead of their own AI (see fallback). Kept for this page only: their own AI is proposed again next time. A provider that needs a download is then downloaded with connect(id), from the same click.

Parameters​

providerId​

string

Returns​

void


closeAll()​

closeAll(): void

Defined in: packages/client/src/leuria.ts:192

End every provider session (agents stop); histories are kept.

Returns​

void


connect()​

connect(providerId?): Promise<void>

Defined in: packages/client/src/leuria.ts:239

Resolve the visitor action of a provider (default: the first one that needs one). Call from a click: it may open a window.

Parameters​

providerId?​

string

Returns​

Promise<void>


conversation()​

conversation<T>(options?): Conversation<T>

Defined in: packages/client/src/leuria.ts:297

A multi-turn conversation that keeps its history and follows the cascade.

Type Parameters​

T​

T = unknown

Parameters​

options?​

ConversationOptions<T> = {}

Returns​

Conversation<T>


destroy()​

destroy(): void

Defined in: packages/client/src/leuria.ts:338

Stop watching providers.

Returns​

void


detect()​

detect(): Promise<LeuriaState>

Defined in: packages/client/src/leuria.ts:204

Re-check every provider.

Returns​

Promise<LeuriaState>


disconnect()​

disconnect(providerId?): void

Defined in: packages/client/src/leuria.ts:248

Forget the visitor's grants in this browser.

Parameters​

providerId?​

string

Returns​

void


embed()​

embed(texts, options?): Promise<EmbedResponse>

Defined in: packages/client/src/leuria.ts:274

Embed texts with the first ready provider that can (the visitor's own model through Leuria, then a model in the page…). Vectors from different models can't be compared: keep model with them.

Parameters​

texts​

string[]

options?​

EmbedOptions = {}

Returns​

Promise<EmbedResponse>


getState()​

getState(): LeuriaState

Defined in: packages/client/src/leuria.ts:196

Returns​

LeuriaState


on()​

on(listener): () => void

Defined in: packages/client/src/leuria.ts:186

Every event of every conversation and chat, e.g. for tracing or evals.

Parameters​

listener​

(event) => void

Returns​

() => void


select()​

select(requirements, routing?): Provider

Defined in: packages/client/src/leuria.ts:307

The provider that would serve a request with these needs, or a NoProviderError explaining why none can.

Parameters​

requirements​

Requirements

routing?​

RoutingOptions = {}

Returns​

Provider


subscribe()​

subscribe(listener): () => void

Defined in: packages/client/src/leuria.ts:198

Parameters​

listener​

() => void

Returns​

() => void