Después de importar datos de FHIR R4 en tu aplicación de búsqueda de datos sanitarios, puedes consultar los datos importados para obtener resultados relevantes. Puedes buscar con los siguientes tipos de consultas:
- Consulta de palabra clave
- Consulta en lenguaje natural
- Consulta en lenguaje natural con una respuesta de IA generativa
Además, puedes filtrar tu búsqueda con consultas filtradas por fecha. Para obtener más información, consulta Definir un filtro resource_datetime
.
Cuando buscas en la consola Google Cloud , primero debes proporcionar un ID de paciente y buscar en los datos de un solo paciente a la vez. Cuando buscas con la API REST, puedes buscar en todo tu almacén de datos.
En esta página se muestra cómo buscar datos sanitarios usando los distintos tipos de consultas.
Uso previsto de Vertex AI Search para buscar datos sanitarios
Vertex AI Search no se ha diseñado para proporcionar información relacionada con la prevención, el diagnóstico o el tratamiento de enfermedades. El producto no está diseñado para responder preguntas sobre diagnósticos o recomendaciones de tratamiento. El uso previsto de este producto es obtener y resumir la información médica proporcionada por los usuarios.
Debido a la limitación de los datos de las pruebas, es posible que este producto no se aplique a los grupos de edad de 0 a 18 años y de 85 años o más. Por lo tanto, al revisar los resultados generados, los clientes deben tener en cuenta la representatividad de las subpoblaciones en sus datos de origen.
A continuación se muestran algunos ejemplos de cómo se debe usar este producto:
Consultas exploratorias para encontrar información de un paciente relevante para un tema:
- "Summarize the aspirin uses" ("Resume los usos de la aspirina")
- "presión arterial"
- "¿gestión de la diabetes?"
Consultas de navegación para encontrar recursos específicos que se puedan asignar a una consulta estructurada:
- "Show me the most recent a1c" ("Muéstrame la hemoglobina glucosilada más reciente")
Preguntas y respuestas extractivas para responder a preguntas específicas en las que las pruebas pueden estar repartidas en varios recursos:
- "¿Se ha tratado alguna vez a este paciente con una cefalosporina?"
- "¿Se ha sometido el paciente a una evaluación psiquiátrica?"
A continuación, se muestran ejemplos de cómo no se debe usar este producto:
Recomendaciones de diagnóstico y tratamiento:
- "¿Cuál es el diagnóstico diferencial de este paciente?"
- "¿Qué medicamentos debo recetar al paciente?"
Directrices de las consultas
Las siguientes directrices pueden ayudarte a formular una consulta que te proporcione mejores resultados de búsqueda:
Busca consultas con una intención específica: como el modelo no sabe lo que buscas, es mejor que proporciones una consulta específica en lugar de una vaga. Por ejemplo, es mejor buscar la palabra clave "hipertensión" que "resumen". Mientras que la consulta "hipertensión" muestra resultados específicos de documentos relevantes, la consulta "resumen" puede mostrar resultados de documentos que no sean relevantes.
Mantener el contexto: como la búsqueda no es conversacional, es mejor proporcionar el contexto completo de cada consulta. Por ejemplo, si tu consulta inicial es "hipertensión" y quieres hacer un seguimiento sobre el mismo tema, es mejor que la segunda consulta sea "¿cuándo se diagnosticó la hipertensión?" en lugar de "¿cuándo se diagnosticó ?".
Simplifica la consulta: siempre que sea posible, divide las consultas complejas en otras más sencillas. Por ejemplo, en lugar de buscar "creatinina y albúmina", crea diferentes consultas para "creatinina", "albúmina" y "relación creatinina/albúmina", en función de tu objetivo.
Evita pedir inferencias: la Búsqueda proporciona resultados más precisos cuando el modelo puede devolver información literal de los documentos en los que busca, en lugar de calcular o deducir a partir de la información buscada. Por ejemplo, en lugar de preguntar "¿Cuánto ha cambiado el peso del paciente?", puedes preguntar "¿Cuál es el peso del paciente en las últimas 10 visitas?" y, después, calcular el cambio de peso por separado.
Resaltar coincidencias en los resultados
El resaltado de coincidencias es una configuración que destaca partes del texto de un resultado de búsqueda que coinciden contextualmente con la consulta de búsqueda.
Los resultados de los siguientes tipos de recursos admiten el resaltado de coincidencias:
- Composición: destaca el texto contextual del campo
Composition.section[].text.div
. - DiagnosticReport: destaca el texto contextual del campo
DiagnosticReport.conclusion
. DocumentReference: destaca el texto contextual de los documentos a los que se hace referencia en el campo
DocumentReference.content[0].attachment.url
. El texto resaltado está dentro de un cuadro de delimitación. El cuadro delimitador se representa mediante dos conjuntos de coordenadas normalizadas en la respuesta de búsqueda. Los documentos que admiten el resaltado de coincidencias son archivos PDF y archivos de imagen con tipos admitidos. En la siguiente imagen se muestra cómo se destaca el texto en un documento escaneado del tipo de recurso DocumentReference:Imagen 1. Resaltado de coincidencias en un documento escaneado de DocumentReference.
Cuando hagas búsquedas con la API REST, debes habilitar el resaltado de coincidencias en tu solicitud de búsqueda mediante el campo matchHighlightingCondition
.
La respuesta contiene el campo match_highlighting
, que puedes usar para
renderizar el texto destacado en tu aplicación de búsqueda:
- En los documentos Composition y DiagnosticReport, el campo
match_highlighting
contiene los índices de inicio y finalización del token que se debe destacar. - En el caso de los documentos DocumentReference, el campo
match_highlighting
contiene las coordenadas del cuadro delimitador que destaca el texto. El cuadro delimitador se representa mediante dos conjuntos de coordenadas normalizadas cuyo origen se encuentra en la esquina superior izquierda del documento. Este campo también anida el campopage_number
, que se define como0
para las imágenes y1
para la primera página de los archivos PDF.
Cuando previsualiza los resultados de búsqueda con la Google Cloud consola, el resaltado de coincidencias está habilitado de forma predeterminada.
Antes de empezar
Antes de hacer búsquedas, haz lo siguiente:
- Crea una aplicación de búsqueda de datos sanitarios y un almacén de datos de búsqueda de datos sanitarios, e importa datos de FHIR R4. Para obtener más información, consulta los artículos Crear una aplicación de búsqueda de información sanitaria y Crear un almacén de datos de búsqueda de información sanitaria.
- Configurar los resultados de búsqueda de datos sanitarios
- Para recibir sugerencias de consultas útiles al buscar, activa la función de autocompletar. Esta es una función de vista previa.
- Consulta la lista de recursos FHIR R4 que admite Vertex AI Search. Para obtener más información, consulta la referencia del esquema de datos FHIR R4 de Healthcare.
Buscar con una palabra clave
Puedes buscar en tu almacén de datos sanitarios con una palabra clave. Por ejemplo, puedes buscar con palabras clave como "a1c", "insulin" o "ulcer" para obtener recursos FHIR relevantes.
En la siguiente imagen se muestran los resultados de búsqueda cuando la palabra clave es "lípidos". En este ejemplo no se incluye un resumen ni una respuesta de IA generativa.

