From 32749d65a4d553626b919dad68f1e34e5c452009 Mon Sep 17 00:00:00 2001 From: ousugo Date: Tue, 4 Mar 2025 17:57:26 +0800 Subject: [PATCH] feat: Translation does not show the thinking content --- src/renderer/src/providers/OpenAIProvider.ts | 27 ++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/providers/OpenAIProvider.ts b/src/renderer/src/providers/OpenAIProvider.ts index 08be2e63..011ee6ff 100644 --- a/src/renderer/src/providers/OpenAIProvider.ts +++ b/src/renderer/src/providers/OpenAIProvider.ts @@ -520,10 +520,33 @@ export default class OpenAIProvider extends BaseProvider { } let text = '' + let isThinking = false + const isReasoning = isReasoningModel(model) for await (const chunk of response) { - text += chunk.choices[0]?.delta?.content || '' - onResponse?.(text) + const deltaContent = chunk.choices[0]?.delta?.content || '' + + if (!deltaContent.trim()) { + continue + } + + if (isReasoning) { + if (deltaContent.includes('')) { + isThinking = true + } + + if (!isThinking) { + text += deltaContent + onResponse?.(text) + } + + if (deltaContent.includes('')) { + isThinking = false + } + } else { + text += deltaContent + onResponse?.(text) + } } return text