> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neum.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# LanceDBSink

> LanceDBSink enables seamless integration with LanceDB vector database, supporting vector storage and similarity search for advanced data retrieval.

The `LanceDBSink` class is a connector for LanceDB, an open-source, serverless vector database built for seamless integration and scale.

## Properties

Required properties:

* uri: URI for the LanceDB database.
* table\_name: Name of the LanceDB table to be used.

Optional properties:

* api\_key: If provided, connect to LanceDB cloud; otherwise, connect to a database on file system or cloud storage.
  region: Region for the use of LanceDB cloud.
* create\_index: Boolean to decide whether to create an index for ANN search or use flat search.
* metric: The distance metric to use (default is 'cosine').
* num\_partitions: The number of partitions of the index.
* num\_sub\_vectors: The number of sub-vectors created during Product Quantization (PQ).
* accelerator: Specifies the accelerator to use for the index creation process (e.g., GPU or MPS).

<Note>Index creation is only required when dealing with 100k+ vectors. Below that threshold, set create\_index to `false`. For more information on index creation and configuring partitions and sub vectors see: [LanceDB documentation](https://lancedb.github.io/lancedb/ann_indexes/#creating-an-ivf_pq-index)</Note>

<CodeGroup>
  ```python Local Development
  from neumai.SinkConnectors import LanceDBSink

  # Setup the LanceDBSink with required credentials and index information
  lancedb_sink = LanceDBSink(
      uri = "lancedb_uri",
      table_name = "test_table",
      # if using LanceDB Cloud add 
      # api_key = "lancedb_cloud_api_key",
      # if using for more thatn 100k vectors then add:
      # create_index = True
      # ensure that your vector dimensions (ex. 1536 for OpenAI text-ada-002) is divisible by num_sub_vectors (default 96)
      # ensure that num_partitions is less than the number of vectors you are adding (default to 256)
  )
  ```
</CodeGroup>
