The Kladde’s help is cut, read in and searchable. Except that the store forgets everything as soon as the Kladde ends, and every start embeds all sections again. In this lesson, the index moves into PostgreSQL with the extension pgvector, locally in a container. The search code stays unchanged; that is the proof that the interface from lesson 2 holds up. After that, you get to know two more stores, Azure AI Search as a managed service and SQL Server 2025, and choose with reasons.

Package Version
CommunityToolkit.VectorData.PgVector (brings Npgsql and Pgvector along) 1.0.2
Aspire.Hosting.PostgreSQL (in the app host) 13.6.4
Testcontainers.PostgreSql (third party, MIT license) 4.16.0
CommunityToolkit.VectorData.AzureAISearch (cloud part only) 1.0.1
CommunityToolkit.VectorData.SqlServer (overview only) 1.0.1
xunit.v3.mtp-v2 4.0.2

For this lesson, you need Docker Desktop or Podman as in K2. The container image is pgvector/pgvector:pg17: PostgreSQL 17 with the extension already built in. In a real project, you also pin the version of pgvector in the tag; the image’s page names it.

Three ways for the Kladde

PostgreSQL with pgvector Azure AI Search SQL Server 2025
What it is an extension of the database: type vector, distances, indexes a managed search service with full text, vectors and semantic ranking the type vector and the function VECTOR_DISTANCE in the database from K2
Locally container, free only in Azure container from K2
In Azure Azure Database for PostgreSQL the service itself, also as the Free tier Azure SQL Database
Index HNSW, up to 2,000 dimensions HNSW, up to 4,096 dimensions exact search; a vector index (DiskANN) is in preview in SQL Server 2025
Hybrid search with full text (T5.4) yes yes, plus semantic ranking (a free quota per month, on the Free tier only in some regions; more from the Basic tier) yes, with a full-text index of the database
Costs computing time and storage of the server tier and number of units, not per request computing time of the database

A lot speaks for PostgreSQL for the Kladde: It runs locally without a subscription, has a real index and full text for T5.4, and the index is a small database of its own that can be rebuilt from the Markdown files at any time. You write down the reasoning at the end in docs/vector-store.md.