چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در AWS می‌رسد

چشم انداز جستجوی آمازون این است که مشتریان را قادر به جستجوی بی دردسر کند. تصحیح املای ما به شما کمک می کند تا آنچه را که می خواهید پیدا کنید، حتی اگر املای دقیق کلمات مورد نظر را نمی دانید. در گذشته، ما از الگوریتم‌های یادگیری ماشین کلاسیک (ML) با مهندسی ویژگی‌های دستی برای تصحیح املا استفاده می‌کردیم. برای ایجاد جهش نسل بعدی در عملکرد تصحیح املا، ما تعدادی از رویکردهای یادگیری عمیق، از جمله مدل‌های دنباله به دنباله را در بر می‌گیریم. مدل‌های یادگیری عمیق (DL) هم در آموزش و هم در استنتاج محاسباتی فشرده هستند، و این هزینه‌ها از لحاظ تاریخی باعث شده است که مدل‌های DL در یک محیط تولید در مقیاس آمازون غیرعملی باشد. در این پست، نتایج یک آزمایش بهینه‌سازی استنتاج را ارائه می‌کنیم که در آن بر موانع غلبه کرده و به 534٪ سرعت استنتاج برای ترانسفورماتور محبوب Hugging Face T5 دست می‌یابیم.

چالش

ترانسفورماتور انتقال متن به متن (T5, کاوش در محدودیت های یادگیری انتقال با یک تبدیل متن به متن یکپارچه، رفل و همکاران) معماری مدل پردازش زبان طبیعی (NLP) پیشرفته است. T5 یک معماری امیدوارکننده برای تصحیح املا است، که ما متوجه شدیم که در آزمایشات خود عملکرد خوبی دارد. مدل‌های T5 به لطف چارچوب‌های یادگیری عمیق منبع باز و تحقیقات آکادمیک و سازمانی مداوم، قابل تحقیق، توسعه و آموزش هستند.

با این حال، دستیابی به استنتاج درجه تولید و تأخیر کم با T5 دشوار است. به عنوان مثال، یک استنتاج منفرد با PyTorch T5 در یکی از چهار پردازنده گرافیکی NVIDIA V45 Tensor Core که یک نمونه ابر محاسباتی الاستیک آمازون (EC100) p2xlarge را مجهز می کنند، 3.8 میلی ثانیه طول می کشد. (همه اعداد استنتاج گزارش شده برای ورودی 9 توکن و خروجی 11 توکن هستند. تأخیر معماری T5 به هر دو طول ورودی و خروجی حساس است.)

استنتاج T5 با تأخیر کم و مقرون به صرفه در مقیاس یک مشکل شناخته شده است که توسط چندین مشتری AWS فراتر از جستجوی آمازون گزارش شده است، که انگیزه ما را برای مشارکت در این پست افزایش می دهد. جستجوی آمازون برای تبدیل از یک دستاورد علمی آفلاین به یک سرویس تولیدی با مشتری، با چالش‌های زیر مواجه است:

  • تاخیر - چگونه می توان استنتاج T5 را در تأخیر P50 کمتر از 99 میلی ثانیه انجام داد
  • ظرفیت تولید - نحوه رسیدگی به درخواست‌های استنتاج همزمان در مقیاس بزرگ
  • راندمان هزینه - نحوه کنترل هزینه ها

در ادامه این پست، نحوه پشته بهینه‌سازی استنتاج NVIDIA را توضیح می‌دهیم NVIDIA TensorRT کامپایلر و منبع باز سرور استنتاج تریتون NVIDIA- آن چالش ها را حل می کند. خواندن بیانیه مطبوعاتی NVIDIA برای اطلاع از به روز رسانی ها

NVIDIA TensorRT: کاهش هزینه ها و تاخیر با بهینه سازی استنتاج

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

NVIDIA TensorRT یک SDK برای استنتاج یادگیری عمیق با کارایی بالا است. TensorRT هم یک زمان اجرا بهینه را با استفاده از هسته‌های بهینه‌سازی شده سطح پایین موجود در پردازنده‌های گرافیکی NVIDIA ارائه می‌کند و هم یک نمودار مدل فقط استنتاجی، که محاسبات استنتاج را به ترتیب بهینه‌شده‌ای مرتب می‌کند.

