langchain_community.vectorstores.elasticsearch
.SparseRetrievalStrategy¶
- class langchain_community.vectorstores.elasticsearch.SparseRetrievalStrategy(model_id: Optional[str] = None)[source]¶
Sparse retrieval strategy using the text_expansion processor.
Methods
__init__
([model_id])before_index_setup
(client, text_field, ...)Executes before the index is created.
index
(dims_length, vector_query_field, ...)Executes when the index is created.
query
(query_vector, query, k, fetch_k, ...)Executes when a search is performed on the store.
Returns whether or not the strategy requires inference to be performed on the text before it is added to the index.
- before_index_setup(client: Elasticsearch, text_field: str, vector_query_field: str) None [source]¶
Executes before the index is created. Used for setting up any required Elasticsearch resources like a pipeline.
- Parameters
client – The Elasticsearch client.
text_field – The field containing the text data in the index.
vector_query_field – The field containing the vector representations in the index.
- index(dims_length: Optional[int], vector_query_field: str, similarity: Optional[DistanceStrategy]) Dict [source]¶
Executes when the index is created.
- Parameters
dims_length – Numeric length of the embedding vectors, or None if not using vector-based query.
vector_query_field – The field containing the vector representations in the index.
similarity – The similarity strategy to use, or None if not using one.
- Returns
The Elasticsearch settings and mappings for the strategy.
- Return type
Dict
- query(query_vector: Optional[List[float]], query: Optional[str], k: int, fetch_k: int, vector_query_field: str, text_field: str, filter: List[dict], similarity: Optional[DistanceStrategy]) Dict [source]¶
Executes when a search is performed on the store.
- Parameters
query_vector – The query vector, or None if not using vector-based query.
query – The text query, or None if not using text-based query.
k – The total number of results to retrieve.
fetch_k – The number of results to fetch initially.
vector_query_field – The field containing the vector representations in the index.
text_field – The field containing the text data in the index.
filter – List of filter clauses to apply to the query.
similarity – The similarity strategy to use, or None if not using one.
- Returns
The Elasticsearch query body.
- Return type
Dict