چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.

چندین مدل یادگیری عمیق را روی GPU با نقاط پایانی چند مدل Amazon SageMaker اجرا کنید

از آنجایی که پذیرش هوش مصنوعی در سراسر صنعت در حال افزایش است، مشتریان در حال ساخت مدل های پیچیده ای هستند که از پیشرفت های علمی جدید در یادگیری عمیق بهره می برند. این مدل‌های نسل بعدی به شما امکان می‌دهند در زمینه‌های پردازش زبان طبیعی (NLP)، بینایی رایانه، تشخیص گفتار، تحقیقات پزشکی، امنیت سایبری، پیش‌بینی ساختار پروتئین و بسیاری موارد دیگر، به عملکردی شبیه به انسان دست پیدا کنید. . به عنوان مثال، مدل‌های زبان بزرگ مانند GPT-3، OPT، و BLOOM می‌توانند متن را با تفاوت‌های ظریف انسانی ترجمه، خلاصه و بنویسند. در فضای بینایی کامپیوتر، مدل‌های انتشار متن به تصویر مانند DALL-E و Imagen می‌توانند تصاویر واقعی واقعی را از زبان طبیعی با سطح بالاتری از درک بصری و زبانی از جهان اطراف ایجاد کنند. این مدل‌های چندوجهی ویژگی‌های غنی‌تری را برای کارهای مختلف پایین دستی و توانایی تنظیم دقیق آنها برای دامنه‌های خاص ارائه می‌کنند و فرصت‌های تجاری قدرتمندی را برای مشتریان ما به ارمغان می‌آورند.

این مدل‌های یادگیری عمیق از نظر اندازه در حال رشد هستند و معمولاً حاوی میلیاردها پارامتر مدل هستند تا عملکرد مدل را برای طیف گسترده‌ای از وظایف، مانند تولید تصویر، خلاصه‌سازی متن، ترجمه زبان، و موارد دیگر مقیاس‌بندی کنند. همچنین نیاز به سفارشی سازی این مدل ها برای ارائه یک تجربه بیش از حد شخصی به افراد وجود دارد. در نتیجه، تعداد بیشتری از مدل ها با تنظیم دقیق این مدل ها برای کارهای مختلف پایین دستی در حال توسعه هستند. برای دستیابی به اهداف تاخیر و توان عملیاتی برنامه‌های هوش مصنوعی، نمونه‌های GPU بر نمونه‌های CPU ترجیح داده می‌شوند (با توجه به توان محاسباتی GPU‌های ارائه شده). با این حال، نمونه‌های GPU گران هستند و اگر بیش از 10 مدل را به کار می‌گیرید، هزینه‌ها می‌تواند افزایش یابد. اگرچه این مدل‌ها به طور بالقوه می‌توانند برنامه‌های کاربردی هوش مصنوعی تاثیرگذاری را به همراه داشته باشند، اما به دلیل اندازه و تعداد مدل‌هایشان، ممکن است مقیاس‌سازی این مدل‌های یادگیری عمیق به روش‌های مقرون‌به‌صرفه چالش‌برانگیز باشد.

آمازون SageMaker نقاط پایانی چند مدلی (MMEs) یک راه مقیاس پذیر و مقرون به صرفه برای استقرار تعداد زیادی از مدل های یادگیری عمیق ارائه می دهند. MME ها یک انتخاب میزبانی محبوب برای میزبانی صدها مدل مبتنی بر CPU در بین مشتریانی مانند Zendesk، Veeva و AT&T هستند. پیش از این، شما گزینه های محدودی برای استقرار صدها مدل یادگیری عمیق که به محاسبات سریع با GPU نیاز داشتند، داشتید. امروز، پشتیبانی MME از GPU را اعلام می کنیم. اکنون می توانید هزاران مدل یادگیری عمیق را در پشت یک نقطه پایانی SageMaker مستقر کنید. MME ها اکنون می توانند چندین مدل را بر روی یک هسته GPU اجرا کنند، نمونه های GPU را در پشت یک نقطه پایانی در چندین مدل به اشتراک بگذارند، و مدل ها را بر اساس ترافیک ورودی به صورت پویا بارگیری و بارگیری کنند. با این کار می توانید به میزان قابل توجهی در هزینه صرفه جویی کنید و به بهترین عملکرد قیمت دست یابید.

