AIDB provides helper functions and a metadata view for constructing hybrid search queries. Use these to encode queries against a specific knowledge base, rerank retrieved results, and inspect knowledge base configuration without hardcoding model names or table paths.
aidb.kb_query_encode()
Encodes a text query using the embedding model configured for a specific knowledge base, without needing to look up the model name:
SELECT aidb.kb_query_encode('public.my_kb_vector', 'test query');
Use this in place of aidb.encode_text_query('<model>', '<query>') when constructing custom vector queries.
aidb.rerank_text()
After retrieving candidates, pass them to a reranking model for a final relevance-ordered result:
SELECT aidb.rerank_text('my_reranking_model', 'query text', ARRAY['result1', 'result2', ...]);
Reranking models such as nim_reranking and hf_tei_reranking are supported as a separate post-processing step after retrieval.
aidb.knowledge_bases view
The aidb.knowledge_bases view (also accessible as aidb.kbs) exposes all the metadata needed to construct hybrid queries:
| Column | Type | Description |
|---|---|---|
id | integer | Internal identifier |
name | text | Knowledge base name |
vector_schema | text | Schema of the embeddings table |
vector_table | text | Embeddings storage table |
model_name | text | Embedding model used by this KB |
distance_operator | aidb.distanceoperator | Distance metric enum value |
distance_operator_sql | text | The distance operator in SQL-operator syntax |
vector_data_column | text | Column storing the embeddings |
vector_key_column | text | Column linking embeddings to source rows |
vector_index | jsonb | Vector index configuration |
pipeline_ids | integer[] | IDs of all pipelines attached to this knowledge base |
pipeline_names | text[] | Names of all pipelines attached to this knowledge base |
SELECT name, vector_schema, vector_table, distance_operator_sql FROM aidb.knowledge_bases;