TFM · 2026 Sistema RAG-OPE Farmacia Hospitalaria
◐ Mapa del sistema
Esc volver navegar
Trabajo de Fin de Máster · Universitat de Barcelona · 2025-26

Sistema integrado de preparación basado en RAG clínico
para la OPE de Farmacia Hospitalaria · Illes Balears 2026

Un GPT que actúa como tribunal experto, conectado a una base de conocimiento propia, búsqueda en fuentes clínicas y un dashboard que registra el progreso de estudio en tiempo real.
Pulsa cualquier nodo del diagrama para entrar dentro
A · CANDIDATA
Candidata
ESTUDIA · PREGUNTA · RAZONA
▶ ver demo en uso
B · TUTOR IA
GPT Tutor
Tribunal experto
2 modos · Tutor & Simulacro
C · BASE PROPIA
RAG · Base de conocimiento
Exámenes · Guías · Patrones
594 · 7.028 · 367
D · ACTUALIZACIÓN
Búsqueda web
CIMA · PUBMED · COCHRANE · SSCC
4 fuentes · datos en vivo
E · PERSISTENCIA
Supabase
SESIONES
F · ANALÍTICA
Dashboard
Vercel · en vivo
Flujo principal
Recuperación / actualización
Datos en tránsito
Nodo A · Candidata · Demostración

FHOPE, en práctica real

Una sesión de simulacro, elección de 2 casos prácticos, corrección de respuestas y registro del progreso en el dashboard. Tres minutos de uso reales para mostrar el bucle completo en funcionamiento.

Tipo
Pantalla grabada
Recorrido
Modo Simulacro → creación de 4 casos prácticos → elección de 2 → resolución → corrección de respuesta del GPT con citas → vuelta al dashboard para registrar la sesión.
Duración
3 min
Nodo C · Base de conocimiento

Un RAG clínico construido sobre exámenes y guías clínicas

Tiempo de construcción
Fase más extensa del TFM · ~5 meses
Decisión clave
Doble indexación (semántica + léxica) con metadatos clínicos enriquecidos
Por qué importa
El RAG es el cinturón de seguridad: obliga al GPT a citar fuente real antes de responder y reduce alucinaciones farmacológicas.
Cronología de construcción
Fase 1 · Mes 1-2
Recopilación preguntas exámenes y conversión a JSON
PDF4 CCAA594 preguntas
Fase 2 · Mes 2
Catalogación de preguntas de exámenes
JSON10 campos por ítem→ ver clasificación
Fase 3 · Mes 3
Recopilación y catalogación de guías clínicas
7 bloques7.028 fragmentos
Fase 4 · Mes 3-4
Análisis de patrones del examen
367 patrones → ver criterios
Fase 5 · Mes 5
Indexación con doble vector
Fragmentación con solapamiento (no parte un razonamiento clínico), indexación semántica + léxica, metadatos enriquecidos, tres colecciones independientes consultables de forma conjunta o selectiva.
embeddingsBM25overlap chunking
Tres colecciones independientes
594
ítems
Exámenes oficiales
7.028
fragmentos
Guías clínicas y protocolos
367
patrones
Patrones del examen
Decisiones de diseño
01
Limpieza inteligente del documento. Antes de procesar, se eliminan encabezados, pies de página, índices y bibliografías. Los PDFs en doble columna se leen columna a columna para que el texto nunca se mezcle.
02
Fragmentación con solapamiento. Ningún concepto clínico queda partido entre fragmentos; las dosis están protegidas para no cortarse. Cada fragmento se solapa con el anterior para que el contexto siempre viaje con la pregunta.
03
Las tablas como entidades propias. Las tablas no se tratan como texto corrido: se extraen de forma estructurada, se fusionan si continúan en la página siguiente y se indexan de forma independiente con el contexto que las rodea.
04
Doble indexación: búsqueda semántica + léxica: Búsqueda semántica (significado) + búsqueda léxica (términos exactos: dosis, fármacos, siglas). Ambas se combinan antes de entregar resultados.
05
Etiquetado con metadatos clínicos. Cada fragmento está etiquetado por bloque, subtema, fuente, año, fármacos y dosis detectados. Permite filtrado de alta precisión según la intención de cada consulta.
Infraestructura local
01 Hardware
MacBook Air M3
Apple Silicon · Neural Engine 16-core
RAM unificada 16 GB
Mistral · 5 GB Sistema · 4 GB Libre · 7 GB
02 MOTOR IA LOCAL
Ollama
Motor para ejecutar LLMs en local
$ ollama serve
$ ollama run mistral:7b
100% offline endpoint :11434
03 LLM
Mistral 7B Q4_K_M
Modelo cuantizado · razonamiento clínico
parámetros 7 B
cuantización Q4_K_M · 4-bit
tamaño en disco ≈ 4,1 GB
huella RAM ≈ 5 GB
01
16 GB de RAM unificada
permiten ejecutar el modelo en memoria sin swap.
02
Ollama sirve Mistral en local
como API HTTP en :11434.
03
Mistral 7B Q4 es el sweet-spot
razonamiento clínico ↔ huella de memoria.

