模型服务:API 与批处理

模型服务把训练好的模型封装为可调用能力,分为在线推理(实时 API)与离线批处理(大批量异步)两类,是模型从实验走到生产的关键一环。

是什么

在线推理以 HTTP 接口响应单次请求,强调低延迟;批处理对海量数据异步跑完再取结果,强调吞吐与成本。两者共用模型加载、预处理与后处理逻辑。

为什么有用

直接训完模型无法被业务调用。统一的服务层让前端、脚本、流水线都能复用同一模型,并便于限流、监控与版本管理。

怎么用

用 vLLM 启动 OpenAI 兼容服务后,可用 Python 客户端调用:

from openai import OpenAI

client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
resp = client.chat.completions.create(
    model="Qwen/Qwen2.5-7B-Instruct",
    messages=[{"role": "user", "content": "用一句话解释模型服务"}],
)
print(resp.choices[0].message.content)

注意点

在线服务要做并发限流与超时;批处理注意失败重试与幂等。模型加载占显存,多模型共用需调度。用 Hugging Face TGI 等也可获得优化推理。

小结

模型服务分在线 API 与离线批处理,前者重延迟后者重吞吐;统一服务层便于复用与运维,部署可选 vLLM 或 Hugging Face TGI。

参考与延伸阅读

本文累计阅读