Skip to content

MistralFrontendAdapter

Defined in: adapters/mistral.ts:148

Frontend adapter interface.

Frontend adapters represent how developers want to interact with AI APIs. They normalize provider-specific request formats into universal IR and denormalize IR responses back to provider-specific formats.

new MistralFrontendAdapter(): MistralFrontendAdapter

MistralFrontendAdapter

readonly metadata: AdapterMetadata

Defined in: adapters/mistral.ts:149

Adapter metadata for identification and capabilities.

FrontendAdapter.metadata

fromIR(response): Promise<MistralResponse>

Defined in: adapters/mistral.ts:225

Convert Universal IR response back to Mistral API format.

This method transforms the standardized IR response into the format expected by Mistral’s API. It handles message conversion, finish reason mapping (stop, length, model_length), and usage statistics formatting specific to Mistral’s response structure.

IRChatResponse

Universal IR chat response

Promise<MistralResponse>

Promise resolving to Mistral API response

const adapter = new MistralFrontendAdapter();
const mistralResponse = await adapter.fromIR(irResponse);
console.log(mistralResponse.choices[0].message.content);

FrontendAdapter.fromIR


fromIRStream(stream, _options?): AsyncGenerator<string>

Defined in: adapters/mistral.ts:276

Convert Universal IR stream to Mistral Server-Sent Events format.

This async generator method transforms a stream of IR chunks into Mistral-formatted SSE responses. It yields Server-Sent Event strings with the “data: “ prefix containing JSON with delta content, and emits “data: [DONE]” when the stream completes.

AsyncGenerator<IRStreamChunk>

Universal IR chat stream

StreamConversionOptions

Optional stream conversion options (currently unused)

AsyncGenerator<string>

Server-Sent Event formatted strings

const adapter = new MistralFrontendAdapter();
for await (const sseData of adapter.fromIRStream(irStream)) {
console.log(sseData); // "data: {...}\n\n" or "data: [DONE]\n\n"
}

FrontendAdapter.fromIRStream


toIR(request): Promise<IRChatRequest>

Defined in: adapters/mistral.ts:183

Convert Mistral API request to Universal IR format.

This method transforms a Mistral-formatted request into the standardized Intermediate Representation (IR) format. Since Mistral’s format is similar to OpenAI and close to IR, this is largely a pass-through adapter with field name mapping (e.g., random_seed → seed).

MistralRequest

Mistral API request

Promise<IRChatRequest>

Promise resolving to IR chat request

const adapter = new MistralFrontendAdapter();
const irRequest = await adapter.toIR({
model: 'mistral-small',
messages: [{ role: 'user', content: 'Hello!' }],
temperature: 0.7
});

FrontendAdapter.toIR