深圳Yolo 视觉
深圳
立即加入
词汇表

模型服务

了解模型服务如何弥合训练模型与生产环境之间的鸿沟。探索在Ultralytics 部署Ultralytics 策略。

模型服务是指托管训练好的机器学习模型,并通过网络接口向软件应用程序提供其功能的过程。它充当了存储在磁盘上的静态模型文件与处理现实世界数据的实时系统之间的桥梁。 模型完成机器学习(ML)训练阶段后,必须集成到生产环境中,才能接收图像、文本或表格数据等输入并返回预测结果。通常通过将模型封装为应用程序接口(API)实现,使其能够与Web服务器、移动应用或物联网设备进行通信。

模型服务的AI作用

模型服务的首要目标是有效实现预测建模能力的业务化应用。 训练侧重于准确率和损失最小化,而服务则关注性能指标,例如 延迟(预测结果返回的速度)和吞吐量(每秒可处理的请求数量)。 稳健的服务基础设施确保计算机视觉(CV)系统在高负载下保持可靠性。这通常涉及容器化技术,例如使用Docker等工具将模型与其依赖项打包,以确保在不同计算环境中保持一致的行为。

实际应用

通过基于数据的即时决策,模型服务为各行各业无处不在的人工智能功能提供动力。 数据。

  • 智能制造:在工业环境中, 制造系统中的AI利用服务模型 对装配线进行检测。零部件的高分辨率图像被传送至本地服务器, YOLO26模型在此检测划痕或错位等缺陷, 触发即时警报以剔除不合格品。
  • 零售自动化:零售商利用人工智能提升客户体验。 搭载物体检测 模型的摄像头能在结账区识别商品,自动计算总金额,无需人工扫描条形码。

具体实施

要有效地使用模型,通常将模型导出为标准化格式(如ONNX)会带来诸多益处。 ONNX,该格式能促进 不同训练框架与服务引擎间的互操作性。以下示例演示如何 加载模型并执行推理,通过 Python

from ultralytics import YOLO

# Load the YOLO26 model (this typically happens once when the server starts)
model = YOLO("yolo26n.pt")

# Simulate an incoming API request with an image source URL
image_source = "https://ultralytics.com/images/bus.jpg"

# Run inference to generate predictions for the user
results = model.predict(source=image_source)

# Process results (e.g., simulating a JSON response to a client)
print(f"Detected {len(results[0].boxes)} objects in the image.")

选择正确的战略

服务策略的选择很大程度上取决于具体用例。在线服务通过REST或gRPC等协议提供即时响应,这对面向用户的Web应用至关重要。相反,批量服务离线处理海量数据,适用于夜间报告生成等任务。对于需要隐私保护或低延迟且不依赖网络的应用,边缘AI将服务过程直接迁移至设备端,利用优化格式如 TensorRT 等优化格式,在资源受限的硬件上实现性能最大化。众多企业Ultralytics 简化模型部署流程,支持云端API与边缘设备等多类终端节点。

与相关术语的区别

尽管密切相关,"模型服务"与模型部署推理存在本质区别。

  • 模型部署:指将模型发布至生产环境这一更广泛的生命周期阶段。服务(Serving)则是用于执行已部署模型的具体机制或软件(NVIDIA Triton 服务器 或TorchServe)。
  • 推理:这是从输入数据中计算预测结果的数学过程。模型服务 提供基础设施(网络、可扩展性和安全性), 确保最终用户能够可靠地进行推理
  • 微服务:服务通常被设计为一组微服务,其中模型作为独立服务运行,应用程序的其他部分可对其进行查询,通常采用JSON等轻量级格式交换数据。

加入Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入