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

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

retrieveContexts

Nesta seção, descrevemos cada campo definido na API retrieveContexts e usamos os campos em um exemplo de código.

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 original do arquivo no Cloud Storage ou no Drive. Se o arquivo for enviado, source_uri será o nome de exibição dele.
source_display_name O nome de exibição do arquivo.
text O trecho de texto relevante para a consulta.
score A semelhança ou distância entre a consulta e o trecho de texto. A similaridade ou distância depende do vectorDB escolhido. 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 em um exemplo de código.

Nome do campo Descrição
text A resposta gerada pelo Gemini.
grounding_chunks Os fragmentos retornados pelo mecanismo de RAG da Vertex AI.
retrieved_context Um campo repetido que pode ter zero ou mais partes usadas para fundamentar o conteúdo gerado.
  • uri
  • O source_uri especifica onde os dados são armazenados originalmente.
  • title
  • O source_display_name é o nome do arquivo ou o nome de exibição do arquivo original.
  • text
  • O trecho de texto é usado para fundamentar a resposta do Gemini.
grounding_supports A relação entre o conteúdo gerado e os trechos de embasamento. Esse é um campo repetido. Cada campo grounding_supports mostra a relação entre um segmento de texto do contexto gerado e um ou mais trechos de texto recuperados pela RAG.
segment O segmento de texto fundamentado do texto gerado.
  • start_index
  • O primeiro índice do texto embasado. Se o start_index estiver ausente, o start_index será 0.
  • end_index
  • O último índice do texto embasado.
  • text
  • O texto fundamentado.
grounding_chunk_indices O trecho usado para fundamentar o segmento de texto. Pode haver mais de um trecho usado para fundamentar o texto. O índice começa em 0, que representa o primeiro bloco no campo grounding_chunks. O chão está em todo o bloco. A parte do trecho que fundamenta a resposta não foi especificada.
confidence_scores A pontuação usada para fundamentar o texto em um determinado trecho. A pontuação máxima possível é 1, e quanto maior a pontuação, maior o nível de confiança. Cada pontuação corresponde a um grounding_chunk_indices. Apenas os trechos 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