xinference - 大模型分布式推理框架

文章目录


关于 xinference

Xorbits Inference(Xinference)是一个性能强大且功能全面的分布式推理框架。

可用于大语言模型(LLM),语音识别模型,多模态模型等各种模型的推理。

通过 Xorbits Inference,你可以轻松地一键部署你自己的模型或内置的前沿开源模型。

无论你是研究者,开发者,或是数据科学家,都可以通过 Xorbits Inference 与最前沿的 AI 模型,发掘更多可能。


使用

1、启动 xinference

shell 复制代码
xinference-local -H 0.0.0.0 -p 8094

设置其他参数

Xinference 也允许从其他模型托管平台下载模型。可以通过在拉起 Xinference 时指定环境变量,比如,如果想要从 ModelScope 中下载模型,可以使用如下命令:

shell 复制代码
XINFERENCE_MODEL_SRC=modelscope xinference-local --host 0.0.0.0 --port  8094  

xinference 缓存地址:~/.xinference/cache

模型缓存地址,我使用 modelscope 下载模型,被缓存到 ~/.cache/modelscope/hub/qwen/Qwen-7B-Chat


2、加载模型

搜索,点击 chat model 设置参数,然后点击 飞机 来加载模型



如果你的第1个cuda 被占用,又设置 N-GPU 为 auto,可能会报如下错误

Server error: 400 - address=0.0.0.0:46785, pid=12000 Some modules are dispatched on the CPU or the disk. Make sure you have enough GPU RAM to fit the quantized model. If you want to dispatch the model on the CPU or the disk while keeping these modules in 32-bit, you need to set load_in_8bit_fp32_cpu_offload=True and pass a custom device_map to from_pretrained. Check https://huggingface.co/docs/transformers/main/en/main_classes/quantization#offload-between-cpu-and-gpu for more details.

将 N-GPU 设置为 可用的cuda 就好



可以在 Running Models 中看到刚调起来的模型


3、模型交互

没有交互的 UI 界面,你可以使用代码进行交互

以下代码来自:https://inference.readthedocs.io/zh-cn/latest/index.html

python 复制代码
client = Client("http://localhost:8094")
model = client.get_model("qwen-chat") # 填入上面的 model id
# <xinference.client.restful.restful_client.RESTfulChatModelHandle object at 0x7f203fb8e050>


# Chat to LLM
model.chat(
   prompt="What is the largest animal?",
   system_prompt="You are a helpful assistant",
   generate_config={"max_tokens": 1024}
)

得到:

json 复制代码
{
	'id': 'chat744c3bf4-e5e3-11ee-8014-ac1f6b206f62',
	'object': 'chat.completion',
	'created': 1710847556,
	'model': 'qwen-chat',
	'choices': [{
		'index': 0,
		'message': {
			'role': 'assistant',
			'content': 'The largest animal on Earth is the blue whale, which can grow up to 100 feet (30 meters) in length and weigh as much as 200 tons (90 metric tonnes). It has the biggest brain of any living creature, with an estimated volume of around 70 cubic feet (26 liters). The blue whale also has one of the strongest voices in the world, capable of producing a loud noise that can be heard over 5 miles (8 kilometers) away.'
		},
		'finish_reason': 'stop'
	}],
	'usage': {
		'prompt_tokens': 24,
		'completion_tokens': 103,
		'total_tokens': 127
	}
}

其它

报错处理 - transformer.wte.weight

KeyError: address=0.0.0.0:41435, pid=40327 'transformer.wte.weight'

如果出现这个错误,可以检查下 cuda 是否能正常被 torch 调用:

shell 复制代码
 python -c "import torch; print(torch.cuda.is_available())"

伊织 2024-03-19(二)

相关推荐
小小-猿7 小时前
从 gpt-6-luna 到第一个 Nexent 智能体:配置、调试与发布
gpt·大模型·智能体·ai智能体·nexent
aicat_cn11 小时前
OpenAI 解散机器人团队,改让 GPT-6 直接控制机器人
ai·大模型
kiwixing11 小时前
GaussDB|集中式还是分布式?三把尺子选型
分布式·gaussdb
Flynn Liang11 小时前
LLM 应用安全:Prompt 注入、越权与输入输出护栏
java·人工智能·大模型·langchain4j·llm 安全·prompt 注入·guardrail
真上帝的左手21 小时前
30. 技术专题-‌应用框架组件-分布式架构
分布式·架构·系统架构·分布式架构
JJJennie7771 天前
MAI Gateway 免费试用与付费方案详解:先验效果,再谈 ROI
人工智能·大模型·gateway·ai网关
zixu_star1 天前
从单机到分布式:定时任务如何处理大量数据与执行失败?
分布式
lsc_blog2 天前
听到优化风声,先准备能由自己掌控的事
数据库·分布式·中间件·职场和发展·重构
dozenyaoyida2 天前
AI与大模型新闻日报 | 2026-11-12
人工智能·ai·大模型·新闻
云卷云舒___________2 天前
突发:Gemini 4 Hydrogen内测,Grok 4.8推送,Qwen Code 1.0开源,格局一夜生变 | AI日报11.12
google·qwen·grok·gemini·xai·ai日报·qwencode