Intermedio 11 minSalud

Salud: transcripción de consultations

Respuesta directa

Sí: Whisper (faster-whisper) transcribe el audio y un LLM local redacta el informe, sin que nada salga del equipo del médico. El procesamiento local no elimina el marco aplicable: secreto profesional, información al paciente con derecho de oposición, consentimiento para grabar su voz, proveedor de alojamiento HDS si un tercero almacena los datos y revisión por el propio médico.

Un médico que redacta sus informes por la noche puede ahorrar tiempo con una cadena de procesamiento local: audio, transcripción y, después, informe estructurado. Sabrás montarla, conocer sus límites (alucinaciones, contexto truncado) y respetar el marco establecido por la HAS, la CNIL y el Ordre des médecins, corrigiendo varias ideas erróneas.

Por Mohamed Meguedmi·Actualización 2026-09-30·Probado en Windows, macOS y Linux

#Transcribir una consulta en local: qué está permitido y bajo qué condiciones

Sí, un médico puede transcribir sus consultas con una IA sin que el audio salga de su equipo: Whisper transcribe la voz, un LLM local (a través de Ollama) redacta un informe estructurado y el profesional lo revisa y valida. Esto no elimina las obligaciones legales. La guía de la HAS y la CNIL de 2026 recuerda que la introducción de un sistema de IA no cambia las normas del secreto profesional del artículo L. 1110-4 del Código de Salud Pública. También hay que informar al paciente y respetar su derecho de oposición. El alojamiento por parte de un tercero requiere un proveedor de alojamiento certificado HDS. El procesamiento local evita precisamente esta transferencia y sus riesgos. Esta guía explica cómo montar el pipeline y después detalla el marco y las comprobaciones indispensables, corrigiendo algunas ideas preconcebidas.

La transcripción automática de consultas es, según esta misma guía, el caso de uso más frecuente de las IA generativas en el ámbito asistencial. Por tanto, el reto no es saber si se puede hacer, sino cómo hacerlo correctamente.

!
Esta guía no constituye asesoramiento jurídico
Los aspectos jurídicos son los recogidos en las guías publicadas por la HAS, la CNIL y el Consejo Nacional de la Orden de Médicos de Francia. Según tu situación (ejercicio individual, centro de salud, establecimiento sanitario), pide a tu DPO o al órgano de tu colegio profesional que valide el sistema.

#El marco francés: lo que dicen las guías oficiales

El kit de IA Local

Tu ChatGPT privado y gratuito en tu máquina en 1 hora — LM Studio, Ollama, Open WebUI, tus documentos, sin nube.

  • Espacio en línea de por vida
  • PDF + archivos
  • Reembolsado 30 j

La tabla recoge cada exigencia con su efecto concreto en un pipeline local. De paso, corrige dos ideas extendidas: el consentimiento del paciente no es la base legal del tratamiento, y el HDS no se exige por principio, sino cuando un tercero aloja los datos.

Requisitos y consecuencias para un pipeline local
TemaLo que dicen las guíasConsecuencia práctica
Secreto profesionalLa IA no cambia las reglas del artículo L. 1110-4 del CSPEl informe sigue sujeto al secreto; limita el acceso al equipo
HostingUn tercero que aloja datos de salud (en la nube) debe estar certificado como proveedor de alojamiento de datos de saludProcesamiento en el ordenador del médico: ningún proveedor externo de alojamiento interviene en el flujo
Base legalLa CNIL estima que el consentimiento no es ni la base legal ni la excepción para estos tratamientosDocumenta la base seleccionada con tu DPO; no confíes en una casilla marcada
InformaciónUna información veraz y accesible, con derecho de oposición, basta en la mayoría de los casosIndica mediante un aviso visible o de palabra que la consulta se está transcribiendo; respeta la negativa.
Grabación vocalEl uso de grabaciones de voz que permiten identificar a una persona está sujeto al consentimiento según el Código CivilObtén el consentimiento del paciente antes de grabar la voz
Validación del informeNo debería ser validado por un tercero ausente de la consulta, como una secretariaEl médico que vio al paciente lo revisa personalmente
ConservaciónEl Consejo de la Orden recomienda 20 años después de la última consulta, en ausencia de una norma específica para el ejercicio profesional por cuenta propiaEl informe se ajusta a este plazo; no hay motivo para conservar el audio sin procesar

#Dos creencias erróneas que hay que abandonar

