Cómo se procesan sus datos

Cuando se conecta a un origen de datos, Discovery procesa la información del origen de datos para crear una colección.

El objetivo del proceso de un origen de datos es identificar la información significativa y etiquetarla a medida que se añade a la colección para que sea más fácil encontrar y recuperar la información más adelante.

El proceso que se aplica a todos los orígenes de datos incluye los pasos siguientes:

  • Identificar documentos individuales en el origen de datos
  • Buscar campos en los documentos
  • Indexar los campos

Puede ver una lista de los campos que se han indexado en la página Gestionar campos.

  1. Vaya a la página Gestionar colecciones y, a continuación, elija la colección.

    Asegúrese de que el proceso de la colección ha finalizado en primer lugar. La página Actividad muestra el estado de proceso.

  2. Haga clic en la pestaña Gestionar campos.

Los campos que se muestran pueden diferir en función de los datos. Sin embargo, siempre se lista un subconjunto de campos. Estos campos, con nombres como footer y header, se derivan de la herramienta Smart Document Understanding (SDU) y se listan incluso cuando no aplica explícitamente un modelo SDU a la colección. (Para obtener la lista completa de campos generados por SDU, consulte Campos disponibles.) Sólo los campos con un tipo de datos especificado se almacenan en el índice de la colección.

Uno de los campos generados por SDU que se almacena en el índice es el campo text. El campo text normalmente contiene el cuerpo principal del texto del documento original. La mayor parte del contenido que se devuelve en los resultados de búsqueda que envía desde la página Mejorar y personalizar se origina en este campo. La forma de analizar y devolver sólo fragmentos relevantes de información de este campo viene determinada por la configuración del resultado de la consulta que utiliza el proyecto. Para obtener más información, consulte Vista previa de los resultados de consulta predeterminados.

Más procesamiento añade más campos. Y se aplica más procesamiento automáticamente en función del tipo de proyecto. Cuando los procesos se ejecutan en documentos de una colección, se añaden campos adicionales para almacenar la información asociada con el proceso. Por ejemplo, cuando se aplica el enriquecimiento Entidades incorporado a una colección, inicia un proceso que añade campos con nombres que empiezan por enriched_{field_name}.entities a los documentos de la colección.

Cómo se manejan los campos

Para la mayoría de los tipos de archivos no estructurados, la mayor parte del contenido del archivo se añade a un campo denominado text. Para los tipos de archivo que tienen una estructura de datos inherente, tales archivos JSON, los nombres del archivo de origen se utilizan para nombrar los campos en los que se almacena el contenido. Cuando cargue archivos de este tipo, tenga en cuenta algunas limitaciones de denominación que existen para los campos.

Los siguientes nombres de campo tienen un significado especial. Si es posible, no utilice estos nombres en los archivos de origen estructurados.

  • document_id
  • highlight
  • html
  • metadata
  • parent_document_id
  • result_metadata
  • score
  • spans

Evite los nombres de campo que cumplan las condiciones siguientes. Los nombres de campo con estos caracteres restringidos no se consultan.

  • Empiece con los caracteres _, + y -. Por ejemplo, +extracted-content.
  • Contienen los caracteres ., ,, #, ?, (, ) o : o espacios. Por ejemplo, extracted content o new:extracted-content.
  • Finalice con números, por ejemplo, extracted-content2.

Para procesar documentos en Discovery, todos los documentos de una colección deben tener el mismo tipo de datos para un campo determinado. Cuando un tipo de datos de un campo determinado varía entre documentos, el proceso de indexación de campos falla y se muestra un mensaje de error que no se ha podido indexar en la sección Avisos y errores de un vistazo de la página Actividad de la colección.

Campos HTML

El campo html del índice de documentos almacena información estructural sobre el documento.

  • Si utiliza la herramienta Smart Document Understanding para anotar una colección, la representación del documento se indexa en el campo html.
  • Si utiliza la herramienta Smart Document Understanding para aplicar un modelo entrenado previamente a una colección, la representación del documento se indexa tanto en el campo html como en el campo text.
  • El campo html tiene un límite de tamaño. Para obtener más información, consulte Límites de campo.

Nota sobre la mejora de los datos:

  • Si desea aplicar un enriquecimiento que pueda comprender las tablas de un documento, el documento debe contener un campo html.

Cómo se manejan las fechas

Las fechas se capturan de diferentes maneras por diferentes tipos de archivo.

Archivos no estructurados

La mejor forma de capturar información de fecha del cuerpo de un documento con datos no estructurados es utilizar un enriquecimiento de modelo de procesamiento de lenguaje natural. Por ejemplo, el enriquecimiento Entidades precompiladas reconoce las fechas y las anota en el campo text (u otros campos de cuerpo con el tipo de datos String ). En un documento donde se aplica el enriquecimiento, puede encontrar fechas buscando campos etiquetados como enriched_{fieldname}.entities.type=Date.

