Skip to main content

Xorbits推理 (Xinference)

本页面演示如何使用Xinference与LangChain。

Xinference是一个功能强大且多用途的库,旨在为LLMs、语音识别模型和多模态模型提供服务,甚至可以在您的笔记本电脑上运行。通过Xorbits推理,您可以轻松地部署和提供您的内置模型,只需一个命令即可。

安装和设置

可以通过pip从PyPI安装Xinference:

pip install "xinference[all]"

LLM

Xinference支持与GGML兼容的各种模型,包括chatglm、baichuan、whisper、vicuna和orca。要查看内置模型,请运行以下命令:

xinference list --all

Xinference的包装器

您可以通过运行以下命令启动Xinference的本地实例:

xinference

您还可以在分布式集群中部署Xinference。要这样做,首先在要运行它的服务器上启动Xinference监督员:

xinference-supervisor -H "${supervisor_host}"

然后,在您希望在每个其他服务器上运行它们的地方,启动Xinference工作进程:

xinference-worker -e "http://${supervisor_host}:9997"

您还可以通过运行以下命令启动Xinference的本地实例:

xinference

一旦Xinference运行起来,将通过CLI或Xinference客户端访问模型管理的端点。

对于本地部署,端点将是http://localhost:9997。

对于集群部署,端点将是http://${supervisor_host}:9997。

然后,您需要启动一个模型。您可以指定模型名称和其他属性,包括model_size_in_billions和quantization。您可以使用命令行界面(CLI)来执行此操作。例如,

xinference launch -n orca -s 3 -q q4_0

将返回一个模型uid。

示例用法:

from langchain.llms import Xinference

llm = Xinference(
server_url="http://0.0.0.0:9997",
model_uid = {model_uid} # 用从启动模型返回的模型UID替换model_uid
)

llm(
prompt="Q: where can we visit in the capital of France? A:",
generate_config={"max_tokens": 1024, "stream": True},
)

用法

有关更多信息和详细示例,请参阅xinference的示例笔记本

嵌入

Xinference还支持嵌入查询和文档。有关更详细的演示,请参阅xinference嵌入的示例笔记本