VectorStoreTextSearch Class
Class that wraps a Vector Store Record Collection to expose as a Text Search.
Preferably the class methods are used to create an instance of this class. Otherwise the search executes in the following order depending on which store was set:
- vectorizable_text_search
- vector_text_search
- vectorized_search (after calling the embedding service)
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
Constructor
VectorStoreTextSearch(*, vectorizable_text_search: VectorizableTextSearchMixin | None = None, vectorized_search: VectorizedSearchMixin | None = None, vector_text_search: VectorTextSearchMixin | None = None, embedding_service: EmbeddingGeneratorBase | None = None, string_mapper: Callable[[TModel], str] | None = None, text_search_results_mapper: Callable[[TModel], TextSearchResult] | None = None)
Parameters
| Name | Description |
|---|---|
|
vectorizable_text_search
Required
|
A vector store record collection with a method to search for vectorizable text. |
|
vectorized_search
Required
|
A vector store record collection with a method to search for vectors. |
|
vector_text_search
Required
|
A vector store record collection with a method to search for text. |
|
embedding_service
Required
|
An embedding service to use for vectorized search. |
|
string_mapper
Required
|
A function to map a record to a string. |
|
text_search_results_mapper
Required
|
A function to map a record to a TextSearchResult. |
Keyword-Only Parameters
| Name | Description |
|---|---|
|
vectorizable_text_search
Required
|
|
|
vectorized_search
Required
|
|
|
vector_text_search
Required
|
|
|
embedding_service
Required
|
|
|
string_mapper
Required
|
|
|
text_search_results_mapper
Required
|
|
Methods
| from_vector_text_search |
Create a new VectorStoreTextSearch from a VectorStoreRecordCollection. |
| from_vectorizable_text_search |
Create a new VectorStoreTextSearch from a VectorStoreRecordCollection. |
| from_vectorized_search |
Create a new VectorStoreTextSearch from a VectorStoreRecordCollection. |
| get_search_results |
Search for a query, returning a KernelSearchResult with a VectorSearchResult[TModel] as the results type. |
| get_text_search_results |
Search for a query, returning a KernelSearchResult with a TextSearchResult as the results type. |
| search |
Search for a query, returning a KernelSearchResult with a string as the results type. |
from_vector_text_search
Create a new VectorStoreTextSearch from a VectorStoreRecordCollection.
from_vector_text_search(vector_text_search: VectorTextSearchMixin, string_mapper: Callable | None = None, text_search_results_mapper: Callable | None = None, **kwargs: Any) -> _T
Parameters
| Name | Description |
|---|---|
|
vector_text_search
Required
|
|
|
string_mapper
|
Default value: None
|
|
text_search_results_mapper
|
Default value: None
|
from_vectorizable_text_search
Create a new VectorStoreTextSearch from a VectorStoreRecordCollection.
from_vectorizable_text_search(vectorizable_text_search: VectorizableTextSearchMixin, string_mapper: Callable | None = None, text_search_results_mapper: Callable | None = None, **kwargs: Any) -> _T
Parameters
| Name | Description |
|---|---|
|
vectorizable_text_search
Required
|
|
|
string_mapper
|
Default value: None
|
|
text_search_results_mapper
|
Default value: None
|
from_vectorized_search
Create a new VectorStoreTextSearch from a VectorStoreRecordCollection.
from_vectorized_search(vectorized_search: VectorizedSearchMixin, embedding_service: EmbeddingGeneratorBase, string_mapper: Callable | None = None, text_search_results_mapper: Callable | None = None, **kwargs: Any) -> _T
Parameters
| Name | Description |
|---|---|
|
vectorized_search
Required
|
|
|
embedding_service
Required
|
|
|
string_mapper
|
Default value: None
|
|
text_search_results_mapper
|
Default value: None
|
get_search_results
Search for a query, returning a KernelSearchResult with a VectorSearchResult[TModel] as the results type.
async get_search_results(query: str, options: SearchOptions | None = None, **kwargs: Any) -> KernelSearchResults[VectorSearchResult[TModel]]
Parameters
| Name | Description |
|---|---|
|
query
Required
|
|
|
options
|
Default value: None
|
get_text_search_results
Search for a query, returning a KernelSearchResult with a TextSearchResult as the results type.
async get_text_search_results(query: str, options: SearchOptions | None = None, **kwargs: Any) -> KernelSearchResults[TextSearchResult]
Parameters
| Name | Description |
|---|---|
|
query
Required
|
|
|
options
|
Default value: None
|
search
Search for a query, returning a KernelSearchResult with a string as the results type.
async search(query: str, options: SearchOptions | None = None, **kwargs: Any) -> KernelSearchResults[str]
Parameters
| Name | Description |
|---|---|
|
query
Required
|
|
|
options
|
Default value: None
|
Attributes
options_class
Get the options class.
embedding_service
embedding_service: EmbeddingGeneratorBase | None
string_mapper
string_mapper: Callable[[TModel], str] | None
text_search_results_mapper
text_search_results_mapper: Callable[[TModel], TextSearchResult] | None
vector_text_search
vector_text_search: VectorTextSearchMixin | None
vectorizable_text_search
vectorizable_text_search: VectorizableTextSearchMixin | None
vectorized_search
vectorized_search: VectorizedSearchMixin | None