探索可扩展性在人工智能中的重要性。了解Ultralytics 和Ultralytics 如何实现高效、高性能的模型部署。
可扩展性指系统、网络或流程通过增加资源来处理日益增长工作量的能力。在人工智能(AI) 和机器学习(ML)领域,可扩展性描述了模型或基础设施在需求增长时维持性能水平的能力。 这种需求通常表现为:训练阶段数据集规模扩大、推理阶段用户流量激增,或计算任务复杂度提升。可扩展架构能实现无缝扩展——无论是将计算机视觉模型部署到单个嵌入式设备,还是通过云集群处理数百万API请求——确保在高负载下推理延迟仍保持较低水平。
为可扩展性进行设计是机器学习运维(MLOps)成功的关键要素。在受控研究环境中运行完美的模型,一旦暴露在生产环境的高速度数据流中就可能失效。有效管理大数据需要能够横向扩展(向集群添加更多机器)或纵向扩展(为现有机器增加更多算力,如内存或GPU)的系统。
可扩展人工智能系统的关键优势包括:
创建可扩展的人工智能解决方案需要优化模型架构和部署基础设施。
在推理过程中提升可扩展性的有效方法之一是批量处理输入数据而非顺序处理。 这能最大限度GPU 并提升整体吞吐量。
from ultralytics import YOLO
# Load a scalable YOLO26 model (smaller 'n' version for speed)
model = YOLO("yolo26n.pt")
# Define a batch of images (URLs or local paths)
# Processing multiple images at once leverages parallel computation
batch_images = ["https://ultralytics.com/images/bus.jpg", "https://ultralytics.com/images/zidane.jpg"]
# Run inference on the batch
results = model(batch_images)
# Print the number of detections for the first image
print(f"Detected {len(results[0].boxes)} objects in the first image.")
可扩展性使人工智能技术能够从理论研究过渡到全球工业工具。
尽管常被混为一谈,可扩展性与性能和效率是截然不同的概念。