در این پست، نحوه اجرای چندین مدل یادگیری عمیق بر روی GPU با SageMaker MME را نشان می دهیم.

SageMaker MMEs

SageMaker MME به شما امکان می دهد چندین مدل را در پشت یک نقطه پایان استنتاج که ممکن است شامل یک یا چند نمونه باشد، مستقر کنید. با MME ها، هر نمونه مدیریت می شود تا چندین مدل را بارگیری و ارائه دهد. MME ها شما را قادر می سازند تا هزینه های خطی در حال افزایش میزبانی مدل های متعدد و استفاده مجدد از زیرساخت در همه مدل ها را کاهش دهید.

نمودار زیر معماری SageMaker MME را نشان می دهد.

SageMaker MME به صورت پویا مدل ها را از آن دانلود می کند سرویس ذخیره سازی ساده آمازون (Amazon S3) در هنگام فراخوانی، به جای دانلود همه مدل ها هنگام ایجاد نقطه پایانی برای اولین بار. در نتیجه، فراخوانی اولیه به یک مدل ممکن است تأخیر استنتاج بالاتری نسبت به استنتاج‌های بعدی داشته باشد که با تأخیر کم تکمیل می‌شوند. اگر مدل در هنگام فراخوانی از قبل روی کانتینر بارگذاری شده باشد، مرحله دانلود و بارگذاری حذف می شود و مدل استنتاج ها را با تأخیر کم برمی گرداند. به عنوان مثال، فرض کنید مدلی دارید که فقط چند بار در روز استفاده می شود. این به طور خودکار در صورت تقاضا بارگذاری می شود، در حالی که مدل هایی که اغلب به آنها دسترسی دارند در حافظه نگهداری می شوند و با تأخیر پیوسته کم فراخوانی می شوند.

SageMaker MME با پشتیبانی از GPU

MME های SageMaker با GPU با استفاده از آن کار می کنند سرور استنتاج تریتون NVIDIA. NVIDIA Triton Inference Server یک نرم افزار ارائه استنتاج منبع باز است که فرآیند ارائه استنتاج را ساده می کند و عملکرد استنتاج بالایی را ارائه می دهد. تریتون از تمام چارچوب های آموزشی و استنتاج اصلی مانند TensorFlow، NVIDIA® TensorRT™، PyTorch، MXNet، Python، ONNX، XGBoost، Scikit-learn، RandomForest، OpenVINO، C++ سفارشی و غیره پشتیبانی می کند. دسته بندی پویا، اجراهای همزمان، کوانتیزاسیون پس از آموزش و پیکربندی مدل بهینه را برای دستیابی به استنتاج با کارایی بالا ارائه می دهد. علاوه بر این، NVIDIA Triton Inference Server برای پیاده سازی گسترش یافته است قرارداد MME API، برای ادغام با MME.

نمودار زیر یک گردش کار MME را نشان می دهد.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.

