From 88e640f278a005db8000ec2e49e8b0fe7782cf70 Mon Sep 17 00:00:00 2001 From: ZhuangYumin Date: Wed, 26 Feb 2025 11:55:29 +0800 Subject: [PATCH] feat: add better support for openrouter thinking format --- src/renderer/src/providers/OpenAIProvider.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/renderer/src/providers/OpenAIProvider.ts b/src/renderer/src/providers/OpenAIProvider.ts index dfa7d555fe..49a34f1a71 100644 --- a/src/renderer/src/providers/OpenAIProvider.ts +++ b/src/renderer/src/providers/OpenAIProvider.ts @@ -209,7 +209,10 @@ export default class OpenAIProvider extends BaseProvider { let hasReasoningContent = false let lastChunk = '' const isReasoningJustDone = ( - delta: OpenAI.Chat.Completions.ChatCompletionChunk.Choice.Delta & { reasoning_content?: string } + delta: OpenAI.Chat.Completions.ChatCompletionChunk.Choice.Delta & { + reasoning_content?: string + reasoning?: string + } ) => { if (!delta?.content) return false @@ -222,12 +225,12 @@ export default class OpenAIProvider extends BaseProvider { return true } - // 如果有reasoning_content,说明是在思考中 - if (delta?.reasoning_content) { + // 如果有reasoning_content或reasoning,说明是在思考中 + if (delta?.reasoning_content || delta?.reasoning) { hasReasoningContent = true } - // 如果之前有reasoning_content,现在有普通content,说明思考结束 + // 如果之前有reasoning_content或reasoning,现在有普通content,说明思考结束 if (hasReasoningContent && delta.content) { return true } @@ -285,7 +288,7 @@ export default class OpenAIProvider extends BaseProvider { const delta = chunk.choices[0]?.delta - if (delta?.reasoning_content) { + if (delta?.reasoning_content || delta?.reasoning) { hasReasoningContent = true }