class AnndbApi::VectorDataset

Public Class Methods

new(server_addr, rpc_metadata) click to toggle source
# File lib/anndb_api/vector_dataset.rb, line 10
def initialize(server_addr, rpc_metadata)
    @rpc_metadata = rpc_metadata
    @stub = AnndbApiPb::VectorDataset::Stub.new(server_addr, GRPC::Core::ChannelCredentials.new())
end

Public Instance Methods

insert(vector, metadata = {}) click to toggle source
# File lib/anndb_api/vector_dataset.rb, line 15
def insert(vector, metadata = {})
    format_dataset_op_result_single @stub.insert(AnndbApiPb::VectorDatasetRequest.new(items: [
        AnndbApiPb::VectorItem.new(
            vector: AnndbApiPb::Vector.new(values: vector),
            metadata: format_req_metadata(metadata)
            )
        ]), { metadata: @rpc_metadata })
end
insert_batch(items) click to toggle source
# File lib/anndb_api/vector_dataset.rb, line 24
def insert_batch(items)
    format_dataset_op_result @stub.insert(AnndbApiPb::VectorDatasetRequest.new(items: items.map { |item|
        AnndbApiPb::VectorItem.new(
            vector: AnndbApiPb::Vector.new(values: item[:vector]),
            metadata: format_req_metadata(item.fetch(:metadata, {}))
            )

        }), { metadata: @rpc_metadata })
end
update(id, vector, metadata = {}) click to toggle source
# File lib/anndb_api/vector_dataset.rb, line 34
def update(id, vector, metadata = {})
    format_dataset_op_result_single @stub.update(AnndbApiPb::VectorDatasetRequest.new(items: [
        AnndbApiPb::VectorItem.new(
            id: AnndbApiPb::UUID.new(data: AnndbApi::Util.uuid_string_to_bytes(id)),
            vector: AnndbApiPb::Vector.new(values: vector),
            metadata: format_req_metadata(metadata)
            )
        ]), { metadata: @rpc_metadata })
end
update_batch(items) click to toggle source
# File lib/anndb_api/vector_dataset.rb, line 44
def update_batch(items)
    format_dataset_op_result @stub.update(AnndbApiPb::VectorDatasetRequest.new(items: items.map { |item|
        AnndbApiPb::VectorItem.new(
            id: AnndbApiPb::UUID.new(data: AnndbApi::Util.uuid_string_to_bytes(item[:id])),
            vector: AnndbApiPb::Vector.new(values: item[:vector]),
            metadata: format_req_metadata(item.fetch(:metadata, {}))
            )
        }), { metadata: @rpc_metadata })
end