Retrieves relevant contexts for a query.
Endpoint
posthttps://{endpoint}/v1beta1/{parent}:retrieveContexts
Where {service-endpoint}
is one of the supported service endpoints.
Path parameters
parent
string
Required. The resource name of the Location from which to retrieve RagContexts. The users must have permission to make a call in the project. Format: projects/{project}/locations/{location}
.
Request body
The request body contains data with the following structure:
Required. Single RAG retrieve query.
data_source
Union type
data_source
can be only one of the following:The data source for Vertex RagStore.
Response body
Response message for VertexRagService.RetrieveContexts
.
If successful, the response body contains data with the following structure:
The contexts of the query.
JSON representation |
---|
{
"contexts": {
object ( |
VertexRagStore
The data source for Vertex RagStore.
ragCorpora[]
(deprecated)
string
Optional. Deprecated. Please use ragResources to specify the data source.
Optional. The representation of the rag source. It can be used to specify corpus only or ragfiles. Currently only support one corpus or multiple files from one corpus. In the future we may open up multiple corpora support.
vectorDistanceThreshold
(deprecated)
number
Optional. Only return contexts with vector distance smaller than the threshold.
JSON representation |
---|
{
"ragCorpora": [
string
],
"ragResources": [
{
object ( |
RagResource
The definition of the Rag resource.
ragCorpus
string
Optional. RagCorpora resource name. Format: projects/{project}/locations/{location}/ragCorpora/{ragCorpus}
ragFileIds[]
string
Optional. ragFileId. The files should be in the same ragCorpus set in ragCorpus field.
JSON representation |
---|
{ "ragCorpus": string, "ragFileIds": [ string ] } |
RagQuery
A query to retrieve relevant contexts.
similarityTopK
(deprecated)
integer
Optional. The number of contexts to retrieve.
Optional. Configurations for hybrid search results ranking.
Optional. The retrieval config for the query.
query
Union type
query
can be only one of the following:text
string
Optional. The query in text format to get relevant contexts.
JSON representation |
---|
{ "similarityTopK": integer, "ranking": { object ( |
Ranking
Configurations for hybrid search results ranking.
alpha
number
Optional. Alpha value controls the weight between dense and sparse vector search results. The range is [0, 1], while 0 means sparse vector search only and 1 means dense vector search only. The default value is 0.5 which balances sparse and dense vector search equally.
JSON representation |
---|
{ "alpha": number } |
RagContexts
Context
A context of the query.
sourceUri
string
If the file is imported from Cloud Storage or Google Drive, sourceUri will be original file URI in Cloud Storage or Google Drive; if file is uploaded, sourceUri will be file display name.
sourceDisplayName
string
The file display name.
text
string
The text chunk.
distance
(deprecated)
number
The distance between the query dense embedding vector and the context text vector.
sparseDistance
(deprecated)
number
The distance between the query sparse embedding vector and the context text vector.
score
number
According to the underlying Vector DB and the selected metric type, the score can be either the distance or the similarity between the query and the context and its range depends on the metric type.
For example, if the metric type is COSINE_DISTANCE, it represents the distance between the query and the context. The larger the distance, the less relevant the context is to the query. The range is [0, 2], while 0 means the most relevant and 2 means the least relevant.
JSON representation |
---|
{ "sourceUri": string, "sourceDisplayName": string, "text": string, "distance": number, "sparseDistance": number, "score": number } |