SearchEngine
SearchEngine performs hybrid search over indexed documents by combining vector
similarity search with keyword matching, filename search, and metadata search.
Results from all search strategies are merged and ranked using a max-signal-wins
scoring approach, with diversity penalties to prevent single-file dominance.
The engine supports two storage backends: SQLite (.swsearch files) for local
use, and pgvector for PostgreSQL-based deployments.
Requires search dependencies. Install with pip install signalwire[search].
Properties
backend
Storage backend in use. Either "sqlite" or "pgvector".
config
Index configuration loaded from the backend, including model name, embedding dimensions, and creation metadata.
embedding_dim
Dimensionality of the embedding vectors in the index. Defaults to 768.
model
Optional sentence transformer model instance passed at construction time.