در بخش بعدی، در مورد جزئیاتی که در پشت TensorRT رخ می دهد و چگونگی سرعت بخشیدن به عملکرد صحبت خواهیم کرد.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.

  1. دقت کاهش یافته توان عملیاتی را با FP16 یا INT8 با کوانتیزه کردن مدل‌ها در عین حفظ صحت، به حداکثر می‌رساند.
  2. همجوشی لایه و تانسور استفاده از حافظه و پهنای باند GPU را با ترکیب گره‌ها در یک هسته برای جلوگیری از تأخیر راه‌اندازی هسته بهینه می‌کند.
  3. تنظیم خودکار هسته بهترین لایه ها و الگوریتم های داده را بر اساس پلت فرم GPU هدف و اشکال هسته داده انتخاب می کند.
  4. حافظه تانسور دینامیک با آزاد کردن مصرف غیر ضروری حافظه از نتایج میانی، ردپای حافظه را به حداقل می‌رساند و به طور موثر از حافظه برای تانسورها استفاده می‌کند.
  5. اجرای چند جریانی از یک طراحی مقیاس پذیر برای پردازش جریان های ورودی متعدد به موازات جریان های اختصاصی CUDA استفاده می کند.
  6. زمان فیوژن شبکه های عصبی مکرر را در طی مراحل زمانی با هسته های تولید شده به صورت پویا بهینه می کند.

T5 از لایه های ترانسفورماتور به عنوان بلوک های ساختمانی برای معماری های خود استفاده می کند. آخرین نسخه NVIDIA TensorRT 8.2 بهینه سازی های جدیدی را برای مدل های T5 و GPT-2 برای استنتاج بلادرنگ معرفی می کند. در جدول زیر، می‌توانیم افزایش سرعت با TensorRT را در برخی از مدل‌های عمومی T5 که روی نمونه‌های آمازون EC2G4dn اجرا می‌شوند، با پردازنده‌های گرافیکی NVIDIA T4 و نمونه‌های EC2 G5، با پردازنده‌های گرافیکی NVIDIA A10G، مشاهده کنیم.

 

مدل نمونه، مثال تأخیر پایتورچ پایه (میلی‌ثانیه) تأخیر TensorRT 8.2 (ms) افزایش سرعت در مقابل خط پایه HF
FP32 FP32 FP16 FP32 FP16
رمز گذار رمز گشا پایان دادن به پایان رمز گذار رمز گشا پایان دادن به پایان رمز گذار رمز گشا پایان دادن به پایان پایان دادن به پایان پایان دادن به پایان
t5-کوچک g4dn.xlarge 5.98 9.74 30.71 1.28 2.25 7.54 0.93 1.59 5.91 ٪۱۰۰ ٪۱۰۰
g5.xlarge 4.63 7.56 24.22 0.61 1.05 3.99 0.47 0.80 3.19 ٪۱۰۰ ٪۱۰۰
پایه t5 g4dn.xlarge 11.61 19.05 78.44 3.18 5.45 19.59 3.15 2.96 13.76 ٪۱۰۰ ٪۱۰۰
g5.xlarge 8.59 14.23 59.98 1.55 2.47 11.32 1.54 1.65 8.46 ٪۱۰۰ ٪۱۰۰

برای کسب اطلاعات بیشتر در مورد بهینه سازی و تکرار عملکرد پیوست شده، مراجعه کنید بهینه سازی T5 و GPT-2 برای استنتاج بلادرنگ با NVIDIA TensorRT.

توجه به این نکته مهم است که کامپایل دقت مدل را حفظ می‌کند، زیرا بر روی محیط استنتاج و زمان‌بندی محاسبات عمل می‌کند و علم مدل را بدون تغییر می‌گذارد - برخلاف فشرده‌سازی حذف وزن مانند تقطیر یا هرس. NVIDIA TensorRT اجازه می دهد تا برای دستاوردهای بیشتر، کامپایل را با کوانتیزاسیون ترکیب کند. Quantization مزایای دوگانه ای در سخت افزار اخیر NVIDIA دارد: استفاده از حافظه را کاهش می دهد و استفاده از هسته های تانسور NVIDIA، سلول های خاص DL را که یک ماتریس ذوب شده-ضداف-افزودن را با دقت ترکیبی اجرا می کنند، امکان پذیر می کند.

