langchain_elasticsearch.vectorstores
.ApproxRetrievalStrategy¶
- class langchain_elasticsearch.vectorstores.ApproxRetrievalStrategy(query_model_id: Optional[str] = None, hybrid: Optional[bool] = False, rrf: Optional[Union[dict, bool]] = True)[来源]¶
自版本 0.2.0 已弃用: 请使用
DenseVectorStrategy
替代。使用 HNSW 算法的近似检索策略。
方法
__init__
([query_model_id, hybrid, rrf])before_index_setup
(client, text_field, ...)在创建索引之前执行。
index
(dims_length, vector_query_field, ...)创建 Elasticsearch 索引的映射。
query
(query_vector, query, k, fetch_k, ...)在执行对存储进行搜索时执行。
返回此策略是否需要在将文本添加到索引之前执行推理。
- 参数
query_model_id (可选[str]) –
hybrid (可选[bool]) –
rrf (可选[Union[dict, bool]]) –
- __init__(query_model_id: Optional[str] = None, hybrid: Optional[bool] = False, rrf: Optional[Union[dict, bool]] = True)[source]¶
- 参数
query_model_id (可选[str]) –
hybrid (可选[bool]) –
rrf (可选[Union[dict, bool]]) –
- before_index_setup(client: Elasticsearch, text_field: str, vector_query_field: str) None [source]¶
在索引创建之前执行。用于设置任何必需的 Elasticsearch 资源,如管道。
- 参数
client (Elasticsearch) – Elasticsearch 客户端。
text_field (str) – 包含索引中文本数据的字段。
vector_query_field (str) – 包含索引中矢量表示的字段。
- 返回类型
None
- index(dims_length: Optional[int], vector_query_field: str, text_field: str, similarity: Optional[DistanceStrategy]) Dict [source]¶
创建 Elasticsearch 索引的映射。
- 参数
dims_length (Optional[int]) –
vector_query_field (str) –
text_field (str) –
similarity (Optional[DistanceStrategy]) –
- 返回类型
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]¶
在执行对存储进行搜索时执行。
- 参数
query_vector (Optional[List[float]]) – 查询向量,如果不使用基于向量的查询,则为 None。
query (Optional[str]) – 文本查询,如果不使用基于文本的查询,则为 None。
k (int) – 要检索的总结果数。
fetch_k (int) – 初始要获取的结果数。
vector_query_field (str) – 包含索引中矢量表示的字段。
text_field (str) – 包含索引中文本数据的字段。
filter (List[dict]) – 要应用于查询的过滤子句列表。
similarity (Optional[DistanceStrategy]) – 要使用的相似度策略,如果不使用则为 None。
- 返回
Elasticsearch 查询体。
- 返回类型
Dict
- require_inference() bool ¶
返回此策略是否需要在将文本添加到索引之前执行推理。
- 返回
该策略是否需要在文本添加到索引之前执行推理。
- 返回类型
bool