Skip to main content
Open In ColabOpen on GitHub

Xorbits 推理(Xinference)

本教程将介绍如何在 LangChain 中使用 Xinference 嵌入。

安装

通过 PyPI 安装 Xinference:

%pip install --upgrade --quiet  "xinference[all]"

在本地或分布式集群中部署 Xinference。

如需本地部署,请运行 xinference

要在集群中部署 Xinference,请首先使用 xinference-supervisor 启动一个 Xinference supervisor。您还可以使用 -p 参数指定端口,并使用 -H 参数指定主机。默认端口为 9997。

然后,在您希望运行 Xinference 的服务器上使用 xinference-worker 启动 Xinference workers。

您可以在 Xinference 的 README 文件中查阅更多信息。

Wrapper

要将 Xinference 与 LangChain 一起使用,您需要先启动一个模型。您可以使用命令行界面(CLI)来实现:

!xinference launch -n vicuna-v1.3 -f ggmlv3 -q q4_0
Model uid: 915845ee-2a04-11ee-8ed4-d29396a3f064

模型 UID 已返回供您使用。现在您可以在 LangChain 中使用 Xinference embeddings 了:

from langchain_community.embeddings import XinferenceEmbeddings

xinference = XinferenceEmbeddings(
server_url="http://0.0.0.0:9997", model_uid="915845ee-2a04-11ee-8ed4-d29396a3f064"
)
API Reference:XinferenceEmbeddings
query_result = xinference.embed_query("This is a test query")
doc_result = xinference.embed_documents(["text A", "text B"])

最后,当您不再需要该模型时,请终止它:

!xinference terminate --model-uid "915845ee-2a04-11ee-8ed4-d29396a3f064"