langchain.retrievers.document_compressors.embeddings_filter.EmbeddingsFilter

class langchain.retrievers.document_compressors.embeddings_filter.EmbeddingsFilter[source]

继承自: BaseDocumentCompressor

使用嵌入技术删除与查询无关的文档的文档压缩器。

通过解析和验证从关键字参数输入的数据来创建新模型。

如果输入数据无法解析为有效的模型,将引发ValidationError。

param embeddings: Embeddings [必需]

用于嵌入文档内容和查询的嵌入。

param k: Optional[int] = 20

返回的相关文档数量。可以设置为None,此时必须指定 similarity_threshold。默认为20。

param similarity_fn: Callable [可选]

用于比较文档的相似度函数。函数应接受两个矩阵(List[List[float]])作为输入,并返回一个分数矩阵,其中较高的值表示更相似的相似度。

param similarity_threshold: Optional[float] = None

用于确定两个文档是否足够相似以便被认为是冗余的阈值。默认为None,如果$cipher$被设置为None,则必须指定。

async acompress_documents(documents: Sequence[Document], query: str, callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None) Sequence[Document][source]

根据查询向量相似度过滤文档。

参数
  • documents (sequence[Document]) –

  • query (str) –

  • callbacks (可选[union[list[BaseCallbackHandler], BaseCallbackManager]) –

返回类型

sequence[Document]

compress_documents(documents: Sequence[Document], query: str, callbacks: Optional[Union[List[BaseCallbackHandler], BaseCallbackManager]] = None) Sequence[Document][source]

根据查询向量相似度过滤文档。

参数
  • documents (sequence[Document]) –

  • query (str) –

  • callbacks (可选[union[list[BaseCallbackHandler], BaseCallbackManager]) –

返回类型

sequence[Document]

使用EmbeddingsFilter的示例