Primera idea errónea: «ChatGPT está formalmente prohibido». Los textos no señalan ninguna herramienta en concreto. El problema es estructural: enviar datos de salud a un servicio en línea los hace salir de tu equipo, lo que requiere un proveedor de alojamiento certificado, un contrato de subcontratación y una información adecuada. La guía de la HAS y la CNIL identifica además un riesgo de vulneración del secreto médico relacionado con la integración de datos sensibles en las consultas a agentes conversacionales en línea.

Segunda idea errónea: «local significa que cumple la normativa». El procesamiento local elimina la transferencia, no la obligación de mantener un registro, informar a los pacientes, proteger el equipo y plantearse la evaluación de impacto. La guía incluye la evaluación de impacto relativa a la protección de datos (EIPD) entre las obligaciones del responsable del despliegue, cuando corresponda: busca asesoramiento para resolver este punto, así como la posible clasificación de tu herramienta como producto sanitario.

#La pila: Whisper, un LLM local y, opcionalmente, la diarización

Las piezas del pipeline
BloqueRolA tener en cuenta
faster-whisperTranscribe el audio (implementación de Whisper con CTranslate2)Anunciado hasta cuatro veces más rápido que la implementación original con igual precisión
Modelo large-v3Modelo multilingüe de la familia Whisper, con francés incluidoDescargado en el primer uso; validar con tus propias grabaciones
Ollama + qwen3.5:9bEscribe el informe estructuradoModelo de 9 mil millones de parámetros; 6,6 GB según la biblioteca Ollama
pyannote (opcional)Diarización: quién habla cuándoModelo para descargar con un token de Hugging Face tras aceptar sus condiciones

En cuanto a la velocidad de transcripción, la documentación de faster-whisper ofrece una referencia fechada: 13 minutos de audio transcritos en 1 minuto y 3 segundos con el modelo large-v2 en fp16, usando 4 525 MB de VRAM, en una RTX 3070 Ti de 8 GB (benchmark de los mantenedores, CUDA 12.4). Los mismos mantenedores miden 59 segundos con 2 926 MB en int8. Son sus mediciones, en su máquina, no las nuestras: indican que una tarjeta gráfica modesta transcribe más rápido que en tiempo real, sin que eso constituya una promesa para tu equipo.

i
En Mac, no hay CUDA
El ejemplo oficial de faster-whisper muestra la ejecución en CPU con int8. Es la configuración que conviene elegir en un Mac: más lenta que una GPU NVIDIA, pero suficiente para una transcripción diferida, después de la consulta.

#Instalación

Terminal
python3 -m venv venv
source venv/bin/activate

pip install faster-whisper ollama
# Optionnel pour la diarisation :
pip install pyannote.audio
Terminal
# Le modèle Whisper se télécharge au premier usage.
# Modèle de rédaction via Ollama :
ollama pull qwen3.5:9b

Con una GPU NVIDIA, faster-whisper requiere las bibliotecas cuBLAS y cuDNN 9 para CUDA 12. Sin ellas, el programa falla al cargar el modelo: instálalas antes de probarlo o pasa al modo CPU.

#Transcribir audio

El script que aparece a continuación fija el idioma, activa el filtro de silencio (VAD) y añade marcas de tiempo a cada segmento. Ajusta la primera línea: device cuda con float16 para una GPU NVIDIA, device cpu con int8 para un Mac o un PC sin tarjeta compatible.

Python
from faster_whisper import WhisperModel

# GPU NVIDIA : device="cuda", compute_type="float16"
# Sans GPU compatible : device="cpu", compute_type="int8"
model = WhisperModel("large-v3", device="cuda", compute_type="float16")

MOTS_CLES = "amoxicilline, paracétamol, HbA1c, tension artérielle"

def transcribe(audio_path):
    segments, info = model.transcribe(
        audio_path,
        language="fr",
        beam_size=5,
        vad_filter=True,        # coupe les silences
        hotwords=MOTS_CLES,     # vocabulaire attendu
        word_timestamps=False,
    )
    lines = []
    for s in segments:
        ts = f"[{int(s.start // 60):02d}:{int(s.start % 60):02d}]"
        lines.append(f"{ts} {s.text.strip()}")
    return "\n".join(lines)

if __name__ == "__main__":
    import sys
    print(transcribe(sys.argv[1]))

El parámetro hotwords, expuesto por la función de transcripción de faster-whisper, permite sugerir al modelo términos esperados: nombres de medicamentos, siglas, exámenes. Ayuda, pero no garantiza: revisa siempre los nombres propios y las dosis.

