postgres-semantic-search

Solid

PostgreSQL-based semantic and hybrid search with pgvector and ParadeDB. Use when implementing vector search, semantic search, hybrid search, or full-text search in PostgreSQL. Covers pgvector indexing, hybrid FTS/BM25 + RRF, ParadeDB, reranking, halfvec, multilingual search, query translation, and domain evals. Triggers: pgvector, vector search, semantic search, hybrid search, embedding search, PostgreSQL RAG, BM25, RRF, HNSW, IVFFlat, ParadeDB, pg_search, reranking, iterative_scan, filtered HNSW, halfvec, websearch_to_tsquery, unaccent, multilingual FTS, pg_trgm, trigram, fuzzy search, ILIKE, autocomplete, typo tolerance, fuzzystrmatch, Hit@K, MRR, retrieval evals, cross-lingual retrieval, non-English corpus, per-language indexing, query translation For general Postgres schema, index, RLS or query tuning unrelated to retrieval, use supabase-postgres-best-practices instead.

AI & Automation 60 stars 19 forks Updated yesterday MIT

Install

View on GitHub

Quality Score: 87/100

Stars 20%
59
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# PostgreSQL Semantic Search ## Quick Start ### 1. Setup ```sql CREATE EXTENSION IF NOT EXISTS vector; CREATE TABLE documents ( id SERIAL PRIMARY KEY, content TEXT NOT NULL, embedding vector(1536) -- 1536-dim embedding -- Or: embedding halfvec(3072) -- 3072-dim embedding (halfvec = 50% memory) ); ``` ### 2. Basic Semantic Search ```sql SELECT id, content, 1 - (embedding <=> query_vec) AS similarity FROM documents ORDER BY embedding <=> query_vec LIMIT 10; ``` ### 3. Add Index (> 10k documents) ```sql CREATE INDEX ON documents USING hnsw (embedding vector_cosine_ops); ``` ### Docker Quick Start ```bash # pgvector with PostgreSQL 17 docker run -d --name pgvector-db \ -e POSTGRES_PASSWORD=postgres \ -p 5432:5432 \ pgvector/pgvector:pg17 # Or PostgreSQL 18 docker run -d --name pgvector-db \ -e POSTGRES_PASSWORD=postgres \ -p 5432:5432 \ pgvector/pgvector:pg18 # ParadeDB (includes pgvector + pg_search + BM25) docker run -d --name paradedb \ -e POSTGRES_PASSWORD=postgres \ -p 5432:5432 \ paradedb/paradedb:latest # `latest` is convenient for quick-start; pin to e.g. paradedb/paradedb:pg17 for reproducible builds ``` Connect: `psql postgresql://postgres:postgres@localhost:5432/postgres` ## Cheat Sheet ### Distance Operators ```sql embedding <=> query -- Cosine distance (1 - similarity) embedding <-> query -- L2/Euclidean distance embedding <#> query -- Negative inner...

Details

Author
laguagu
Repository
laguagu/claude-code-nextjs-skills
Created
7 months ago
Last Updated
yesterday
Language
TypeScript
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category