From 95bceb1e34cd285202cfefd4c828c4aa113771e7 Mon Sep 17 00:00:00 2001 From: ProgrammerIn-wonderland <3838shah@gmail.com> Date: Wed, 20 May 2026 13:42:38 -0400 Subject: [PATCH] WIP add coersion for image_url in mistral --- .../providers/mistral/MistralAiProvider.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/backend/drivers/ai-chat/providers/mistral/MistralAiProvider.ts b/src/backend/drivers/ai-chat/providers/mistral/MistralAiProvider.ts index 82961c46a..af3716816 100644 --- a/src/backend/drivers/ai-chat/providers/mistral/MistralAiProvider.ts +++ b/src/backend/drivers/ai-chat/providers/mistral/MistralAiProvider.ts @@ -61,6 +61,22 @@ export class MistralAIProvider implements IChatProvider { return ids; } + processInputMistralQuirks(messages: any[]) { + const output = []; + for (const message of messages) { + const contents = []; + for (const content of message.content) { + if (content.type === 'image_url') { + content.image_url = content.image_url.url; + } + contents.push(content); + } + message.content = contents; + output.push(message); + } + return output; + } + async complete({ messages, stream, @@ -70,6 +86,7 @@ export class MistralAIProvider implements IChatProvider { temperature, }: ICompleteArguments): Promise { messages = await OpenAIUtil.process_input_messages(messages); + messages = this.processInputMistralQuirks(messages); for (const message of messages) { if (message.tool_calls) { message.toolCalls = message.tool_calls;