Q4_K_M es el sweet-spot: conserva ≈ 98% de la calidad del modelo a un cuarto de la memoria, cabe en 16 GB y mantiene la fiabilidad clínica que los modelos pequeños pierden.

Nodo B · Tutor con IA generativa

Un GPT con perfil de tribunal de oposición experto

El GPT está instruido para comportarse con la rigurosidad del tribunal real: referencia explicita de la fuente que sostiene cada respuesta (bloque y subtema), aplica la penalización oficial y cambia de registro según el modo elegido por la candidata.

Modelo base
GPT con instrucciones específicas y conexión RAG
Comportamiento
Consulta obligatoria al RAG antes de responder
Tono
Clínico, riguroso, con justificación basada en evidencia, socrático y orientado a resultados. Referencia explícita al bloque y subtema.

Perfil del agente — instrucciones del sistema

Actúa como tutor experto y tribunal de la OPE de Farmacia Hospitalaria de les Illes Balears 2026.
Antes de responder, consulta y valida siempre con las colecciones del RAG/web.
Cita la fuente clínica (guía, examen previo, sociedad) que sostiene la respuesta.
Prohibido ser complaciente, aplica el máximo rigor científico. Estilo socrático, exigente, orientado a resultados.
Razona en formato caso clínico, no respuesta aislada.
Si el dato es sensible a actualización, activa la búsqueda web complementaria.
MODO 01
Tutor
Estudio guiado

Aprendizaje por bloque o subtema. El estudiante pregunta o pide explicación; el tutor explica con razonamiento clínico, vincula con guías y propone preguntas de estudio o refuerzo orientadas al patrón detectado.

objetivo construir y consolidar conocimiento
interacción conversacional, longitud variable
salida explicación + cita de fuente + ejercicio
MODO 02
Simulacro
Examen real

Replica el examen oficial de Baleares. Genera 4 supuestos clínico-asistenciales transversales con 30 preguntas cada uno, contabiliza aciertos y errores con la penalización oficial, y devuelve análisis de fallos por bloque.

supuestos 4 (a elegir 2)
preguntas 30 por supuesto · 60 puntuables
puntuación +1 / −0,25 / 0 ·
salida nota + corrección por pregunta + diagnóstico de errores por bloque
MODO 03
Metodología de corrección
Evaluación

Cada pregunta se corrige siguiendo un esquema fijo de 5 pasos para que la candidata reciba siempre el mismo formato de feedback, comparable entre simulacros.

  1. ✅ Correcta/ ❌ Incorrecta
  2. 🧠 Justificación clínica
  3. 📚 Evidencia
  4. ❌ Trampas de examen
  5. 💡 Truco de examen
Nodo D · Búsqueda en fuentes vivas

Fuentes web de actualización clínica

Para informacion sensible a actualización (> 2 años) el tutor activa una búsqueda web restringida a fuentes verificadas, nunca buscadores generales.

CIMA
AEMPS

Se consulta ante dudas sobre dosis, indicaciones autorizadas, contraindicaciones, ajustes en insuficiencia renal/hepática y notas de farmacovigilancia.
ficha técnicaposologíaRAM
PubMed
NLM · NIH

Base de datos de literatura cientifica. Recupera evidencia primaria reciente cuando una pregunta exige actualización científica.

Se consulta para evidencia emergente: nuevos ensayos, terapias avanzadas, biomarcadores, posicionamiento terapéutico fuera de guías.
ensayos clínicosrevisiones
Cochrane
Library

Revisiones sistemáticas con la mejor evidencia agregada. Síntesis cuantitativa que respalda recomendaciones clínicas con grado de certeza.

Se consulta para preguntas de eficacia comparada, posicionamiento de fármacos y decisiones donde la evidencia primaria está dispersa.
revisión sistemáticameta-análisis
Sociedades científicas
SEFH · IDSA · ESMO · NCCN

Posicionamientos y guías de las sociedades de referencia: SEFH,GeSIDA, SEIMC, ESC, PRAN, ESMO, NCCN,SEOM, ESPEN, ASPEN, SEMICYUC, SEMERGEN, SEPAR, EULAR, SER, SEGG.

Se consulta para protocolos asistenciales, esquemas terapéuticos consensuados y guías clínicas.
guía clínicaprotocoloconsenso
Nodo E · Persistencia

