En esta página se describe cómo usar Vertex AI Search para analizar y dividir en fragmentos tus documentos.
Puede configurar los ajustes de análisis o de fragmentación para hacer lo siguiente:
Especifica cómo analiza el contenido Vertex AI Search. Puedes especificar cómo analizar el contenido sin estructurar cuando lo subas a Vertex AI Search. Vertex AI Search proporciona un analizador digital, un analizador OCR para PDFs y un analizador de diseño. También puedes usar tus propios documentos analizados. Se recomienda usar el analizador de diseño cuando tengas contenido enriquecido y elementos estructurales, como secciones, párrafos, tablas, imágenes y listas, que quieras extraer de documentos para realizar búsquedas y generar respuestas.
Usa Vertex AI Search para la generación aumentada por recuperación (RAG). Mejora los resultados de los LLMs con los datos relevantes que hayas subido a tu aplicación de búsqueda de Vertex AI. Para ello, activa la fragmentación de documentos, que indexa tus datos como fragmentos para mejorar la relevancia y reducir la carga computacional de los LLMs. También activarás el analizador de diseño, que detecta elementos de los documentos, como encabezados y listas, para mejorar la forma en que se dividen los documentos en fragmentos.
Para obtener información sobre la fragmentación para RAG y cómo devolver fragmentos en las solicitudes de búsqueda, consulta Fragmentar documentos para RAG.
Analizar documentos
Puedes controlar el análisis del contenido de las siguientes formas:
Especifica el tipo de analizador. Puedes especificar el tipo de análisis que se va a aplicar en función del tipo de archivo:
- Analizador digital. El analizador digital está activado de forma predeterminada para todos los tipos de archivo, a menos que se especifique otro tipo de analizador. El analizador digital procesa los documentos ingeridos si no se especifica ningún otro analizador predeterminado para el almacén de datos o si el analizador especificado no admite el tipo de archivo de un documento ingerido.
- Análisis de OCR para PDFs. Si tienes previsto subir PDFs escaneados o PDFs con texto en imágenes, puedes activar el analizador OCR para mejorar la indexación de los PDFs. Consulta la sección Analizador de OCR para PDFs de este documento.
- Analizador de diseños. Activa el analizador de diseño para archivos HTML, PDF o DOCX si tienes previsto usar Vertex AI Search para RAG. Consulta Fragmentar documentos para RAG para obtener información sobre este analizador y cómo activarlo.
Incorpora tu propio documento analizado. (Vista previa con lista de permitidos) Si ya has analizado tus documentos sin estructurar, puedes importar ese contenido preanalizado en Vertex AI Search. Consulta Incorporar tu propio documento analizado.
Comparación de la disponibilidad de los analizadores
En la siguiente tabla se indica la disponibilidad de cada analizador por tipo de archivo de documento y se muestra qué elementos puede detectar y analizar cada analizador.
Tipo de archivo | Analizador digital | Analizador de OCR | Analizador de diseños |
---|---|---|---|
HTML | Detecta elementos de párrafo | No aplicable | Detecta elementos de párrafo, tabla, imagen, lista, título y encabezado |
Detecta elementos de párrafo (texto digital) | Detecta elementos de párrafo | Detecta elementos de párrafo, tabla, imagen, título y encabezado | |
DOCX (vista previa) | Detecta elementos de párrafo | No aplicable | Detecta elementos de párrafo, tabla, imagen, lista, título y encabezado |
PPTX (vista previa) | Detecta elementos de párrafo | No aplicable | Detecta elementos de párrafo, tabla, imagen, lista, título y encabezado |
TXT | Detecta elementos de párrafo | No aplicable | No aplicable |
XLSX (Vista previa) | Detecta elementos de párrafo | No aplicable | Detecta elementos de párrafo, tabla, título y encabezado |
Analizador digital
El analizador digital extrae texto legible por máquina de los documentos. Detecta bloques de texto, pero no elementos de documentos, como tablas, listas y encabezados.
El analizador digital se usa de forma predeterminada si no especificas otro analizador durante la creación del almacén de datos o si el analizador especificado no admite un tipo de archivo que se esté subiendo.
Analizador de OCR para PDFs
Si tiene PDFs en los que no se pueden realizar búsquedas (PDFs escaneados o PDFs con texto en imágenes, como infografías), Google recomienda activar el procesamiento de reconocimiento óptico de caracteres (OCR) durante la creación del almacén de datos. De esta forma, Vertex AI Search puede extraer elementos de párrafo.
Si tiene PDFs con función de búsqueda u otros formatos digitales que se componen principalmente de texto legible por máquina, normalmente no necesita usar el analizador OCR. Sin embargo, si tienes PDFs que contienen texto no se puede buscar (como texto escaneado o infografías) y texto legible por máquina, puedes definir el campo useNativeText
como verdadero al especificar el analizador OCR. En este caso, el texto legible por máquina se combina con los resultados del análisis de OCR para mejorar la calidad de la extracción de texto.
Las funciones de procesamiento de OCR están disponibles para las aplicaciones de búsqueda personalizada con almacenes de datos no estructurados.
El procesador OCR puede analizar las primeras 500 páginas de un archivo PDF. Las páginas que superen el límite de 500 no se procesarán.
Analizador de diseños
El análisis de diseño permite que las aplicaciones de IA detecten diseños en archivos PDF, HTML, DOCX, PPTX y XLSX. Las aplicaciones de IA pueden identificar elementos de contenido, como bloques de texto, tablas, listas y elementos estructurales, como títulos y encabezados, y usarlos para definir la organización y la jerarquía de un documento.
Puedes activar el análisis de diseño para todos los tipos de archivo o especificar para qué tipos de archivo quieres activarlo. El analizador de diseño detecta elementos de contenido como párrafos, tablas y listas, así como elementos estructurales como títulos, encabezados, encabezados y pies de página.
El analizador de diseño solo está disponible cuando se usa la fragmentación de documentos para RAG. Cuando la fragmentación de documentos está activada, Vertex AI Search divide los documentos en fragmentos durante la ingestión y puede devolverlos como fragmentos. La detección del diseño de los documentos permite fragmentar el contenido de forma inteligente y mejora la búsqueda y la generación de respuestas relacionadas con los elementos de los documentos. Para obtener más información sobre la fragmentación de documentos para RAG, consulta Fragmentar documentos para RAG.
Anotación de imágenes (función de vista previa)
Si la anotación de imágenes está habilitada, cuando se detecta una imagen en un documento de origen, se asignan una descripción (anotación) de la imagen y la imagen en sí a un fragmento. La anotación determina si el fragmento se debe devolver en un resultado de búsqueda. Si se genera una respuesta, la anotación puede ser una fuente de la respuesta.
El analizador de diseño puede detectar los siguientes tipos de imagen: BMP, GIF, JPEG, PNG y TIFF.
Anotación de una tabla
Si la anotación de tablas está habilitada, cuando se detecta una tabla en un documento de origen, se asignan a un fragmento una descripción (anotación) de la tabla y la propia tabla. La anotación determina si el fragmento se debe devolver en un resultado de búsqueda. Si se genera una respuesta, la anotación puede ser una fuente de la respuesta.
Excluir contenido HTML
Cuando se usa el analizador de diseño para documentos HTML, se pueden excluir partes específicas del contenido HTML para que no se procesen. Para mejorar la calidad de los datos de las aplicaciones de búsqueda y de las aplicaciones de RAG, puedes excluir contenido genérico o secciones como menús de navegación, encabezados, pies de página o barras laterales.
El layoutParsingConfig
proporciona los siguientes campos para ello:
excludeHtmlElements
: lista de etiquetas HTML que se van a excluir. El contenido de estas etiquetas se excluye.excludeHtmlClasses
: lista de atributos de clase HTML que se van a excluir. Los elementos HTML que contengan estos atributos de clase, junto con su contenido, se excluyen.excludeHtmlIds
: lista de atributos de ID de elementos HTML que se van a excluir. Los elementos HTML con estos atributos de ID, junto con su contenido, se excluyen.
Especificar un analizador predeterminado
Si incluye el objeto documentProcessingConfig
al crear un almacén de datos, puede especificar un analizador predeterminado para ese almacén. Si no incluyes documentProcessingConfig.defaultParsingConfig
, se usará el analizador digital. El analizador digital también se usa si el analizador especificado no está disponible para un tipo de archivo.
REST
Para especificar un analizador predeterminado, sigue estos pasos:
Cuando cree un almacén de datos de búsqueda mediante la API, incluya
documentProcessingConfig.defaultParsingConfig
en la solicitud de creación del almacén de datos. Puede especificar el analizador OCR, el analizador de diseño o el analizador digital:Para especificar el analizador de OCR de los PDFs, sigue estos pasos:
"documentProcessingConfig": { "defaultParsingConfig": { "ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" } } }
NATIVE_TEXT_BOOLEAN
es opcional. Defínelo solo si ingieres PDFs. Si se le asigna el valortrue
, se activa el procesamiento de texto legible por máquina para el analizador OCR. El valor predeterminado esfalse
.
Para especificar el analizador de diseño:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": {} } }
Para especificar el analizador digital:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Consola
Cuando cree un almacén de datos de búsqueda a través de la consola, podrá especificar el analizador predeterminado.
Ejemplo
En el siguiente ejemplo se especifica que el analizador OCR será el predeterminado durante la creación del almacén de datos. Como el analizador de OCR solo se aplica a archivos PDF, todos los archivos PDF que se ingieran se procesarán con el analizador de OCR, y los archivos de otros tipos se procesarán con el analizador digital.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: exampleproject" \
"https://discoveryengine.googleapis.com/v1/projects/exampleproject/locations/global/collections/default_collection/dataStores?dataStoreId=datastore123" \
-d '{
"displayName": "exampledatastore",
"industryVertical": "GENERIC",
"solutionTypes": ["SOLUTION_TYPE_SEARCH"],
"contentConfig": "CONTENT_REQUIRED",
"documentProcessingConfig": {
"defaultParsingConfig": {
"ocrParsingConfig": {
"useNativeText": "false"
}
}
}
}'
Especificar anulaciones de analizador para tipos de archivo
Puedes especificar que un tipo de archivo concreto (PDF, HTML o DOCX) se analice con un analizador diferente al predeterminado. Para ello, incluya el campo documentProcessingConfig
en su solicitud de creación de almacén de datos y especifique el analizador de sustitución. Si no especifica un analizador predeterminado, se usará el analizador digital.
REST
Para especificar una anulación del analizador sintáctico específica de un tipo de archivo, sigue estos pasos:
Cuando cree un almacén de datos de búsqueda mediante la API, incluya
documentProcessingConfig.defaultParsingConfig
en la solicitud de creación del almacén de datos.Puedes especificar un analizador para
pdf
,html
odocx
:"documentProcessingConfig": { "parsingConfigOverrides": { "FILE_TYPE": { PARSING_CONFIG }, } }
Haz los cambios siguientes:
FILE_TYPE
: los valores aceptados sonpdf
,html
ydocx
.PARSING_CONFIG
: especifica la configuración del analizador que quieras aplicar al tipo de archivo. Puedes especificar el analizador de OCR, el analizador de diseño o el analizador digital:Para especificar el analizador de OCR de los PDFs, sigue estos pasos:
"ocrParsingConfig": { "useNativeText": "NATIVE_TEXT_BOOLEAN" }
NATIVE_TEXT_BOOLEAN
: opcional. Solo se debe definir si vas a ingresar PDFs. Si se le asigna el valortrue
, se activa el procesamiento de texto legible por máquina para el analizador OCR. El valor predeterminado esfalse
.
Para especificar el analizador de diseño:
"layoutParsingConfig": {}
Para especificar el analizador digital:
"documentProcessingConfig": { "defaultParsingConfig": { "digitalParsingConfig": {} } }
Consola
Cuando cree un almacén de datos de búsqueda a través de la consola, puede especificar anulaciones de analizador para tipos de archivo concretos.
Ejemplo
En el siguiente ejemplo se especifica que, durante la creación del almacén de datos, los archivos PDF deben procesarse con el analizador OCR y los archivos HTML, con el analizador de diseño. En este caso, el analizador digital procesaría todos los archivos que no fueran PDF ni HTML.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: exampleproject" \
"https://discoveryengine.googleapis.com/v1/projects/exampleproject/locations/global/collections/default_collection/dataStores?dataStoreId=datastore123" \
-d '{
"displayName": "exampledatastore",
"industryVertical": "GENERIC",
"solutionTypes": ["SOLUTION_TYPE_SEARCH"],
"contentConfig": "CONTENT_REQUIRED",
"documentProcessingConfig": {
"parsingConfigOverrides": {
"pdf": {
"ocrParsingConfig": {
"useNativeText": "false"
},
},
"html": {
"layoutParsingConfig": {}
}
}
}
}'
Editar el análisis de documentos de almacenes de datos
Si ya tiene un almacén de datos, puede cambiar el analizador predeterminado y añadir excepciones de formato de archivo. Sin embargo, los ajustes actualizados del analizador solo se aplican a los documentos nuevos que se importen al almacén de datos. Los documentos que ya estén en el almacén de datos no se volverán a analizar con la nueva configuración.
Para cambiar la configuración de análisis de documentos de un almacén de datos, sigue estos pasos:
En la Google Cloud consola, ve a la página Aplicaciones de IA.
En el menú de navegación, haga clic en Almacenes de datos.
En la columna Nombre, haga clic en el almacén de datos que quiera editar.
En la pestaña Configuración del procesamiento, edite los ajustes de Análisis de documentos.
Los ajustes de Fragmentación de documentos no se pueden cambiar. Si el almacén de datos no tiene habilitada la fragmentación de documentos, no podrá elegir el analizador de diseño.
Haz clic en Enviar.
Configurar el analizador de diseño para excluir contenido HTML
Puedes configurar el analizador de diseño para excluir contenido HTML especificando excludeHtmlElements
, excludeHtmlClasses
o excludeHtmlIds
en documentProcessingConfig.defaultParsingConfig.layoutParsingConfig
.
REST
Para evitar que el analizador de diseño procese determinado contenido HTML, sigue estos pasos:
Cuando cree un almacén de datos de búsqueda con la API, incluya
documentProcessingConfig.defaultParsingConfig.layoutParsingConfig
en la solicitud de creación del almacén de datos.Para excluir tipos de etiquetas HTML específicos, utilice:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": { "excludeHtmlElements": ["HTML_TAG_1","HTML_TAG_2","HTML_TAG_N"] } } }
Sustituye las variables HTML_TAG por nombres de etiquetas (por ejemplo,
nav
yfooter
).Para excluir atributos de clase de elementos HTML específicos, utiliza lo siguiente:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": { "excludeHtmlClasses": ["HTML_CLASS_1","HTML_CLASS_2","HTML_CLASS_N"] } } }
Sustituye las variables HTML_CLASS por atributos de clase, como
overlay
yscreenreader
.Para excluir atributos de ID de elementos HTML específicos, utilice lo siguiente:
"documentProcessingConfig": { "defaultParsingConfig": { "layoutParsingConfig": { "excludeHtmlIds": ["HTML_ID_1","HTML_ID_2","HTML_ID_N"] } } }
Sustituye las variables HTML_ID por atributos de ID, como
cookie-banner
.
Ejemplo
En este ejemplo se especifica que, cuando el analizador de diseño procesa archivos HTML, omite lo siguiente:
Etiquetas de elementos HTML:
header
,footer
,nav
yaside
Atributos de clase de elementos HTML de tipo
overlays
yscreenreader
Cualquier elemento con el ID de atributo
cookie-banner
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: exampleproject" \
"https://discoveryengine.googleapis.com/v1/projects/exampleproject/locations/global/collections/default_collection/dataStores?dataStoreId=datastore123&createAdvancedSiteSearch=true" \
-d '{
"displayName": "exampledatastore",
"industryVertical": "GENERIC",
"contentConfig": "PUBLIC_WEBSITE",
"documentProcessingConfig": {
"chunkingConfig": {
"layoutBasedChunkingConfig": {}
},
"defaultParsingConfig": {
"layoutParsingConfig": {
"excludeHtmlElements": ["header", "footer", "nav", "aside"],
"excludeHtmlClasses": ["overlays", "screenreader"],
"excludeHtmlIds": ["cookie-banner"]
}
}
}
}'
Obtener documentos analizados en JSON
Para obtener un documento analizado en formato JSON, llama al método getProcessedDocument
y especifica PARSED_DOCUMENT
como tipo de documento procesado. Obtener documentos analizados en JSON puede ser útil si necesitas subir el documento analizado a otro sitio o si decides volver a importar documentos analizados a aplicaciones de IA mediante la función Trae tu propio documento analizado.
REST
Para obtener documentos analizados en JSON, sigue este paso:
Llama al método
getProcessedDocument
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID:getProcessedDocument?processed_document_type=PARSED_DOCUMENT"
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto.DATA_STORE_ID
: el ID de tu almacén de datos.DOCUMENT_ID
: ID del documento que se va a obtener.
Proporcionar un documento analizado
Puede importar documentos no estructurados y analizados previamente en almacenes de datos de Vertex AI Search. Por ejemplo, en lugar de importar un documento PDF sin procesar, puedes analizar el PDF tú mismo e importar el resultado del análisis. De esta forma, puedes importar tus documentos de forma estructurada, lo que asegura que la búsqueda y la generación de respuestas tengan información sobre el diseño y los elementos del documento.
Un documento no estructurado analizado se representa mediante JSON, que describe el documento no estructurado mediante una secuencia de bloques de texto, tabla y lista. Puedes importar archivos JSON con los datos de documentos sin estructurar analizados de la misma forma que importas otros tipos de documentos sin estructurar, como PDFs. Si esta función está activada, cada vez que se suba un archivo JSON y se identifique por un tipo MIME application/json
o por una extensión .JSON, se tratará como un documento analizado.
Para activar esta función y obtener información sobre cómo usarla, ponte en contacto con el equipo de tu cuenta de Google.
Dividir documentos en fragmentos para RAG
De forma predeterminada, Vertex AI Search está optimizado para la recuperación de documentos, por lo que tu aplicación de búsqueda devuelve un documento, como un PDF o una página web, con cada resultado de búsqueda.
Las funciones de fragmentación de documentos están disponibles para las aplicaciones de búsqueda personalizadas con almacenes de datos no estructurados.
En su lugar, Vertex AI Search se puede optimizar para RAG, donde tu aplicación de búsqueda se usa principalmente para aumentar la salida del LLM con tus datos personalizados. Cuando se activa la fragmentación de documentos, Vertex AI Search divide los documentos en fragmentos. En los resultados de búsqueda, tu aplicación de búsqueda puede devolver fragmentos de datos relevantes en lugar de documentos completos. Usar datos fragmentados para RAG aumenta la relevancia de las respuestas de los LLMs y reduce la carga computacional de los LLMs.
Para usar Vertex AI Search para RAG, sigue estos pasos:
Activa la fragmentación de documentos al crear tu almacén de datos.
También puedes subir tus propios fragmentos (vista previa con lista de permitidos) si ya has fragmentado tus documentos.
Puedes recuperar y ver los fragmentos de las siguientes formas:
Limitaciones
Se aplican las siguientes limitaciones a la fragmentación:
- La división en fragmentos de documentos no se puede activar ni desactivar después de crear el almacén de datos.
- Puedes hacer solicitudes de búsqueda de documentos en lugar de fragmentos de un almacén de datos con la fragmentación de documentos activada. Sin embargo, los almacenes de datos con la fragmentación de documentos activada no están optimizados para devolver documentos. Los documentos se devuelven agregando fragmentos en documentos.
- Cuando la fragmentación de documentos está activada, las funciones de resúmenes de búsqueda y de búsqueda con seguimiento se admiten en la versión preliminar pública, pero no en la versión GA.
Opciones de fragmentación de documentos
En esta sección se describen las opciones que debe especificar para activar la fragmentación de documentos.
Durante la creación del almacén de datos, activa las siguientes opciones para que Vertex AI Search pueda indexar tus documentos como fragmentos.
Fragmentación de documentos teniendo en cuenta el diseño. Para activar esta opción, incluye el campo
documentProcessingConfig
en tu solicitud de creación de almacén de datos y especificaChunkingConfig.LayoutBasedChunkingConfig
.Cuando se activa la fragmentación de documentos con reconocimiento de diseño, Vertex AI Search detecta el diseño de un documento y lo tiene en cuenta durante la fragmentación. De esta forma, se mejora la coherencia semántica y se reduce el ruido en el contenido cuando se usa para la recuperación y la generación de LLMs. Todo el texto de un fragmento procederá de la misma entidad de diseño, como encabezados, subtítulos y listas.
Análisis de diseño. Para activar esta opción, especifica
ParsingConfig.LayoutParsingConfig
durante la creación del almacén de datos.El analizador de diseño detecta diseños de archivos PDF, HTML y DOCX. Identifica elementos como bloques de texto, tablas, listas, títulos y encabezados, y los usa para definir la organización y la jerarquía de un documento.
Para obtener más información sobre el análisis de diseño, consulta Análisis de diseño.
Activar la división en fragmentos de documentos
Para activar la fragmentación de documentos, incluye el objeto documentProcessingConfig
en la solicitud de creación del almacén de datos y activa la fragmentación de documentos y el análisis de diseño.
REST
Para activar la fragmentación de documentos, sigue estos pasos:
Cuando cree un almacén de datos de búsqueda con la API, incluya el objeto
documentProcessingConfig.chunkingConfig
en la solicitud de creación del almacén de datos."documentProcessingConfig": { "chunkingConfig": { "layoutBasedChunkingConfig": { "chunkSize": CHUNK_SIZE_LIMIT, "includeAncestorHeadings": HEADINGS_BOOLEAN, } }, "defaultParsingConfig": { "layoutParsingConfig": {} } }
Haz los cambios siguientes:
CHUNK_SIZE_LIMIT
: opcional. El límite de tamaño de token de cada fragmento. El valor predeterminado es 500. Los valores posibles van de 100 a 500 (inclusive).HEADINGS_BOOLEAN
: opcional. Determina si los encabezados se incluyen en cada fragmento. El valor predeterminado esfalse
. Añadir títulos y encabezados de todos los niveles a los fragmentos de la mitad del documento puede ayudar a evitar la pérdida de contexto en la recuperación y la clasificación de fragmentos.
Consola
Cuando cree un almacén de datos de búsqueda a través de la consola, podrá activar la fragmentación de documentos.
Usar tus propios fragmentos (vista previa con lista de permitidos)
Si ya has dividido tus documentos en fragmentos, puedes subirlos a Vertex AI Search en lugar de activar las opciones de fragmentación de documentos.
Usar tus propios fragmentos es una función de vista previa con lista de permitidos. Para usar esta función, ponte en contacto con el equipo de tu cuenta de Google.
Listar los fragmentos de un documento
Para obtener una lista de todos los fragmentos de un documento específico, llama al método Chunks.list
.
REST
Para enumerar los fragmentos de un documento, sigue este paso:
Llama al método
Chunks.list
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID/chunks"
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto.DATA_STORE_ID
: el ID de tu almacén de datos.DOCUMENT_ID
: ID del documento del que se van a enumerar los fragmentos.
Obtener fragmentos en JSON de un documento procesado
Puedes obtener todos los fragmentos de un documento específico en formato JSON llamando al método getProcessedDocument
. Recibir los fragmentos en formato JSON puede ser útil si necesitas subir fragmentos a otro sitio o si decides volver a importar fragmentos a aplicaciones de IA mediante la función Trae tus propios fragmentos.
REST
Para obtener fragmentos JSON de un documento, sigue este paso:
Llama al método
getProcessedDocument
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID:getProcessedDocument?processed_document_type=CHUNKED_DOCUMENT"
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto.DATA_STORE_ID
: el ID de tu almacén de datos.DOCUMENT_ID
: ID del documento del que se van a obtener los fragmentos.
Obtener fragmentos específicos
Para obtener un fragmento específico, llama al método Chunks.get
.
REST
Para obtener un fragmento específico, sigue este paso:
Llama al método
Chunks.get
:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents/DOCUMENT_ID/chunks/CHUNK_ID"
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto.DATA_STORE_ID
: el ID de tu almacén de datos.DOCUMENT_ID
: ID del documento del que procede el fragmento.CHUNK_ID
: ID del fragmento que se va a devolver.
Devolver fragmentos en solicitudes de búsqueda
Una vez que hayas confirmado que tus datos se han dividido correctamente en fragmentos, Vertex AI Search podrá devolver datos fragmentados en sus resultados de búsqueda.
La respuesta devuelve un fragmento que es relevante para la consulta de búsqueda. Además, puedes elegir devolver los fragmentos adyacentes que aparecen antes y después del fragmento pertinente en el documento de origen. Los fragmentos adyacentes pueden añadir contexto y precisión.
REST
Para obtener datos fragmentados, sigue estos pasos:
Al enviar una solicitud de búsqueda, especifica
ContentSearchSpec.SearchResultMode
comochunks
.contentSearchSpec": { "searchResultMode": "RESULT_MODE", "chunkSpec": { "numPreviousChunks": NUMBER_OF_PREVIOUS_CHUNKS, "numNextChunks": NUMBER_OF_NEXT_CHUNKS } }
RESULT_MODE
: determina si los resultados de búsqueda se devuelven como documentos completos o en fragmentos. Para obtener fragmentos, el almacén de datos debe tener activada la fragmentación de documentos. Los valores aceptados sondocuments
ychunks
. Si la fragmentación de documentos está activada en tu almacén de datos, el valor predeterminado eschunks
.NUMBER_OF_PREVIOUS_CHUNKS
: número de fragmentos que se devolverán inmediatamente antes del fragmento pertinente. El valor máximo permitido es 5.NUMBER_OF_NEXT_CHUNKS
: número de fragmentos que se devuelven inmediatamente después del fragmento pertinente. El valor máximo permitido es 5.
Ejemplo
En el siguiente ejemplo de solicitud de consulta de búsqueda, se asigna el valor SearchResultMode
a
chunks
, se solicita un fragmento anterior y otro posterior, y se limita el número
de resultados a un único fragmento relevante mediante pageSize
.
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: exampleproject" \
"https://discoveryengine.googleapis.com/v1/projects/exampleproject/locations/global/collections/default_collection/dataStores/datastore123/servingConfigs/default_search:search" \
-d '{
"query": "animal",
"pageSize": 1,
"contentSearchSpec": {
"searchResultMode": "CHUNKS",
"chunkSpec": {
"numPreviousChunks": 1,
"numNextChunks": 1
}
}
}'
En el siguiente ejemplo se muestra la respuesta que se devuelve a la consulta de ejemplo. La respuesta contiene los fragmentos relevantes, los fragmentos anterior y siguiente, los metadatos del documento original y el intervalo de páginas del documento del que se ha obtenido cada fragmento.
Respuesta
{ "results": [ { "chunk": { "name": "projects/961309680810/locations/global/collections/default_collection/dataStores/allie-pdf-adjacent-chunks_1711394998841/branches/0/documents/0d8619f429d7f20b3575b14cd0ad0813/chunks/c17", "id": "c17", "content": "\n# ESS10: Stakeholder Engagement and Information Disclosure\nReaders should also refer to ESS10 and its guidance notes, plus the template available for a stakeholder engagement plan. More detail on stakeholder engagement in projects with risks related to animal health is contained in section 4 below. The type of stakeholders (men and women) that can be engaged by the Borrower as part of the project's environmental and social assessment and project design and implementation are diverse and vary based on the type of intervention. The stakeholders can include: Pastoralists, farmers, herders, women's groups, women farmers, community members, fishermen, youths, etc. Cooperatives members, farmer groups, women's livestock associations, water user associations, community councils, slaughterhouse workers, traders, etc. Veterinarians, para-veterinary professionals, animal health workers, community animal health workers, faculties and students in veterinary colleges, etc. 8 \n# 4. Good Practice in Animal Health Risk Assessment and Management\n\n# Approach\nRisk assessment provides the transparent, adequate and objective evaluation needed by interested parties to make decisions on health-related risks associated with project activities involving live animals. As the ESF requires, it is conducted throughout the project cycle, to provide or indicate likelihood and impact of a given hazard, identify factors that shape the risk, and find proportionate and appropriate management options. The level of risk may be reduced by mitigation measures, such as infrastructure (e.g., diagnostic laboratories, border control posts, quarantine stations), codes of practice (e.g., good animal husbandry practices, on-farm biosecurity, quarantine, vaccination), policies and regulations (e.g., rules for importing live animals, ban on growth hormones and promotors, feed standards, distance required between farms, vaccination), institutional capacity (e.g., veterinary services, surveillance and monitoring), changes in individual behavior (e.g., hygiene, hand washing, care for animals). Annex 2 provides examples of mitigation practices. This list is not an exhaustive one but a compendium of most practiced interventions and activities. The cited measures should take into account social, economic, as well as cultural, gender and occupational aspects, and other factors that may affect the acceptability of mitigation practices by project beneficiaries and other stakeholders. Risk assessment is reviewed and updated through the project cycle (for example to take into account increased trade and travel connectivity between rural and urban settings and how this may affect risks of disease occurrence and/or outbreak). Projects monitor changes in risks (likelihood and impact) b by using data, triggers or indicators. ", "documentMetadata": { "uri": "gs://table_eval_set/pdf/worldbank/AnimalHealthGoodPracticeNote.pdf", "title": "AnimalHealthGoodPracticeNote" }, "pageSpan": { "pageStart": 14, "pageEnd": 15 }, "chunkMetadata": { "previousChunks": [ { "name": "projects/961309680810/locations/global/collections/default_collection/dataStores/allie-pdf-adjacent-chunks_1711394998841/branches/0/documents/0d8619f429d7f20b3575b14cd0ad0813/chunks/c16", "id": "c16", "content": "\n# ESS6: Biodiversity Conservation and Sustainable Management of Living Natural Resources\nThe risks associated with livestock interventions under ESS6 include animal welfare (in relation to housing, transport, and slaughter); diffusion of pathogens from domestic animals to wildlife, with risks for endemic species and biodiversity (e.g., sheep and goat plague in Mongolia affecting the saiga, an endemic species of wild antelope); the introduction of new breeds with potential risk of introducing exotic or new diseases; and the release of new species that are not endemic with competitive advantage, potentially putting endemic species at risk of extinction. Animal welfare relates to how an animal is coping with the conditions in which it lives. An animal is in a good state of welfare if it is healthy, comfortable, well nourished, safe, able to express innate behavior, 7 Good Practice Note - Animal Health and related risks and is not suffering from unpleasant states such as pain, fear or distress. Good animal welfare requires appropriate animal care, disease prevention and veterinary treatment; appropriate shelter, management and nutrition; humane handling, slaughter or culling. The OIE provides standards for animal welfare on farms, during transport and at the time of slaughter, for their welfare and for purposes of disease control, in its Terrestrial and Aquatic Codes. The 2014 IFC Good Practice Note: Improving Animal Welfare in Livestock Operations is another example of practical guidance provided to development practitioners for implementation in investments and operations. Pastoralists rely heavily on livestock as a source of food, income and social status. Emergency projects to restock the herds of pastoralists affected by drought, disease or other natural disaster should pay particular attention to animal welfare (in terms of transport, access to water, feed, and animal health) to avoid potential disease transmission and ensure humane treatment of animals. Restocking also entails assessing the assets of pastoralists and their ability to maintain livestock in good conditions (access to pasture and water, social relationship, technical knowledge, etc.). Pastoralist communities also need to be engaged by the project to determine the type of animals and breed and the minimum herd size to be considered for restocking. \n# Box 5. Safeguarding the welfare of animals and related risks in project activities\nIn Haiti, the RESEPAG project (Relaunching Agriculture: Strengthening Agriculture Public Services) financed housing for goats and provided technical recommendations for improving their welfare, which is critical to avoid the respiratory infections, including pneumonia, that are serious diseases for goats. To prevent these diseases, requires optimal sanitation and air quality in herd housing. This involves ensuring that buildings have adequate ventilation and dust levels are reduced to minimize the opportunity for infection. Good nutrition, water and minerals are also needed to support the goats' immune function. The project paid particular attention to: (i) housing design to ensure good ventilation; (ii) locating housing close to water sources and away from human habitation and noisy areas; (iii) providing mineral blocks for micronutrients; (iv) ensuring availability of drinking water and clean food troughs. ", "documentMetadata": { "uri": "gs://table_eval_set/pdf/worldbank/AnimalHealthGoodPracticeNote.pdf", "title": "AnimalHealthGoodPracticeNote" }, "pageSpan": { "pageStart": 13, "pageEnd": 14 } } ], "nextChunks": [ { "name": "projects/961309680810/locations/global/collections/default_collection/dataStores/allie-pdf-adjacent-chunks_1711394998841/branches/0/documents/0d8619f429d7f20b3575b14cd0ad0813/chunks/c18", "id": "c18", "content": "\n# Scoping of risks\nEarly scoping of risks related to animal health informs decisions to initiate more comprehensive risk assessment according to the type of livestock interventions and activities. It can be based on the following considerations: • • • • Type of livestock interventions supported by the project (such as expansion of feed resources, improvement of animal genetics, construction/upgrading and management of post-farm-gate facilities, etc. – see also Annex 2); Geographic scope and scale of the livestock interventions; Human and animal populations that are likely to be affected (farmers, women, children, domestic animals, wildlife, etc.); and Changes in the project or project context (such as emerging disease outbreak, extreme weather or climatic conditions) that would require a re-assessment of risk levels, mitigation measures and their likely effect on risk reduction. Scenario planning can also help to identify project-specific vulnerabilities, country-wide or locally, and help shape pragmatic analyses that address single or multiple hazards. In this process, some populations may be identified as having disproportionate exposure or vulnerability to certain risks because of occupation, gender, age, cultural or religious affiliation, socio-economic or health status. For example, women and children may be the main caretakers of livestock in the case of 9 Good Practice Note - Animal Health and related risks household farming, which puts them into close contact with animals and animal products. In farms and slaughterhouses, workers and veterinarians are particularly exposed, as they may be in direct contact with sick animals (see Box 2 for an illustration). Fragility, conflict, and violence (FCV) can exacerbate risk, in terms of likelihood and impact. Migrants new to a geographic area may be immunologically naïve to endemic zoonotic diseases or they may inadvertently introduce exotic diseases; and refugees or internally displaced populations may have high population density with limited infrastructure, leaving them vulnerable to disease exposure. Factors such as lack of access to sanitation, hygiene, housing, and health and veterinary services may also affect disease prevalence, contributing to perpetuation of poverty in some populations. Risk assessment should identify populations at risk and prioritize vulnerable populations and circumstances where risks may be increased. It should be noted that activities that seem minor can still have major consequences. See Box 6 for an example illustrating how such small interventions in a project may have large-scale consequences. It highlights the need for risk assessment, even for simple livestock interventions and activities, and how this can help during the project cycle (from concept to implementation). ", "documentMetadata": { "uri": "gs://table_eval_set/pdf/worldbank/AnimalHealthGoodPracticeNote.pdf", "title": "AnimalHealthGoodPracticeNote" }, "pageSpan": { "pageStart": 15, "pageEnd": 16 } } ] } } } ], "totalSize": 61, "attributionToken": "jwHwjgoMCICPjbAGEISp2J0BEiQ2NjAzMmZhYS0wMDAwLTJjYzEtYWQxYS1hYzNlYjE0Mzc2MTQiB0dFTkVSSUMqUMLwnhXb7Ygtq8SKLa3Eii3d7Ygtj_enIqOAlyLm7Ygtt7eMLduPmiKN96cijr6dFcXL8xfdj5oi9-yILdSynRWCspoi-eyILYCymiLk7Ygt", "nextPageToken": "ANxYzNzQTMiV2MjFWLhFDZh1SMjNmMtADMwATL5EmZyMDM2YDJaMQv3yagQYAsciPgIwgExEgC", "guidedSearchResult": {}, "summary": {} }