Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Веб-сервіси Amazon

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Веб-сервіси Amazon

Amazon SageMaker дозволяє легко розгортати моделі машинного навчання (ML) для висновків у реальному часі та пропонує широкий вибір екземплярів ML, що охоплюють процесори та прискорювачі, такі як AWS Inferentia. Як повністю керований сервіс ви можете масштабувати розгортання моделей, мінімізувати витрати на висновки та ефективніше керувати своїми моделями у виробництві зі зменшенням операційного навантаження. Кінцева точка висновку SageMaker у реальному часі складається з кінцевої точки HTTPs та екземплярів ML, які розгортаються в кількох зонах доступності для високої доступності. SageMaker автомасштабування програми може динамічно регулювати кількість екземплярів ML, наданих для моделі, у відповідь на зміни робочого навантаження. Кінцева точка рівномірно розподіляє вхідні запити до екземплярів ML за допомогою циклічного алгоритму.

Коли моделі ML, розгорнуті в екземплярах, отримують виклики API від великої кількості клієнтів, випадковий розподіл запитів може працювати дуже добре, коли ваші запити та відповіді не відрізняються. Але в системах із генеративним робочим навантаженням ШІ запити та відповіді можуть бути дуже різними. У цих випадках часто бажано балансувати навантаження, враховуючи потужність і використання екземпляра, а не випадкове балансування навантаження.

У цьому дописі ми обговорюємо стратегію маршрутизації найменших запитів (LOR) SageMaker і те, як вона може мінімізувати затримку для певних типів робочих навантажень із висновками в реальному часі, беручи до уваги ємність і використання екземплярів ML. Ми говоримо про його переваги перед механізмом маршрутизації за замовчуванням і про те, як можна ввімкнути LOR для розгортання моделі. Нарешті, ми представляємо порівняльний аналіз покращень затримки за допомогою LOR порівняно зі стратегією маршрутизації за замовчуванням випадкової маршрутизації.

Стратегія LOR SageMaker

За замовчуванням кінцеві точки SageMaker мають стратегію випадкової маршрутизації. Тепер SageMaker підтримує стратегію LOR, яка дозволяє SageMaker оптимально направляти запити до примірника, який найкраще підходить для обслуговування цього запиту. SageMaker робить це можливим, відстежуючи навантаження екземплярів за вашою кінцевою точкою та моделі або компоненти висновків, які розгортаються на кожному екземплярі.

На наступній інтерактивній діаграмі показано політику маршрутизації за замовчуванням, коли запити, що надходять до кінцевих точок моделі, у випадковому порядку пересилаються до екземплярів ML.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Наступна інтерактивна діаграма показує стратегію маршрутизації, де SageMaker направлятиме запит до екземпляра, який має найменшу кількість невиконаних запитів.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Загалом маршрутизація LOR добре працює для базових моделей або генеративних моделей ШІ, коли ваша модель відповідає від сотень мілісекунд до хвилин. Якщо відповідь вашої моделі має меншу затримку (до сотень мілісекунд), ви можете отримати більше переваг від випадкової маршрутизації. Незважаючи на це, ми рекомендуємо вам протестувати та визначити найкращий алгоритм маршрутизації для ваших робочих навантажень.

Як налаштувати стратегії маршрутизації SageMaker

Тепер SageMaker дозволяє встановити RoutingStrategy під час створення EndpointConfiguration для кінцевих точок. Різні RoutingStrategy SageMaker підтримує такі значення:

  • LEAST_OUTSTANDING_REQUESTS
  • RANDOM

Нижче наведено приклад розгортання моделі на кінцевій точці висновку, у якій увімкнено LOR:

  1. Створіть конфігурацію кінцевої точки за допомогою налаштування RoutingStrategy as LEAST_OUTSTANDING_REQUESTS:
    endpoint_config_response = sm_client.create_endpoint_config( EndpointConfigName=endpoint_config_name, ProductionVariants=[ { "VariantName": "variant1", "ModelName": model_name, "InstanceType": "instance_type", "InitialInstanceCount": initial_instance_count, ….. "RoutingConfig": { 'RoutingStrategy': 'LEAST_OUTSTANDING_REQUESTS'} }, ],
    )

  2. Створіть кінцеву точку за допомогою конфігурації кінцевої точки (без змін):
    create_endpoint_response = sm_client.create_endpoint( EndpointName="endpoint_name", EndpointConfigName="endpoint_config_name"
    )

