Search Engine
BaseSearchEngine
Bases: ABC
Base class for a search engine that performs text-to-vector searches in a vector store.
__init__(embedding_model, vector_db)
Initialize the search engine with an embedding model and a vector database.
Parameters:
-
embedding_model(BaseEmbedding) –The model used to generate text embeddings.
-
vector_db(BaseVectorDB) –The vector database for storing and querying embeddings.
search(text, k=10, **kwargs)
async
Convert text to embedding and search in the vector database.
Parameters:
-
text(str) –The input text to search.
-
k(int, default:10) –The number of top results to return.
-
**kwargs(Any, default:{}) –Additional arguments for the vector database query.
Returns:
-
List[str]–A list of IDs corresponding to the search results.
TigerVectorSearchEngine
Bases: BaseSearchEngine
Search engine that performs text embedding and similarity search using OpenAI and TigerVector.
__init__(embedding_model, vector_db)
Initialize the TigerVectorSearchEngine.
Parameters:
-
embedding_model(OpenAIEmbedding) –The embedding model used for text-to-vector conversion.
-
vector_db(TigerVectorManager) –The vector database for similarity search.
NanoVectorDBSearchEngine
Bases: BaseSearchEngine
Search engine that performs text embedding and similarity search using OpenAI and NanoVectorDB.
__init__(embedding_model, vector_db)
Initialize the NanoVectorDBSearchEngine.
Parameters:
-
embedding_model(OpenAIEmbedding) –The embedding model used for text-to-vector conversion.
-
vector_db(NanoVectorDBManager) –The vector database for similarity search.