Dates from metadata date fields, such as extracted_metadata.publicationdate, are stored in the index as dates as long as the date format matches one of the supported date data type formats. You can't see nested fields from the Manage fields page. And when you view a search result as JSON, date field values are displayed as string values because the JSON editor shows the date as a string. However, values from date fields behave like dates. You can use greater than (>) or less than (<) operators with such fields in Discovery Query Language queries, for example.

Archivos estructurados

Los archivos de estructura que importe, como archivos CSV o JSON, pueden contener campos de fecha que desee almacenar como tipos de datos de fecha. Discovery puede reconocer muchos formatos de fecha. Sin embargo, es posible que tenga que añadir un formato a la lista. Para obtener más información, consulte Valores de formato de fecha.

Valores de formato de fecha

Si los documentos tienen un campo de nivel raíz con información de fecha, puede establecer el campo para que sea un campo de tipo de datos Date en el índice.

Discovery reconoce los siguientes formatos de fecha automáticamente:

yyyy-MM-dd'T'HH:mm:ssZ
yyyy-MM-dd'T'HH:mm:ssXXX
yyyy-MM-dd'T'HH:mm:ss.SSSZ
yyyy-MM-dd'T'HH:mm:ss.SSSX
yyyy-MM-dd
M/d/yy
yyyyMMdd
yyyy/MM/dd

Si almacena fechas en otros formatos, puede añadir el formato a la lista de formatos soportados.

Para añadir más formatos de fecha, realice los pasos siguientes:

  1. En la página Gestionar campos de la colección, añada un formato como una línea nueva en el campo Formatos de fecha.

    Especifica un formato de fecha soportado por la clase Java SimpleDateFormat.

    Por ejemplo, si los registros sólo almacenan valores de año para fechas, añada yyyy a la lista de formatos de fecha soportados. A continuación, puede establecer el tipo de datos para el campo que contiene un valor de año en Fechay volver a procesar la recopilación. Como resultado, una aparición de 2019 en el campo de fecha se almacena como 2019-01-01T05:00:00Z en el índice.

    Al añadir un formato de fecha, debe especificar un huso horario asociado para la fecha.

  2. Especifique un huso horario.

  3. Opcionalmente, seleccione un entorno local de fecha.

    El entorno local que elija se utiliza para analizar un valor de serie que representa la fecha para los campos de conjunto de datos de tipo de fecha. Por ejemplo, al utilizar el formato EEE, MM dd, yyyy, la configuración regional inglesa (Estados Unidos) puede analizar el valor de la cadena "Wednesday, 07 01, 2020", y la configuración regional japonesa (Japón) puede analizar el mismo valor de cadena "水曜日, 07 01, 2020".

  4. Si ya ha importado documentos con fechas en formatos que no se han reconocido, vuelva a procesar los documentos.

Discovery no puede almacenar una fecha que se mencione en un campo de texto como un campo Fecha en el índice. Sin embargo, puede utilizar un enriquecimiento como, por ejemplo, el enriquecimiento Entidades para identificar las fechas que se mencionan en el texto.

Cómo se manejan los tipos de archivo

Cuando se carga un documento, los datos del archivo se indexan. Discoverymaneja distintos tipos de archivos de forma diferente.

Archivos CSV

Notas sobre la adición de datos:

  • Cada línea definida en el archivo CSV se añade al índice como un documento independiente, cada uno con el mismo parent_document_id.

    Los documentos hijo normalmente tienen un ID de documento con la sintaxis {parent-ID}_n donde {parent-ID} es el ID de documento del archivo original que se ha añadido y n es un número secuencial. Por ejemplo, si carga un archivo CSV con 5 filas, se añaden cinco documentos a la colección con ID de documento como, por ejemplo, de f5214225c1e03e25190ffcdfad8e84ff_0 a f5214225c1e03e25190ffcdfad8e84ff_4.

  • No puede habilitar la característica OCR (reconocimiento óptico de caracteres) para archivos CSV.

  • Si el archivo CSV tiene cabeceras, los nombres de cabecera se utilizan para nombrar los campos en los que se almacena el contenido de la columna correspondiente. No utilice nombres que tengan un significado especial en Discovery. Asegúrese de que los nombres de campo se ajustan a las reglas de denominación, como no tener espacios ni números añadidos. Por ejemplo, puede cambiar el nombre de la cabecera start date por start_date y label1 por label-one antes de añadir el archivo. Para obtener más información, consulte Cómo se manejan los campos.

  • Cuando un nombre de cabecera de archivo CSV contiene caracteres restringidos, el conversor de documentos elimina automáticamente los caracteres restringidos del nombre de campo cuando añade el campo resultante al índice.

Nota sobre la mejora de los datos:

  • No puede aplicar modelos precompilados o entrenados por el usuario de Smart Document Understanding a archivos CSV.

Archivos HTML

Si carga un archivo HTML o rastrea un origen de datos con archivos HTML, como por ejemplo un sitio web, se genera un campo html junto con el campo text. Para obtener más información, consulte Campos HTML.

Archivos JSON