Результати роботи

Ми провели порівняльний аналіз продуктивності, щоб виміряти затримку наскрізного висновку та пропускну здатність codegen2-7B модель, розміщена на екземплярах ml.g5.24xl із маршрутизацією за замовчуванням і кінцевими точками розумної маршрутизації. Модель CodeGen2 належить до сімейства авторегресійних мовних моделей і генерує виконуваний код, коли отримує підказки англійською мовою.

У нашому аналізі ми збільшили кількість екземплярів ml.g5.24xl за кожною кінцевою точкою для кожного тестового запуску, оскільки кількість одночасних користувачів збільшувалася, як показано в наведеній нижче таблиці.

Тест Кількість одночасних користувачів Кількість екземплярів
1 4 1
2 20 5
3 40 10
4 60 15
5 80 20

Ми виміряли наскрізну затримку P99 для обох кінцевих точок і спостерігали покращення затримки на 4–33%, коли кількість екземплярів було збільшено з 5 до 20, як показано на наступному графіку.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Подібним чином ми спостерігали підвищення пропускної здатності на хвилину на екземпляр на 15–16%, коли кількість екземплярів було збільшено з 5 до 20.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Це свідчить про те, що інтелектуальна маршрутизація може покращити розподіл трафіку між кінцевими точками, що призводить до покращення наскрізної затримки та загальної пропускної здатності.

Висновок

У цій публікації ми пояснили стратегії маршрутизації SageMaker і нову опцію для ввімкнення маршрутизації LOR. Ми пояснили, як увімкнути LOR і яку користь це може принести розгортанню ваших моделей. Наші тести продуктивності показали покращення затримки та пропускної здатності під час висновків у реальному часі. Щоб дізнатися більше про функції маршрутизації SageMaker, див документація. Ми заохочуємо вас оцінити ваші робочі навантаження на висновки та визначити, чи оптимально ви налаштовані зі стратегією маршрутизації.


Про авторів

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Джеймс Парк є архітектором рішень в Amazon Web Services. Він працює з Amazon.com над проектуванням, створенням і розгортанням технологічних рішень на AWS, і особливо цікавиться ШІ та машинним навчанням. У вільний час він любить шукати нові культури, нові враження та бути в курсі останніх технологічних тенденцій. Ви можете знайти його на LinkedIn.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Венугопал Пай є архітектором рішень в AWS. Він живе в Бенгалуру, Індія, і допомагає цифровим клієнтам масштабувати й оптимізувати свої програми на AWS.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Девід Нігенда є старшим інженером з розробки програмного забезпечення в команді Amazon SageMaker, зараз працює над удосконаленням робочих процесів машинного навчання виробництва, а також над запуском нових функцій висновків. У вільний час він намагається не відставати від своїх дітей.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Діпті Рага є інженером з розробки програмного забезпечення в команді Amazon SageMaker. Її поточна робота зосереджена на створенні функцій для ефективного розміщення моделей машинного навчання. У вільний час вона любить подорожувати, ходити в походи та вирощує рослини.

Алан ТанАлан Тан є старшим менеджером із продуктів у SageMaker, керуючи зусиллями з виведення великих моделей. Він захоплений застосуванням машинного навчання в галузі аналітики. Поза роботою він любить прогулянки на природі.

Мінімізуйте затримку висновку в реальному часі за допомогою стратегій маршрутизації Amazon SageMaker | Amazon Web Services PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.Дхавал Патель є головним архітектором машинного навчання в AWS. Він працював з організаціями, починаючи від великих підприємств і закінчуючи стартапами середнього розміру, над проблемами, пов’язаними з розподіленими обчисленнями та штучним інтелектом. Він зосереджується на глибокому навчанні, включаючи домени НЛП та комп’ютерного зору. Він допомагає клієнтам досягти високопродуктивної моделі висновку на SageMaker.

Часова мітка:

Більше від AWS Машинне навчання