Recuperação e geração de saída do mecanismo RAG da Vertex AI

Esta página explica cada campo da saída do mecanismo RAG da Vertex AI.

retrieveContexts

Esta seção descreve cada campo definido na API retrieveContexts e usa os campos no código de exemplo.

Campos

Nome do campo Descrição
source_uri O arquivo de origem original antes de ser importado para o RAG. Se o arquivo for importado do Cloud Storage ou do Google Drive, source_uri será o URI do arquivo original no Cloud Storage ou no Drive. Se o arquivo for enviado, source_uri será o nome de exibição do arquivo.
source_display_name O nome de exibição do arquivo.
text O fragmento de texto relevante para a consulta.
score A semelhança ou distância entre a consulta e o bloco de texto. A semelhança ou distância depende da vectorDB escolhida. Para ragManagedDB, a pontuação é COSINE_DISTANCE.

Exemplo de saída

Este exemplo de código demonstra o uso dos campos para produzir uma saída de exemplo.

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

generateContent

A maioria dos campos definidos para a API generateContent pode ser encontrada no corpo da resposta.

Campos

Esta seção descreve cada campo definido na parte grounding_metadata da API generateContent e usa os campos no código de exemplo.

Nome do campo Descrição
text A resposta gerada pelo Gemini.
grounding_chunks Os blocos retornados pelo mecanismo de RAG da Vertex AI.
retrieved_context Um campo repetido que pode ter zero ou mais blocos usados para fundamentar o conteúdo gerado.
  • uri
  • O source_uri especifica onde os dados são armazenados originalmente.
  • title
  • source_display_name é o nome de exibição ou o nome de arquivo do arquivo original.
  • text
  • O bloco de texto é usado para fundamentar a resposta do Gemini.
grounding_supports A relação entre o conteúdo gerado e os blocos de base. Esse é um campo repetido. Cada campo grounding_supports mostra a relação entre um segmento de texto do contexto gerado e um ou mais blocos de texto que são recuperados pelo RAG.
segment O segmento de texto com base no texto gerado.
  • start_index
  • O primeiro índice do texto com base. Se o start_index estiver ausente, o start_index será 0.
  • end_index
  • O último índice do texto com base.
  • text
  • O texto com base.
grounding_chunk_indices O bloco usado para fundamentar o segmento de texto. É possível usar mais de um bloco para fundamentar o texto. O índice começa em 0, que representa o primeiro bloco no campo grounding_chunks. O solo está em todo o bloco. A parte do bloco que fundamenta a resposta não foi especificada.
confidence_scores A pontuação usada para fundamentar o texto em um determinado trecho. A maior pontuação possível é 1, e quanto maior a pontuação, maior o nível de confiança. Cada pontuação corresponde a cada grounding_chunk_indices. Apenas os blocos com uma pontuação de confiança de pelo menos 0.6 são incluídos na saída.

Exemplo de saída

Este exemplo de código demonstra o uso dos campos para produzir uma saída de exemplo.

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
    }
  }
}

A seguir