langchain_community.vectorstores.elasticsearch
.BaseRetrievalStrategy¶
- class langchain_community.vectorstores.elasticsearch.BaseRetrievalStrategy[source]¶
基类,用于 `Elasticsearch` 检索策略。
方法
__init__
()before_index_setup
(client, text_field, ...)在创建索引之前执行。
index
(dims_length, vector_query_field, ...)在索引创建时执行。
query
(query_vector, query, *, k, fetch_k, ...)在执行对存储的搜索时执行。
返回策略是否需要在将文本添加到索引之前执行推理。
- __init__()¶
- 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
- abstractindex(dims_length: Optional[int], vector_query_field: str, similarity: Optional[DistanceStrategy]) Dict [source]¶
在索引创建时执行。
- 参数
dims_length (Optional[int]) – 嵌入向量数值长度,或在未使用基于向量的查询时为None。
vector_query_field (str) – 包含索引中向量表示的字段。
相似度 (可选[DistanceStrategy]) – 要使用的相似度策略,如果未使用则使用None。
- 返回值
策略的Elasticsearch设置和映射。
- 返回类型
字典
- 抽象 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 (可选[List[float]]) – 查询向量,如果没有使用基于向量的查询,则为None。
query (可选[str]) – 文本查询,如果没有使用基于文本的查询,则为None。
k (整数) – 要检索的总结果数。
fetch_k (整数) – 初始要检索的结果数。
vector_query_field (str) – 包含索引中向量表示的字段。
text_field (str) – 包含索引中文本数据的字段。
filter (列表[字典]) – 应用到查询的过滤子句列表。
相似度 (可选[DistanceStrategy]) – 要使用的相似度策略,如果未使用则使用None。
- 返回值
Elasticsearch查询体。
- 返回类型
字典