diff --git a/app/(chat)/api/chat/route.ts b/app/(chat)/api/chat/route.ts index 9762ae9..34b3bf5 100644 --- a/app/(chat)/api/chat/route.ts +++ b/app/(chat)/api/chat/route.ts @@ -146,7 +146,17 @@ function applyOptimizedPromptToLatestUserMessage( const textPart = msg.parts.find( (part): part is { type: "text"; text: string } => part.type === "text", ); - const finalPrompt = `${hiddenPromptPrefix}${prompt}`.trim(); + const originalText = textPart?.text?.trim() || ""; + const normalizedOriginal = hiddenPromptPrefix && originalText.startsWith(hiddenPromptPrefix) + ? originalText.slice(hiddenPromptPrefix.length).trim() + : originalText; + const shouldAppendOriginal = + normalizedOriginal && + normalizedOriginal !== prompt && + !prompt.includes(normalizedOriginal); + const finalPrompt = shouldAppendOriginal + ? `${hiddenPromptPrefix}${prompt}\n\n用户原始需求:${normalizedOriginal}`.trim() + : `${hiddenPromptPrefix}${prompt}`.trim(); if (textPart) { textPart.text = finalPrompt;