Class: Google::Cloud::AIPlatform::V1::RagVectorDbConfig

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/aiplatform/v1/vertex_rag_data.rb

Overview

Config for the Vector DB to use for RAG.

Defined Under Namespace

Classes: Pinecone, RagManagedDb, VertexVectorSearch

Instance Attribute Summary collapse

Instance Attribute Details

#api_auth::Google::Cloud::AIPlatform::V1::ApiAuth

Returns Authentication config for the chosen Vector DB.

Returns:



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# File 'proto_docs/google/cloud/aiplatform/v1/vertex_rag_data.rb', line 82

class RagVectorDbConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # The config for the default RAG-managed Vector DB.
  # @!attribute [rw] knn
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::KNN]
  #     Performs a KNN search on RagCorpus.
  #     Default choice if not specified.
  #
  #     Note: The following fields are mutually exclusive: `knn`, `ann`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] ann
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::ANN]
  #     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.
  #
  #     Note: The following fields are mutually exclusive: `ann`, `knn`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class RagManagedDb
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Config for KNN search.
    class KNN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # 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
    # UpdateRagCorpus API.
    # @!attribute [rw] tree_depth
    #   @return [::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.
    # @!attribute [rw] leaf_count
    #   @return [::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.
    class ANN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # The config for the Pinecone.
  # @!attribute [rw] index_name
  #   @return [::String]
  #     Pinecone index name.
  #     This value cannot be changed after it's set.
  class Pinecone
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The config for the Vertex Vector Search.
  # @!attribute [rw] index_endpoint
  #   @return [::String]
  #     The resource name of the Index Endpoint.
  #     Format:
  #     `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}`
  # @!attribute [rw] index
  #   @return [::String]
  #     The resource name of the Index.
  #     Format:
  #     `projects/{project}/locations/{location}/indexes/{index}`
  class VertexVectorSearch
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#pinecone::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::Pinecone

Returns The config for the Pinecone.

Note: The following fields are mutually exclusive: pinecone, rag_managed_db, vertex_vector_search. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# File 'proto_docs/google/cloud/aiplatform/v1/vertex_rag_data.rb', line 82

class RagVectorDbConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # The config for the default RAG-managed Vector DB.
  # @!attribute [rw] knn
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::KNN]
  #     Performs a KNN search on RagCorpus.
  #     Default choice if not specified.
  #
  #     Note: The following fields are mutually exclusive: `knn`, `ann`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] ann
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::ANN]
  #     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.
  #
  #     Note: The following fields are mutually exclusive: `ann`, `knn`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class RagManagedDb
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Config for KNN search.
    class KNN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # 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
    # UpdateRagCorpus API.
    # @!attribute [rw] tree_depth
    #   @return [::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.
    # @!attribute [rw] leaf_count
    #   @return [::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.
    class ANN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # The config for the Pinecone.
  # @!attribute [rw] index_name
  #   @return [::String]
  #     Pinecone index name.
  #     This value cannot be changed after it's set.
  class Pinecone
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The config for the Vertex Vector Search.
  # @!attribute [rw] index_endpoint
  #   @return [::String]
  #     The resource name of the Index Endpoint.
  #     Format:
  #     `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}`
  # @!attribute [rw] index
  #   @return [::String]
  #     The resource name of the Index.
  #     Format:
  #     `projects/{project}/locations/{location}/indexes/{index}`
  class VertexVectorSearch
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#rag_embedding_model_config::Google::Cloud::AIPlatform::V1::RagEmbeddingModelConfig

Returns Optional. Immutable. The embedding model config of the Vector DB.

Returns:



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# File 'proto_docs/google/cloud/aiplatform/v1/vertex_rag_data.rb', line 82

class RagVectorDbConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # The config for the default RAG-managed Vector DB.
  # @!attribute [rw] knn
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::KNN]
  #     Performs a KNN search on RagCorpus.
  #     Default choice if not specified.
  #
  #     Note: The following fields are mutually exclusive: `knn`, `ann`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] ann
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::ANN]
  #     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.
  #
  #     Note: The following fields are mutually exclusive: `ann`, `knn`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class RagManagedDb
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Config for KNN search.
    class KNN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # 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
    # UpdateRagCorpus API.
    # @!attribute [rw] tree_depth
    #   @return [::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.
    # @!attribute [rw] leaf_count
    #   @return [::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.
    class ANN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # The config for the Pinecone.
  # @!attribute [rw] index_name
  #   @return [::String]
  #     Pinecone index name.
  #     This value cannot be changed after it's set.
  class Pinecone
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The config for the Vertex Vector Search.
  # @!attribute [rw] index_endpoint
  #   @return [::String]
  #     The resource name of the Index Endpoint.
  #     Format:
  #     `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}`
  # @!attribute [rw] index
  #   @return [::String]
  #     The resource name of the Index.
  #     Format:
  #     `projects/{project}/locations/{location}/indexes/{index}`
  class VertexVectorSearch
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#rag_managed_db::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb

Returns The config for the RAG-managed Vector DB.

Note: The following fields are mutually exclusive: rag_managed_db, pinecone, vertex_vector_search. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# File 'proto_docs/google/cloud/aiplatform/v1/vertex_rag_data.rb', line 82

class RagVectorDbConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # The config for the default RAG-managed Vector DB.
  # @!attribute [rw] knn
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::KNN]
  #     Performs a KNN search on RagCorpus.
  #     Default choice if not specified.
  #
  #     Note: The following fields are mutually exclusive: `knn`, `ann`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] ann
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::ANN]
  #     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.
  #
  #     Note: The following fields are mutually exclusive: `ann`, `knn`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class RagManagedDb
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Config for KNN search.
    class KNN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # 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
    # UpdateRagCorpus API.
    # @!attribute [rw] tree_depth
    #   @return [::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.
    # @!attribute [rw] leaf_count
    #   @return [::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.
    class ANN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # The config for the Pinecone.
  # @!attribute [rw] index_name
  #   @return [::String]
  #     Pinecone index name.
  #     This value cannot be changed after it's set.
  class Pinecone
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The config for the Vertex Vector Search.
  # @!attribute [rw] index_endpoint
  #   @return [::String]
  #     The resource name of the Index Endpoint.
  #     Format:
  #     `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}`
  # @!attribute [rw] index
  #   @return [::String]
  #     The resource name of the Index.
  #     Format:
  #     `projects/{project}/locations/{location}/indexes/{index}`
  class VertexVectorSearch
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end

#vertex_vector_search::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::VertexVectorSearch

Returns The config for the Vertex Vector Search.

Note: The following fields are mutually exclusive: vertex_vector_search, rag_managed_db, pinecone. If a field in that set is populated, all other fields in the set will automatically be cleared.

Returns:



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# File 'proto_docs/google/cloud/aiplatform/v1/vertex_rag_data.rb', line 82

class RagVectorDbConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # The config for the default RAG-managed Vector DB.
  # @!attribute [rw] knn
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::KNN]
  #     Performs a KNN search on RagCorpus.
  #     Default choice if not specified.
  #
  #     Note: The following fields are mutually exclusive: `knn`, `ann`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  # @!attribute [rw] ann
  #   @return [::Google::Cloud::AIPlatform::V1::RagVectorDbConfig::RagManagedDb::ANN]
  #     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.
  #
  #     Note: The following fields are mutually exclusive: `ann`, `knn`. If a field in that set is populated, all other fields in the set will automatically be cleared.
  class RagManagedDb
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # Config for KNN search.
    class KNN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end

    # 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
    # UpdateRagCorpus API.
    # @!attribute [rw] tree_depth
    #   @return [::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.
    # @!attribute [rw] leaf_count
    #   @return [::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.
    class ANN
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end

  # The config for the Pinecone.
  # @!attribute [rw] index_name
  #   @return [::String]
  #     Pinecone index name.
  #     This value cannot be changed after it's set.
  class Pinecone
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The config for the Vertex Vector Search.
  # @!attribute [rw] index_endpoint
  #   @return [::String]
  #     The resource name of the Index Endpoint.
  #     Format:
  #     `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}`
  # @!attribute [rw] index
  #   @return [::String]
  #     The resource name of the Index.
  #     Format:
  #     `projects/{project}/locations/{location}/indexes/{index}`
  class VertexVectorSearch
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end
end