Skip to main content
Open In ColabOpen on GitHub

kNN

在统计学中,k-近邻算法(k-NN)是一种非参数监督学习方法,最初由Evelyn FixJoseph Hodges于1951年开发,并随后由Thomas Cover扩展。它用于分类和回归。

这个笔记本介绍了如何使用一个内部使用kNN的检索器。

largely 基于 Andrej Karpathy 的代码。

from langchain_community.retrievers import KNNRetriever
from langchain_openai import OpenAIEmbeddings

创建新的检索器(Retriever)

retriever = KNNRetriever.from_texts(
["foo", "bar", "world", "hello", "foo bar"], OpenAIEmbeddings()
)

使用检索器

我们现在已经可以使用检索器了!

result = retriever.invoke("foo")
result
[Document(page_content='foo', metadata={}),
Document(page_content='foo bar', metadata={}),
Document(page_content='hello', metadata={}),
Document(page_content='bar', metadata={})]