langchain_elasticsearch.vectorstores.BaseRetrievalStrategy

class langchain_elasticsearch.vectorstores.BaseRetrievalStrategy(*args, **kwargs)[源代码]

自版本 0.2.0 已弃用: 请使用 RetrievalStrategy

Elasticsearch 搜索策略的基类。

方法

__init__(*args, **kwargs)

before_index_setup(client, text_field, ...)

在创建索引之前执行。

index(dims_length, vector_query_field, ...)

在创建索引时执行。

query(query_vector, query, *, k, fetch_k, ...)

在存储中进行搜索时执行。

require_inference()

返回策略是否需要在添加到索引之前对文本执行推断。

__init__(*args: 任何, **kwargs: 任何) 任何
参数
  • self (任何) –

  • args (任何) –

  • kwargs (任何) –

返回类型

任何

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

abstract index(dims_length: Optional[int], vector_query_field: str, text_field: str, similarity: Optional[DistanceStrategy]) Dict[source]

在创建索引时执行。

参数
  • dims_length (Optional[int]) – 嵌入向量的数值长度,或使用基于向量的查询时不为 None。

  • vector_query_field (str) – 索引中包含向量表示的字段。

  • text_field (str) – 索引中包含文本数据字段。

  • similarity (Optional[DistanceStrategy]) – 要使用的相似度策略,或使用时不为 None。

返回

策略的 Elasticsearch 设置和映射。

返回类型

Dict

abstract 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 () – 应用到查询的过滤条件列表。

  • similarity (Optional[DistanceStrategy]) – 要使用的相似度策略,或使用时不为 None。

返回

Elasticsearch查询体。

返回类型

Dict

require_inference() bool[源代码]

返回策略是否需要在添加到索引之前对文本执行推断。

返回

策略是否需要在对文本进行索引前执行推理。

返回类型

bool