#Whisper puede escribir lo que nadie ha dicho

La ficha del modelo large-v3 advierte que las predicciones pueden contener textos que no aparecen en el audio, lo que denomina alucinación. En una consulta, esto puede dar lugar a una frase plausible inventada durante un silencio, una cifra modificada o un nombre de medicamento parecido pero incorrecto. El filtro VAD reduce el riesgo durante los silencios; no sustituye la revisión.

#Redactar el informe estructurado

El segundo script envía la transcripción a un modelo local a través de la API de Ollama. Dos ajustes son importantes: una temperatura baja para limitar las invenciones y una ventana de contexto suficiente. La documentación de Ollama indica una ventana predeterminada de unos 4.000 tokens con menos de 24 GiB de VRAM. Una consulta de veinte minutos representa unas 3.000 palabras, es decir, varios miles de tokens (estimación que varía según el ritmo de habla): sin un valor explícito de num_ctx, el final de la transcripción corre el riesgo de quedar truncado. Por eso, el ejemplo fija 16.384 tokens.

Python
import requests

SYSTEM_CR = """Tu es un assistant pour médecin généraliste français.
À partir d'une TRANSCRIPTION BRUTE d'une consultation, tu produis un
compte-rendu médical structuré.

FORMAT DE SORTIE :
## Motif de consultation
## Antécédents (mentionnés)
## Examen clinique
## Diagnostic / Hypothèses
## Traitement / Prescriptions
## Suivi

RÈGLES :
- Reste TEXTUEL : n'ajoute aucun élément non mentionné dans la transcription.
- Reformule en vocabulaire médical standard.
- Si une section n'est pas abordée, écris "Non mentionné".
- Ne complète jamais une posologie ou un diagnostic absent.
"""

def summarize(transcription):
    r = requests.post("http://localhost:11434/api/chat", json={
        "model": "qwen3.5:9b",
        "messages": [
            {"role": "system", "content": SYSTEM_CR},
            {"role": "user",   "content": transcription},
        ],
        "stream": False,
        "options": {"temperature": 0.2, "num_ctx": 16384},
    })
    return r.json()["message"]["content"]

Este prompt aplica los principios de la guía sobre los system prompts: reglas verificables, formato de salida explícito y comportamiento previsto cuando falta información. La instrucción «No mencionado» es importante: evita que el modelo rellene una sección vacía con una hipótesis plausible.

#Diarización: distinguir entre médico y paciente

La diarización asigna cada segmento a un hablante (SPEAKER_00, SPEAKER_01). Sirve sobre todo cuando grabas la propia consulta, con dos voces; para un dictado del médico solo, es innecesaria. El repositorio de pyannote recomienda actualmente el pipeline community-1: debes aceptar sus condiciones de uso en Hugging Face y crear un token de acceso para descargarlo. La inferencia se ejecuta después localmente.

Python
import torch
from pyannote.audio import Pipeline

pipeline = Pipeline.from_pretrained(
    "pyannote/speaker-diarization-community-1",
    token="HUGGINGFACE_ACCESS_TOKEN",
)
pipeline.to(torch.device("cuda"))  # si un GPU est disponible

output = pipeline("consultation.wav")
for turn, speaker in output.speaker_diarization:
    print(f"{turn.start:.1f}s - {turn.end:.1f}s : {speaker}")
→
Combinar los dos resultados
Para un informe con dos voces, alinea los segmentos de Whisper y de pyannote según sus marcas de tiempo antes de enviar el texto al LLM. La guía sobre WhisperX describe una herramienta que realiza esta alineación palabra por palabra.

#Flujo de trabajo típico en consulta

  1. 01
    Informar al paciente
    Antes de la grabación, informa de que la consulta o el dictado se transcribirá mediante una herramienta local y de que el paciente puede oponerse. Si grabas su voz, obtén su consentimiento. Deja constancia de esta información en el expediente.
  2. 02
    Grabar
    Dos opciones: dictar de 1 a 2 minutos de notas después de la consulta (ya no se graba al paciente) o grabar la conversación (se requiere consentimiento verbal y la diarización resulta útil). El dictado minimiza los datos recopilados.
  3. 03
    Guardar el archivo en el equipo
    Transfiere el audio (WAV, MP3, M4A) a una carpeta dedicada y cifrada. Un pequeño script monitorea la carpeta y desencadena el procesamiento.
  4. 04
    Ejecutar el pipeline
    El script transcribe, resume, guarda el informe en formato de texto junto al archivo de audio y registra la operación sin incluir contenido médico en el registro.
  5. 05
    Releer y validar tú mismo
    El médico que vio al paciente revisa el informe, lo corrige y lo integra en su software de gestión del consultorio. Una tercera persona ausente de la consulta no puede detectar las alucinaciones.
  6. 06
    Eliminar el audio sin procesar
    Una vez validado el informe, elimina el audio y la transcripción intermedia: los datos ya no tienen una finalidad y el informe se conserva junto con la historia clínica.

