Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас
Глоссарий

Масштабируемость

Explore how scalability empowers AI systems to handle growth. Learn to optimize MLOps with [Ultralytics YOLO26](https://docs.ultralytics.com/models/yolo26/) and the [Ultralytics Platform](https://platform.ultralytics.com) for high-performance, distributed training and seamless deployment.

Scalability refers to the capability of a system, network, or process to handle a growing amount of work by adding resources. In the context of Artificial Intelligence (AI) and Machine Learning (ML), scalability describes a model's or infrastructure's ability to maintain performance levels as demand increases. This demand typically manifests as larger datasets during training, higher user traffic during inference, or increased complexity in computational tasks. A scalable architecture allows for seamless expansion—whether deploying a computer vision model to a single embedded device or serving millions of API requests via cloud clusters—ensuring that inference latency remains low even under heavy load.

Важность масштабируемости в искусственном интеллекте

Designing for scalability is a critical component of successful Machine Learning Operations (MLOps). A model that functions perfectly in a controlled research environment may fail when exposed to the high-velocity data streams found in production. Effectively managing Big Data requires systems that can scale horizontally (adding more machines to a cluster) or vertically (adding more power, such as RAM or GPUs, to existing machines).

Ключевые преимущества масштабируемых систем искусственного интеллекта включают:

  • Надежность: масштабируемые системы обеспечивают постоянную работоспособность сервисов во время неожиданных всплесков трафика, предотвращая сбои в работе критически важных приложений.
  • Экономическая эффективность: динамическое масштабирование позволяет сокращать ресурсы в периоды низкой загрузки, что часто управляется облачными вычислительными платформами, такими как AWS или Google .
  • Готовность к будущему: масштабируемая инфраструктура поддерживает новые, более сложные алгоритмы, такие как трансформеры зрения (ViT), без необходимости полной переработки аппаратной экосистемы.

Стратегии достижения масштабируемости

Создание масштабируемых ИИ-решений предполагает оптимизацию как архитектуры модели, так и инфраструктуры развертывания.

  • Distributed Training: When training datasets become too large for a single processor, distributed training splits the workload across multiple Graphics Processing Units (GPUs). Frameworks like PyTorch Distributed allow developers to parallelize computations, significantly reducing the time required to train foundation models. Tools like the Ultralytics Platform simplify this process by managing cloud training resources automatically.
  • Эффективные архитектуры моделей: выбор правильной архитектуры модели имеет решающее значение для пропускной способности. Новейшая модель Ultralytics разработана так, чтобы быть меньше и быстрее своих предшественников, что делает ее изначально масштабируемой на различном оборудовании, от периферийных устройств искусственного интеллекта до массивных серверных ферм.
  • Containerization and Orchestration: Packaging applications with Docker ensures they run consistently across different environments. For managing large clusters of containers, Kubernetes automates the deployment, scaling, and management of containerized applications.
  • Оптимизация модели: такие методы, как квантование и обрезка модели, уменьшают объем памяти и вычислительные затраты модели. Инструменты, такие как NVIDIA TensorRT могут еще больше ускорить скорость вывода, обеспечивая более высокую пропускную способность на существующем оборудовании.

Пример кода: масштабируемое пакетное вычисление

Одним из эффективных методов повышения масштабируемости во время вывода является обработка входных данных пакетно, а не последовательно. Это позволяет максимально 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.")

Применение в реальном мире

Масштабируемость позволяет технологиям искусственного интеллекта перейти от теоретических исследований к глобальным промышленным инструментам.

  • Интеллектуальное производство: в области искусственного интеллекта в производстве автоматизированные системы контроля должны анализировать тысячи компонентов в час на высокоскоростных сборочных линиях. Масштабируемая система обнаружения объектов гарантирует, что при увеличении скорости производства процесс контроля качества сохраняет высокую точность, не становясь узким местом.
  • Рекомендательные системы для розничной торговли: крупные платформы электронной коммерции используют рекомендательные системы, чтобы мгновенно предоставлять миллионы персонализированных предложений по продуктам. Масштабируемая инфраструктура позволяет этим платформам обрабатывать массовые события, такие как Черная пятница, когда трафик может увеличиваться в 100 раз, путем динамического предоставления дополнительных серверных узлов через Microsoft или аналогичных поставщиков.

Масштабируемость в сравнении со смежными понятиями

Хотя эти термины часто используются как синонимы, масштабируемость отличается от производительности и эффективности.

  • Масштабируемость против производительности: Производительность обычно означает, насколько быстро или точно работает система в определенный момент (например, количество кадров в секунду). Масштабируемость описывает способность системы поддерживать эту производительность при увеличении рабочей нагрузки.
  • Масштабируемость против эффективности: Эффективность измеряет ресурсы, используемые для выполнения конкретной задачи (например, потребление энергии на вывод). Система может быть эффективной, но не масштабируемой (если она не может обрабатывать параллельные задачи), или масштабируемой, но неэффективной (если она использует чрезмерные ресурсы для обработки роста).
  • Масштабируемость против гибкости: гибкость позволяет системе обрабатывать различные типы задач, такие как YOLO11 обработка обнаружения, сегментации и оценки положения. Масштабируемость ориентирована конкретно на обработку большего количества одинаковых задач.

Присоединяйтесь к сообществу Ultralytics

Присоединяйтесь к будущему ИИ. Общайтесь, сотрудничайте и развивайтесь вместе с мировыми новаторами

Присоединиться сейчас