Para buscar con una palabra clave, sigue estos pasos.
Consola
En la Google Cloud consola, ve a la página Aplicaciones de IA.
Selecciona la aplicación de búsqueda de información sanitaria que quieras consultar.
En el menú de navegación, haz clic en Vista previa.
En el campo ID de paciente, introduce el ID del paciente cuyos datos quieras consultar. Los IDs de paciente distinguen entre mayúsculas y minúsculas.
Pulsa Intro o haz clic en Vista previa para enviar el ID del paciente.
En la barra de búsqueda Buscar aquí, escribe una palabra clave para buscar.
Si has habilitado la función Autocompletar, verás una lista de sugerencias debajo de la barra de búsqueda a medida que escribas.
Pulsa Intro para enviar la consulta.
- Los resultados de búsqueda se muestran en tablas paginadas que se clasifican según su tipo de recurso FHIR.
- De forma predeterminada, los resultados de búsqueda de todos los tipos de recursos de FHIR se muestran en orden cronológico inverso.
Opcional. Para filtrar los resultados, selecciona una o varias categorías de recursos FHIR situadas debajo de la barra de búsqueda.
Opcional. Para ordenar los resultados según la relevancia de los recursos Composition, DocumentReference y DiagnosticReport, haz clic en el filtro Ordenar: cronológico inverso y, en la lista, selecciona Relevancia. Para obtener más información, consulta el artículo Ordenar resultados de búsqueda de atención sanitaria.
REST
En el siguiente ejemplo se muestra cómo buscar los datos de FHIR R4 de un solo paciente en la aplicación de búsqueda de Healthcare mediante una palabra clave. En este ejemplo se usa el método servingConfigs.search
.
De forma predeterminada, los resultados de búsqueda se devuelven en orden cronológico inverso. Cuando buscas en los recursos Composition, DiagnosticReport y DocumentReference, puedes ordenar los resultados de búsqueda por relevancia. Para obtener más información, consulta el artículo Ordenar resultados de búsqueda de atención sanitaria.
Buscar con una palabra clave.
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "query": "KEYWORD_QUERY", "filter": "patientId: ANY(\"PATIENT_ID\")", "contentSearchSpec":{"snippetSpec":{"returnSnippet":true}} "displaySpec": { "matchHighlightingCondition": "MATCH_HIGHLIGHTING_CONDITION" } }'
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto de Google Cloud .APP_ID
: el ID de la aplicación de Vertex AI Search que quieres consultar.KEYWORD_QUERY
: la palabra clave que quieres buscar en los datos clínicos del paciente filtrado, como "diabetes" o "a1c".PATIENT_ID
: el ID del recurso del paciente cuyos datos quieres buscar.MATCH_HIGHLIGHTING_CONDITION
: una cadena que puede tener los siguientes valores:MATCH_HIGHLIGHTING_DISABLED
: desactiva el resaltado de coincidencias en todos los documentos.MATCH_HIGHLIGHTING_ENABLED
: activa el resaltado de coincidencias en todos los documentos. Si deja este campo vacío o no lo especifica, el resaltado de coincidencias se define comoMATCH_HIGHLIGHTING_DISABLED
y se desactiva en todos los documentos.
Buscar usando consultas en lenguaje natural
Con Vertex AI Search, puedes obtener resultados de consultas complejas en lenguaje natural. Por ejemplo, en la siguiente imagen se muestran los resultados de la consulta en lenguaje natural "Resultados de laboratorio relacionados con la diabetes".

