Obtén fragmentos y contenido extraído

Vertex AI Search puede proporcionar fragmentos de búsqueda, respuestas extractivas y segmentos extractivos con cada respuesta de búsqueda para mejorar tus resultados.

  • Fragmentos: un fragmento es un extracto breve de texto del documento de resultados de la búsqueda que proporciona una vista previa del contenido de un resultado de la búsqueda. Incluye el resaltado de hits que puedes renderizar en tu IU. Los fragmentos tienen las siguientes características: normalmente debajo de cada resultado de búsqueda para ayudar a los usuarios finales a evaluar el la relevancia y utilidad de ese resultado. Los fragmentos están disponibles para los almacenes de datos con datos no estructurados y datos de sitios web (búsqueda básica de sitios web y indexación avanzada de sitios web).

  • Respuestas extractivas: Una respuesta extractiva es un texto literal que se muestra con cada resultado de la búsqueda. Se extrae directamente desde el documento original. Por lo general, las respuestas de extracción se muestran cerca de la parte superior de las páginas web para proporcionar una respuesta breve al usuario final. que sea contextualmente relevante para su consulta. Las respuestas extractivas están disponibles para almacenes de datos con datos no estructurados y con indexación avanzada de sitios web.

  • Segmentos extractivos: un segmento es el texto exacto que se muestra con cada resultado de la búsqueda. Los el segmento extractivo suele ser más detallado que una respuesta extractiva. Los segmentos extractivos se pueden mostrar como una respuesta a una consulta y se pueden utilizar para realizar tareas de procesamiento posterior y como entrada para modelos grandes de lenguaje generar respuestas o texto nuevo. Hay segmentos de extracción disponibles para almacenes de datos con datos no estructurados y con indexación de sitios web avanzada.

Ejemplos

En los siguientes ejemplos, se ilustran las diferencias entre los fragmentos, las respuestas extractivas y los segmentos extractivos.

Consulta: "¿Qué es Vertex AI Agent Builder?"

  • Snippet:

    Para habilitar esto, anunciamos nuestro nuevo Vertex AI Agent Builder, la forma más rápida para que los desarrolladores impulsen la creación de Apps de generación, como bots...

  • Respuesta extractiva:

    Vertex AI Agent Builder permite que los desarrolladores envíen rápidamente experiencias nuevas, como bots, interfaces de chat, motores de búsqueda personalizados, asistentes digitales y mucho más. Los desarrolladores tienen acceso de API a la base de Google modelos de AA y puedes usar plantillas listas para usar para impulsar la creación de modelos apps en minutos u horas.

  • Segmento extractivo:

    Las empresas y los gobiernos también quieren que las interacciones con los clientes, los socios y los empleados sean más eficaces y útiles con esta nueva tecnología de IA. Para para permitirlo, anunciamos nuestro nuevo Vertex AI Agent Builder.

    Vertex AI Agent Builder permite que los desarrolladores envíen rápidamente experiencias nuevas, como bots, interfaces de chat, motores de búsqueda personalizados, asistentes digitales y mucho más. Los desarrolladores tienen acceso de API a la base de Google modelos de AA y puedes usar plantillas listas para usar para impulsar la creación de modelos apps en minutos u horas. Con Vertex AI Agent Builder, los desarrolladores también podrán hacer lo siguiente:

    • Combina los datos de la organización y las técnicas de recuperación de información para proporcionar respuestas relevantes.
    • Busca y responde con algo más que solo texto.
    • Combina conversaciones naturales con flujos estructurados.
    • No te limites a informar; haz transacciones.

Antes de comenzar

Según el tipo de app que tengas, completa los siguientes requisitos previos:

Fragmentos

Los fragmentos son textos breves extraídos de cada documento de resultado de la búsqueda. Incluyen el resaltado de hits en etiquetas HTML en negrita para renderizar vistas previas de los resultados de la búsqueda en una IU. Por lo general, los fragmentos se renderizan como texto de vista previa debajo de los resultados de una búsqueda para ayudar a los usuarios finales a decidir si hacen clic en esa búsqueda resultado será útil.

Los fragmentos están disponibles para la búsqueda no estructurada y de sitios web.

Obtener fragmentos

