The Semantic Kernel Vector Store data architecture (Experimental)

Warning

The Semantic Kernel Vector Store functionality is experimental, still in development and is subject to change.

Vector Store abstractions in Semantic Kernel are based on three main components: vector stores, collections and records. Records are contained by collections, and collections are contained by vector stores.

  • A vector store maps to an instance of a database
  • A collection is a collection of records including any index required to query or filter those records
  • A record is an individual data entry in the database

Collections in different databases

The underlying implementation of what a collection is, will vary by connector and is influenced by how each database groups and indexes records. Most databases have a concept of a collection of records and there is a natural mapping between this concept and the Vector Store abstraction collection. Note that this concept may not always be referred to as a collection in the underlying database.

Tip

For more information on what the underlying implementation of a collection is per connector, refer to the documentation for each connector.