Para hacer búsquedas con consultas en lenguaje natural, sigue estos pasos.
Consola
En la Google Cloud consola, ve a la página Aplicaciones de IA.
Selecciona la aplicación de búsqueda de información sanitaria que quieras consultar.
En el menú de navegación, haz clic en Vista previa.
En el campo ID de paciente, introduce el ID del paciente cuyos datos quieras consultar. Los IDs de paciente distinguen entre mayúsculas y minúsculas.
Pulsa Intro o haz clic en Vista previa para enviar el ID del paciente.
En la barra de búsqueda Buscar aquí, introduce una consulta en lenguaje natural, como "Resultados de laboratorio relacionados con la diabetes".
Si has habilitado la función Autocompletar, verás una lista de sugerencias debajo de la barra de búsqueda a medida que escribas.
Pulsa Intro para enviar la consulta.
- Los resultados de búsqueda se muestran en tablas paginadas que se clasifican según su tipo de recurso FHIR.
- De forma predeterminada, los resultados de búsqueda de todos los tipos de recursos FHIR se muestran en orden cronológico inverso.
Opcional. Selecciona una o varias categorías de recursos de FHIR que se encuentren debajo de la barra de búsqueda para filtrar los resultados.
Opcional. Para ordenar los resultados según la relevancia de los recursos Composition, DocumentReference y DiagnosticReport, haz clic en el filtro Ordenar: cronológico inverso y, en la lista, selecciona Relevancia. Para obtener más información, consulta el artículo Ordenar resultados de búsqueda de atención sanitaria.
REST
En el siguiente ejemplo se muestra cómo buscar los datos de FHIR R4 de un solo paciente en la aplicación de búsqueda de asistencia sanitaria mediante una consulta en lenguaje natural. En este ejemplo se usa el método servingConfigs.search
. Para buscar con una consulta en lenguaje natural, debe añadir el campo naturalLanguageQueryUnderstandingSpec
al cuerpo de la solicitud.
De forma predeterminada, los resultados de búsqueda se devuelven en orden cronológico inverso. Cuando buscas en los recursos Composition, DiagnosticReport y DocumentReference, puedes ordenar los resultados de búsqueda por relevancia. Para obtener más información, consulta el artículo Ordenar resultados de búsqueda de atención sanitaria.
Publica una consulta en lenguaje natural.
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "query": "NATURAL_LANGUAGE_QUERY", "filter": "patientId: ANY(\"PATIENT_ID\")", "contentSearchSpec":{"snippetSpec":{"returnSnippet":true}}, "naturalLanguageQueryUnderstandingSpec":{"filterExtractionCondition":"ENABLED"}, "displaySpec": { "matchHighlightingCondition": "MATCH_HIGHLIGHTING_CONDITION" } }'
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto de Google Cloud .APP_ID
: el ID de la aplicación de Vertex AI Search que quieres consultar.NATURAL_LANGUAGE_QUERY
: la consulta en lenguaje natural, como "Resultados de laboratorio relacionados con la diabetes" o "¿El paciente está tomando alguna medicación?".PATIENT_ID
: el ID del recurso del paciente cuyos datos quieres buscar.MATCH_HIGHLIGHTING_CONDITION
: una cadena que puede tener los siguientes valores:MATCH_HIGHLIGHTING_DISABLED
: desactiva el resaltado de coincidencias en todos los documentos.MATCH_HIGHLIGHTING_ENABLED
: activa el resaltado de coincidencias en todos los documentos. Si deja este campo vacío o no lo especifica, el resaltado de coincidencias se define comoMATCH_HIGHLIGHTING_DISABLED
y se desactiva en todos los documentos.
Buscar con una consulta en lenguaje natural y una respuesta de IA generativa
Cuando buscas los datos FHIR de un paciente mediante una consulta en lenguaje natural, puedes elegir obtener una respuesta de IA generativa junto con los resultados de búsqueda. La respuesta resume los resultados de búsqueda y también muestra las referencias que se han usado para generarla.
Cuando usas la consola, puedes seleccionar el modelo de lenguaje extenso (LLM) para las respuestas de IA generativa. Para obtener más información, consulta el artículo sobre cómo configurar los resultados de búsqueda de datos sanitarios.
Cuando usas la API REST, puedes especificar uno de los siguientes modelos de LLM para obtener respuestas de IA generativa en el campo version
:
gemini-1.5-flash-001/answer_gen/v1
ostable
: un modelo estable y disponible de forma general que se basa en el modelogemini-1.5-flash-001
. Para obtener más información, consulta Modelos disponibles para todos los usuarios.gemini-1.5-pro-002
opreview
: un modelo de vista previa basado en el modelogemini-1.5-pro
.
En la siguiente imagen se muestra un ejemplo de una consulta en lenguaje natural con una respuesta de IA generativa. El resumen de la búsqueda proporciona una respuesta a la consulta resumiendo los hallazgos de los resultados relevantes. Puede desplegar los segmentos que tengan citas para ver las referencias que se han usado para generar el segmento seleccionado. No todas las respuestas generadas tienen citas.