Cada sesión, registrable y medible - Supabase

Cada interacción con el tutor —pregunta resuelta, simulacro completado, error cometido— se guarda en una base Postgres en Supabase. Es la materia prima del dashboard: sin registro, no hay aprendizaje adaptativo.

Tecnología
Supabase · Postgres · Row Level Security
Frecuencia de escritura
En cada respuesta y al cierre de sesión
Privacidad
Datos vinculados al usuario; no se registra contenido sensible más allá del progreso académico.
study_sessions
id
uuid
Identificador único de la sesión.
started_at
timestamptz
Inicio de la sesión.
mode
enum
tutor · simulacro
block
text
Bloque temático trabajado (1-7).
subtopic
text
Subtema concreto si aplica.
questions_total
int
Total de preguntas en la sesión.
correct / wrong / blank
int · int · int
Desglose para aplicar penalización oficial (+1 / −0,25 / 0).
score
numeric
Nota calculada con criterio Baleares.
error_types
jsonb
Tipología del fallo: distractor por inversión, por extrapolación, por desactualización…
duration_min
int
Minutos efectivos de estudio.
sources_cited
jsonb
Trazabilidad: qué documentos del RAG se utilizaron en la respuesta.
↳ El dashboard lee directamente esta tabla y la cruza con la taxonomía de bloques.
Nodo F · Analítica de progreso

Dashboard en vivo

Panel desplegado en Vercel, conectado en lectura a Supabase. Visualiza la evolución por bloque, modo y tipo de error — el bucle de retroalimentación que cierra el sistema.

URL pública
study-tracker-three-beta.vercel.app
Stack
Next.js · Vercel · Supabase
Lectura
Tiempo real sobre la tabla study_sessions.
https://study-tracker-three-beta.vercel.app
Abrir ↗
Sesiones registradas
Total acumulado desde el despliegue del sistema.
Bloques cubiertos
7 / 7
Los siete bloques del temario han sido abordados al menos una vez.
Modo predominante
Tutor → Simulacro
Transición progresiva al modo simulacro conforme se acerca la convocatoria.
Métrica clave
Tasa de fallo por bloque
Identifica focos de mejora reales y orienta la siguiente sesión.
Cierre

Conclusiones y limitaciones 

El sistema demuestra que es viable construir un tutor clínico fiable para una OPE  especializada +RAG sobre corpus propio+GPT  — sin renunciar al rigor del examen oficial.

Objetivo principal
Convertir un examen sin temario explícito en un sistema medible y entrenable.
01

Fiabilidad por selección de fuentes

Material de alto grado de evidencia: las guías clínicas publicadas por sociedades científicas e información avalada por la SEFH. La calidad del RAG depende directamente de la calidad de lo que se le da.  "La fuente determina la fiabilidad"

02

Especificidad adaptable

El análisis de patrones de Baleares prioriza los focos de la convocatoria concreta, pero la arquitectura permite replicarlo con los patrones de cualquier otra comunidad o especialidad.

03

Evaluación del razonamiento, no solo del resultado

El usuario no indica únicamente la opción elegida, sino el razonamiento que le ha llevado a ella. El sistema evalúa si esa lógica clínica es correcta, permitiendo detectar si el error es de conocimiento o de razonamiento — algo que un simulacro convencional no ofrece.

04

Adaptación al ritmo real

El bucle dashboard-tutor permite que cada sesión se redirija a los focos de error detectados, optimizando el tiempo de aprendizaje.

05

Aprendizaje observable

Persistencia en Supabase + dashboard Vercel transforman el estudio individual en un proceso medible, exportable y discutible con tutores reales.

06

Reproducibilidad del método

La arquitectura RAG + perfil GPT + análisis de patrones es exportable a cualquier OPE sanitaria con un esfuerzo proporcional al corpus disponible.

Limitaciones

Tamaño del corpus. 594 preguntas son una muestra significativa pero no exhaustiva.
Sensibilidad temporal. El conocimiento científico es dinámico; el corpus no solo debe actualizarse, sino depurarse: acumular información obsoleta puede ser tan problemático como no tenerla.
Sin validación externa. El sistema se ha calibrado con la candidata; sería necesario validarlo con otros opositores.
El sistema se equivoca. El razonamiento clínico propio debe prevalecer siempre. Las respuestas del tutor son un punto de partida para la discusión, no una verdad incuestionable.
Un tribunal accesible 24/7, anclado en evidencia real, que aprende contigo y te devuelve, en cada sesión, una imagen honesta de dónde estás.
Lucía Rodríguez Cajaraville · TFM 2026 · Universitat de Barcelona