Skip to main content
Open on GitHub

Xorbits Inference (Xinference)

本页面演示了如何将Xinference 与LangChain结合使用。

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

安装与设置

Xinference 可以通过 pip 从 PyPI 安装:

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_community.llms import Xinference

llm = Xinference(
server_url="http://0.0.0.0:9997",
model_uid = {model_uid} # replace model_uid with the model UID return from launching the model
)

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

API 参考:Xinference

使用

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

嵌入

Xinference 还支持嵌入查询和文档。参见 xinference 嵌入示例 以获取更详细的演示。

Xinference LangChain 伙伴包安装

通过以下方式安装集成包:

pip install langchain-xinference

聊天模型

from langchain_xinference.chat_models import ChatXinference

LLM

from langchain_xinference.llms import Xinference