Para obtener fragmentos, sigue estos pasos:

  1. Envía una solicitud de búsqueda que incluya ContentSearchSpec.SnippetSpec y establezca returnSnippet como verdadero.

    En el siguiente ejemplo de SnippetSpec, se especifica que se puede mostrar un fragmento para cada resultado de la búsqueda.

    "contentSearchSpec":
    {
      "snippetSpec":
      {
        "returnSnippet": true
      }
    }
    • returnSnippet: Si se establece en true, muestra un fragmento.
  2. Obtén fragmentos de la respuesta de la búsqueda. Se muestran fragmentos con cada búsqueda da como resultado derivedStructData.snippets.

    En este ejemplo de un documento que se devolvió como uno de los resultados en un respuesta de búsqueda, se incluye un fragmento destacado en negrita con el result:

    {
      "id": "54321",
      "document": {
        "name": "projects/123/locations/global/collections/default_collection/dataStores/example-datastore/branches/0/documents/54321",
        "id": "54321",
        "derivedStructData": {
          "link": "gs://cloud-samples-data/gen-app-builder/search/alphabet-investor-pdfs/2008_google_annual_report.pdf",
          "snippets": [
            {
              "snippet": "Google Chrome. Google Chrome is an open-source browser that combines a minimal design with technologies to make the web faster, safer, and easier to navigate.",
              "snippet_status": "SUCCESS"
            }
          ]
        }
      }
    }
    • snippet: Contiene un fragmento generado para el resultado de la búsqueda del documento. El resaltado de hits se incluye en etiquetas HTML en negrita.
    • snippet_status: Si se genera un fragmento, se muestra este campo. como SUCCESS. Si no se genera ningún fragmento, este campo se muestra como NO_SNIPPET_AVAILABLE.

Respuestas extractivas

Una respuesta extractiva es una sección de texto que se extrae textualmente de un documento. Cuando se muestra un documento como resultado de una búsqueda en una respuesta de búsqueda, se puede mostrar una respuesta extractiva relevante con ese resultado.

Una respuesta extractiva puede ser texto, como un párrafo, una tabla o una lista con viñetas que se extrae del documento de resultados de la búsqueda. Las respuestas extractivas son más breves que los segmentos extractivos.

Las respuestas extractivas se pueden usar como alternativa a las respuestas resumidas en los casos en que se prefieren respuestas precisas y literales a los resúmenes reformulados.

Las respuestas extractivas están disponibles para los almacenes de datos con datos no estructurados y con indexación avanzada de sitios web.

Obtén respuestas extractivas

Para obtener respuestas de extracción, haz lo siguiente:

  1. Envía una solicitud de búsqueda que utilice ContentSearchSpec.extractiveContentSpec para especificar maxExtractiveAnswerCount.

    En el siguiente ejemplo de extractiveContentSpec, se especifica que un para cada resultado de la búsqueda.

    "contentSearchSpec":
    {
      "extractiveContentSpec": {
        "maxExtractiveAnswerCount": 1
      }
    }
    • maxExtractiveAnswerCount: Es la cantidad de respuestas extractivas que se mostrarán para cada resultado de la búsqueda. El valor predeterminado es 0 y el máximo es 5.
  2. Obtén respuestas extractivas de la respuesta de la búsqueda. Las respuestas extractivas se muestran con cada resultado de la búsqueda en extractive_answers.

    En este ejemplo de un documento que se devolvió como uno de los resultados en un de búsqueda, se incluyó una respuesta extractiva con el resultado:

    {
      "id": "54321",
      "document": {
        "name": "projects/123/locations/global/collections/default_collection/dataStores/example-datastore/branches/0/documents/54321",
        "id": "54321",
        "derivedStructData": {
          "extractive_answers": [
            {
              "pageNumber": "2",
              "content": "Google saw growth throughout the year both in our domestic business and internationally, both on Google owned sites and on the Google Network. Specifically, revenues from Google owned sites increased 101% on a year over year basis, from $792 million to $1.6 billion."
            }
          ],
          "link": "gs://cloud-samples-data/gen-app-builder/search/alphabet-investor-pdfs/2004Q4_earnings_google.pdf"
        }
    }
    }
    • pageNumber: Si se pueden extraer números de página del documento, este campo indica de dónde se extrajo la respuesta.
    • content: Es el contenido de la respuesta extractiva.

Segmentos extractivos

Un segmento extractivo es una sección de texto que se extrae literalmente de un documento de resultados de la búsqueda. Los segmentos extractivos son similares a las respuestas extractivas, pero suelen ser más completos y detallados. Por lo general, los segmentos extractivos se usan como entrada para tus propios LLM para generar respuestas o texto nuevo.

Los segmentos extractivos pueden ser varios párrafos, incluido el texto con formato, como como tablas y listas con viñetas.

Los segmentos extractivos están disponibles para almacenes de datos con datos no estructurados y con indexación avanzada de sitios web.

Opciones de segmento de extracción