مراحل گردش کار به شرح زیر است:

  1. SageMaker MME یک درخواست فراخوانی HTTP برای یک مدل خاص با استفاده از آن دریافت می کند TargetModel در درخواست همراه با بار.
  2. SageMaker ترافیک را به نمونه سمت راست در پشت نقطه پایانی که مدل هدف بارگذاری شده است هدایت می کند. SageMaker الگوی ترافیک را در تمام مدل‌های پشت MME درک می‌کند و به‌طور هوشمندانه درخواست‌ها را مسیریابی می‌کند.
  3. SageMaker از مدیریت مدل در پشت نقطه پایانی مراقبت می کند، مدل را به صورت پویا در حافظه کانتینر بارگذاری می کند و مدل را از ناوگان مشترک نمونه های GPU تخلیه می کند تا بهترین عملکرد قیمت را ارائه دهد.
  4. SageMaker به صورت پویا مدل ها را از Amazon S3 به حجم ذخیره سازی نمونه دانلود می کند. اگر مدل فراخوانی شده در حجم ذخیره‌سازی نمونه موجود نباشد، مدل در حجم ذخیره‌سازی نمونه دانلود می‌شود. اگر حجم ذخیره سازی نمونه به ظرفیت برسد، SageMaker مدل های استفاده نشده را از حجم ذخیره حذف می کند.
  5. SageMaker مدل را در حافظه کانتینر NVIDIA Triton روی یک نمونه شتاب‌دهنده GPU بارگذاری می‌کند و درخواست استنتاج را ارائه می‌کند. هسته GPU در یک نمونه توسط همه مدل ها مشترک است. اگر مدل قبلاً در حافظه کانتینر بارگذاری شده باشد، درخواست‌های بعدی سریع‌تر ارائه می‌شوند زیرا SageMaker نیازی به دانلود و بارگذاری مجدد آن ندارد.
  6. SageMaker از شکل‌دهی ترافیک به نقطه پایانی MME مراقبت می‌کند و نسخه‌های مدل بهینه را در نمونه‌های GPU برای بهترین عملکرد قیمت حفظ می‌کند. به مسیریابی ترافیک به نمونه ای که مدل بارگیری می شود ادامه می دهد. اگر منابع نمونه به دلیل استفاده زیاد به ظرفیت برسد، SageMaker مدل های کم استفاده را از کانتینر تخلیه می کند تا منابع را برای بارگیری مدل های پرکاربرد آزاد کند.

MMEهای SageMaker می‌توانند با استفاده از یک خط‌مشی مقیاس‌بندی خودکار مقیاس افقی داشته باشند و نمونه‌های محاسبه GPU اضافی را بر اساس معیارهایی مانند فراخوانی در هر نمونه و استفاده از GPU برای ارائه هرگونه افزایش ترافیک به نقاط پایانی MME ارائه دهند.

بررسی اجمالی راه حل

در این پست نحوه استفاده از ویژگی های جدید MME SageMaker با GPU با استفاده از کیس بینایی کامپیوتر را به شما نشان می دهیم. برای اهداف نمایشی، ما از یک مدل شبکه عصبی کانولوشنال ResNet-50 از پیش آموزش‌دیده استفاده می‌کنیم که می‌تواند تصاویر را در 1,000 دسته طبقه‌بندی کند. ما در مورد چگونگی انجام موارد زیر بحث می کنیم:

  • از یک محفظه استنتاج انویدیا تریتون در MMEهای SageMaker، با استفاده از فریمورک‌های مختلف مدل Triton مانند PyTorch و TensorRT استفاده کنید.
  • مدل های ResNet-50 را به فرمت موتور TensorRT بهینه تبدیل کنید و آن را با SageMaker MME اجرا کنید.
  • خط‌مشی‌های مقیاس‌بندی خودکار را برای MME تنظیم کنید
  • با استفاده از معیارهای نمونه و فراخوان اطلاعات بینشی دریافت کنید CloudWatch آمازون

مصنوعات مدل ایجاد کنید

این بخش مراحل آماده سازی یک مدل از پیش آموزش دیده ResNet-50 را برای استقرار در SageMaker MME با استفاده از پیکربندی های مدل سرور استنتاج تریتون طی می کند. می توانید تمام مراحل را با استفاده از نوت بوک گام به گام در بازتولید کنید GitHub.

برای این پست، استقرار را با دو مدل نشان می دهیم. با این حال، شما می توانید صدها مدل را آماده و مستقر کنید. مدل ها ممکن است چارچوب یکسانی داشته باشند یا نداشته باشند.

یک مدل PyTorch آماده کنید

ابتدا یک مدل ResNet50 از پیش آموزش دیده را با استفاده از پکیج مدل های torchvision بارگذاری می کنیم. ما مدل را به عنوان فایل model.pt در قالب TorchScript بهینه سازی شده و سریالی ذخیره می کنیم. TorchScript یک پاس رو به جلو از مدل ResNet50 را در حالت مشتاق با ورودی‌های مثال جمع‌آوری می‌کند، بنابراین یک نمونه از یک تصویر RGB با سه کانال رنگی با ابعاد 224 x 224 ارسال می‌کنیم.

