Resultados de recuperación y generación del motor de RAG de Vertex AI

En esta página, se explica cada campo del resultado de Vertex AI RAG Engine.

retrieveContexts

En esta sección, se describe cada campo definido en la API de retrieveContexts y se usan los campos en el código de muestra.

Campos

Nombre del campo Descripción
source_uri Es el archivo fuente original antes de importarse a RAG. Si el archivo se importó desde Cloud Storage o Google Drive, source_uri es el URI del archivo original en Cloud Storage o Drive. Si se sube el archivo, source_uri es el nombre visible del archivo.
source_display_name Es el nombre visible del archivo.
text Es el fragmento de texto relevante para la búsqueda.
score Es la similitud o la distancia entre la búsqueda y el fragmento de texto. La similitud o la distancia dependen del vectorDB que elijas. Para ragManagedDB, la puntuación es el COSINE_DISTANCE.

Ejemplo de resultado

En esta muestra de código, se demuestra el uso de los campos para generar una muestra de salida.

contexts {
    source_uri: "gs://sample_folder/hello_world.txt"
    source_display_name: "hello_world.txt"
    text: "Hello World!"
    score: 0.60545359030757784
  }

generateContent

La mayoría de los campos definidos para la API de generateContent se pueden encontrar en el cuerpo de la respuesta.

Campos

En esta sección, se describe cada campo definido en la parte grounding_metadata de la API de generateContent y se usan los campos en el código de muestra.

Nombre del campo Descripción
text Es la respuesta que genera Gemini.
grounding_chunks Son los fragmentos que devuelve el motor de RAG de Vertex AI.
retrieved_context Es un campo repetido que puede tener cero o más fragmentos utilizados para fundamentar el contenido generado.
  • uri
  • El parámetro source_uri especifica dónde se almacenan los datos originalmente.
  • title
  • source_display_name es el nombre de archivo o el nombre visible del archivo original.
  • text
  • El fragmento de texto se usa para fundamentar la respuesta de Gemini.
grounding_supports Relación entre el contenido generado y los fragmentos de fundamentación. Este es un campo repetido. Cada campo grounding_supports muestra la relación entre un segmento de texto del contexto generado y uno o más fragmentos de texto recuperados por RAG.
segment Es el segmento de texto fundamentado del texto generado.
  • start_index
  • Es el primer índice del texto fundamentado. Si falta el valor de start_index, entonces start_index es 0.
  • end_index
  • Es el último índice del texto fundamentado.
  • text
  • Es el texto fundamentado.
grounding_chunk_indices Es el fragmento que se usa para fundamentar el segmento de texto. Se puede usar más de un fragmento para fundamentar el texto. El índice comienza en 0, que representa el primer fragmento en el campo grounding_chunks. El suelo se encuentra en todo el fragmento. No se especifica la parte del fragmento que fundamenta la respuesta.
confidence_scores Es la puntuación que se usa para fundamentar el texto en un fragmento determinado. La puntuación más alta posible es 1, y cuanto más alta sea la puntuación, mayor será el nivel de confianza. Cada puntuación coincide con cada grounding_chunk_indices. En el resultado, solo se incluyen los fragmentos con una puntuación de confianza de al menos 0.6.

Ejemplo de resultado

En esta muestra de código, se demuestra el uso de los campos para generar una muestra de salida.

candidates {
  content {
    role: "model"
    parts {
      text: "The rectangle is red and the background is white. The rectangle appears to be on some type of document editing software. \n"
    }
  }
  grounding_metadata {
    grounding_chunks {
      retrieved_context {
        uri: "a.txt"
        title: "a.txt"
        text: "Okay ,  I  see  a  red  rectangle  on  a  white  background .  It looks like it\'s on some sort of document editing software. It has those small squares and circles around it, indicating that it\'s a selected object ."
      }
    }
    grounding_chunks {
      retrieved_context {
        uri: "b.txt"
        title: "b.txt"
        text: "The  video  is  identical  to  the  last  time  I  described  it .  It shows a blue rectangle on a white background."
      }
    }
    grounding_chunks {
      retrieved_context {
        uri: "c.txt"
        title: "c.txt"
        text: "Okay ,  I  remember  the  rectangle  was  blue  in  the  past  session . Now it is red.\n The  red  rectangle  is  still  there .  It \' s  still  in  the same position on the white background, with the same handles around it. Nothing new is visible since last time.\n You \' re  welcome .  The  red  rectangle  is  still  the  only  thing visible."
      }
    }
    grounding_supports {
      segment {
        end_index: 49
        text: "The rectangle is red and the background is white."
      }
      grounding_chunk_indices: 2
      grounding_chunk_indices: 0
      confidence_scores: 0.958192229
      confidence_scores: 0.992316723
    }
    grounding_supports {
      segment {
        start_index: 50
        end_index: 120
        text: "The rectangle appears to be on some type of document editing software."
      }
      grounding_chunk_indices: 0
      confidence_scores: 0.98374176
    }
  }
}

¿Qué sigue?