Jose Salazar commited on
Commit
f651345
·
2 Parent(s): ce798101544263

Merge remote-tracking branch 'origin/main'

Browse files
Files changed (1) hide show
  1. USO_DE_IA.md +0 -74
USO_DE_IA.md DELETED
@@ -1,74 +0,0 @@
1
- # Uso de inteligencia artificial en el desarrollo de Morphos
2
-
3
- ## Proyecto final — Curso de Desarrollo Web 2026
4
-
5
- ---
6
-
7
- ## Modelo utilizado
8
-
9
- Se utilizó Claude Code (Sonnet 4.6) de Anthropic como asistente de desarrollo a lo largo de todo el proyecto y para el despliegue, docker y debug del comportamiento del modelo de IA se utilizó Kimi 2.6 con Open Code CLI.
10
-
11
- ---
12
-
13
- ## Enfoque: Spec Driven Development
14
-
15
- El uso de IA no consistió en generar código y aceptarlo sin más. Se aplicó un enfoque de desarrollo guiado por especificaciones: en cada paso se definió primero el comportamiento esperado, funciones base, las restricciones de diseño y los criterios de aceptación, y el modelo generó propuestas dentro de ese marco. La arquitectura, la separación de módulos, las decisiones de estructura y el flujo de datos fueron definidos y controlados por mi parte en todo momento gracias a los criterios y conocimientos adquiridos durante el curso.
16
-
17
- El modelo actuó como ejecutor de decisiones ya tomadas, no como tomador de decisiones.
18
-
19
- ---
20
-
21
- ## Literatura de referencia en patología clínica veterinaria
22
-
23
- Para el motor de detección de patrones (`analisis.js`) y los datos de referencia (`valores_referencia.json`, `alteraciones.json`), se proporcionó al modelo literatura especializada en patología clínica veterinaria como contexto de generación.
24
-
25
- Los rangos de referencia por especie, los ajustes por edad, raza y sexo, las descripciones clínicas de cada alteración, y la lógica de clasificación de gravedad fueron **validados gracias a mi formación y experiencia profesional en Medicina Veterinaria**, antes de ser incorporados al código. El modelo fue un medio para estructurar y codificar ese conocimiento, no la fuente del mismo. Se han realizado múltiples pruebas con resultados de laboratorio reales y citologías de pacientes facilitados por otros veterinarios ejercientes.
26
-
27
- Textos de referencia utilizados:
28
-
29
- - Thrall, *Veterinary Hematology and Clinical Chemistry*, 3.ª ed. 2022
30
- - Weiss, — *Schalm's Veterinary Hematology*, 7.ª ed. 2022
31
-
32
- ---
33
-
34
- ## Afinamiento del prompt y control de salidas del modelo de IA
35
-
36
- Morphos utiliza medGemma como modelo de interpretación clínica. Durante el desarrollo se detectó que el modelo producía salidas con problemas recurrentes:
37
-
38
- - Respuestas en inglés a pesar de instrucciones en español
39
- - Tokens de control expuestos en la salida (`<start_of_turn>`, `<unused94>`, `<unused95>`)
40
- - Bloques de LaTeX embebidos en la respuesta
41
- - Párrafos repetidos en bucle al acercarse al límite de tokens
42
- - Prefijos de rol visibles al inicio del texto
43
-
44
- Se iteró sobre el prompt y se implementó una función de limpieza de salida (`limpiarRespuesta` en `ia.js`) que elimina estos artefactos antes de mostrar el resultado al usuario. El prompt final incluye restricciones explícitas de idioma, alcance clínico y formato de respuesta.
45
-
46
- ---
47
-
48
- ## Caché y optimización de rendimiento
49
-
50
- Durante las auditorías de rendimiento con Lighthouse se identificó que la carga de fuentes tipográficas locales y librerías (PDF.js) afectaba negativamente las métricas. Se implementaron las siguientes mejoras, asistidas por el modelo:
51
-
52
- - Directivas `preload` y `preconnect` en el `<head>` para recursos críticos
53
- - Caché de larga duración para fuentes, CSS y JS en `.htaccess`
54
- - Caché en disco de 30 minutos para las respuestas de la API de PubMed, evitando llamadas repetidas a la misma consulta
55
- - Compresión gzip habilitada por tipo de contenido
56
-
57
- ---
58
-
59
- ## Auditoría final de código
60
-
61
- Al concluir el desarrollo se realizó una auditoría asistida por IA con los siguientes objetivos:
62
-
63
- **Código muerto**
64
-
65
- - Identificación y eliminación de exportaciones sin consumidores y código que ya no era necesario o era experimental
66
-
67
- **Seguridad**
68
-
69
- - Protección de archivos sensibles (`.env`, `setup.php`) mediante `.htaccess`
70
- - Sanitización de datos externos de APIs con `textContent` en lugar de `innerHTML`, eliminando el riesgo de XSS
71
- - Validación de URLs externas antes de usarlas como atributos `href`
72
- - Separación del nombre de usuario del SVG estático al actualizar el botón de sesión, evitando inyección de HTML desde la base de datos
73
-
74
- ---