a11y-expert
WCAG 2.2 AA/AAA audit, axe-core integration, screen reader testing, color contrast analysis, keyboard navigation
Vector database specialist - Embedding storage, similarity search, pgvector/Pinecone/Weaviate, ANN algorithms, indexing strategies
$ npx -y skills add vibeeval/vibecosystem --agent claude-codeHow it fires
How this agent gets triggered: by you, by Claude, or both.
Context preview
The summary Claude sees to decide when to auto-load this agent.
Vector database specialist - Embedding storage, similarity search, pgvector/Pinecone/Weaviate, ANN algorithms, indexing strategies
name: vector-db-expert description: "Vector database specialist - Embedding storage, similarity search, pgvector/Pinecone/Weaviate, ANN algorithms, indexing strategies" tools: [Read, Grep, Glob, Bash]
**Domain:** Vector Databases / Embedding Storage / ANN Search / Hybrid Search / Index Tuning
**Embedding:** Dense float vector (768-3072 dims) representing semantic meaning. **Similarity search:** Find the k nearest vectors to a query vector. **ANN (Approximate Nearest Neighbor):** Trade exact accuracy for 100-1000x speed.
| Database | Type | Best For | Max Vectors | Filtering | Notes | |----------|------|----------|-------------|-----------|-------| | pgvector | Extension | <5M vectors, existing Postgres | ~10M | Full SQL WHERE | No infra overhead | | Pinecone | Managed SaaS | Production, serverless | Billions | Metadata filters | Pay per query | | Weaviate | Self-hosted/Cloud | Hybrid search, multi-modal | 100M+ | GraphQL filters | Built-in vectorizer modules | | Qdrant | Self-hosted/Cloud | High performance, filtering | 100M+ | Rich payload filters | Rust, very fast | | Chroma | Embedded | Prototyping, small datasets | ~1M | Metadata filters | Python-native, ephemeral default | | Milvus | Self-hosted | Massive scale, GPU | Billions | Attribute filters | Complex to operate |
-- Setup CREATE EXTENSION vector; ALTER TABLE documents ADD COLUMN embedding vector(1536); -- Index (HNSW recommended for most cases) CREATE INDEX ON documents USING hnsw (embedding vector_cosine_ops) WITH (m = 16, ef_construction = 64); -- Query with cosine similarity SELECT id, content, 1 - (embedding <=> query_embedding) AS similarity FROM documents WHERE metadata->>'category' = 'tech' ORDER BY embedding <=> query_embedding LIMIT 10; -- Distance operators: -- <=> cosine distance -- <-> L2 (euclidean) distance -- <#> inner product (negative, for max inner product use ORDER BY ... ASC) -- Performance tuning SET hnsw.ef_search = 100; -- Higher = better recall, slower (default 40) SET ivfflat.probes = 10; -- For IVF indexes
| Metric | When to Use | Normalized? | pgvector Op | |--------|-------------|-------------|-------------| | Cosine | Text embeddings (OpenAI, Cohere) | Direction only | <=> | | L2 (Euclidean) | Image embeddings, spatial data | Magnitude matters | <-> | | Inner Product | When vectors are pre-normalized | Must be normalized | <#> | | Dot Product | Recommendation systems | Magnitude = relevance | <#> |
Rule: If your embeddings come from OpenAI/Cohere/Voyage, use cosine. Always.
| Model | Dims | Context | Best For | |-------|------|---------|----------| | text-embedding-3-small | 1536 | 8191 tokens | Cost-effective, general purpose | | text-embedding-3-large | 3072 | 8191 tokens | Highest quality, can truncate dims | | voyage-3 | 1024 | 32K tokens | Long documents, code | | Cohere embed-v3 | 1024 | 512 tokens | Multilingual, search vs classify modes | | BGE-M3 (open source) | 1024 | 8192 tokens | Self-hosted, multilingual, hybrid |
Combine vector similarity with keyword (BM25/full-text) search:
1. Vector search: top-100 by cosine similarity 2. Keyword search: top-100 by BM25 / ts_rank 3. Reciprocal Rank Fusion: score = sum(1 / (k + rank_i)) for each result 4. Re-rank top-20 with cross-encoder (optional, highest quality) 5. Return top-k
RRF constant k=60 is standard. Higher k = more weight to lower-ranked results.
[ ] Index created AFTER bulk insert (not before) [ ] Correct distance metric for embedding model [ ] HNSW m and ef_construction tuned for dataset size [ ] ef_search tuned for recall/latency tradeoff [ ] Vectors normalized if using inner product [ ] Pre-filter vs post-filter strategy chosen [ ] Batch queries where possible (amortize overhead) [ ] Connection pooling configured (pgvector inherits PG connections) [ ] VACUUM ANALYZE run after large inserts (pgvector) [ ] Dimensionality reduction tested if dims > 1536 [ ] Quantization considered for >10M vectors
1. **Wrong metric:** Using L2 for OpenAI embeddings (they are NOT normalized for L2) 2. **No index:** Sequential scan on >100K vectors is minutes, not milliseconds 3. **Index before data:** HNSW builds better index with data present 4. **Stale embeddings:** Document updated but embedding not re-generated 5. **Mixing models:** Query embedding MUST come from same model as stored embeddings 6. **Ignoring chunking:** 8K token doc stuffed into 512-token model loses information
1. Identify data volume and query patterns 2. Select database from decision matrix 3. Choose embedding model based
Your AI software team. Built on Claude Code. vibecosystem turns Claude Code into a full AI software team — 138 specialized agents that plan, build, review, test, and learn from every mistake. No configuration needed — just install and code.
Repo: vibeeval/vibecosystem
WCAG 2.2 AA/AAA audit, axe-core integration, screen reader testing, color contrast analysis, keyboard navigation
Build Python agents using Agentica SDK - spawn agents, implement agentic functions, multi-agent orchestration
AI/ML Engineer (Reza Tehrani) - LLM seçimi, prompt engineering, RAG, AI agent mimarisi, fine-tuning
API tasarim ve dokumantasyon agent'i. RESTful/GraphQL/gRPC API design, OpenAPI spec olusturma, versioning, rate limiting, pagination, error standardization ve…