Skip to main content
Open In ColabOpen on GitHub

SVM

Support vector machines (SVMs) are a set of supervised learning methods used for classification, regression and outliers detection.

本笔记本介绍了如何使用一个基于SVM的检索器,该检索器通过scikit-learn包实现。

主要基于 https://github.com/karpathy/randomfun/blob/master/knn_vs_svm.html

%pip install --upgrade --quiet  scikit-learn
%pip install --upgrade --quiet  lark

我们要使用 OpenAIEmbeddings,因此我们需要获取OpenAI API密钥。

import getpass
import os

if "OPENAI_API_KEY" not in os.environ:
os.environ["OPENAI_API_KEY"] = getpass.getpass("OpenAI API Key:")
OpenAI API Key: ········
from langchain_community.retrievers import SVMRetriever
from langchain_openai import OpenAIEmbeddings

使用文本创建新的检索器

retriever = SVMRetriever.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='world', metadata={})]