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.