Para hacer una búsqueda con la respuesta de la IA generativa, sigue estos pasos:
Consola
En la Google Cloud consola, ve a la página Aplicaciones de IA.
Selecciona la aplicación de búsqueda de información sanitaria que quieras consultar.
En el menú de navegación, haz clic en Configuraciones.
Personaliza el widget de búsqueda:
- En el campo Tipo de búsqueda, selecciona Búsqueda con una respuesta.
- Selecciona el modelo que quieras usar para generar el resumen. Para obtener más información, consulta Configurar los resultados de búsqueda de datos sanitarios.
- Guarda y publica tus preferencias.
En el menú de navegación, haz clic en Vista previa.
En el campo ID de paciente, introduce el ID del paciente cuyos datos quieras consultar. Los IDs de paciente distinguen entre mayúsculas y minúsculas.
Pulsa Intro o haz clic en Vista previa para enviar el ID del paciente.
En la barra de búsqueda Buscar aquí, introduce una consulta en lenguaje natural, como "AINEs", "¿Cuáles son los análisis de lípidos del paciente?" o "¿Cuál es el resultado de la A1c más reciente?".
Si has habilitado la función Autocompletar, verás una lista de sugerencias debajo de la barra de búsqueda a medida que escribas.
Pulsa Intro para enviar la consulta.
- La respuesta de la IA generativa se muestra debajo de la barra de búsqueda.
- Los resultados de búsqueda se muestran en tablas paginadas que se clasifican según su tipo de recurso FHIR.
- De forma predeterminada, los resultados de búsqueda de todos los tipos de recursos FHIR se muestran en orden cronológico inverso.
Opcional. Despliega un fragmento de la respuesta que tenga citas para ver sus referencias en los resultados de búsqueda.
Opcional. Selecciona una o varias categorías de recursos de FHIR que se encuentren debajo de la barra de búsqueda para filtrar los resultados.
Opcional. Para ordenar los resultados según la relevancia de los recursos Composition, DocumentReference y DiagnosticReport, haz clic en el filtro Ordenar: cronológico inverso y, en la lista, selecciona Relevancia. Para obtener más información, consulta el artículo Ordenar resultados de búsqueda de atención sanitaria.
REST
En el siguiente ejemplo se muestra cómo buscar los datos de FHIR R4 de un solo paciente en la aplicación de búsqueda de asistencia sanitaria mediante una consulta en lenguaje natural con respuestas de IA generativa.
En este ejemplo se usa el método servingConfigs.search
.
- Para hacer búsquedas con una consulta en lenguaje natural, debe añadir el campo
naturalLanguageQueryUnderstandingSpec
al cuerpo de la solicitud. - Para incluir índices de citas en el texto, debes añadir el campo
includeCitations
. Se trata de un campo booleano cuyo valor predeterminado esfalse
.
De forma predeterminada, los resultados de búsqueda se devuelven en orden cronológico inverso. Cuando buscas en los recursos Composition, DiagnosticReport y DocumentReference, puedes ordenar los resultados de búsqueda por relevancia. Para obtener más información, consulta el artículo Ordenar resultados de búsqueda de atención sanitaria.
Publica una consulta en lenguaje natural.
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "query": "QUERY", "filter": "patientId: ANY(\"PATIENT_ID\")", "contentSearchSpec": { "snippetSpec": { "returnSnippet": true }, "displaySpec": { "matchHighlightingCondition": "MATCH_HIGHLIGHTING_CONDITION" } "summarySpec": { "summaryResultCount": 1, "includeCitations": true, "modelSpec": { "version": "MODEL_VERSION" } } }, "naturalLanguageQueryUnderstandingSpec": { "filterExtractionCondition": "ENABLED" } }'
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto de Google Cloud .APP_ID
: el ID de la aplicación de Vertex AI Search que quieres consultar.QUERY
: la consulta en lenguaje natural, como "AINEs", "¿Cuáles son los análisis de lípidos de los pacientes?" o "¿Cuál es el resultado más reciente de la prueba de hemoglobina A1c?". Si la consulta incluye un apóstrofo'
, debes sustituirlo por la referencia de carácter numérico del apóstrofo:'
.PATIENT_ID
: el ID del recurso del paciente cuyos datos quieres buscar.MODEL_VERSION
: la versión del modelo que quieres usar para generar la respuesta.MATCH_HIGHLIGHTING_CONDITION
: una cadena que puede tener los siguientes valores:MATCH_HIGHLIGHTING_DISABLED
: desactiva el resaltado de coincidencias en todos los documentos.MATCH_HIGHLIGHTING_ENABLED
: activa el resaltado de coincidencias en todos los documentos. Si deja este campo vacío o no lo especifica, el resaltado de coincidencias se define comoMATCH_HIGHLIGHTING_DISABLED
y se desactiva en todos los documentos.