سپس باید مدل ها را برای سرور استنتاج تریتون آماده کنیم. کد زیر مخزن مدل برای باطن فریمورک PyTorch را نشان می دهد. تریتون از فایل model.pt قرار داده شده در مخزن مدل برای ارائه پیش بینی ها استفاده می کند.

resnet
├── 1
│   └── model.pt
└── config.pbtxt

فایل پیکربندی مدل config.pbtxt باید نام مدل را مشخص کنید (resnet)، پلتفرم و ویژگی های باطن (pytorch_libtorch), max_batch_size (128، و تانسورهای ورودی و خروجی به همراه نوع داده (TYPE_FP32) اطلاعات علاوه بر این، می توانید مشخص کنید instance_group و dynamic_batching خواص برای دستیابی به استنتاج عملکرد بالا کد زیر را ببینید:

name: "resnet"
platform: "pytorch_libtorch"
max_batch_size: 128
input {
  name: "INPUT__0"
  data_type: TYPE_FP32
  dims: 3
  dims: 224
  dims: 224
}
output {
  name: "OUTPUT__0"
  data_type: TYPE_FP32
  dims: 1000
}

مدل TensorRT را آماده کنید

NVIDIA TensorRT یک SDK برای استنتاج یادگیری عمیق با کارایی بالا است و شامل یک بهینه ساز استنتاج یادگیری عمیق و زمان اجرا است که تأخیر کم و توان عملیاتی بالا را برای برنامه های استنتاج ارائه می دهد. ما از ابزار خط فرمان استفاده می کنیم trtexec برای تولید یک موتور سریالی TensorRT از یک ONNX قالب مدل مراحل زیر را برای تبدیل یک مدل از پیش آموزش دیده ResNet-50 به NVIDIA TensorRT انجام دهید:

  1. مدل ResNet-50 از پیش آموزش دیده را با استفاده از فرمت ONNX صادر کنید مشعل.onnxاین مرحله یک بار مدل را اجرا می کند تا اجرای آن را با یک ورودی نمونه ردیابی کند و سپس مدل ردیابی شده را به فایل مشخص شده صادر می کند. model.onnx.
  2. برای ایجاد طرح موتور TensorRT از trtexec استفاده کنید model.onnx فایل. شما می توانید به صورت اختیاری دقت محاسبات ممیز شناور را کاهش دهید، یا به سادگی آنها را در ممیز شناور 16 بیتی اجرا کنید، یا با کمی کردن مقادیر ممیز شناور به طوری که محاسبات با استفاده از اعداد صحیح 8 بیتی انجام شوند.

کد زیر ساختار مخزن مدل را برای مدل TensorRT نشان می دهد:

resnet
├── 1
│   └── model.plan
└── config.pbtxt

برای مدل TensorRT مشخص می کنیم tensorrt_plan به عنوان پلتفرم و ورودی مشخصات Tensor تصویر به ابعاد 224*224 که دارای کانال های رنگی می باشد. تانسور خروجی با ابعاد 1,000 از نوع است TYPE_FP32، مربوط به دسته بندی های مختلف شی. کد زیر را ببینید:

name: "resnet"
platform: "tensorrt_plan"
max_batch_size: 128
input {
  name: "input"
  data_type: TYPE_FP32
  dims: 3
  dims: 224
  dims: 224
}
output {
  name: "output"
  data_type: TYPE_FP32
  dims: 1000
}
model_warmup {
    name: "bs128 Warmup"
    batch_size: 128
    inputs: {
        key: "input"
        value: {
            data_type: TYPE_FP32
            dims: 3
            dims: 224
            dims: 224
            zero_data: false
        }
    }
}

مصنوعات مدل را در آمازون S3 ذخیره کنید

SageMaker انتظار دارد که مصنوعات مدل در آن قرار گیرند .tar.gz قالب آنها همچنین باید الزامات کانتینر تریتون مانند نام مدل، نسخه، config.pbtxt فایل ها و موارد دیگر. tar پوشه حاوی فایل مدل به عنوان .tar.gz و آن را در آمازون S3 آپلود کنید:

!mkdir -p triton-serve-pt/resnet/1/
!mv -f workspace/model.pt triton-serve-pt/resnet/1/
!tar -C triton-serve-pt/ -czf resnet_pt_v0.tar.gz resnet
model_uri_pt = sagemaker_session.upload_data(path="resnet_pt_v0.tar.gz", key_prefix="resnet-mme-gpu")
!mkdir -p triton-serve-trt/resnet/1/
!mv -f workspace/model.plan triton-serve-trt/resnet/1/
!tar -C triton-serve-trt/ -czf resnet_trt_v0.tar.gz resnet
model_uri_trt = sagemaker_session.upload_data(path="resnet_trt_v0.tar.gz", key_prefix="resnet-mme-gpu")

اکنون که مصنوعات مدل را در آمازون S3 آپلود کرده‌ایم، می‌توانیم یک SageMaker MME ایجاد کنیم.

استقرار مدل‌ها با MME

ما اکنون یک مدل ResNet-50 را با دو فریمورک پشتیبان مختلف (PyTorch و TensorRT) در SageMaker MME مستقر می کنیم.

توجه داشته باشید که می توانید صدها مدل را مستقر کنید و مدل ها می توانند از همان چارچوب استفاده کنند. آنها همچنین می توانند از فریم ورک های مختلفی استفاده کنند، همانطور که در این پست نشان داده شده است.

ما با استفاده از AWS SDK برای پایتون (Boto3) رابط های برنامه کاربردی create_model, create_endpoint_configو create_endpoint برای ایجاد MME

ظرف سرو را تعریف کنید

در تعریف ظرف، را تعریف کنید model_data_url برای تعیین دایرکتوری S3 که شامل تمام مدل هایی است که SageMaker MME برای بارگیری و ارائه پیش بینی ها استفاده می کند. تنظیم Mode به MultiModel برای نشان دادن اینکه SageMaker نقطه پایانی را با مشخصات ظرف MME ایجاد می کند. ما ظرف را با تصویری تنظیم می کنیم که از استقرار MME با GPU پشتیبانی می کند. کد زیر را ببینید:

container = {
"Image": ,
"ModelDataUrl": ,
"Mode": "MultiModel"
}

یک شی چند مدل ایجاد کنید

برای ایجاد مدل با استفاده از کلاینت SageMaker Boto3 استفاده کنید create_model API. تعریف کانتینر را به همراه API مدل ایجاد می کنیم ModelName و ExecutionRoleArn:

create_model_response = sm_client.create_model(
    ModelName=, ExecutionRoleArn=role, PrimaryContainer=container
)

تنظیمات MME را تعریف کنید

ایجاد تنظیمات MME با استفاده از create_endpoint_config Boto3 API. یک نمونه محاسباتی شتابدار GPU را در آن مشخص کنید InstanceType (ما از نوع نمونه g4dn.4xlarge استفاده می کنیم). توصیه می کنیم نقاط پایانی خود را حداقل با دو نمونه پیکربندی کنید. این به SageMaker اجازه می‌دهد تا مجموعه‌ای از پیش‌بینی‌های بسیار در دسترس را در چندین منطقه در دسترس برای مدل‌ها ارائه دهد.

بر اساس یافته‌های ما، می‌توانید عملکرد قیمتی بهتری در نمونه‌های بهینه‌شده ML با یک هسته واحد پردازشگر گرافیکی داشته باشید. بنابراین، پشتیبانی MME از ویژگی GPU فقط برای نمونه های هسته تک GPU فعال است. برای لیست کامل نمونه های پشتیبانی شده، مراجعه کنید انواع نمونه GPU پشتیبانی شده.

create_endpoint_config_response = sm_client.create_endpoint_config(
    EndpointConfigName=,
    ProductionVariants=[
        {
            "InstanceType": "ml.g4dn.4xlarge",
            "InitialVariantWeight": 1,
            "InitialInstanceCount": 2,
            "ModelName": ,
            "VariantName": "AllTraffic",
        }
    ],
)

یک MME ایجاد کنید

با پیکربندی نقطه پایانی قبلی، یک SageMaker MME با استفاده از create_endpoint API. SageMaker MME را ایجاد می کند، نمونه محاسباتی ML g4dn.4xlarge را راه اندازی می کند و مدل های PyTorch و TensorRT ResNet-50 را بر روی آنها مستقر می کند. کد زیر را ببینید:

create_endpoint_response = sm_client.create_endpoint(
    EndpointName=, EndpointConfigName=
)

مدل هدف را در MME فراخوانی کنید

پس از ایجاد نقطه پایانی، می‌توانیم با استفاده از آن یک درخواست استنتاج به MME ارسال کنیم invoke_enpoint API. را مشخص می کنیم TargetModel در فراخوانی فراخوانی و عبور در محموله برای هر نوع مدل. کد زیر یک فراخوان نمونه برای مدل PyTorch و مدل TensorRT است:

runtime_sm_client.invoke_endpoint(
    EndpointName=,
    ContentType="application/octet-stream",
    Body=json.dumps(pt_payload),
    TargetModel='resnet_pt_v0.tar.gz', #PyTorch Model
)
runtime_sm_client.invoke_endpoint(
    EndpointName=, 
    ContentType="application/octet-stream", 
    Body=json.dumps(trt_payload),
    TargetModel='resnet_trt_v0.tar.gz' #TensorRT Model
)

خط‌مشی‌های مقیاس‌بندی خودکار را برای GPU MME تنظیم کنید

SageMaker MME از مقیاس بندی خودکار برای مدل های میزبانی شده شما پشتیبانی می کند. مقیاس خودکار به صورت پویا تعداد نمونه های ارائه شده برای یک مدل را در پاسخ به تغییرات در حجم کاری شما تنظیم می کند. وقتی حجم کار افزایش می‌یابد، مقیاس خودکار نمونه‌های بیشتری را آنلاین می‌کند. وقتی حجم کار کاهش می‌یابد، مقیاس خودکار موارد غیرضروری را حذف می‌کند تا برای نمونه‌های تدارکاتی که استفاده نمی‌کنید پولی پرداخت نکنید.

در خط مشی مقیاس بندی زیر، از متریک سفارشی استفاده می کنیم GPUUtilization در TargetTrackingScalingPolicyConfiguration پیکربندی و تنظیم a TargetValue of 60.0 برای مقدار هدف آن متریک. این خط‌مشی مقیاس‌پذیری خودکار موارد اضافی را تا سقف ارائه می‌کند MaxCapacity هنگامی که استفاده از GPU بیش از 60٪ است.

auto_scaling_client = boto3.client('application-autoscaling')

resource_id='endpoint/' +  + '/variant/' + 'AllTraffic' 
response = auto_scaling_client.register_scalable_target(
    ServiceNamespace='sagemaker',
    ResourceId=resource_id,
    ScalableDimension='sagemaker:variant:DesiredInstanceCount',
    MinCapacity=1,
    MaxCapacity=5
)

response = auto_scaling_client.put_scaling_policy(
    PolicyName='GPUUtil-ScalingPolicy',
    ServiceNamespace='sagemaker',
    ResourceId=resource_id,
    ScalableDimension='sagemaker:variant:DesiredInstanceCount', 
    PolicyType='TargetTrackingScaling',
    TargetTrackingScalingPolicyConfiguration={
        'TargetValue': 60.0, 
        'CustomizedMetricSpecification':
        {
            'MetricName': 'GPUUtilization',
            'Namespace': '/aws/sagemaker/Endpoints',
            'Dimensions': [
                {'Name': 'EndpointName', 'Value':  },
                {'Name': 'VariantName','Value': 'AllTraffic'}
            ],
            'Statistic': 'Average',
            'Unit': 'Percent'
        },
        'ScaleInCooldown': 600,
        'ScaleOutCooldown': 200 
    }
)

توصیه میکنیم استفاده کنید GPUUtilization or InvocationsPerInstance برای پیکربندی سیاست های مقیاس خودکار برای MME خود. برای جزئیات بیشتر، نگاه کنید سیاست های مقیاس بندی خودکار را برای استقرار نقطه پایانی چند مدلی تنظیم کنید

معیارهای CloudWatch برای MMEهای GPU

SageMaker MME معیارهای سطح نمونه زیر را برای نظارت فراهم می کند:

  • LoadedModelCount – تعداد مدل های بارگیری شده در کانتینرها
  • GPUUtilization – درصد واحدهای GPU که توسط کانتینرها استفاده می شود
  • GPUMemoryUtilization - درصد حافظه GPU استفاده شده توسط کانتینرها
  • DiskUtilization – درصد فضای دیسک مورد استفاده کانتینرها

این معیارها به شما امکان می دهد برای استفاده موثر از منابع نمونه GPU برنامه ریزی کنید. در نمودار زیر می بینیم GPUMemoryUtilization هنگامی که بیش از 38.3 مدل ResNet-16 در کانتینر بارگیری شد، 50٪ بود. مجموع استفاده از هر هسته CPU جداگانه (CPUUtilization) 60.9% بود و درصد حافظه استفاده شده توسط ظروف (MemoryUtilization) 9.36 درصد بود.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.

SageMaker MME همچنین معیارهای بارگیری مدل را برای دریافت بینش در سطح فراخوانی مدل ارائه می دهد:

  • ModelLoadingWaitTime – فاصله زمانی برای دانلود یا بارگذاری مدل
  • ModelUnloadingTime – فاصله زمانی تخلیه مدل از کانتینر
  • ModelDownloadingTime – زمان دانلود مدل از آمازون S3 است
  • ModelCacheHit - تعداد فراخوان هایی که قبلاً روی کانتینر بارگذاری شده اند

در نمودار زیر مشاهده می کنیم که 8.22 ثانیه طول کشید تا یک مدل به درخواست استنتاج پاسخ دهد (ModelLatency، و 24.1 میلی ثانیه به تاخیر سرتاسر به دلیل سربار SageMaker اضافه شد (OverheadLatency). همچنین می‌توانیم معیارهای خطا را از تماس‌ها برای فراخوانی یک تماس API نقطه پایانی، مانند Invocation4XXErrors و Invocation5XXErrors.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.

برای اطلاعات بیشتر در مورد معیارهای MME CloudWatch، مراجعه کنید معیارهای CloudWatch برای استقرار نقطه پایانی چند مدلی.

خلاصه

در این پست، با پشتیبانی چند مدل SageMaker جدید برای GPU آشنا شدید، که به شما امکان می دهد با هزینه مقرون به صرفه صدها مدل یادگیری عمیق را روی سخت افزار محاسباتی شتاب دار میزبانی کنید. شما یاد گرفتید که چگونه از NVIDIA Triton Inference Server استفاده کنید، که یک پیکربندی مخزن مدل برای فریم ورک‌های پشتیبان مختلف ایجاد می‌کند، و چگونه می‌توانید MME را با مقیاس خودکار مستقر کنید. این ویژگی به شما این امکان را می دهد که صدها مدل فوق شخصی سازی شده را که به خوبی تنظیم شده اند تا تجربیات منحصر به فرد کاربر نهایی در برنامه های هوش مصنوعی را ارائه دهند، مقیاس بندی کنید. همچنین می‌توانید از این ویژگی برای دستیابی به عملکرد قیمتی ضروری برای برنامه استنتاج خود با استفاده از پردازنده‌های گرافیکی کسری استفاده کنید.

برای شروع کار با پشتیبانی MME برای GPU، ببینید پشتیبانی چند مدل نقطه پایانی برای GPU.


درباره نویسندگان

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.داوال پاتل یک معمار اصلی یادگیری ماشین در AWS است. او با سازمان‌هایی از شرکت‌های بزرگ گرفته تا استارت‌آپ‌های متوسط ​​در زمینه مشکلات مربوط به محاسبات توزیع‌شده و هوش مصنوعی کار کرده است. او بر یادگیری عمیق، از جمله NLP و حوزه های بینایی کامپیوتر تمرکز می کند. او به مشتریان کمک می کند تا به استنباط مدل با عملکرد بالا در Amazon SageMaker دست یابند.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.ویکرام الانگو یک معمار ارشد راه حل های تخصصی AI/ML در خدمات وب آمازون، مستقر در ویرجینیا، ایالات متحده است. Vikram به مشتریان صنعت مالی و بیمه جهانی با طراحی، پیاده‌سازی و رهبری فکری کمک می‌کند تا اپلیکیشن‌های یادگیری ماشین را در مقیاس بسازند و به کار گیرند. او در حال حاضر روی پردازش زبان طبیعی، هوش مصنوعی مسئول، بهینه‌سازی استنتاج و مقیاس‌بندی ML در سراسر سازمان متمرکز است. او در اوقات فراغت خود از مسافرت، پیاده روی، آشپزی و کمپینگ با خانواده لذت می برد.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.ساوراب تریکاند مدیر محصول ارشد Amazon SageMaker Inference است. او مشتاق کار با مشتریان است و هدفش دموکراتیک کردن یادگیری ماشین است. او روی چالش‌های اصلی مربوط به استقرار برنامه‌های پیچیده ML، مدل‌های ML چند مستاجر، بهینه‌سازی هزینه‌ها و در دسترس‌تر کردن استقرار مدل‌های یادگیری عمیق تمرکز می‌کند. Saurabh در اوقات فراغت خود از پیاده روی، یادگیری در مورد فن آوری های نوآورانه، دنبال کردن TechCrunch و گذراندن وقت با خانواده خود لذت می برد.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.دیپتی راغا یک مهندس توسعه نرم افزار در تیم آمازون SageMaker است. کار فعلی او بر ایجاد ویژگی هایی برای میزبانی کارآمد مدل های یادگیری ماشین تمرکز دارد. او در اوقات فراغت خود از سفر، پیاده روی و پرورش گیاهان لذت می برد.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.نیکیل کولکارنی یک توسعه‌دهنده نرم‌افزار با یادگیری ماشینی AWS است که بر روی کارآمدتر کردن بارهای کاری یادگیری ماشین در فضای ابری تمرکز دارد و یکی از سازنده‌های AWS Deep Learning Containers برای آموزش و استنتاج است. او مشتاق سیستم های یادگیری عمیق توزیع شده است. در خارج از محل کار، او از خواندن کتاب، بازی با گیتار و درست کردن پیتزا لذت می برد.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.جیاهونگ لیو یک معمار راه حل در تیم ارائه دهنده خدمات ابری در NVIDIA است. او به مشتریان در اتخاذ راه‌حل‌های یادگیری ماشین و هوش مصنوعی کمک می‌کند که از محاسبات تسریع‌شده NVIDIA برای رسیدگی به چالش‌های آموزشی و استنتاج آنها استفاده می‌کند. او در اوقات فراغت خود از اوریگامی، پروژه های DIY و بازی بسکتبال لذت می برد.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.الیوت تریانا مدیر روابط توسعه دهنده در تیم NVIDIA-AWS است. او رهبران محصولات آمازون و AWS، توسعه دهندگان و دانشمندان را با تکنولوژیست های NVIDIA و رهبران محصولات مرتبط می کند تا بار کاری آمازون ML/DL، محصولات EC2 و خدمات AWS AI را تسریع بخشد. علاوه بر این، الیوت یک دوچرخه سوار کوهستانی، اسکی باز و بازیکن پوکر پرشور است.

چندین مدل یادگیری عمیق را روی پردازنده گرافیکی با آمازون SageMaker چند مدل انتهایی پلاتوبلاکچین داده هوشمند اجرا کنید. جستجوی عمودی Ai.ماکسیمیلیانو ماکانتی در حال حاضر یک مهندس اصلی در AWS با DynamoDB است، من در تیم راه‌اندازی SageMaker در re:Invent 2017 بودم و 5 سال بعد را در پلتفرم میزبانی گذراندم و انواع مشتریانی را که با ویژگی‌ها مواجه بودند را اضافه کردم. در اوقات فراغتم کنسول‌های بازی ویدیویی قدیمی را جمع‌آوری، تعمیر و بازی می‌کنم.

تمبر زمان:

بیشتر از آموزش ماشین AWS