From e950eb12854fc7b9e57de4228e3715c47a516934 Mon Sep 17 00:00:00 2001 From: Ricardo Gonzalez Date: Thu, 28 May 2026 14:08:07 -0500 Subject: [PATCH] strip tags de respuestas IA (DeepSeek reasoning) --- src/services/ai.ts | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/services/ai.ts b/src/services/ai.ts index 61f602a..1e04f76 100644 --- a/src/services/ai.ts +++ b/src/services/ai.ts @@ -103,7 +103,22 @@ export async function callAI( const content = data.choices?.[0]?.message?.content || null if (!content) throw new Error('Respuesta vacĂ­a del proveedor de IA') - return content + return stripThinkTags(content) +} + +/** + * Elimina bloques de razonamiento interno del modelo (DeepSeek, etc.). + * Ej: "...." o "..." + */ +function stripThinkTags(text: string): string { + return text + .replace(/```thinking[\s\S]*?```/gi, '') + .replace(/```reasoning[\s\S]*?```/gi, '') + .replace(/[\s\S]*?<\/think>/gi, '') + .replace(/[\s\S]*?<\/thinking>/gi, '') + .replace(/^.*?\*\*Respuesta:/s, '') + .replace(/^.*?\*\*Final Answer:/s, '') + .trim() } export async function chatWithAI(