Notas sobre la adición de datos:

  • Los nombres de objeto del archivo JSON de origen se utilizan para nombrar los campos en los que se almacena el contenido. No utilice nombres que tengan un significado especial en Discovery. Asegúrese de que los nombres se ajustan a las reglas de denominación, como por ejemplo no tener espacios ni números añadidos. Por ejemplo, puede cambiar el nombre del objeto updated on por updated_on y answer2 por answer-two antes de añadir el archivo. Para obtener más información, consulte Cómo se manejan los campos.

  • Si un campo de nivel raíz es una matriz pero no contiene elementos, el campo se omite del índice.

  • Si un campo de nivel raíz es una matriz y contiene sólo un elemento, la matriz se indexa como el tipo de datos de un elemento. Por ejemplo, una matriz de series con una serie se indexa como una serie.

  • Si un campo anidado contiene una matriz, incluso si la matriz sólo tiene un valor, se indexa como una matriz.

  • Si un campo de nivel raíz es una matriz y contiene más de un elemento, los datos se indexan como una matriz.

  • Si copia JSON generado por Discovery y, a continuación, lo carga como un archivo JSON, elimine primero estos campos generados por el sistema del archivo: document_id, parent_document_id, filename y title.

  • No puede habilitar la característica de reconocimiento óptico de caracteres (OCR) para archivos JSON.

  • Si el documento de origen tiene un campo con el nombre document_id, el campo se omite y no se añade al índice de la colección.

    El modo en que se maneja el campo document_id en un archivo JSON ha cambiado con la actualización de versión de 2023-03-31 de la API. Antes de la actualización, cuando ha cargado un archivo JSON desde la interfaz de usuario del producto o ha utilizado la API para añadirlo con el método Añadir documento, el valor del campo document_id del archivo se mostraba como el valor document_id en los resultados de la consulta. Sin embargo, se le ha asignado un ID de documento diferente y se ha almacenado en el campo parent_document_id. El ID de documento asignado es el que se devolvió cuando llamó al método List documents (Lista de documentos ) y es el que tuvo que utilizarse como document_id (valor de retorno) en el endpoint URL para una solicitud de método Delete document (Eliminar documento ). Cuando se utiliza el método Actualizar documento para asignar un nuevo document_id, el ID original continúa devolviéndose en los resultados de la consulta. Sin embargo, se ha tenido que utilizar el ID asignado para suprimir el documento. Si tiene una aplicación que se basa en el comportamiento anterior, puede especificar un número de versión anterior a 2023-03-31, como por ejemplo 2020-08-30, en las llamadas de API.

Notas sobre la mejora de datos:

  • No puede aplicar modelos precompilados o entrenados por el usuario de Smart Document Understanding a archivos JSON.

  • Cuando aplica un enriquecimiento a un campo desde el archivo JSON, el tipo de datos de campo se convierte en una matriz. El campo se convierte en una matriz incluso si contiene un único valor. Por ejemplo, "field1": "Descubrimiento" se convierte en "field1": ["Descubrimiento"].

  • Solo se enriquecen los primeros 50.000 caracteres de un campo personalizado de un archivo JSON.

  • En los tipos de proyecto en los que el enriquecimiento Parte de voz (POS) se aplica automáticamente, el enriquecimiento se aplica al campo que contiene la mayor parte del contenido del archivo en el primer archivo JSON que se añade a la colección. Este campo está determinado por las reglas siguientes:

    • Si un campo se denomina text, se le aplica el enriquecimiento POS.
    • Se elige el campo con el valor de serie más largo y el número más alto de valores distintos.
    • Si más de un campo cumple la condición anterior, se elige uno de los campos de forma aleatoria.
  • Si desea aplicar un enriquecimiento a un campo anidado, debe crear un proyecto de Content Mining y, a continuación, aplicar el enriquecimiento al campo. Si desea utilizar un tipo de proyecto que no sea Content Mining, puede reutilizar la colección que ha creado con el tipo de proyecto Content Mining en otro lugar. Para obtener más información, consulte Aplicación de enriquecimientos.

Puede especificar los objetos normalizations y conversions en el método Actualizar una colección de la API para mover o fusionar campos JSON.

Cómo se derivan los pasajes

Discovery utiliza algoritmos sofisticados para determinar los mejores pasajes de texto de todos los documentos devueltos por una consulta. Los pasajes se devuelven por documento de forma predeterminada. Se muestran como una sección dentro de cada resultado de consulta de documento y se ordenan por relevancia de paso.

Discovery utiliza la detección de límite de frase para seleccionar un pasaje que incluya una frase completa. Busca pasajes que tienen una longitud aproximada de 200 caracteres, luego mira trozos de contenido que son el doble de esa longitud para encontrar pasajes que contienen frases completas. La detección de los límites de las frases funcionan bien en todos los lenguajes soportados y utiliza lógica específica de cada idioma.

Para todos los tipos de proyecto excepto Búsqueda conversacional, puede cambiar cómo se visualizan los pasajes en los resultados de búsqueda desde la página Personalizar visualización > Resultados de búsqueda. Por ejemplo, puede configurar el número de pasajes que se muestran por documento y el tamaño máximo de caracteres por pasaje.