Las siguientes opciones están disponibles para los segmentos extractivos:

  • Número de segmentos: Puedes especificar hasta 10 segmentos extractivos para obtener para cada resultado de búsqueda.

  • Puntuaciones de relevancia: Las puntuaciones de relevancia se basan en la similitud de la consulta con el segmento extraído. Puedes especificar que los segmentos extractivos se se devuelve con los puntajes de relevancia. Las puntuaciones varían de -1.0 (menos relevante) a 1.0 (más relevante). Activar las puntuaciones de relevancia puede aumentar la latencia.

  • Segmentos adyacentes (versión preliminar): Puedes configurar numPreviousSegments y numNextSegments para obtener hasta 3 segmentos inmediatamente antes y después del segmento relevante. Los segmentos adyacentes pueden agregar contexto y precisión al segmento relevante.

    Si activas segmentos adyacentes, es posible que aumente la latencia.

Cómo obtener segmentos extractivos

En los siguientes pasos, se muestra cómo obtener segmentos extractivos para datos no estructurados. Puedes seguir pasos similares para obtener segmentos extractivos para los datos del sitio web.

  1. Envía una solicitud de búsqueda que use ContentSearchSpec.extractiveContentSpec para especificar maxExtractiveSegmentCount.

    En el siguiente ejemplo de extractiveContentSpec, se especifica que segmento se puede obtener para cada resultado de búsqueda.

    "contentSearchSpec":
    {
      "extractiveContentSpec": {
        "maxExtractiveSegmentCount": 1
      }
    }
    • maxExtractiveSegmentCount: Es la cantidad de segmentos extractivos que se mostrarán. para cada resultado de búsqueda. El valor predeterminado es 0 y el máximo es 10.

    Opciones adicionales:

    • returnExtractiveSegmentScore: Se establece en true para mostrar una puntuación de relevancia con cada segmento que se muestra.
    • numPreviousSegments: Es la cantidad de segmentos adyacentes. para que aparezcan antes del segmento relevante. El valor predeterminado es 0 y el máximo es 3. Usar segmentos adyacentes puede aumentar la latencia.
    • numNextSegments: Es la cantidad de segmentos adyacentes a el resultado después del segmento relevante. El valor predeterminado es 0 y el máximo es 3. El uso de segmentos adyacentes puede aumentar la latencia.

    Para obtener más información sobre estas opciones, consulta Opciones de segmentos extractivos.

  2. Obtén segmentos de la respuesta de búsqueda. Se muestran segmentos con cada búsqueda da como resultado extractive_segments.

    En este ejemplo de un documento que se mostró como uno de los resultados de una respuesta de búsqueda, se incluyó un segmento con el resultado:

    {
      "id": "54321",
      "document": {
        "name": "projects/123/locations/global/collections/default_collection/dataStores/example-datastore/branches/0/documents/54321",
        "id": "54321",
        "derivedStructData": {
          "extractive_segments": [
            {
              "pageNumber": "2",
              "content": "Client\nGoogle Toolbar. Google Toolbar is a free application that adds a Google search box to web browsers (Internet\nExplorer and Firefox) and improves user web experience through features such as a pop-up blocker that blocks\npop-up advertising, an autofill feature that completes web forms with information saved on a user's computer, and\ncustomizable buttons that let users search their favorite web sites and stay updated on their favorite feeds.\n\nGoogle Chrome. Google Chrome is an open-source browser that combines a minimal design with\ntechnologies to make the web faster, safer, and easier to navigate.\nGoogle Pack. Google Pack is a free collection of safe, useful software programs from Google and other\ncompanies that improve the user experience online and on the desktop. It includes programs that help users\nbrowse the web faster, remove spyware and viruses.\n\nPicasa. Picasa is a free service that allows users to view, manage and share their photos. Picasa enables users\nto import, organize and edit their photos, and upload them to Picasa Web Albums where the photos can be shared\nwith others on the internet.\n\nGoogle Desktop. Google Desktop lets people perform a full-text search on the contents of their own\ncomputer, including email, files, instant messenger chats and web browser history. Users can view web pages they\nhave visited even when they are not online. Google Desktop also includes a customizable Sidebar that includes\nmodules for weather, stock tickers and news.\n\n5"
            }
          ],
          "link": "gs://cloud-samples-data/gen-app-builder/search/alphabet-investor-pdfs/2004Q4_earnings_google.pdf"
        }
    }
    }
    • pageNumber: Si los números de página se pueden extraer del documento, este indica de dónde se extrajo la respuesta.
    • content: El contenido del segmento extractivo.

¿Qué sigue?