Step-by-step instructions for building with Vector Search. Start with Design a vector table and Create a vector index, then Ingest vectors and Query design; the other guides cover filters, quantization, measuring recall, migration and RAG retrieval.
- Create a vector index: Create a vector-indexed table with SQL or the Python SDK, choose its metric and quantization, and avoid rejected definitions.
- Ingest vectors: Load embeddings with SQL, the Python SDK, ADBC bulk ingest or Parquet import, and change a row's embedding afterwards.
- Quantization: The two quantization settings of a vector-indexed table, the combinations VAST Cluster 5.5 accepts, and how to trade accuracy for speed.
- Query design: Write searches in the shape the index recognises, match distance functions to metrics, and rewrite queries that don't use the index.
- Filters: Combine nearest-neighbour search with WHERE conditions, plan filter columns before creating the table, and filter results by user permissions.
- Design a vector table: Plan the index, metric, quantization and columns of a vector table before CREATE TABLE, since most choices can't be undone.
- Measure recall and latency: Time vector queries from the application, measure recall, tune the probe settings against it, and give support a query ID.
- Build RAG retrieval with permissions: Chunk, embed, load and retrieve documents for RAG, returning only chunks from documents the requesting user may read.
- Move vectors into an indexed table: Copy vectors into an indexed table from an unindexed table, pgvector, Pinecone-style hosted services, or Spark and Trino pipelines.