Spaces:
Running
Running
Jose Salazar commited on
Commit ·
42cdd91
1
Parent(s): c943c9a
Refactor AI prompt from negative constraints to positive example-based format
Browse filesReplaces prohibitive instructions (Prohibido, INCUMPLIR) with a
positive prompt engineering approach using:
- Clear role definition
- Simple positive rules
- Concrete example of expected output format
This reduces the likelihood of the model outputting reasoning
processes in English, as negative constraints often trigger the
opposite behavior in instruction-tuned models.
- .gitattributes +5 -4
- js/ia.js +22 -13
.gitattributes
CHANGED
|
@@ -32,7 +32,8 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 32 |
*.xz filter=lfs diff=lfs merge=lfs -text
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
-
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
-
*.
|
| 37 |
-
*.
|
| 38 |
-
*.
|
|
|
|
|
|
| 32 |
*.xz filter=lfs diff=lfs merge=lfs -text
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
*.ttf filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
*.otf filter=lfs diff=lfs merge=lfs -text
|
| 38 |
+
*.woff filter=lfs diff=lfs merge=lfs -text
|
| 39 |
+
*.woff2 filter=lfs diff=lfs merge=lfs -text
|
js/ia.js
CHANGED
|
@@ -69,23 +69,32 @@ function construirPrompt(obtenerDatosPaciente, obtenerValoresFormulario, getUlti
|
|
| 69 |
cierre = `Proporciona una interpretación clínica breve (8-10 oraciones) destacando los hallazgos más significativos y las recomendaciones diagnósticas inmediatas.`;
|
| 70 |
}
|
| 71 |
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
3. Prohibido usar: thought, thinking, here's a, process, step, analyze, review, step-by-step.
|
| 76 |
-
4. La respuesta DEBE comenzar INMEDIATAMENTE con la interpretación clínica. Sin preámbulos.
|
| 77 |
-
5. Máximo 10 oraciones. Sé directo y conciso.
|
| 78 |
|
| 79 |
-
|
| 80 |
-
Eres médico veterinario especialista en patología clínica.
|
| 81 |
|
| 82 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 83 |
|
| 84 |
-
|
| 85 |
-
|
| 86 |
|
| 87 |
-
|
| 88 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 89 |
}
|
| 90 |
|
| 91 |
function limpiarRespuesta(text) {
|
|
|
|
| 69 |
cierre = `Proporciona una interpretación clínica breve (8-10 oraciones) destacando los hallazgos más significativos y las recomendaciones diagnósticas inmediatas.`;
|
| 70 |
}
|
| 71 |
|
| 72 |
+
const ejemploRespuesta = hayImagenes
|
| 73 |
+
? 'Las imágenes muestran neutrófilos con toxicidad moderada y presencia de cuerpos de Döhle, indicativos de respuesta inflamatoria sistémica. Los resultados de laboratorio confirman leucocitosis con desviación izquierda. Se sugiere descartar proceso infeccioso severo mediante hemocultivo y paneles diagnósticos dirigidos.'
|
| 74 |
+
: 'El paciente presenta leucocitosis con neutrofilia y linfopenia, sugestiva de respuesta inflamatoria aguda con posible compromiso inmune. Los valores de creatinina elevados indican disfunción renal que requiere evaluación adicional. Se recomienda completar el estudio con urocultivo y ecografía abdominal.';
|
|
|
|
|
|
|
|
|
|
| 75 |
|
| 76 |
+
return `Eres médico veterinario especialista en patología clínica. Interpreta los siguientes resultados de laboratorio y proporciona un análisis clínico conciso.
|
|
|
|
| 77 |
|
| 78 |
+
REGLAS DE RESPUESTA:
|
| 79 |
+
- Responde ÚNICAMENTE en español
|
| 80 |
+
- Máximo 10 oraciones
|
| 81 |
+
- Comienza DIRECTAMENTE con la interpretación clínica, sin introducciones
|
| 82 |
+
- No uses listas numeradas ni expliques tu proceso de análisis
|
| 83 |
+
- Sé directo, profesional y clínico
|
| 84 |
|
| 85 |
+
Ejemplo de formato esperado:
|
| 86 |
+
"${ejemploRespuesta}"
|
| 87 |
|
| 88 |
+
PACIENTE:
|
| 89 |
+
${paciente.especie || 'desconocido'}, raza: ${paciente.raza || 'NE'}, edad: ${edadTexto}, sexo: ${paciente.sexo || 'NE'}
|
| 90 |
+
|
| 91 |
+
RESULTADOS DE LABORATORIO:
|
| 92 |
+
${lineasValores}
|
| 93 |
+
|
| 94 |
+
${signosText ? `SIGNOS CLÍNICOS: ${signosText}` : ''}
|
| 95 |
+
|
| 96 |
+
${notaImagenes ? notaImagenes + '\n' : ''}
|
| 97 |
+
${cierre}`;
|
| 98 |
}
|
| 99 |
|
| 100 |
function limpiarRespuesta(text) {
|