در مورد آزمایش جستجوی آمازون با مدل Hugging Face T5، جایگزینی PyTorch با TensorRT برای استنتاج مدل، سرعت را تا 534 درصد افزایش می‌دهد.

NVIDIA Triton: سرویس استنتاج با تأخیر کم و توان عملیاتی بالا

راه حل های ارائه مدل های مدرن می توانند مدل های آموزش دیده آفلاین را به محصولات مبتنی بر ML تبدیل کنند. برای حفظ هزینه‌های معقول در چنین مقیاسی، مهم است که سربار سرویس را پایین نگه دارید (هدینگ HTTP، پیش پردازش و پس پردازش، ارتباطات CPU-GPU)، و به طور کامل از توانایی پردازش موازی GPUها استفاده کنید.

انویدیا تریتون یک نرم افزار ارائه استنتاج است که پشتیبانی گسترده ای از زمان های اجرا مدل (NVIDIA TensorRT، ONNX، PyTorch، XGBoost و غیره) و پشتیبانی زیرساخت، از جمله GPU، CPU و AWS Inferentia.

پزشکان ML به دلایل متعدد تریتون را دوست دارند. توانایی دسته‌بندی پویا آن اجازه می‌دهد تا درخواست‌های استنتاج را در طول یک تاخیر تعریف‌شده توسط کاربر و در حداکثر اندازه دسته‌ای تعریف‌شده توسط کاربر جمع‌آوری کند، به طوری که استنتاج GPU دسته‌بندی شود، و سربار ارتباط CPU-GPU مستهلک شود. توجه داشته باشید که دسته‌بندی پویا در سمت سرور و در بازه‌های زمانی بسیار کوتاه اتفاق می‌افتد، به طوری که مشتری درخواست‌کننده همچنان یک تجربه فراخوانی همزمان و تقریباً واقعی دارد. کاربران تریتون نیز از ظرفیت اجرای مدل همزمان آن لذت می برند. پردازنده‌های گرافیکی چند وظیفه‌ای قدرتمند هستند که در اجرای موازی حجم‌های کاری فشرده محاسباتی عالی هستند. تریتون با استفاده از جریان های CUDA برای اجرای چندین نمونه مدل به طور همزمان، استفاده و توان پردازش گرافیکی را به حداکثر می رساند. این نمونه‌های مدل می‌توانند مدل‌های متفاوتی از فریم‌ورک‌های مختلف برای موارد استفاده متفاوت یا کپی مستقیم از همان مدل باشند. این به معنای بهبود مستقیم توان عملیاتی زمانی است که حافظه GPU بیکار کافی دارید. همچنین، از آنجایی که تریتون به یک چارچوب توسعه DL خاص گره خورده نیست، به دانشمندان اجازه می دهد تا به طور کامل خود را در ابزار انتخابی خود بیان کنند.

با Triton در AWS، جستجوی آمازون انتظار دارد خدمات بهتری ارائه دهد Amazon.com مشتریان و برآورده کردن الزامات تاخیر با هزینه کم. ادغام فشرده بین زمان اجرا TensorRT و سرور Triton تجربه توسعه را تسهیل می کند. استفاده از زیرساخت ابری AWS امکان افزایش یا کاهش را در عرض چند دقیقه بر اساس نیازهای توان عملیاتی فراهم می کند، در حالی که نوار بالا یا قابلیت اطمینان و امنیت را حفظ می کند.

چگونه AWS مانع ورود را کاهش می دهد

در حالی که جستجوی آمازون این آزمایش را بر روی زیرساخت آمازون EC2 انجام داد، سایر خدمات AWS برای تسهیل توسعه، آموزش و میزبانی راه‌حل‌های پیشرفته یادگیری عمیق وجود دارد.

