Resource: RagCorpus
A RagCorpus is a RagFile container and a project can have multiple RagCorpora.
name
string
Output only. The resource name of the RagCorpus.
displayName
string
Required. The display name of the RagCorpus. The name can be up to 128 characters long and can consist of any UTF-8 characters.
description
string
Optional. The description of the RagCorpus.
Output only. timestamp when this RagCorpus was created.
Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
or "2014-10-02T15:01:23+05:30"
.
Output only. timestamp when this RagCorpus was last updated.
Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
or "2014-10-02T15:01:23+05:30"
.
Output only. RagCorpus state.
backend_config
Union type
backend_config
can be only one of the following:Optional. Immutable. The config for the Vector DBs.
Optional. Immutable. The config for the Vertex AI Search.
JSON representation |
---|
{ "name": string, "displayName": string, "description": string, "createTime": string, "updateTime": string, "corpusStatus": { object ( |
RagVectorDbConfig
Config for the Vector DB to use for RAG.
Authentication config for the chosen Vector DB.
Optional. Immutable. The embedding model config of the Vector DB.
vector_db
Union type
vector_db
can be only one of the following:The config for the RAG-managed Vector DB.
The config for the Pinecone.
The config for the Vertex Vector Search.
JSON representation |
---|
{ "apiAuth": { object ( |
RagManagedDb
The config for the default RAG-managed Vector DB.
retrieval_strategy
Union type
retrieval_strategy
can be only one of the following:Performs a KNN search on RagCorpus. Default choice if not specified.
Performs an ANN search on RagCorpus. Use this if you have a lot of files (> 10K) in your RagCorpus and want to reduce the search latency.
KNN
This type has no fields.
Config for KNN search.
ANN
Config for ANN search.
RagManagedDb uses a tree-based structure to partition data and facilitate faster searches. As a tradeoff, it requires longer indexing time and manual triggering of index rebuild via the ImportRagFiles and ragCorpora.patch API.
treeDepth
integer
The depth of the tree-based structure. Only depth values of 2 and 3 are supported.
Recommended value is 2 if you have if you have O(10K) files in the RagCorpus and set this to 3 if more than that.
Default value is 2.
leafCount
integer
Number of leaf nodes in the tree-based structure. Each leaf node contains groups of closely related vectors along with their corresponding centroid.
Recommended value is 10 * sqrt(num of RagFiles in your RagCorpus).
Default value is 500.
JSON representation |
---|
{ "treeDepth": integer, "leafCount": integer } |
Pinecone
The config for the Pinecone.
indexName
string
Pinecone index name. This value cannot be changed after it's set.
JSON representation |
---|
{ "indexName": string } |
VertexVectorSearch
The config for the Vertex Vector Search.
indexEndpoint
string
The resource name of the Index Endpoint. Format: projects/{project}/locations/{location}/indexEndpoints/{indexEndpoint}
index
string
The resource name of the Index. Format: projects/{project}/locations/{location}/indexes/{index}
JSON representation |
---|
{ "indexEndpoint": string, "index": string } |
RagEmbeddingModelConfig
Config for the embedding model to use for RAG.
model_config
Union type
model_config
can be only one of the following:The Vertex AI Prediction Endpoint that either refers to a publisher model or an endpoint that is hosting a 1P fine-tuned text embedding model. endpoints hosting non-1P fine-tuned text embedding models are currently not supported. This is used for dense vector search.
JSON representation |
---|
{
// model_config
"vertexPredictionEndpoint": {
object ( |
VertexPredictionEndpoint
Config representing a model hosted on Vertex Prediction Endpoint.
endpoint
string
Required. The endpoint resource name. Format: projects/{project}/locations/{location}/publishers/{publisher}/models/{model}
or projects/{project}/locations/{location}/endpoints/{endpoint}
model
string
Output only. The resource name of the model that is deployed on the endpoint. Present only when the endpoint is not a publisher model. Pattern: projects/{project}/locations/{location}/models/{model}
modelVersionId
string
Output only. version id of the model that is deployed on the endpoint. Present only when the endpoint is not a publisher model.
JSON representation |
---|
{ "endpoint": string, "model": string, "modelVersionId": string } |
VertexAiSearchConfig
Config for the Vertex AI Search.
servingConfig
string
Vertex AI Search Serving Config resource full name. For example, projects/{project}/locations/{location}/collections/{collection}/engines/{engine}/servingConfigs/{servingConfig}
or projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}/servingConfigs/{servingConfig}
.
JSON representation |
---|
{ "servingConfig": string } |
CorpusStatus
State
RagCorpus life state.
Enums | |
---|---|
UNKNOWN |
This state is not supposed to happen. |
INITIALIZED |
RagCorpus resource entry is initialized, but hasn't done validation. |
ACTIVE |
RagCorpus is provisioned successfully and is ready to serve. |
ERROR |
RagCorpus is in a problematic situation. See errorMessage field for details. |
Methods |
|
---|---|
|
Creates a RagCorpus. |
|
Deletes a RagCorpus. |
|
Gets a RagCorpus. |
|
Lists RagCorpora in a Location. |
|
Updates a RagCorpus. |