diff --git a/backend/app/main.py b/backend/app/main.py index 6941d3d..fff6146 100644 --- a/backend/app/main.py +++ b/backend/app/main.py @@ -1578,38 +1578,44 @@ INFORMACIÓN DEL VEHÍCULO INSPECCIONADO: {vehicle_context} -INSTRUCCIONES ESPECÍFICAS PARA ESTA PREGUNTA: +INSTRUCCIONES ESPECÍFICAS DEL ADMINISTRADOR PARA ESTA PREGUNTA: {custom_prompt} PREGUNTA A RESPONDER: "{question_obj.text}" Sección: {question_obj.section} -Analiza la imagen siguiendo EXACTAMENTE las instrucciones proporcionadas arriba. -Considera el kilometraje, marca y modelo del vehículo para dar un análisis más preciso. +IMPORTANTE - VALIDACIÓN ESTRICTA: +1. Lee CUIDADOSAMENTE las instrucciones específicas del administrador arriba +2. Verifica si la imagen proporcionada PERMITE responder lo que se pide +3. Si las instrucciones piden verificar algo dinámico (como "si prende", "si funciona", "si enciende"): + - Y la imagen es estática (foto), indica en "recommendation" que NO se puede verificar con una foto estática + - Sugiere que se necesita una prueba en vivo o un video +4. Si la imagen NO corresponde a lo que piden las instrucciones, indica claramente en "recommendation" qué foto necesitan tomar VALIDACIÓN DE IMAGEN: -- Si la imagen NO corresponde al contexto de la pregunta (por ejemplo, si piden luces pero muestran motor), indica en "recommendation" que deben cambiar la foto -- Si la imagen es borrosa, oscura o no permite análisis, indica en "recommendation" que tomen otra foto más clara +- Si piden verificar funcionamiento (prende, enciende, funciona) pero solo hay una foto → Indica "No se puede verificar funcionamiento con foto estática. Se requiere prueba en vivo." +- Si la imagen es borrosa o no permite análisis → Indica que tomen otra foto más clara +- Si la imagen muestra un componente diferente al solicitado → Indica qué foto necesitan tomar Responde SOLO en formato JSON válido (sin markdown, sin ```json): {{ - "status": "ok", - "observations": "Análisis técnico específico según las instrucciones del prompt personalizado", - "recommendation": "Acción recomendada basada en el análisis", + "status": "minor", + "observations": "Describe lo que SÍ puedes ver en la imagen y explica por qué no puedes responder completamente la pregunta si aplica", + "recommendation": "Si no puedes verificar lo solicitado con la imagen, explica claramente QUÉ se necesita (prueba en vivo, video, foto diferente, etc.)", "confidence": 0.85 }} -NOTA IMPORTANTE sobre el campo "status": -- Usa "ok" si el componente está en buen estado y pasa la inspección -- Usa "minor" si hay problemas leves que requieren atención pero no son críticos -- Usa "critical" si hay problemas graves que requieren reparación inmediata +VALORES DE STATUS: +- "ok": Solo si puedes CONFIRMAR que todo está bien según las instrucciones +- "minor": Si hay limitaciones en la imagen o no puedes verificar completamente lo solicitado +- "critical": Si hay problemas graves visibles o la imagen es completamente inadecuada -RECORDATORIO: En tus observaciones, menciona si el estado es apropiado para el kilometraje y marca/modelo del vehículo.""" +RECORDATORIO: En tus observaciones, menciona si el estado es apropiado para el kilometraje y marca/modelo del vehículo cuando sea relevante.""" if vehicle_context: - user_message = f"Inspecciona esta imagen del vehículo y responde específicamente: {question_obj.text}. Aplica las instrucciones personalizadas y considera el contexto del vehículo en tu análisis." + user_message = f"Inspecciona esta imagen del vehículo. Las instrucciones específicas requieren: '{custom_prompt}'. Verifica si con esta imagen puedes responder completamente esa solicitud." else: - user_message = f"Inspecciona la imagen y responde específicamente: {question_obj.text}" + user_message = f"Inspecciona la imagen. Las instrucciones requieren: '{custom_prompt}'. Verifica si puedes responder esa solicitud con esta imagen." else: # Prompt altamente específico para la pregunta question_text = question_obj.text