هنگام استقرار یک مدل زبان بزرگ (LLM)، تمرینکنندگان یادگیری ماشین (ML) معمولاً به دو اندازهگیری برای عملکرد ارائه مدل اهمیت میدهند: تأخیر، که با زمان لازم برای تولید یک توکن مشخص میشود، و توان عملیاتی، که با تعداد توکنهای تولید شده تعریف میشود. در هر ثانیه اگرچه یک درخواست واحد به نقطه پایانی مستقر شده، توان عملیاتی تقریباً برابر با معکوس تأخیر مدل را نشان میدهد، اما وقتی چندین درخواست همزمان به طور همزمان به نقطه پایانی ارسال میشوند، لزوماً اینطور نیست. با توجه به تکنیکهای سرویسدهی مدل، مانند دستهبندی پیوسته درخواستهای همزمان سمت مشتری، تأخیر و توان عملیاتی ارتباط پیچیدهای دارند که به طور قابلتوجهی بر اساس معماری مدل، پیکربندیهای سرویس، سختافزار نوع نمونه، تعداد درخواستهای همزمان و تغییرات در بارهای ورودی متفاوت است. به عنوان تعداد نشانه های ورودی و نشانه های خروجی.
این پست این روابط را از طریق یک معیار جامع از LLM های موجود در Amazon SageMaker JumpStart، از جمله انواع Llama 2، Falcon و Mistral بررسی می کند. با SageMaker JumpStart، پزشکان ML میتوانند از میان مجموعه گستردهای از مدلهای پایه عمومی در دسترس را برای استقرار در موارد اختصاصی انتخاب کنند. آمازون SageMaker نمونه هایی در محیط ایزوله از شبکه ما اصول نظری در مورد اینکه چگونه مشخصات شتاب دهنده بر معیار LLM تأثیر می گذارد ارائه می دهیم. ما همچنین تأثیر استقرار چندین نمونه در پشت یک نقطه پایانی واحد را نشان میدهیم. در نهایت، ما توصیههای عملی را برای تنظیم فرآیند استقرار SageMaker JumpStart به منظور هماهنگی با الزامات شما در مورد تأخیر، توان عملیاتی، هزینه و محدودیتهای موجود در انواع نمونه ارائه میکنیم. همه نتایج محک زدن و همچنین توصیه ها بر اساس یک روش همه کاره است دفتر یادداشت که بتوانید با مورد استفاده خود سازگار شوید.
بنچمارک نقطه پایانی مستقر شده است
شکل زیر کمترین مقدار تاخیر (سمت چپ) و بالاترین توان عملیاتی (راست) را برای پیکربندیهای استقرار در انواع مدلها و انواع نمونه نشان میدهد. نکته مهم این است که هر یک از این استقرارهای مدل از تنظیمات پیشفرض استفاده میکنند که توسط SageMaker JumpStart با توجه به شناسه مدل و نوع نمونه مورد نظر برای استقرار ارائه شده است.
این مقادیر تأخیر و خروجی مربوط به بارهای با 256 توکن ورودی و 256 توکن خروجی است. پیکربندی کمترین تأخیر، ارائه مدل به یک درخواست همزمان را محدود میکند و بالاترین پیکربندی توان عملیاتی، تعداد ممکن درخواستهای همزمان را به حداکثر میرساند. همانطور که در بنچمارک خود می بینیم، افزایش درخواست های همزمان به طور یکنواخت باعث افزایش توان عملیاتی با کاهش بهبود برای درخواست های همزمان بزرگ می شود. علاوه بر این، مدل ها به طور کامل در نمونه پشتیبانی شده خرد می شوند. برای مثال، از آنجایی که نمونه ml.g5.48xlarge دارای 8 پردازنده گرافیکی است، تمام مدلهای SageMaker JumpStart که از این نمونه استفاده میکنند، با استفاده از موازیسازی تانسور در هر هشت شتابدهنده موجود، خرد میشوند.
میتوانیم به چند نکته از این رقم اشاره کنیم. اول، همه مدل ها در همه نمونه ها پشتیبانی نمی شوند. برخی از مدلهای کوچکتر، مانند Falcon 7B، از Sharding مدل پشتیبانی نمیکنند، در حالی که مدلهای بزرگتر نیاز به منابع محاسباتی بالاتری دارند. دوم، با افزایش شاردینگ، عملکرد معمولاً بهبود مییابد، اما ممکن است لزوماً برای مدلهای کوچک بهبود نیابد. این به این دلیل است که مدلهای کوچکی مانند 7B و 13B وقتی در شتابدهندههای بیش از حد خرد میشوند، هزینههای ارتباطی قابل توجهی را متحمل میشوند. بعداً در این مورد عمیق تر بحث می کنیم. در نهایت، نمونههای ml.p4d.24xlarge به دلیل بهبود پهنای باند حافظه A100 نسبت به پردازندههای گرافیکی A10G، توان عملیاتی قابلتوجهی بهتری دارند. همانطور که بعداً بحث خواهیم کرد، تصمیم برای استفاده از یک نوع نمونه خاص به نیازهای استقرار شما، از جمله تأخیر، توان عملیاتی و محدودیتهای هزینه بستگی دارد.
چگونه می توانید این مقادیر پیکربندی کمترین تأخیر و بالاترین توان عملیاتی را بدست آورید؟ بیایید با ترسیم تاخیر در مقابل توان برای نقطه پایانی Llama 2 7B در یک نمونه ml.g5.12xlarge برای محموله ای با ۲۵۶ نشانه ورودی و ۲۵۶ نشانه خروجی، همانطور که در منحنی زیر مشاهده می شود، شروع کنیم. یک منحنی مشابه برای هر نقطه پایانی LLM مستقر شده وجود دارد.
با افزایش همزمانی، توان عملیاتی و تأخیر نیز به طور یکنواخت افزایش می یابد. بنابراین، کمترین نقطه تأخیر در مقدار درخواست همزمان 1 رخ می دهد و شما می توانید با افزایش درخواست های همزمان، توان عملیاتی سیستم را به طور مقرون به صرفه افزایش دهید. یک "زانو" متمایز در این منحنی وجود دارد، جایی که بدیهی است که افزایش توان عملیاتی مرتبط با همزمانی اضافی بر افزایش تاخیر مرتبط بیشتر نیست. محل دقیق این زانو به موارد خاص بستگی دارد. برخی از پزشکان ممکن است زانو را در نقطه ای تعریف کنند که از نیاز تاخیری از پیش تعیین شده فراتر رفته است (مثلاً 100 ms/token)، در حالی که برخی دیگر ممکن است از معیارهای تست بار و روش های تئوری صف مانند قانون نیمه تأخیر استفاده کنند، و دیگران ممکن است از آن استفاده کنند. مشخصات شتاب دهنده نظری
همچنین توجه داشته باشیم که حداکثر تعداد درخواستهای همزمان محدود است. در شکل قبل، ردیابی خط با 192 درخواست همزمان به پایان می رسد. منبع این محدودیت محدودیت زمانی فراخوانی SageMaker است که در آن SageMaker یک پاسخ فراخوانی را پس از 60 ثانیه به پایان می رساند. این تنظیم مختص حساب است و برای یک نقطه پایانی فردی قابل تنظیم نیست. برای LLM ها، تولید تعداد زیادی توکن خروجی می تواند چند ثانیه یا حتی چند دقیقه طول بکشد. بنابراین، بارهای ورودی یا خروجی بزرگ می تواند باعث شکست درخواست های فراخوانی شود. علاوه بر این، اگر تعداد درخواستهای همزمان بسیار زیاد باشد، بسیاری از درخواستها زمانهای صف زیادی را تجربه میکنند که باعث ایجاد محدودیت ۶۰ ثانیهای میشود. برای هدف این مطالعه، ما از محدودیت زمانی برای تعریف حداکثر توان عملیاتی ممکن برای استقرار مدل استفاده میکنیم. نکته مهم، اگرچه یک نقطه پایانی SageMaker ممکن است تعداد زیادی درخواست همزمان را بدون مشاهده مهلت زمانی پاسخ فراخوانی انجام دهد، ممکن است بخواهید حداکثر درخواستهای همزمان را با توجه به زانو در منحنی تأخیر-درآمد تعریف کنید. این احتمالاً نقطهای است که در آن شروع به بررسی مقیاسبندی افقی میکنید، که در آن یک نقطه پایانی نمونههای متعددی را با کپیهای مدل ارائه میکند و درخواستهای ورودی را بین کپیها توازن میکند تا از درخواستهای همزمان بیشتر پشتیبانی کند.
با برداشتن این یک قدم جلوتر، جدول زیر حاوی نتایج محک زدن برای پیکربندیهای مختلف برای مدل Llama 2 7B، از جمله تعداد مختلف نشانههای ورودی و خروجی، انواع نمونهها و تعداد درخواستهای همزمان است. توجه داشته باشید که شکل قبل فقط یک سطر از این جدول را ترسیم می کند.
. | توان عملیاتی (توکن ها/ثانیه) | تأخیر (ms/token) | ||||||||||||||||||
درخواست های همزمان | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 |
تعداد کل توکن ها: 512، تعداد توکن های خروجی: 256 | ||||||||||||||||||||
ml.g5.2xlarge | 30 | 54 | 115 | 208 | 343 | 475 | 486 | - | - | - | 33 | 33 | 35 | 39 | 48 | 97 | 159 | - | - | - |
ml.g5.12xlarge | 59 | 117 | 223 | 406 | 616 | 866 | 1098 | 1214 | - | - | 17 | 17 | 18 | 20 | 27 | 38 | 60 | 112 | - | - |
ml.g5.48xlarge | 56 | 108 | 202 | 366 | 522 | 660 | 707 | 804 | - | - | 18 | 18 | 19 | 22 | 32 | 50 | 101 | 171 | - | - |
ml.p4d.24xlarge | 49 | 85 | 178 | 353 | 654 | 1079 | 1544 | 2312 | 2905 | 2944 | 21 | 23 | 22 | 23 | 26 | 31 | 44 | 58 | 92 | 165 |
تعداد کل توکن ها: 4096، تعداد توکن های خروجی: 256 | ||||||||||||||||||||
ml.g5.2xlarge | 20 | 36 | 48 | 49 | - | - | - | - | - | - | 48 | 57 | 104 | 170 | - | - | - | - | - | - |
ml.g5.12xlarge | 33 | 58 | 90 | 123 | 142 | - | - | - | - | - | 31 | 34 | 48 | 73 | 132 | - | - | - | - | - |
ml.g5.48xlarge | 31 | 48 | 66 | 82 | - | - | - | - | - | - | 31 | 43 | 68 | 120 | - | - | - | - | - | - |
ml.p4d.24xlarge | 39 | 73 | 124 | 202 | 278 | 290 | - | - | - | - | 26 | 27 | 33 | 43 | 66 | 107 | - | - | - | - |
ما برخی از الگوهای اضافی را در این داده ها مشاهده می کنیم. با افزایش اندازه زمینه، تاخیر افزایش می یابد و توان عملیاتی کاهش می یابد. به عنوان مثال، در ml.g5.2xlarge با همزمانی 1، توان عملیاتی 30 توکن در ثانیه است که تعداد کل توکن ها 512 باشد، در مقابل 20 توکن در ثانیه اگر تعداد کل توکن ها 4,096 باشد. این به این دلیل است که پردازش ورودی بزرگتر به زمان بیشتری نیاز دارد. همچنین میتوانیم ببینیم که افزایش قابلیت GPU و اشتراکگذاری بر حداکثر توان عملیاتی و حداکثر درخواستهای همزمان پشتیبانی شده تأثیر میگذارد. جدول نشان می دهد که Llama 2 7B دارای مقادیر حداکثر توان عملیاتی متفاوتی برای انواع نمونه های مختلف است و این مقادیر حداکثر توان عملیاتی در مقادیر مختلف درخواست های همزمان رخ می دهد. این ویژگیها باعث میشود یک پزشک ML هزینه یک نمونه را نسبت به نمونه دیگر توجیه کند. برای مثال، با توجه به نیاز به تأخیر کم، پزشک ممکن است یک نمونه ml.g5.12xlarge (4 پردازنده گرافیکی A10G) را نسبت به یک نمونه ml.g5.2xlarge (1 GPU A10G) انتخاب کند. اگر نیاز به توان عملیاتی بالا داده شود، استفاده از یک نمونه ml.p4d.24xlarge (8 پردازنده گرافیکی A100) با اشتراک گذاری کامل تنها در صورت همزمانی بالا قابل توجیه است. با این حال، توجه داشته باشید که بارگذاری چندین مؤلفه استنتاج یک مدل 7B در یک نمونه ml.p4d.24xlarge اغلب مفید است. چنین پشتیبانی چند مدلی بعداً در این پست مورد بحث قرار می گیرد.
مشاهدات قبلی برای مدل Llama 2 7B انجام شد. با این حال، الگوهای مشابه برای سایر مدل ها نیز صادق است. نکته اصلی این است که اعداد عملکرد تاخیر و توان عملیاتی به بار، نوع نمونه و تعداد درخواستهای همزمان بستگی دارد، بنابراین باید پیکربندی ایدهآل را برای برنامه خاص خود پیدا کنید. برای ایجاد اعداد قبلی برای مورد استفاده خود، می توانید پیوند داده شده را اجرا کنید دفتر یادداشت، جایی که می توانید این تجزیه و تحلیل تست بار را برای مدل، نوع نمونه و بار بار پیکربندی کنید.
درک مشخصات شتاب دهنده
انتخاب سخت افزار مناسب برای استنتاج LLM به شدت به موارد استفاده خاص، اهداف تجربه کاربر و LLM انتخاب شده بستگی دارد. این بخش تلاش میکند تا درک درستی از زانو در منحنی تأخیر - توان با توجه به اصول سطح بالا بر اساس مشخصات شتابدهنده ایجاد کند. این اصول به تنهایی برای تصمیم گیری کافی نیستند: معیارهای واقعی ضروری هستند. عبارت دستگاه در اینجا برای در بر گرفتن تمام شتاب دهنده های سخت افزاری ML استفاده می شود. ما ادعا می کنیم که زانو در منحنی تاخیر-عملکرد توسط یکی از دو عامل هدایت می شود:
- شتاب دهنده حافظه را برای ذخیره ماتریس های KV تخلیه کرده است، بنابراین درخواست های بعدی در صف قرار می گیرند.
- شتابدهنده هنوز حافظه اضافی برای حافظه نهان KV دارد، اما از اندازه دسته ای به اندازه کافی بزرگ استفاده می کند که زمان پردازش به جای پهنای باند حافظه، توسط تأخیر عملیات محاسباتی هدایت می شود.
ما معمولاً ترجیح میدهیم توسط عامل دوم محدود شویم، زیرا این بدان معناست که منابع شتابدهنده اشباع شدهاند. اساساً شما منابعی را که برای آن هزینه کرده اید به حداکثر می رسانید. بیایید این ادعا را با جزئیات بیشتری بررسی کنیم.
حافظه پنهان KV و حافظه دستگاه
مکانیسمهای استاندارد توجه ترانسفورماتور توجه را برای هر توکن جدید در برابر تمام نشانههای قبلی محاسبه میکنند. اکثر سرورهای مدرن ML کلیدهای توجه و مقادیر را در حافظه دستگاه (DRAM) ذخیره می کنند تا از محاسبه مجدد در هر مرحله جلوگیری کنند. به این می گویند این حافظه پنهان KV، و با اندازه دسته و طول توالی رشد می کند. این تعریف میکند که چه تعداد از درخواستهای کاربر را میتوان به صورت موازی ارائه کرد و اگر رژیم محدود محاسبه در سناریوی دومی که قبلا ذکر شد، با توجه به DRAM موجود، هنوز برآورده نشده باشد، زانو را در منحنی تأخیر-درآمد تعیین میکند. فرمول زیر یک تقریب تقریبی برای حداکثر اندازه کش KV است.
در این فرمول، B اندازه دسته و N تعداد شتاب دهنده ها است. برای مثال، مدل Llama 2 7B در FP16 (2 بایت/پارامتر) که روی یک پردازنده گرافیکی A10G (24 گیگابایت DRAM) ارائه میشود، تقریباً 14 گیگابایت مصرف میکند و 10 گیگابایت برای حافظه نهان KV باقی میماند. با وصل کردن طول متن کامل مدل (N = 4096) و پارامترهای باقیمانده (n_layers=32، n_kv_attention_heads=32، و d_attention_head=128)، این عبارت نشان میدهد که ما به دلیل محدودیتهای DRAM به اندازه دستهای از چهار کاربر به صورت موازی محدود شدهایم. . اگر معیارهای مربوطه را در جدول قبلی مشاهده کنید، این یک تقریب خوب برای زانوی مشاهده شده در این منحنی تاخیر-عملکرد است. روش هایی مانند توجه پرس و جو گروهی (GQA) می تواند اندازه کش KV را کاهش دهد، در مورد GQA با همان عامل تعداد هدهای KV را کاهش می دهد.
شدت حسابی و پهنای باند حافظه دستگاه
رشد قدرت محاسباتی شتاب دهنده های ML از پهنای باند حافظه آنها پیشی گرفته است، به این معنی که آنها می توانند محاسبات بیشتری را روی هر بایت داده در مدت زمانی که برای دسترسی به آن بایت نیاز است انجام دهند.
La شدت حسابییا نسبت عملیات محاسباتی به دسترسیهای حافظه، برای یک عملیات تعیین میکند که آیا با پهنای باند حافظه یا ظرفیت محاسباتی روی سختافزار انتخابشده محدود است یا خیر. به عنوان مثال، یک پردازنده گرافیکی A10G (خانواده نوع نمونه g5) با 70 TFLOPS FP16 و 600 گیگابایت بر ثانیه پهنای باند می تواند تقریباً 116 عملیات در هر بایت را محاسبه کند. یک پردازنده گرافیکی A100 (خانواده نوع نمونه p4d) می تواند تقریباً 208 عملیات در بایت را محاسبه کند. اگر شدت محاسباتی برای یک مدل ترانسفورماتور کمتر از آن مقدار باشد، محدود به حافظه است. اگر بالاتر باشد، محدود به محاسبه است. مکانیسم توجه برای Llama 2 7B به 62 عملیات در بایت برای اندازه دسته 1 نیاز دارد (برای توضیح، رجوع کنید به راهنمای استنباط و عملکرد LLM) یعنی محدود به حافظه است. هنگامی که مکانیسم توجه محدود به حافظه است، FLOPS های گران قیمت استفاده نمی شوند.
دو راه برای استفاده بهتر از شتاب دهنده و افزایش شدت حسابی وجود دارد: کاهش دسترسی های حافظه مورد نیاز برای عملیات (این چیزی است که فلش توجه تمرکز می کند) یا اندازه دسته را افزایش می دهد. با این حال، اگر DRAM ما برای نگهداری حافظه نهان KV مربوطه بسیار کوچک است، ممکن است نتوانیم اندازه دسته خود را به اندازه کافی افزایش دهیم تا به یک رژیم محاسباتی برسیم. یک تقریب خام از اندازه بحرانی بچ B* که رژیمهای محاسباتی را از رژیمهای محدود به حافظه برای استنتاج رمزگشای استاندارد GPT جدا میکند، با عبارت زیر توصیف میشود، که در آن A_mb پهنای باند حافظه شتابدهنده، A_f FLOPS شتابدهنده، و N عدد است. از شتاب دهنده ها این اندازه بحرانی دسته ای را می توان با یافتن جایی که زمان دسترسی به حافظه برابر با زمان محاسبه است به دست آورد. رجوع شود به این پست وبلاگ برای درک معادله 2 و مفروضات آن با جزئیات بیشتر.
این همان نسبت عملیات/بایتی است که قبلاً برای A10G محاسبه کرده بودیم، بنابراین اندازه دسته بحرانی در این GPU 116 است. یکی از راههای نزدیک شدن به این اندازه نظری و بحرانی دسته، افزایش شاردینگ مدل و تقسیم حافظه نهان در شتابدهندههای بیشتر N است. این به طور موثر ظرفیت کش KV و همچنین اندازه دسته محدود به حافظه را افزایش می دهد.
یکی دیگر از مزایای اشتراک گذاری مدل، تقسیم پارامتر مدل و کار بارگذاری داده در N شتاب دهنده است. این نوع شاردینگ نوعی موازی سازی مدل است که به آن نیز گفته می شود موازی تانسور. به طور ساده، N برابر پهنای باند حافظه و توان محاسباتی در مجموع وجود دارد. با فرض اینکه هیچ گونه سرباری (ارتباطات، نرم افزار و غیره) وجود نداشته باشد، این امر باعث کاهش تأخیر رمزگشایی به ازای هر توکن به میزان N می شود، اگر به حافظه محدود شده باشیم، زیرا تأخیر رمزگشایی رمز در این رژیم به زمان بارگذاری مدل محدود می شود. وزن و کش با این حال، در زندگی واقعی، افزایش درجه اشتراک گذاری منجر به افزایش ارتباطات بین دستگاه ها برای اشتراک گذاری فعال سازی های میانی در هر لایه مدل می شود. این سرعت ارتباطی توسط پهنای باند اتصال دستگاه محدود می شود. تخمین دقیق تأثیر آن دشوار است (برای جزئیات، نگاه کنید به موازی سازی مدل) اما این می تواند در نهایت مانع از ایجاد مزایا شود یا عملکرد را بدتر کند - این به ویژه برای مدل های کوچکتر صادق است، زیرا انتقال داده های کوچکتر منجر به نرخ انتقال کمتر می شود.
برای مقایسه شتاب دهنده های ML بر اساس مشخصات آنها، موارد زیر را توصیه می کنیم. ابتدا، اندازه تقریبی بچ بحرانی را برای هر نوع شتاب دهنده با توجه به معادله دوم و اندازه حافظه پنهان KV را برای اندازه بحرانی باچ مطابق با رابطه اول محاسبه کنید. سپس میتوانید از DRAM موجود روی شتابدهنده استفاده کنید تا حداقل تعداد شتابدهندههای مورد نیاز برای تناسب با حافظه پنهان KV و پارامترهای مدل را محاسبه کنید. اگر بین شتابدهندههای چندگانه تصمیم میگیرید، شتابدهندهها را به ترتیب کمترین هزینه به ازای هر گیگابایت/ثانیه پهنای باند حافظه اولویتبندی کنید. در نهایت، این تنظیمات را محک بزنید و بررسی کنید که بهترین هزینه/توکن برای کران بالای تاخیر مورد نظر شما چیست.
یک پیکربندی استقرار نقطه پایانی را انتخاب کنید
بسیاری از LLM های توزیع شده توسط SageMaker JumpStart از آن استفاده می کنند متن-نسل-استنتاج (TGI) ظرف SageMaker برای سرویس مدل جدول زیر نحوه تنظیم انواع پارامترهای سرویس مدل را مورد بحث قرار میدهد تا بر سرویسدهی مدل تأثیر بگذارد که بر منحنی تأخیر-درآمد تأثیر میگذارد یا از نقطه پایانی در برابر درخواستهایی که نقطه پایانی را بیش از حد بارگذاری میکنند محافظت کند. اینها پارامترهای اولیه ای هستند که می توانید برای پیکربندی استقرار نقطه پایانی برای مورد استفاده خود استفاده کنید. مگر اینکه غیر از این مشخص شده باشد، از پیش فرض استفاده می کنیم پارامترهای بار تولید متن و متغیرهای محیطی TGI.
متغیر محیطی | توضیحات: | مقدار پیشفرض SageMaker JumpStart |
پیکربندی های سرویس دهی مدل | . | . |
MAX_BATCH_PREFILL_TOKENS |
تعداد توکن ها را در عملیات پیش پر کردن محدود می کند. این عملیات حافظه پنهان KV را برای یک دنباله اعلان ورودی جدید تولید می کند. این مقدار حافظه فشرده است و محاسبات محدود است، بنابراین این مقدار تعداد توکن های مجاز در یک عملیات پیش پر کردن را محدود می کند. مراحل رمزگشایی برای سایر پرسوجوها در حین انجام پیشپر کردن متوقف میشود. | 4096 (پیشفرض TGI) یا حداکثر طول زمینه پشتیبانیشده برای مدل (SageMaker JumpStart ارائه شده)، هر کدام بیشتر باشد. |
MAX_BATCH_TOTAL_TOKENS |
حداکثر تعداد توکنهایی را که باید در یک دسته در طول رمزگشایی، یا یک گذر به جلو از مدل وارد شود، کنترل میکند. در حالت ایده آل، این تنظیم برای به حداکثر رساندن استفاده از تمام سخت افزارهای موجود است. | مشخص نشده (پیشفرض TGI). TGI این مقدار را با توجه به حافظه CUDA باقیمانده در طول گرم کردن مدل تنظیم می کند. |
SM_NUM_GPUS |
تعداد خرده های مورد استفاده یعنی تعداد پردازنده های گرافیکی مورد استفاده برای اجرای مدل با استفاده از موازی تانسور. | وابسته به نمونه (SageMaker JumpStart ارائه شده است). برای هر نمونه پشتیبانی شده برای یک مدل معین، SageMaker JumpStart بهترین تنظیمات را برای موازی تانسور فراهم می کند. |
پیکربندی برای محافظت از نقطه پایانی شما (اینها را برای مورد استفاده خود تنظیم کنید) | . | . |
MAX_TOTAL_TOKENS |
این امر با محدود کردن تعداد نشانهها در دنباله ورودی به اضافه تعداد نشانهها در دنباله خروجی، بودجه حافظه یک درخواست مشتری را محدود میکند. max_new_tokens پارامتر بار). |
حداکثر طول زمینه پشتیبانی شده مخصوص مدل. به عنوان مثال، 4096 برای Llama 2. |
MAX_INPUT_LENGTH |
حداکثر تعداد مجاز توکن ها را در ترتیب ورودی برای یک درخواست مشتری مشخص می کند. مواردی که هنگام افزایش این مقدار باید در نظر گرفته شوند عبارتند از: توالی های ورودی طولانی تر به حافظه بیشتری نیاز دارند که بر دسته بندی پیوسته تأثیر می گذارد و بسیاری از مدل ها دارای طول زمینه پشتیبانی شده هستند که نباید از آن بیشتر شود. | حداکثر طول زمینه پشتیبانی شده مخصوص مدل. به عنوان مثال، 4095 برای Llama 2. |
MAX_CONCURRENT_REQUESTS |
حداکثر تعداد درخواستهای همزمان مجاز توسط نقطه پایانی مستقر شده. درخواستهای جدید فراتر از این حد فوراً یک خطای بارگذاری بیش از حد مدل ایجاد میکند تا از تأخیر ضعیف درخواستهای پردازش فعلی جلوگیری کند. | 128 (پیشفرض TGI). این تنظیم به شما امکان میدهد برای انواع موارد استفاده، توان عملیاتی بالایی به دست آورید، اما برای کاهش خطاهای مهلت زمانی فراخوانی SageMaker باید به اندازه مناسب پین کنید. |
سرور TGI از دستهبندی پیوسته استفاده میکند، که به صورت پویا درخواستهای همزمان را با هم دستهبندی میکند تا یک مدل استنتاج رو به جلو را به اشتراک بگذارد. دو نوع پاس رو به جلو وجود دارد: prefill و decode. هر درخواست جدید باید یک گذر از پیش پر کردن را برای پر کردن کش KV برای توکنهای دنباله ورودی اجرا کند. پس از پر شدن حافظه نهان KV، یک رمزگشایی به جلو یک پیشبینی علامت بعدی را برای همه درخواستهای دستهای انجام میدهد، که به طور مکرر برای تولید دنباله خروجی تکرار میشود. همانطور که درخواست های جدید به سرور ارسال می شود، مرحله رمزگشایی بعدی باید منتظر بماند تا مرحله پیش پر کردن برای درخواست های جدید اجرا شود. این باید قبل از گنجاندن آن درخواستهای جدید در مراحل رمزگشایی دستهای بعدی بعدی رخ دهد. به دلیل محدودیتهای سختافزاری، دستهبندی پیوسته مورد استفاده برای رمزگشایی ممکن است شامل همه درخواستها نباشد. در این مرحله، درخواستها وارد صف پردازش میشوند و تأخیر استنتاج به طور قابلتوجهی با افزایش توان عملیاتی جزئی افزایش مییابد.
این امکان وجود دارد که تجزیه و تحلیلهای معیار تأخیر LLM را به تأخیر پیش پر کردن، تأخیر رمزگشایی و تأخیر صف تفکیک کنید. زمان مصرف شده توسط هر یک از این مؤلفه ها اساساً ماهیت متفاوتی دارد: پیش پر کردن یک محاسبات یکباره است، رمزگشایی یک بار برای هر نشانه در دنباله خروجی رخ می دهد، و صف بندی شامل فرآیندهای دسته بندی سرور است. هنگامی که چندین درخواست همزمان در حال پردازش هستند، تفکیک تاخیرها از هر یک از این مؤلفهها دشوار میشود، زیرا تأخیر تجربه شده توسط هر درخواست مشتری معین شامل تأخیرهای صف ناشی از نیاز به تکمیل درخواستهای همزمان جدید و همچنین تأخیرهای صف ناشی از گنجاندن است. درخواست در فرآیندهای رمزگشایی دسته ای. به همین دلیل، این پست بر تأخیر پردازش انتها به انتها تمرکز دارد. زانو در منحنی تأخیر- توان عملیاتی در نقطه اشباع رخ می دهد که در آن زمان تأخیر صف شروع به افزایش قابل توجهی می کند. این پدیده برای هر سرور استنتاج مدل رخ می دهد و توسط مشخصات شتاب دهنده هدایت می شود.
الزامات متداول در حین استقرار شامل برآوردن حداقل توان مورد نیاز، حداکثر تأخیر مجاز، حداکثر هزینه در ساعت و حداکثر هزینه برای تولید 1 میلیون توکن است. شما باید این الزامات را بر روی بارهایی که درخواستهای کاربر نهایی را نشان میدهند، مشروط کنید. طراحی برای برآورده کردن این الزامات باید عوامل زیادی را در نظر بگیرد، از جمله معماری مدل خاص، اندازه مدل، انواع نمونهها و تعداد نمونه (مقیاسبندی افقی). در بخشهای بعدی، ما بر روی استقرار نقاط پایانی برای به حداقل رساندن تأخیر، به حداکثر رساندن توان عملیاتی و به حداقل رساندن هزینه تمرکز میکنیم. این تحلیل 512 توکن کل و 256 توکن خروجی را در نظر می گیرد.
تأخیر را به حداقل برسانید
تأخیر یک نیاز مهم در بسیاری از موارد استفاده بلادرنگ است. در جدول زیر، حداقل تاخیر برای هر مدل و هر نوع نمونه را بررسی می کنیم. با تنظیم می توانید به حداقل تاخیر دست یابید MAX_CONCURRENT_REQUESTS = 1
.
حداقل تأخیر (ms/token) | |||||
شناسه مدل | ml.g5.2xlarge | ml.g5.12xlarge | ml.g5.48xlarge | ml.p4d.24xlarge | ml.p4de.24xlarge |
لاما 2 7B | 33 | 17 | 18 | 20 | - |
چت Llama 2 7B | 33 | 17 | 18 | 20 | - |
لاما 2 13B | - | 22 | 23 | 23 | - |
چت Llama 2 13B | - | 23 | 23 | 23 | - |
لاما 2 70B | - | - | 57 | 43 | - |
چت Llama 2 70B | - | - | 57 | 45 | - |
Mistral 7B | 35 | - | - | - | - |
دستورالعمل Mistral 7B | 35 | - | - | - | - |
Mixtral 8x7B | - | - | 33 | 27 | - |
فالکون 7 بی | 33 | - | - | - | - |
دستور Falcon 7B | 33 | - | - | - | - |
فالکون 40 بی | - | 53 | 33 | 27 | - |
دستور Falcon 40B | - | 53 | 33 | 28 | - |
فالکون 180 بی | - | - | - | - | 42 |
چت Falcon 180B | - | - | - | - | 42 |
برای دستیابی به حداقل تأخیر برای یک مدل، میتوانید از کد زیر و جایگزین کردن شناسه مدل و نوع نمونه مورد نظر خود استفاده کنید:
توجه داشته باشید که اعداد تاخیر بسته به تعداد توکن های ورودی و خروجی تغییر می کنند. با این حال، فرآیند استقرار به جز متغیرهای محیطی یکسان باقی می ماند MAX_INPUT_TOKENS
و MAX_TOTAL_TOKENS
. در اینجا، این متغیرهای محیطی برای کمک به تضمین الزامات تأخیر نقطه پایانی تنظیم شدهاند، زیرا توالیهای ورودی بزرگتر ممکن است الزامات تأخیر را نقض کنند. توجه داشته باشید که SageMaker JumpStart در حال حاضر سایر متغیرهای محیطی بهینه را هنگام انتخاب نوع نمونه فراهم می کند. به عنوان مثال، با استفاده از ml.g5.12xlarge تنظیم می شود SM_NUM_GPUS
به 4 در محیط مدل.
به حداکثر رساندن توان عملیاتی
در این بخش تعداد توکن های تولید شده در ثانیه را به حداکثر می رسانیم. این معمولاً در حداکثر درخواستهای همزمان معتبر برای مدل و نوع نمونه به دست میآید. در جدول زیر، توان عملیاتی به دست آمده در بزرگترین مقدار درخواست همزمان به دست آمده را قبل از مواجهه با مهلت زمانی فراخوانی SageMaker برای هر درخواست گزارش می کنیم.
حداکثر توان عملیاتی (توکن/ثانیه)، درخواستهای همزمان | |||||
شناسه مدل | ml.g5.2xlarge | ml.g5.12xlarge | ml.g5.48xlarge | ml.p4d.24xlarge | ml.p4de.24xlarge |
لاما 2 7B | 486 (64) | 1214 (128) | 804 (128) | 2945 (512) | - |
چت Llama 2 7B | 493 (64) | 1207 (128) | 932 (128) | 3012 (512) | - |
لاما 2 13B | - | 787 (128) | 496 (64) | 3245 (512) | - |
چت Llama 2 13B | - | 782 (128) | 505 (64) | 3310 (512) | - |
لاما 2 70B | - | - | 124 (16) | 1585 (256) | - |
چت Llama 2 70B | - | - | 114 (16) | 1546 (256) | - |
Mistral 7B | 947 (64) | - | - | - | - |
دستورالعمل Mistral 7B | 986 (128) | - | - | - | - |
Mixtral 8x7B | - | - | 701 (128) | 3196 (512) | - |
فالکون 7 بی | 1340 (128) | - | - | - | - |
دستور Falcon 7B | 1313 (128) | - | - | - | - |
فالکون 40 بی | - | 244 (32) | 382 (64) | 2699 (512) | - |
دستور Falcon 40B | - | 245 (32) | 415 (64) | 2675 (512) | - |
فالکون 180 بی | - | - | - | - | 1100 (128) |
چت Falcon 180B | - | - | - | - | 1081 (128) |
برای دستیابی به حداکثر توان برای یک مدل، می توانید از کد زیر استفاده کنید:
توجه داشته باشید که حداکثر تعداد درخواستهای همزمان به نوع مدل، نوع نمونه، حداکثر تعداد نشانههای ورودی و حداکثر تعداد نشانههای خروجی بستگی دارد. بنابراین، شما باید این پارامترها را قبل از تنظیم تنظیم کنید MAX_CONCURRENT_REQUESTS
.
همچنین توجه داشته باشید که کاربری که علاقه مند به به حداقل رساندن تأخیر است، اغلب با کاربری که علاقه مند به به حداکثر رساندن توان عملیاتی است در تضاد است. اولی به پاسخهای بلادرنگ علاقهمند است، در حالی که دومی علاقهمند به پردازش دستهای است به طوری که صف نقطه پایانی همیشه اشباع شده باشد و در نتیجه زمان خرابی پردازش را به حداقل برساند. کاربرانی که میخواهند توان عملیاتی را مشروط به الزامات تأخیر به حداکثر برسانند، اغلب علاقهمند به کار در زانو در منحنی تأخیر-برابر هستند.
هزینه را به حداقل برسانید
اولین گزینه برای به حداقل رساندن هزینه شامل به حداقل رساندن هزینه در ساعت است. با این کار، می توانید یک مدل انتخاب شده را با کمترین هزینه در ساعت در نمونه SageMaker مستقر کنید. برای قیمتگذاری بیدرنگ نمونههای SageMaker، مراجعه کنید قیمت آمازون SageMaker. به طور کلی، نوع نمونه پیشفرض برای SageMaker JumpStart LLM، کمهزینهترین گزینه استقرار است.
گزینه دوم برای به حداقل رساندن هزینه شامل به حداقل رساندن هزینه تولید 1 میلیون توکن است. این یک تبدیل ساده از جدولی است که قبلاً در مورد آن صحبت کردیم تا توان عملیاتی را به حداکثر برسانیم، جایی که می توانید ابتدا زمان تولید 1 میلیون توکن (1e6 / توان عملیاتی / 3600) را بر حسب ساعت محاسبه کنید. سپس می توانید این زمان را ضرب کنید تا 1 میلیون توکن با قیمت هر ساعت نمونه مشخص شده SageMaker تولید کنید.
توجه داشته باشید که نمونه هایی با کمترین هزینه در ساعت با نمونه هایی با کمترین هزینه برای تولید 1 میلیون توکن یکسان نیستند. برای مثال، اگر درخواستهای فراخوانی پراکنده باشند، نمونهای با کمترین هزینه در ساعت ممکن است بهینه باشد، در حالی که در سناریوهای throttling، کمترین هزینه برای تولید یک میلیون توکن ممکن است مناسبتر باشد.
مبادله تانسور موازی در مقابل چند مدل
در تمام تجزیه و تحلیلهای قبلی، ما در نظر گرفتیم که یک مدل مشابه را با درجه موازی تانسور برابر با تعداد GPU در نوع نمونه استقرار اجرا کنیم. این رفتار پیشفرض SageMaker JumpStart است. با این حال، همانطور که قبلا ذکر شد، به اشتراک گذاری یک مدل می تواند تاخیر و توان عملیاتی مدل را تنها تا حد معینی بهبود بخشد، که فراتر از آن الزامات ارتباط بین دستگاهی بر زمان محاسبات غالب است. این نشان میدهد که استفاده از چندین مدل با درجه موازی تانسوری پایینتر در یک نمونه به جای یک مدل منفرد با درجه موازی تانسور بیشتر، اغلب سودمند است.
در اینجا، نقاط پایانی Llama 2 7B و 13B را روی نمونههای ml.p4d.24xlarge با درجههای موازی تانسور (TP) 1، 2، 4، و 8 قرار میدهیم. برای وضوح رفتار مدل، هر یک از این نقاط پایانی فقط یک مدل را بارگیری میکنند.
. | توان عملیاتی (توکن ها/ثانیه) | تأخیر (ms/token) | ||||||||||||||||||
درخواست های همزمان | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 256 | 512 |
مدرک TP | لاما 2 13B | |||||||||||||||||||
1 | 38 | 74 | 147 | 278 | 443 | 612 | 683 | 722 | - | - | 26 | 27 | 27 | 29 | 37 | 45 | 87 | 174 | - | - |
2 | 49 | 92 | 183 | 351 | 604 | 985 | 1435 | 1686 | 1726 | - | 21 | 22 | 22 | 22 | 25 | 32 | 46 | 91 | 159 | - |
4 | 46 | 94 | 181 | 343 | 655 | 1073 | 1796 | 2408 | 2764 | 2819 | 23 | 21 | 21 | 24 | 25 | 30 | 37 | 57 | 111 | 172 |
8 | 44 | 86 | 158 | 311 | 552 | 1015 | 1654 | 2450 | 3087 | 3180 | 22 | 24 | 26 | 26 | 29 | 36 | 42 | 57 | 95 | 152 |
. | لاما 2 7B | |||||||||||||||||||
1 | 62 | 121 | 237 | 439 | 778 | 1122 | 1569 | 1773 | 1775 | - | 16 | 16 | 17 | 18 | 22 | 28 | 43 | 88 | 151 | - |
2 | 62 | 122 | 239 | 458 | 780 | 1328 | 1773 | 2440 | 2730 | 2811 | 16 | 16 | 17 | 18 | 21 | 25 | 38 | 56 | 103 | 182 |
4 | 60 | 106 | 211 | 420 | 781 | 1230 | 2206 | 3040 | 3489 | 3752 | 17 | 19 | 20 | 18 | 22 | 27 | 31 | 45 | 82 | 132 |
8 | 49 | 97 | 179 | 333 | 612 | 1081 | 1652 | 2292 | 2963 | 3004 | 22 | 20 | 24 | 26 | 27 | 33 | 41 | 65 | 108 | 167 |
تحلیلهای قبلی ما قبلاً مزایای توان عملیاتی قابلتوجهی را در نمونههای ml.p4d.24xlarge نشان دادهاند، که اغلب به عملکرد بهتر از نظر هزینه برای تولید 1 میلیون توکن در خانواده نمونه g5 تحت شرایط بار درخواست همزمان بالا منجر میشود. این تجزیه و تحلیل به وضوح نشان می دهد که شما باید مبادله بین تقسیم مدل و تکرار مدل را در یک نمونه واحد در نظر بگیرید. یعنی یک مدل کاملاً خرد شده معمولاً بهترین استفاده از منابع محاسباتی ml.p4d.24xlarge برای خانوادههای مدل 7B و 13B نیست. در واقع، برای خانواده مدل 7B، بهترین توان عملیاتی را برای یک ماکت مدل با درجه موازی تانسور 4 به جای 8 به دست می آورید.
از اینجا، میتوانید برونیابی کنید که بالاترین پیکربندی توان عملیاتی برای مدل 7B شامل یک درجه موازی تانسور 1 با هشت مدل تکراری است، و بالاترین پیکربندی توان عملیاتی برای مدل 13B احتمالاً یک درجه موازی تانسور 2 با چهار مدل تکراری است. برای کسب اطلاعات بیشتر در مورد چگونگی انجام این کار، مراجعه کنید با استفاده از آخرین ویژگی های Amazon SageMaker هزینه های استقرار مدل را به طور متوسط 50٪ کاهش دهید، که استفاده از نقاط پایانی مبتنی بر مولفه استنتاج را نشان می دهد. به دلیل تکنیکهای متعادلسازی بار، مسیریابی سرور و اشتراکگذاری منابع CPU، ممکن است به طور کامل به بهبود توان عملیاتی دقیقاً برابر با تعداد کپیها برابر با توان یک ماکت نرسید.
مقیاس بندی افقی
همانطور که قبلاً مشاهده شد، هر استقرار نقطه پایانی بسته به تعداد توکنهای ورودی و خروجی و همچنین نوع نمونه، محدودیتی در تعداد درخواستهای همزمان دارد. اگر این مورد نیاز به توان عملیاتی یا درخواست همزمان شما را برآورده نمی کند، می توانید برای استفاده از بیش از یک نمونه در پشت نقطه پایانی مستقر شده، مقیاس را افزایش دهید. SageMaker به طور خودکار تعادل بار درخواست ها را بین نمونه ها انجام می دهد. به عنوان مثال، کد زیر یک نقطه پایانی را مستقر می کند که توسط سه نمونه پشتیبانی می شود:
جدول زیر افزایش توان عملیاتی را به عنوان ضریب تعداد نمونه ها برای مدل Llama 2 7B نشان می دهد.
. | . | توان عملیاتی (توکن ها/ثانیه) | تأخیر (ms/token) | ||||||||||||||
. | درخواست های همزمان | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 |
تعداد نمونه | نوع نمونه | تعداد کل توکن ها: 512، تعداد توکن های خروجی: 256 | |||||||||||||||
1 | ml.g5.2xlarge | 30 | 60 | 115 | 210 | 351 | 484 | 492 | - | 32 | 33 | 34 | 37 | 45 | 93 | 160 | - |
2 | ml.g5.2xlarge | 30 | 60 | 115 | 221 | 400 | 642 | 922 | 949 | 32 | 33 | 34 | 37 | 42 | 53 | 94 | 167 |
3 | ml.g5.2xlarge | 30 | 60 | 118 | 228 | 421 | 731 | 1170 | 1400 | 32 | 33 | 34 | 36 | 39 | 47 | 57 | 110 |
قابلتوجه، زانو در منحنی تأخیر-درآمد به راست جابهجا میشود، زیرا تعداد نمونههای بالاتر میتواند تعداد بیشتری از درخواستهای همزمان را در نقطه پایانی چند نمونه انجام دهد. برای این جدول، مقدار درخواست همزمان برای کل نقطه پایانی است، نه تعداد درخواستهای همزمانی که هر نمونه جداگانه دریافت میکند.
همچنین میتوانید از مقیاس خودکار استفاده کنید، یک ویژگی برای نظارت بر بارهای کاری و تنظیم پویا ظرفیت برای حفظ عملکرد ثابت و قابل پیشبینی با کمترین هزینه ممکن. این از حوصله این پست خارج است. برای کسب اطلاعات بیشتر در مورد مقیاس خودکار، به پیکربندی نقاط پایانی استنتاج مقیاسپذیری خودکار در Amazon SageMaker.
با درخواست های همزمان نقطه پایانی را فراخوانی کنید
فرض کنید دسته بزرگی از پرسوجوها دارید که میخواهید از آنها برای تولید پاسخها از یک مدل مستقر در شرایط توان عملیاتی بالا استفاده کنید. به عنوان مثال، در بلوک کد زیر، لیستی از 1,000 بار را گردآوری می کنیم که هر بار پیلود درخواست تولید 100 توکن را دارد. در کل، ما درخواست تولید 100,000 توکن را داریم.
هنگام ارسال تعداد زیادی درخواست به SageMaker Runtime API، ممکن است با خطاهای throttling مواجه شوید. برای کاهش این مشکل، میتوانید یک کلاینت زمان اجرا SageMaker سفارشی ایجاد کنید که تعداد تلاشهای مجدد را افزایش میدهد. می توانید شی جلسه SageMaker به دست آمده را به هر یک از آنها ارائه دهید JumpStartModel
سازنده یا sagemaker.predictor.retrieve_default
اگر میخواهید یک پیشبینیکننده جدید را به یک نقطه پایانی که قبلاً مستقر شده است وصل کنید. در کد زیر، هنگام استقرار یک مدل Llama 2 با تنظیمات پیشفرض SageMaker JumpStart از این شی جلسه استفاده میکنیم:
این نقطه پایانی مستقر شده است MAX_CONCURRENT_REQUESTS = 128
به صورت پیش فرض. در بلوک زیر، از کتابخانه آتی همزمان برای تکرار فراخوانی نقطه پایانی برای همه بارهای با 128 رشته کارگر استفاده می کنیم. حداکثر، نقطه پایانی 128 درخواست همزمان را پردازش می کند و هر زمان که یک درخواست پاسخی را برمی گرداند، مجری بلافاصله درخواست جدیدی را به نقطه پایانی ارسال می کند.
این منجر به تولید 100,000 توکن کل با توان عملیاتی 1255 توکن در ثانیه در یک نمونه ml.g5.2xlarge می شود. این کار تقریباً 80 ثانیه طول می کشد تا پردازش شود.
توجه داشته باشید که این مقدار توان به طور قابل توجهی با حداکثر توان برای Llama 2 7B در ml.g5.2xlarge در جداول قبلی این پست متفاوت است (486 توکن در ثانیه در 64 درخواست همزمان). این به این دلیل است که بار ورودی به جای 8 از 256 توکن استفاده می کند، تعداد توکن های خروجی به جای 100، 256 است، و تعداد توکن های کوچکتر اجازه 128 درخواست همزمان را می دهد. این آخرین یادآوری است که تمام اعداد تاخیر و توان عملیاتی وابسته به بار است! تغییر تعداد توکنهای بار بر فرآیندهای دستهبندی در طول ارائه مدل تأثیر میگذارد، که به نوبه خود بر پیشپر کردن، رمزگشایی و زمانهای صف برنامه شما تأثیر میگذارد.
نتیجه
در این پست، بنچمارک SageMaker JumpStart LLM از جمله Llama 2، Mistral و Falcon را ارائه کردیم. ما همچنین راهنمای بهینهسازی تأخیر، توان عملیاتی و هزینه را برای پیکربندی استقرار نقطه پایانی ارائه کردیم. می توانید با اجرای برنامه شروع کنید نوت بوک مرتبط مورد استفاده خود را محک بزنید.
درباره نویسنده
دکتر کایل اولریش یک دانشمند کاربردی با تیم آمازون SageMaker JumpStart است. علایق تحقیقاتی او شامل الگوریتم های یادگیری ماشین مقیاس پذیر، بینایی کامپیوتر، سری های زمانی، ناپارامتریک های بیزی و فرآیندهای گاوسی است. دکترای او از دانشگاه دوک است و مقالاتی در NeurIPS، Cell و Neuron منتشر کرده است.
Dr. ویوک مدان یک دانشمند کاربردی با تیم آمازون SageMaker JumpStart است. او دکترای خود را از دانشگاه ایلینویز در Urbana-Champaign گرفت و پژوهشگر پست دکترا در جورجیا تک بود. او یک محقق فعال در یادگیری ماشین و طراحی الگوریتم است و مقالاتی در کنفرانس های EMNLP، ICLR، COLT، FOCS و SODA منتشر کرده است.
دکتر آشیش ختان یک دانشمند ارشد کاربردی با Amazon SageMaker JumpStart است و به توسعه الگوریتم های یادگیری ماشین کمک می کند. او دکترای خود را از دانشگاه ایلینویز Urbana-Champaign گرفت. او یک محقق فعال در یادگیری ماشین و استنتاج آماری است و مقالات زیادی در کنفرانس های NeurIPS، ICML، ICLR، JMLR، ACL و EMNLP منتشر کرده است.
ژائو مورا یک معمار ارشد راه حل های تخصصی AI/ML در AWS است. João به مشتریان AWS - از استارتآپهای کوچک گرفته تا شرکتهای بزرگ - کمک میکند تا مدلهای بزرگ را به طور موثر آموزش داده و به کار گیرند، و به طور گستردهتری پلتفرمهای ML را بر روی AWS بسازند.
- محتوای مبتنی بر SEO و توزیع روابط عمومی. امروز تقویت شوید.
- PlatoData.Network Vertical Generative Ai. به خودت قدرت بده دسترسی به اینجا.
- PlatoAiStream. هوش وب 3 دانش تقویت شده دسترسی به اینجا.
- PlatoESG. کربن ، CleanTech، انرژی، محیط، خورشیدی، مدیریت پسماند دسترسی به اینجا.
- PlatoHealth. هوش بیوتکنولوژی و آزمایشات بالینی. دسترسی به اینجا.
- منبع: https://aws.amazon.com/blogs/machine-learning/benchmark-and-optimize-endpoint-deployment-in-amazon-sagemaker-jumpstart/
- : دارد
- :است
- :نه
- :جایی که
- $UP
- 000
- 1
- 10
- 100
- 11
- 116
- 12
- 14
- 150
- 16
- 17
- 20
- 24
- 28
- 30
- 32
- 60
- 600
- 7
- 70
- 8
- 80
- a
- قادر
- درباره ما
- بالاتر
- شتاب دهنده
- شتاب دهنده ها
- پذیرش
- دسترسی
- انجام دادن
- مطابق
- رسیدن
- دست
- در میان
- فعال سازی ها
- فعال
- وفق دادن
- اضافی
- علاوه بر این
- مزایای
- اثر
- پس از
- در برابر
- تجمیع
- AI / ML
- الگوریتم
- الگوریتم
- تراز
- معرفی
- اجازه دادن
- مجاز
- اجازه می دهد تا
- تنها
- قبلا
- همچنین
- هر چند
- همیشه
- آمازون
- آمازون SageMaker
- Amazon SageMaker JumpStart
- آمازون خدمات وب
- مقدار
- an
- تجزیه و تحلیل
- تحلیل
- و
- دیگر
- هر
- API
- کاربرد
- اعمال می شود
- روش
- مناسب
- تقریبی
- تقریبا
- معماری
- هستند
- AS
- مرتبط است
- مفروضات
- At
- ضمیمه کردن
- تلاشها
- توجه
- بطور خودکار
- در دسترس
- میانگین
- اجتناب از
- AWS
- تعادل
- موازنه
- پهنای باند
- مستقر
- اساسا
- دسته
- بیزی
- BE
- زیرا
- شود
- قبل از
- رفتار
- پشت سر
- بودن
- باور
- محک
- معیار
- معیار
- مفید
- سود
- مزایای
- بهترین
- بهتر
- میان
- خارج از
- مسدود کردن
- بلاگ
- کران
- پهن
- گسترده
- بودجه
- ساختن
- اما
- by
- مخزن
- محاسبه
- محاسبه
- نام
- CAN
- می توانید دریافت کنید
- قابلیت
- ظرفیت
- کلاه
- اهميت دادن
- مورد
- موارد
- علت
- سلول
- معین
- تغییر دادن
- متغیر
- مشخصات
- را انتخاب کنید
- برگزیده
- وضوح
- به وضوح
- مشتری
- رمز
- ارتباط
- مقايسه كردن
- پیچیده
- اجزاء
- جامع
- محاسبه
- محاسباتی
- قدرت محاسباتی
- محاسبات
- محاسبه
- کامپیوتر
- چشم انداز کامپیوتر
- رقیب
- شرط
- شرایط
- همایش ها
- پیکر بندی
- در نظر بگیرید
- در نظر گرفته
- در نظر می گیرد
- محدودیت ها
- مصرف
- شامل
- زمینه
- مداوم
- به طور مداوم
- متناظر
- هزینه
- هزینه
- تعداد دفعات مشاهده
- ایجاد
- بحرانی
- خام
- جاری
- منحنی
- سفارشی
- مشتریان
- داده ها
- تصمیم گیری
- تصمیم
- رمز گشایی
- کاهش
- کاهش می دهد
- اختصاصی
- به طور پیش فرض
- تعريف كردن
- مشخص
- تعریف می کند
- درجه
- نشان دادن
- نشان می دهد
- وابسته
- بستگی دارد
- بستگی دارد
- گسترش
- مستقر
- استقرار
- گسترش
- اعزام ها
- مستقر می کند
- عمق
- نشات گرفته
- شرح داده شده
- طرح
- مطلوب
- جزئیات
- جزئیات
- مشخص کردن
- تعیین می کند
- توسعه
- دستگاه
- دستگاه ها
- مختلف
- مشکل
- کاهش می یابد
- بحث و تبادل نظر
- بحث کردیم
- متمایز
- توزیع شده
- نمی کند
- تسلط داشتن
- آیا
- مدت از کار افتادگی
- dr
- راندن
- رانده
- رانندگی
- دو
- دوک
- دانشگاه دوک
- در طی
- بطور پویا
- هر
- پیش از آن
- به طور موثر
- موثر
- هشت
- هر دو
- شامل
- روبرو شدن
- پشت سر هم
- نقطه پایانی
- به پایان می رسد
- کافی
- وارد
- شرکت
- تمام
- محیط
- برابر
- برابر
- خطا
- خطاهای
- به خصوص
- تخمین زدن
- حتی
- در نهایت
- هر
- کاملا
- مثال
- بیش از
- جز
- نمایش دادن
- وجود دارد
- گران
- تجربه
- با تجربه
- توضیح
- اکتشاف
- کاوش می کند
- بیان
- واقعیت
- عامل
- عوامل
- FAIL
- خانواده
- خانواده
- امکان پذیر است
- ویژگی
- امکانات
- کمی از
- شکل
- نهایی
- سرانجام
- پیدا کردن
- پیدا کردن
- نام خانوادگی
- مناسب
- تمرکز
- تمرکز
- پیروی
- برای
- سابق
- فرمول
- به جلو
- پایه
- چهار
- از جانب
- کامل
- کاملا
- اساساً
- بیشتر
- بعلاوه
- آینده
- افزایش
- عایدات
- سوالات عمومی
- تولید می کنند
- تولید
- تولید می کند
- مولد
- نسل
- گرجستان
- دریافت کنید
- داده
- اهداف
- خوب
- کردم
- GPU
- GPU ها
- بیشتر
- رشد می کند
- رشد
- ضمانت
- گارد
- راهنمایی
- دسته
- سخت افزار
- آیا
- he
- سر
- به شدت
- کمک
- کمک می کند
- اینجا کلیک نمایید
- زیاد
- در سطح بالا
- بالاتر
- بالاترین
- خود را
- نگه داشتن
- افقی
- ساعت
- ساعت ها
- چگونه
- چگونه
- اما
- HTTPS
- i
- ID
- دلخواه
- ایده آل
- شناسایی
- if
- ایلینوی
- بلافاصله
- تأثیر
- اثرات
- واردات
- مهم
- مهمتر
- بهبود
- بهبود
- ارتقاء
- را بهبود می بخشد
- in
- شامل
- مشمول
- از جمله
- گنجاندن
- وارد شونده
- افزایش
- افزایش
- افزایش
- افزایش
- فرد
- ورودی
- ورودی
- نمونه
- در عوض
- علاقه مند
- منافع
- به
- شامل
- IT
- ITS
- JPG
- تعدیل شده
- کلید
- نوع
- کایل
- زبان
- بزرگ
- شرکت های بزرگ
- بزرگتر
- بزرگترین
- تاخیر
- بعد
- آخرین
- لایه
- رهبری
- یاد گرفتن
- یادگیری
- ترک
- ترک کرد
- طول
- کتابخانه
- زندگی
- پسندیدن
- احتمالا
- محدود
- محدودیت
- محدود شده
- محدود کردن
- محدودیت
- لاین
- فهرست
- پشم لاما
- LLM
- بار
- بارگیری
- محل
- دیگر
- نگاه کنيد
- کم
- کاهش
- پایین ترین
- دستگاه
- فراگیری ماشین
- ساخته
- حفظ
- ساخت
- بسیاری
- بیشینه ساختن
- به حداکثر می رسد
- به حداکثر رساندن
- بیشترین
- ممکن است..
- معنی
- به معنی
- اندازه گیری
- مکانیزم
- مکانیسم
- دیدار
- حافظه
- ذکر شده
- با
- روش
- قدرت
- میلیون
- به حداقل رساندن
- حد اقل
- خردسال
- دقیقه
- کاهش
- ML
- حالت
- مدل
- مدل
- مدرن
- مانیتور
- بیش
- اکثر
- چندگانه
- باید
- طبیعت
- لزوما
- لازم
- نیاز
- جدید
- بعد
- نه
- به ویژه
- توجه داشته باشید
- اشاره کرد
- عدد
- تعداد
- هدف
- مشاهده کردن
- گرفتن
- واضح
- اتفاق می افتد
- شانس
- of
- غالبا
- on
- ONE
- فقط
- عملیاتی
- عمل
- عملیات
- بهینه
- بهینه سازی
- گزینه
- or
- سفارش
- دیگر
- دیگران
- در غیر این صورت
- ما
- تولید
- روی
- اوراق
- موازی
- پارامتر
- پارامترهای
- ویژه
- عبور
- عبور می کند
- الگوهای
- توقف
- برای
- انجام
- کارایی
- انجام می دهد
- دکترا
- پدیده
- سیستم عامل
- افلاطون
- هوش داده افلاطون
- PlatoData
- به علاوه
- نقطه
- فقیر
- پر جمعیت
- ممکن
- پست
- قدرت
- عملی
- ماقبل
- دقیقا
- پیش بینی
- قابل پیش بینی
- پیش گویی
- پیشگو
- ترجیح می دهند
- ارائه شده
- جلوگیری از
- قبلی
- قبلا
- قیمت
- قیمت گذاری
- اصلی
- از اصول
- اولویت بندی
- روند
- فرآوری شده
- فرآیندهای
- در حال پردازش
- تولید کردن
- محافظت از
- ارائه
- ارائه
- فراهم می کند
- عمومی
- منتشر شده
- هدف
- نمایش ها
- بالا بردن
- نرخ
- نسبتا
- نسبت
- رسیدن به
- واقعی
- زندگی واقعی
- زمان واقعی
- دلیل
- دریافت
- توصیه
- توصیه
- كاهش دادن
- را کاهش می دهد
- مراجعه
- اشاره
- رژیم
- رژیمها
- ارتباط
- روابط
- ماندن
- باقی مانده
- بقایای
- یادآور
- مکرر
- پاسخ
- تکرار
- گزارش
- نشان دادن
- درخواست
- درخواست
- درخواست
- نیاز
- ضروری
- نیاز
- مورد نیاز
- نیاز
- تحقیق
- پژوهشگر
- منابع
- منابع
- احترام
- پاسخ
- پاسخ
- نتیجه
- نتایج
- بازده
- راست
- مسیریابی
- ROW
- قانون
- دویدن
- در حال اجرا
- زمان اجرا
- حکیم ساز
- همان
- مقیاس پذیر
- مقیاس
- مقیاس گذاری
- سناریو
- سناریوها
- دانشمند
- حوزه
- دوم
- ثانیه
- بخش
- بخش
- دیدن
- مشاهده گردید
- را انتخاب کنید
- انتخاب شد
- انتخاب
- انتخاب
- ارسال
- در حال ارسال
- ارشد
- حس
- فرستاده
- جداگانه
- دنباله
- سلسله
- خدمت کرده است
- سرور
- سرور
- خدمات
- خدمت
- جلسه
- تنظیم
- محیط
- خرد شده
- sharding
- اشتراک گذاری
- اشتراک
- شیفت
- باید
- نشان داد
- نشان می دهد
- قابل توجه
- به طور قابل توجهی
- مشابه
- ساده
- به طور همزمان
- تنها
- اندازه
- کوچک
- کوچکتر
- So
- نرم افزار
- مزایا
- برخی از
- منبع
- متخصص
- خاص
- مشخصات
- مشخص شده
- مشخصات
- سرعت
- انشعاب
- پراکنده
- استاندارد
- شروع
- آغاز شده
- شروع می شود
- نوپا
- آماری
- ثابت
- گام
- مراحل
- هنوز
- توقف
- مهاجرت تحصیلی
- متعاقب
- قابل توجه
- چنین
- مناسب
- پشتیبانی
- پشتیبانی
- سیستم
- جدول
- خیاطی
- گرفتن
- Takeaways
- طول می کشد
- تیم
- فن آوری
- تکنیک
- تمایل
- مدت
- قوانین و مقررات
- آزمون
- نسبت به
- که
- La
- خط
- منبع
- شان
- سپس
- نظری
- نظریه
- آنجا.
- در نتیجه
- از این رو
- اینها
- آنها
- اشیاء
- این
- کسانی که
- سه
- از طریق
- توان
- زمان
- سری زمانی
- بار
- به
- با هم
- رمز
- نشانه
- هم
- جمع
- tp
- پی گیری
- قطار
- انتقال
- نقل و انتقالات
- دگرگونی
- ترانسفورماتور
- درست
- دور زدن
- دو
- نوع
- انواع
- به طور معمول
- زیر
- فهمیدن
- درک
- دانشگاه
- استفاده
- استفاده کنید
- مورد استفاده
- استفاده
- کاربر
- سابقه کاربر
- کاربران
- استفاده
- با استفاده از
- استفاده کنید
- معتبر
- ارزش
- ارزشها
- تغییرات
- تنوع
- بررسی
- همه کاره
- بسیار
- از طريق
- دید
- vs
- صبر کنيد
- می خواهم
- گرم
- بود
- مسیر..
- راه
- we
- وب
- خدمات وب
- خوب
- بود
- چی
- چه شده است
- چه زمانی
- هر زمان که
- در حالیکه
- که
- در حین
- WHO
- اراده
- با
- در داخل
- بدون
- مهاجرت کاری
- کارگر
- خواهد بود
- هنوز
- متورق
- شما
- شما
- زفیرنت