#Qué comprobar durante la revisión

Grilla de revisión de un informe generado
ElementoRiesgoVerificación
Medicamentos y dosisNombre similar, unidad o posología modificadaComparar con la receta real
AntecedentesAntecedente inventado o atribuido al paciente equivocadoContrastar con el expediente
Negaciones« Sin fiebre » se convierte en « fiebre »Releer las frases negativas
Secciones vacíasHipótesis plausible que sustituye a «No mencionado»Comprobar que nada haya sido completado
Fechas y duracionesDuración del tratamiento o plazo de seguimiento incorrectosContrastar con lo que se ha dicho
Registro de actividades de tratamiento
La guía de la CNIL y del Ordre des médecins exige llevar un registro de las actividades de tratamiento; añade una entrada que describa este pipeline local y sus finalidades.
Duración de conservación
El informe se conserva durante el mismo plazo que el expediente médico (20 años después de la última consulta, según la recomendación del colegio profesional). El audio en bruto, que deja de ser necesario una vez validado el informe, se elimina.
Cifrado y respaldos
Cifra el disco (FileVault, BitLocker, LUKS) y realiza copias de seguridad regularmente en un soporte cifrado que se conserve fuera de la consulta. Un equipo robado con datos de salud sin cifrar constituye una violación de datos.
Trazabilidad
Conserva constancia de que se ha informado al paciente, de la versión de las herramientas y de la validación del médico: son tus pruebas en caso de inspección.
FAQ
¿Se puede transcribir una consulta médica con una IA?+
Sí, siempre que se respete el marco: el secreto profesional sigue siendo aplicable, el paciente debe estar informado y poder oponerse, la grabación de su voz requiere su consentimiento, y el informe debe ser revisado por el médico. Un procesamiento local evita la transferencia a un proveedor de alojamiento externo, sin eximir de las demás obligaciones.
¿Se necesita el consentimiento del paciente para transcribir su consulta?+
Para el tratamiento de datos, la CNIL considera que el consentimiento no es ni la base legal ni la excepción: la información y el derecho de oposición bastan en principio. En cambio, la grabación de la voz de una persona identificable requiere su consentimiento conforme al Código Civil. Dictar tus notas después de la consulta evita esta cuestión.
¿Es obligatorio un proveedor de alojamiento HDS para un pipeline local?+
La obligación se refiere a los datos de salud confiados a un tercero que los aloja, por ejemplo en la nube. Un tratamiento realizado en el ordenador del médico, sin transferencia, no introduce en el flujo a ningún tercero que aloje los datos. Si añades una copia de seguridad remota o un servicio en línea, la cuestión vuelve a plantearse.
¿Whisper es fiable para el vocabulario médico francés?+
Whisper large-v3 es el modelo de referencia de la familia, pero su ficha indica que puede generar textos que no estén en el audio. Los nombres de medicamentos, siglas y dosis son puntos frágiles. El parámetro hotwords ayuda, pero la revisión sigue siendo indispensable, y nadie debe validar en lugar del médico.
¿Puede una secretaria médica validar el informe generado?+
La guía HAS y CNIL recomienda que el informe no sea validado por un tercero ausente de la consulta, ya que no podrá detectar las alucinaciones. Es el médico que examinó al paciente quien revisa y valida. La secretaria puede clasificar o integrar luego el documento.
¿Qué configuración para ejecutar este pipeline?+
Una GPU NVIDIA con 8 GB de VRAM transcribe más rápido que en tiempo real según las mediciones de faster-whisper, y un modelo de redacción de 9 mil millones de parámetros requiere 6,6 GB según la biblioteca Ollama. Sin GPU, el modo de CPU en int8 funciona, aunque más lentamente: prevé un procesamiento diferido.
¿Esta guía te ha ayudado?

¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.