
快速上手Xinference本地推理3步跑通【免费下载链接】inferenceSwap GPT for any LLM by changing a single line of code. Xinference lets you run open-source, speech, and multimodal models on cloud, on-prem, or your laptop — all through one unified, production-ready inference API.项目地址: https://gitcode.com/GitHub_Trending/in/inferenceXinferenceXorbits Inference是一个开源模型推理框架一条命令在本地或集群里部署大语言模型、语音、多模态模型对外统一暴露 OpenAI 兼容接口就是 OpenAI SDK 那套请求/响应格式换个地址就能调。演示前一天老板说 GPT 接口不能留在生产环境得换成本地开源模型。问题在于各个推理框架的请求格式互不相通——换一套就得重写一遍客户端代码一个星期的客服机器人差点推倒重来。后来有同事丢给我一个地址Xinference。本地起一个服务不管是聊天模型还是向量模型全部走同一套 OpenAI 风格接口换模型只改一行base_url。这套从安装到出第一条回复的最短路径以及路上的坑都写在这里。能力速览值不值得上手看这张表它能做什么谁适合用前置条件一条命令部署 LLM、向量、重排、图像、语音、视频模型想本地试用开源模型、不想写部署脚本的开发者Python 一条 pip 命令OpenAI 兼容 RESTful API支持 Function Calling模型按 JSON 格式调用工具已有 OpenAI SDK 代码、想换成本地模型的数据/研发团队现有代码改一行base_url分布式集群部署大模型切片到多台机器单机显存放不下 70B 大模型的团队多台服务器 supervisor/worker内置 Web 控制台模型浏览、启动、状态管理全图形化非开发同学做模型管理服务已启动浏览器打开即可如果你只是想在笔记本上跑一个小模型验证想法下面两个代码块就够要上集群直接跳到进阶那一节。最小上手路径3条命令跑通本地推理先装依赖再启动服务。xinference[all]会一次装齐所有推理引擎的依赖——所谓引擎就是真正执行模型计算的底层库vLLM、llama.cpp、transformers 等装一次后面不用纠结。pip install xinference[all] xinference-local --host 0.0.0.0 --port 9997运行后终端会打印Starting Xinference at endpoint: http://0.0.0.0:9997浏览器访问 127.0.0.1:9997 就是 Web 控制台所有操作点页面也能完成。依赖装得慢或报错时安装细节见 doc/source/getting_started/installation.rst。第二步启动模型并拿到第一条回复。模型权重首次启动会自动下载并缓存到~/.xinference第二次启动就是秒开。from xinference.client import RESTfulClient client RESTfulClient(http://127.0.0.1:9997) model client.launch_model( model_nameqwen2.5-instruct, model_enginevllm, model_formatpytorch, size_in_billions0_5, ) reply client.get_model(model.model_uid).chat( messages[{role: user, content: 什么是最大的动物}], ) print(reply[choices][0][message][content])第一次跑会看到终端里的下载进度走完程序直接打印模型回答。至此下载权重 → 启动服务 → 推理调用三件事已经全部过了一遍内置模型列表更多可以在 doc/source/models/index.rst 里翻。核心能力拆解它真正强的两件事第一件一行代码替换 OpenAI 接口。输入是你现有的 OpenAI SDK 代码处理是 Xinference 在/v1入口实现了兼容端点chat、completions、embeddings 都支持输出结构和 OpenAI 官方完全一致你拿到的还是一个choices[0].message.content。from openai import OpenAI oai OpenAI(base_urlhttp://127.0.0.1:9997/v1, api_keynot-used) resp oai.chat.completions.create( modelqwen2.5-instruct, messages[{role: user, content: 用一句话打个招呼}], ) print(resp.choices[0].message.content)输出结构与 OpenAI 官方接口完全一致已有代码不用动LangChain、Dify、RAGFlow 这类工具也是只改 URL 就能指向本地。它甚至额外提供了 Anthropic 兼容端点/anthropicClaude Code 这类工具也能直接指过来。第二件一个服务管多种模型拼出最小 RAG。RAG检索增强生成先在你自己的文档里检索、再让模型基于检索结果回答需要向量模型 聊天模型两种模型。Xinference 里它们走同一个服务、同一套接口启动时多传一个model_type就行client.launch_model( model_namebge-base-en-v1.5, model_typeembedding) oai OpenAI(base_urlhttp://127.0.0.1:9997/v1, api_keynot-used) vec oai.embeddings.create( modelbge-base-en-v1.5, input待向量化的一句话) print(len(vec.data[0].embedding)) # 768打印出 768说明文本已经变成 768 维向量。把这个向量丢进任意向量数据库就能检索语义最相近的文档段落再交给聊天模型生成答案——一个最小可用的 RAG 链路就齐了。控制台里各类型模型分 Tab 陈列启动前可以先看支持哪些能力进阶场景单机显存放不下模型时场景很典型70B 以上的大模型一张卡装不下。输入是多台机器处理是 supervisor负责调度和统一入口的主节点加 worker真正跑模型的计算节点启动时指定副本数调度器把模型分片摊到各 worker 上输出对调用方仍是同一个 API 地址完全无感。# A机主节点只做调度 xinference-supervisor -H 0.0.0.0 -p 9997 # B机计算节点实际承载模型 xinference-worker -e http://A机IP:9997 -H 0.0.0.0启动后命令行加-e http://A机IP:9997指向主节点操作即可分布式参数细节参考 doc/source/user_guide/distributed_inference.rst。另一个生产上绕不开的场景是依赖冲突模型 A 要旧版 torch模型 B 要新版 torch同一个 Python 环境装不下。Xinference 支持给单个模型开独立虚拟环境表单里 Virtual Environments Config 一节各模型依赖互不干扰这是多模型长期服役时最常踩的坑。避坑与实用建议第一次跑最常遇到的事 没有 GPU 别硬装[all]只装pip install xinference[llama_cpp]启动时model_engine换成llama.cpp、格式用 GGUF压缩量化过的权重CPU 可跑16GB 内存够 7B 级别。 首次下载慢权重缓存在~/.xinference国内网络可加环境变量XINFERENCE_MODEL_SRCmodelscope启动服务把模型源切到国内镜像。⚙️ 引擎选择有讲究Linux 上优先 vLLM吞吐最好显存紧张用 llama.cppMac 优先 MLXApple 芯片加速引擎。 客户端版本要对齐xinference-client与服务端版本保持一致字段对不上时先查这里。跑通之后下一步可以看看自动合批多个并发请求合并处理直接拉高吞吐和监控看板如果想把本地模型接进现成工作流改一行 URL 指到 Dify 或 RAGFlow 是最快的验证方式。【免费下载链接】inferenceSwap GPT for any LLM by changing a single line of code. Xinference lets you run open-source, speech, and multimodal models on cloud, on-prem, or your laptop — all through one unified, production-ready inference API.项目地址: https://gitcode.com/GitHub_Trending/in/inference创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考