openvinotoolkit/model_server
A scalable inference server for models optimized with OpenVINO™
OpenVINO™ Model Server (OVMS)
是什么 – 一个生产级的 C++ 推理服务器,可将机器学习模型(LLM、视觉-语言模型、经典视觉/分类模型等)通过标准网络 API 暴露。基于 OpenVINO 工具包构建,专为 Intel CPU、GPU 和 NPU 优化。
为何重要 – 它允许您在 OpenAI 兼容的 REST API 或 KServe gRPC API 后端运行生成式 AI 工作负载(文本生成、嵌入、图像生成、语音处理),并利用硬件加速,同时支持连续批处理、流式传输、模型版本控制和热重载等功能。
核心功能
| 类别 | 亮点 |
|---|---|
| 生成式 AI | 支持聊天/补全、嵌入、图像生成、音频(ASR/TTS)的 OpenAI 兼容端点。支持连续批处理、推测解码、结构化输出和 GGUF 模型格式。 |
| 经典推理 | 支持分类、检测、OCR 等的 KServe 兼容 gRPC/REST。支持 TensorFlow、ONNX、PaddlePaddle、OpenVINO IR、MediaPipe 图、Python 执行节点和动态形状。 |
| 部署 | Docker 镜像(仅 CPU、CPU+GPU/NPU)、Linux/Windows 原生二进制文件、Kubernetes/OpenShift 的 Helm 图表。模型仓库可为本地、S3、GCS、Azure Blob 或 HuggingFace Hub。 |
| 管理 | 模型版本控制、热重载、Prometheus 指标、gRPC 流式传输、C API 用于将服务器嵌入原生应用。 |
| 硬件加速 | 通过 OpenVINO 优化,适用于 Intel Xeon CPU、集成/独立 GPU 和 Intel NPU。 |
典型用例
- 在 OpenAI 兼容端点后部署本地 LLM(例如 Qwen3-4B-int4),用于聊天应用、RAG 流水线或内部工具。
- 通过 KServe gRPC 暴露经典视觉模型(ResNet-50、YOLO、OCR),供下游服务使用,实现微服务架构中的可扩展推理。
- 运行结合文本、图像和音频模型的多模态代理,使用「AI Agents with MCP servers」演示。
- 在边缘或本地服务器上部署,当 Intel CPU/GPU 可用且不希望使用云 API 时。
快速入门
- 拉取 Docker 镜像
docker pull openvino/model_server:latest # 仅 CPU # 或 docker pull openvino/model_server:latest-gpu # CPU + Intel GPU/NPU - 运行模型 – 以 Linux 上的 HuggingFace LLM(Qwen3-4B-int4)为例:
mkdir -p $HOME/models docker run --rm -p 8000:8000 \ --user $(id -u):$(id -g) -v $HOME/models:/models:rw \ openvino/model_server:latest \ --source_model OpenVINO/Qwen3-4B-int4-ov \ --model_repository_path /models \ --rest_port 8000 - 调用 API(Python,OpenAI 客户端):
from openai import OpenAI client = OpenAI(base_url="http://localhost:8000/v1", api_key="unused") stream = client.chat.completions.create( model="OpenVINO/Qwen3-4B-int4-ov", messages=[{"role": "user", "content": "巴黎的三大主要旅游景点是什么?"}], stream=True) for chunk in stream: if chunk.choices[0].delta.content: print(chunk.choices[0].delta.content, end="") - 经典模型示例 – 通过 KServe gRPC 提供 ResNet-50 IR 模型:
然后使用 Triton 客户端(在 README 中展示)发送图像并读取 top-1 类别。docker run --rm -d -u $(id -u) -v $(pwd):/models -p 9000:9000 \ openvino/model_server:latest \ --model_name resnet --model_path /models/resnet50.xml \ --mean "[123.675,116.28,103.53]" --scale "[58.395,57.12,57.375]" \ --layout "NHWC:NCHW" --port 9000
生态系统与集成
- 客户端库 – 任何 HTTP/REST 客户端均可使用;官方示例使用 OpenAI Python SDK 和 Triton gRPC 客户端。
- 模型格式 – TensorFlow、ONNX、PaddlePaddle、OpenVINO IR、MediaPipe、GGUF。
- 可观测性 – Prometheus 兼容指标端点;日志遵循标准 Docker/Kubernetes 约定。
- 可扩展性 – 支持 C API 嵌入服务器、Python 执行节点用于自定义预/后处理,以及通过 MediaPipe 图支持自定义流水线。
许可与贡献
- 许可证:Apache 2.0(参见 README 中的徽章)。
- 贡献:欢迎在 GitHub 上提交 PR 和问题;提供安全策略。
总结:OpenVINO Model Server 是一个真实、活跃维护的推理服务化平台,连接了 Intel 优化硬件与现代 AI 工作负载——从大语言模型到经典视觉流水线——同时提供熟悉的 OpenAI 和 KServe API,便于集成。
相关
- 项目
- 项目
- 项目
- 项目
- Dispatch