earendil-works/pi · error
No API key for provider: ${model.provider}
Error message
No API key for provider: ${model.provider} What it means
Error "No API key for provider: ${model.provider}" thrown in earendil-works/pi.
Source
Thrown at packages/ai/src/api/mistral-conversations.ts:135
};
/**
* Stream responses from the native Mistral Chat Completions endpoint.
*/
export const stream: StreamFunction<"mistral-conversations", MistralOptions> = (
model: Model<"mistral-conversations">,
context: Context,
options?: MistralOptions,
): AssistantMessageEventStream => {
const stream = new AssistantMessageEventStream();
(async () => {
const output = createOutput(model);
try {
const apiKey = options?.apiKey;
if (!apiKey) {
throw new Error(`No API key for provider: ${model.provider}`);
}
const normalizeMistralToolCallId = createMistralToolCallIdNormalizer();
const transformedMessages = transformMessages(context.messages, model, (id) => normalizeMistralToolCallId(id));
let payload = buildChatPayload(model, context, transformedMessages, options);
const nextPayload = await options?.onPayload?.(payload, model);
if (nextPayload !== undefined) {
payload = nextPayload as MistralChatPayload;
}
const mistralStream = await requestMistralStream(model, payload, apiKey, options);
stream.push({ type: "start", partial: output });
await consumeChatStream(model, output, stream, mistralStream);
if (options?.signal?.aborted) {
throw new Error("Request was aborted");
}
View on GitHub (pinned to 4af9d21d3b)
Solutions
- Set MISTRAL_API_KEY or provide an API key for the provider.
When it happens
Trigger: Thrown at packages/ai/src/api/mistral-conversations.ts:135 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of earendil-works/pi@4af9d21d3b (2026-08-24).
Data as JSON: /api/errors/fb0a65908e96f7f3.
Report an issue: GitHub.