pub struct VectorSearchService { /* private fields */ }Expand description
Implements a client for the Vector Search API.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
let client = VectorSearchService::builder().build().await?;
let parent = "parent_value";
let mut list = client.list_collections()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}§Service Description
VectorSearchService provides methods for managing Collection resources, and Collection Index resources. The primary resources offered by this service are Collections which are a container for a set of related JSON data objects, and Collection Indexes which enable efficient ANN search across data objects within a Collection.
§Configuration
To configure VectorSearchService use the with_* methods in the type returned
by builder(). The default configuration should
work for most applications. Common configuration changes include
- with_endpoint(): by default this client uses the global default endpoint
(
https://vectorsearch.googleapis.com). Applications using regional endpoints or running in restricted networks (e.g. a network configured override this default. - with_credentials(): by default this client uses Application Default Credentials. Applications using custom authentication may need to override this default.
§Pooling and Cloning
VectorSearchService holds a connection pool internally, it is advised to
create one and reuse it. You do not need to wrap VectorSearchService in
an Rc or Arc to reuse it, because it
already uses an Arc internally.
Implementations§
Source§impl VectorSearchService
impl VectorSearchService
Sourcepub fn builder() -> ClientBuilder
pub fn builder() -> ClientBuilder
Returns a builder for VectorSearchService.
let client = VectorSearchService::builder().build().await?;Sourcepub fn from_stub<T>(stub: T) -> Selfwhere
T: VectorSearchService + 'static,
pub fn from_stub<T>(stub: T) -> Selfwhere
T: VectorSearchService + 'static,
Creates a new client from the provided stub.
The most common case for calling this function is in tests mocking the client’s behavior.
Sourcepub fn list_collections(&self) -> ListCollections
pub fn list_collections(&self) -> ListCollections
Lists Collections in a given project and location.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, parent: &str
) -> Result<()> {
let mut list = client.list_collections()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_collection(&self) -> GetCollection
pub fn get_collection(&self) -> GetCollection
Gets details of a single Collection.
§Example
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, name: &str
) -> Result<()> {
let response = client.get_collection()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn create_collection(&self) -> CreateCollection
pub fn create_collection(&self) -> CreateCollection
Creates a new Collection in a given project and location.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_vectorsearch_v1::model::Collection;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, parent: &str
) -> Result<()> {
let response = client.create_collection()
.set_parent(parent)
.set_collection_id("collection_id_value")
.set_collection(
Collection::new()/* set fields */
)
.poller().until_done().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn update_collection(&self) -> UpdateCollection
pub fn update_collection(&self) -> UpdateCollection
Updates the parameters of a single Collection.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_wkt::FieldMask;
use google_cloud_vectorsearch_v1::model::Collection;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, name: &str
) -> Result<()> {
let response = client.update_collection()
.set_collection(
Collection::new().set_name(name)/* set fields */
)
.set_update_mask(FieldMask::default().set_paths(["updated.field.path1", "updated.field.path2"]))
.poller().until_done().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn delete_collection(&self) -> DeleteCollection
pub fn delete_collection(&self) -> DeleteCollection
Deletes a single Collection.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, name: &str
) -> Result<()> {
client.delete_collection()
.set_name(name)
.poller().until_done().await?;
Ok(())
}Sourcepub fn list_indexes(&self) -> ListIndexes
pub fn list_indexes(&self) -> ListIndexes
Lists Indexes in a given project and location.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, parent: &str
) -> Result<()> {
let mut list = client.list_indexes()
.set_parent(parent)
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_index(&self) -> GetIndex
pub fn get_index(&self) -> GetIndex
Gets details of a single Index.
§Example
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, name: &str
) -> Result<()> {
let response = client.get_index()
.set_name(name)
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn create_index(&self) -> CreateIndex
pub fn create_index(&self) -> CreateIndex
Creates a new Index in a given project and location.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_vectorsearch_v1::model::Index;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, parent: &str
) -> Result<()> {
let response = client.create_index()
.set_parent(parent)
.set_index_id("index_id_value")
.set_index(
Index::new()/* set fields */
)
.poller().until_done().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn delete_index(&self) -> DeleteIndex
pub fn delete_index(&self) -> DeleteIndex
Deletes a single Index.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService, name: &str
) -> Result<()> {
client.delete_index()
.set_name(name)
.poller().until_done().await?;
Ok(())
}Sourcepub fn import_data_objects(&self) -> ImportDataObjects
pub fn import_data_objects(&self) -> ImportDataObjects
Initiates a Long-Running Operation to import DataObjects into a Collection.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
let response = client.import_data_objects()
/* set fields */
.poller().until_done().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn export_data_objects(&self) -> ExportDataObjects
pub fn export_data_objects(&self) -> ExportDataObjects
Initiates a Long-Running Operation to export DataObjects from a Collection.
§Long running operations
This method is used to start, and/or poll a long-running Operation. The Working with long-running operations chapter in the user guide covers these operations in detail.
§Example
use google_cloud_lro::Poller;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
let response = client.export_data_objects()
/* set fields */
.poller().until_done().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_locations(&self) -> ListLocations
pub fn list_locations(&self) -> ListLocations
Lists information about the supported locations for this service. This method can be called in two ways:
- List all public locations: Use the path
GET /v1/locations. - List project-visible locations: Use the path
GET /v1/projects/{project_id}/locations. This may include public locations as well as private or other locations specifically visible to the project.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
let mut list = client.list_locations()
/* set fields */
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_location(&self) -> GetLocation
pub fn get_location(&self) -> GetLocation
Gets information about a location.
§Example
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
let response = client.get_location()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn list_operations(&self) -> ListOperations
pub fn list_operations(&self) -> ListOperations
Provides the Operations service functionality in this service.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
let mut list = client.list_operations()
/* set fields */
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn get_operation(&self) -> GetOperation
pub fn get_operation(&self) -> GetOperation
Provides the Operations service functionality in this service.
§Example
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
let response = client.get_operation()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn delete_operation(&self) -> DeleteOperation
pub fn delete_operation(&self) -> DeleteOperation
Provides the Operations service functionality in this service.
§Example
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
client.delete_operation()
/* set fields */
.send().await?;
Ok(())
}Sourcepub fn cancel_operation(&self) -> CancelOperation
pub fn cancel_operation(&self) -> CancelOperation
Provides the Operations service functionality in this service.
§Example
use google_cloud_vectorsearch_v1::Result;
async fn sample(
client: &VectorSearchService
) -> Result<()> {
client.cancel_operation()
/* set fields */
.send().await?;
Ok(())
}Trait Implementations§
Source§impl Clone for VectorSearchService
impl Clone for VectorSearchService
Source§fn clone(&self) -> VectorSearchService
fn clone(&self) -> VectorSearchService
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more