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},
)
使用
有关更多信息和详细示例,请参阅 xinference LLMs 的示例
嵌入
Xinference 还支持嵌入查询和文档。参见 xinference 嵌入示例 以获取更详细的演示。
Xinference LangChain 伙伴包安装
通过以下方式安装集成包:
pip install langchain-xinference
聊天模型
from langchain_xinference.chat_models import ChatXinference
LLM
from langchain_xinference.llms import Xinference