Model Routing
Узнай, как маршрутизация моделей выбирает правильную ИИ-модель для каждого запроса, чтобы сбалансировать точность, стоимость, задержку и использование ресурсов в многомодельных системах.
Маршрутизация моделей — это процесс выбора модели искусственного интеллекта, которая должна обрабатывать каждый входящий запрос. Вместо отправки каждого входного данных одной модели слой маршрутизации оценивает такие сигналы, как запрошенная задача, тип входных данных, сложность, целевая задержка, лимит стоимости, доступность оборудования или требования к уверенности. Затем он перенаправляет запрос наиболее подходящему кандидату. В этом контексте «маршрутизатор» является компонентом принятия решений об инференсе, а не физическим сетевым маршрутизатором. Маршрутизация помогает многомодельным системам машинного обучения сбалансировать качество предсказаний, использование ресурсов и задержку инференса.
Как работает маршрутизация моделей#
Система маршрутизации обычно содержит пул развернутых моделей, логику принятия решений и общий интерфейс приложения. Приложение отправляет один запрос, маршрутизатор выбирает подходящую модель, а слой обслуживания моделей возвращает результат работы этой модели.
Решения о маршрутизации могут быть следующими:
- На основе правил: Выбор модели с использованием явных метаданных, например перенаправление изображений, запрашивающих маски, в модель сегментации.
- На основе оценок: Оценка ожидаемого качества, стоимости или времени отклика каждого кандидата и выбор варианта с наибольшим баллом.
- Обучаемые: Использование легкого классификатора или модели маршрутизации для определения того, какой кандидат лучше всего соответствует входным данным.
- Каскадные: Сначала запуск быстрой модели, а затем передача неопределенных или высокорисковых результатов более способной модели.
Например, интеллектуальная маршрутизация промптов Amazon Bedrock прогнозирует качество ответа перед выбором между языковыми моделями, в то время как руководство по стратегии маршрутизации моделей от Microsoft описывает маршрутизацию на основе стоимости, качества и сбалансированную маршрутизацию. Аналогичные принципы применимы и к компьютерному зрению: запросы могут маршрутизироваться по задаче, расположению камеры, разрешению изображения или требуемой детализации предсказаний.
Связанные понятия и ключевые различия#
Маршрутизация моделей тесно связана с другими многомодельными методами, однако эти термины не являются взаимозаменяемыми.
- Шлюзы ИИ: Шлюз ИИ предоставляет более широкий уровень управления для аутентификации, квот, ведения журналов и управления трафиком. Выбор модели может быть одной из возможностей шлюза. Расширение API шлюза Kubernetes для инференса также различает маршрутизацию с учетом моделей, выбор эндпоинтов и балансировку нагрузки.
- Ансамбли моделей: Ансамбль обычно запускает несколько моделей и объединяет их предсказания. Маршрутизатор же обычно выбирает одну модель, что снижает вычислительные затраты. Ансамблевые модели NVIDIA Triton, напротив, определяют фиксированные потоки данных через несколько моделей.
- Смесь экспертов: Архитектура смеси экспертов маршрутизирует внутренние представления к компонентам внутри одной нейронной сети. Маршрутизация моделей выбирает среди отдельно развертываемых моделей или эндпоинтов.
- Маршрутизация агентов: Маршрутизатор агентов выбирает специализированного агента, рабочий процесс или инструмент. Маршрутизация моделей выбирает базовую модель, выполняющую шаг инференса. В агентской системе могут присутствовать обе формы маршрутизации.
Балансировка нагрузки — это еще одно важное различие. Она распределяет запросы между репликами одного и того же сервиса для повышения доступности или пропускной способности. Маршрутизация моделей выбирает между моделями с различными возможностями, стоимостью или выходными данными.
Практические применения#
Визуальный контроль: Производственная система может использовать обнаружение объектов для стандартного подсчета деталей, но перенаправлять подозрительные дефекты поверхности на сегментацию экземпляров для получения точных границ. Ultralytics YOLO26 поддерживает как обнаружение объектов, так и сегментацию экземпляров, делая возможной маршрутизацию на основе задач в рамках единого API. Это позволяет избежать затрат на сегментацию, когда достаточно ограничивающих прямоугольников.
Ассистенты ИИ: Ассистент поддержки может отправлять простые запросы на классификацию и поиск небольшой быстрой языковой модели, резервируя более мощную модель для сложных рассуждений или использования инструментов. Руководство по агентской архитектуре от Google Cloud описывает этот паттерн как способ сбалансировать качество, задержку и стоимость. В отличие от фиксированного каскада, динамическая маршрутизация может выбрать более мощную модель до генерации первоначального ответа.
Реализация и оценка маршрутизатора#
Этот минимальный пример Ultralytics маршрутизирует изображение для обнаружения или сегментации в соответствии с выводом, запрошенным приложением:
from ultralytics import YOLO
models = {
"detect": YOLO("yolo26n.pt"),
"segment": YOLO("yolo26n-seg.pt"),
}
requested_task = "segment"
source = "https://ultralytics.com/images/bus.jpg"
model = models.get(requested_task)
if model is None:
raise ValueError(f"Unsupported task: {requested_task}")
results = model(source)
result = results[0]
result.save(filename=f"{requested_task}_result.jpg")Правило намеренно сделано простым: запросы, требующие масок объектов, направляются на сегментацию, в то время как запросы, требующие только прямоугольников, могут использовать обнаружение. Производственные маршрутизаторы также могут учитывать измеренную точность, глубину очереди, тип устройства, ограничения конфиденциальности или работоспособность сервиса.
Оценивай маршрутизацию на репрезентативном трафике, а не только по средним показателям моделей. Отслеживай распределение маршрутов, сквозную задержку, стоимость, сбои и качество на уровне задач для каждой выбранной модели. Руководство по наблюдаемости OpenTelemetry объясняет, как трассировки, метрики и логи могут отслеживать отдельные запросы через распределенные сервисы. Мониторинг развертывания на платформе Ultralytics аналогичным образом поддерживает проверку задержки эндпоинтов, ошибок, работоспособности и активности запросов.
Неправильная маршрутизация может увеличить расходы, привести к невыполнению целевых показателей задержки или отправить сложные входные данные неадекватной модели. Поэтому команды должны определять поведение при сбое, ограничивать подходящие модели для конфиденциальных рабочих нагрузок, логировать выбранный маршрут и периодически повторно тестировать политику. Эти элементы управления согласовывают решения о маршрутизации с более широкими практиками в структуре управления рисками ИИ NIST.






