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"
Related
- Embedding model conceptual guide
- Embedding model how-to guides