Xinference是一个强大的开源模型推理框架,能帮你轻松地在本地或服务器上部署、管理各种AI模型(如ChatGLM、Baichuan等)。其核心优势是统一管理并支持多种主流推理引擎(如vLLM、llama.cpp),并提供简单易用的Web界面。
为了让你快速了解,下表对比了主要的两种部署方式:
| 特性 | Docker部署 (推荐) | pip本地安装 |
|---|---|---|
| 核心优势 | 环境隔离,依赖简单,最适合生产环境 | 直接与宿主机Python环境交互,便于深度定制 |
| 适用场景 | 标准部署、快速启动、内网/离线环境 | 开发调试、频繁修改代码、需要直接调用其他Python库 |
| 复杂度 | 低 | 中(需自行解决依赖) |
📦 部署方式详解
1. Docker部署(推荐,尤其适合内网)
这是最稳定、最推荐的方式,能避免复杂的本地环境问题。
步骤简述:
- 拉取镜像:从DockerHub拉取官方镜像(镜像名
xprobe/xinference)。 - 运行容器:执行以下命令启动服务(可按需修改端口和挂载目录):
参数说明:docker run -d -p9997:9997 --gpus all\-v /path/to/your/models:/models\xprobe/xinference:latest\xinference-local -H0.0.0.0-p 9997:9997:将容器内端口映射到宿主机。--gpus all:启用GPU支持(若无GPU或使用CPU版镜像可去掉)。-v /path/to/your/models:/models:将存放本地模型的目录挂载进容器。
2. pip本地安装
适合希望在Python环境中直接集成的开发者。
基本步骤:
- 创建并激活虚拟环境(强烈建议)。
- 安装Xinference:使用pip安装完整版:
pip install "xinference[all]"。 - 启动服务:在终端执行
xinference-local --host 0.0.0.0 --port 9997即可。
注:
pip安装可能会遇到llama-cpp-python或torch的版本冲突问题,需要手动调整版本。
🚀 基本使用方法
无论以何种方式部署,成功启动后都可以通过以下步骤使用:
- 访问Web UI:在浏览器打开
http://<你的服务器IP>:9997,即可进入管理界面。 - 启动内置模型:在Web界面的“Launch Model”页面,从内置模型列表中选择一个(如
ChatGLM3),点击“启动”即可。系统会自动从网络下载模型文件。 - 启动本地模型:如果你有已下载的模型文件(如GGUF格式),可以在启动时选择“Custom”类型,并手动填写模型文件的绝对路径(例如
/models/llama-2-7b.Q4_K_M.gguf),框架会直接加载。 - 与模型交互:模型成功运行后,你可以在Web UI的“Chat”页面直接对话,也可以通过其提供的兼容OpenAI的API接口进行调用。
💡 核心使用技巧与注意事项
- 离线/内网部署关键:在内网环境,务必在Docker启动命令中设置环境变量
-e XINFERENCE_MODEL_SRC=local,并正确挂载包含模型的本地目录。在Web UI中启动模型时,选择“Custom”并填写容器内的模型路径(如/models/你的模型文件.gguf)。 - 模型从哪来:除了使用内置列表在线下载,你还可以从Hugging Face或ModelScope等平台手动下载模型文件(如
.gguf,.safetensors格式),然后通过上述本地模型方式加载。 - 性能优化:根据硬件选择合适的量化模型(如Q4_K_M),能在几乎不损失精度的情况下显著降低显存占用和提升速度。在Web UI启动时可以选择量化等级。