langchain_elasticsearch.vectorstores
.ExactRetrievalStrategy¶
- class langchain_elasticsearch.vectorstores.ExactRetrievalStrategy(*args, **kwargs)[源代码]¶
自版本 0.2.0 开始弃用: 请使用
DenseVectorScriptScoreStrategy
代替。使用脚本评分查询的精确检索策略。
方法
__init__
(*args) **kwargs)before_index_setup
(client, text_field, ...)在索引创建前执行。
index
(dims_length, vector_query_field, ...)创建Elasticsearch索引的映射。
query
(query_vector, query, k, fetch_k, ...)在对存储器进行搜索时执行。
返回该策略是否需要在将文本添加到索引之前对其进行推理。
- __init__(*args: Any, **kwargs: Any) Any ¶
- 参数
self (Any) –
args (Any) –
kwargs (Any) –
- 返回类型
Any
- before_index_setup(client: Elasticsearch, text_field: str, vector_query_field: str) None ¶
在索引创建前执行。用于设置任何必需的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 (可选[int]) –
vector_query_field (str) –
text_field (str) –
similarity (可选[DistanceStrategy]) –
- 返回类型
字典
- query(query_vector: Optional[List[float]], query: Optional[str], k: int, fetch_k: int, vector_query_field: str, text_field: str, filter: Optional[List[dict]], similarity: Optional[DistanceStrategy]) Dict [source]¶
在对存储器进行搜索时执行。
- 参数
query_vector (可选[列表[float]]) – 查询向量,如果未使用基于向量的查询则为 None。
query (可选[str]) – 文本查询,如果未使用基于文本的查询则为 None。
k (int) – 要检索的结果总数。
fetch_k (int) – 初始要获取的结果数量。
vector_query_field (str) – 包含索引中向量表示的字段。
text_field (str) – 包含索引中文字数据的字段。
filter (可选[列表[dict]]) – 应用到查询的过滤器子句列表。
similarity (可选[DistanceStrategy]) – 要使用的相似度策略,如果未使用则为 None。
- 返回
Elasticsearch 查询体。
- 返回类型
字典
- require_inference() bool ¶
返回该策略是否需要在将文本添加到索引之前对其进行推理。
- 返回
是否在将文本添加到索引之前要求执行推理。
- 返回类型
bool