به عنوان مثال، AWS و NVIDIA برای انتشار یک پیاده سازی مدیریت شده از Triton Inference Server در آمازون SageMaker ; برای اطلاعات بیشتر ببین هوش مصنوعی سریع و مقیاس‌پذیر را با NVIDIA Triton Inference Server در Amazon SageMaker مستقر کنید. AWS همچنین با Hugging Face برای ایجاد یک ادغام مدیریت شده و بهینه بین Amazon SageMaker و Hugging Face Transformers، چارچوب منبع باز که مدل جستجوی Amazon T5 از آن مشتق شده است، همکاری کرد. بیشتر بخوانید در https://aws.amazon.com/machine-learning/hugging-face/.

ما مشتریانی را که برنامه‌های کاربردی یادگیری عمیق CPU و GPU حساس به تأخیر دارند تشویق می‌کنیم تا NVIDIA TensorRT و Triton را در AWS در نظر بگیرند. به ما اطلاع دهید که چه چیزی می سازید!

علاقه مند به یادگیری عمیق و ایجاد راه حل های مبتنی بر یادگیری عمیق برای جستجوی آمازون هستید؟ ما را بررسی کنید صفحه مشاغل.


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

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.RJ یک مهندس در تیم Search M5 است که تلاش‌ها را برای ساختن سیستم‌های یادگیری عمیق در مقیاس بزرگ برای آموزش و استنتاج رهبری می‌کند. در خارج از محل کار، او غذاهای مختلف غذا را بررسی می کند و ورزش های راکتی انجام می دهد.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.هیمانت پوگالیا یک دانشمند کاربردی در Search M5 است. او بر روی استفاده از آخرین پردازش زبان طبیعی و تحقیقات یادگیری عمیق برای بهبود تجربه مشتری در خرید آمازون در سراسر جهان کار می کند. علایق تحقیقاتی او شامل پردازش زبان طبیعی و سیستم های یادگیری ماشینی در مقیاس بزرگ است. او در خارج از محل کار از پیاده روی، آشپزی و مطالعه لذت می برد.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.اندی سان یک مهندس نرم افزار و مدیر فنی برای تصحیح املای جستجو است. علایق تحقیقاتی او شامل بهینه سازی تأخیر استنتاج یادگیری عمیق و ساختن پلتفرم های آزمایش سریع است. خارج از کار، او از فیلمسازی و آکروباتیک لذت می برد.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.لو کای یک مهندس نرم افزار در جستجوی آمازون است. او روی بهبود عملکرد تصحیح املای جستجو کار می کند تا به مشتریان در تجربه خریدشان کمک کند. او بر استنتاج آنلاین با کارایی بالا و بهینه سازی آموزشی توزیع شده برای مدل یادگیری عمیق تمرکز دارد. در خارج از محل کار، او از اسکی، پیاده روی و دوچرخه سواری لذت می برد.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.آنتونی کو در حال حاضر به عنوان مهندس نرم افزار در Search M5 Palo Alto، CA کار می کند. او بر روی ساخت ابزارها و محصولات برای استقرار مدل و بهینه سازی استنتاج کار می کند. در خارج از محل کار، او از آشپزی و انجام ورزش های راکتی لذت می برد.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.اولیویه کروشانت یک معمار راه حل های متخصص یادگیری ماشین در AWS، مستقر در فرانسه است. اولیویه به مشتریان AWS - از استارت‌آپ‌های کوچک گرفته تا شرکت‌های بزرگ - کمک می‌کند تا برنامه‌های یادگیری ماشینی درجه تولید را توسعه داده و به کار گیرند. در اوقات فراغت خود از خواندن مقالات تحقیقاتی و کاوش در بیابان با دوستان و خانواده لذت می برد.

چگونه جستجوی آمازون به استنتاج T5 با تأخیر کم و توان عملیاتی بالا با NVIDIA Triton در هوش داده پلاتوبلاک چین AWS دست می یابد. جستجوی عمودی Ai.آنیش موهان یک معمار یادگیری ماشین در NVIDIA و رهبری فنی برای تعاملات ML و DL با مشتریان خود در منطقه سیاتل بزرگ است.

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

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

تمبر زمان:

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