FlexGen، موتوری برای اجرای ربات‌های هوش مصنوعی بر روی یک GPU

FlexGen

FlexGen موتوری است که با هدف کاهش نیازهای منابع استنتاج مدل های زبان بزرگ به یک GPU ساخته شده است.

اخیری منتشر شد که گروهی از محققان از دانشگاه استنفورد، دانشگاه کالیفرنیا در برکلی، ETH زوریخ، دانشکده تحصیلات تکمیلی اقتصاد، دانشگاه کارنگی ملون، و همچنین Yandex و Meta کد منبع را منتشر کرده اند un موتور برای اجرای مدل های زبان بزرگ در سیستم هایی با منابع محدود

با اسم رمز «FlexGen» پروژه ای است که هدف آن کاهش قابل توجهی است الزامات منابع برای عملیات استنتاج LLM ارسال شده در GitHub، FlexGen فقط به Python و PyTorch نیاز دارد، اما بیشتر می‌تواند با یک GPU مانند NVIDIA Tesla T4 یا GeForce RTX 3090 استفاده شود.

به عنوان مثال: موتور توانایی ایجاد عملکردی شبیه ChatGPT و Copilot را فراهم می کند اجرای یک مدل OPT-175B از پیش آموزش دیده با پوشش 175 میلیارد پارامتر روی یک کامپیوتر معمولی با کارت گرافیک NVIDIA RTX3090 مجهز به 24 گیگابایت حافظه ویدئویی.

ذکر شده است که مدل های (LLM) از عملکرد ابزارهایی مانند ChatGPT و Copilot پشتیبانی می کنند. اینها مدل های بزرگی هستند که از میلیاردها پارامتر استفاده می کنند و بر روی حجم وسیعی از داده ها آموزش دیده اند.

نیازهای محاسباتی و حافظه بالا برای وظایف استنتاج LLM عموماً مستلزم استفاده از شتاب دهنده های پیشرفته است.

ما خوشحالیم که عموم مردم واقعاً در مورد FlexGen هیجان زده هستند. با این حال، کار ما هنوز در حال آماده سازی است و هنوز برای انتشار/اعلام عمومی آماده نیست. از بازخوردهای اولیه در مورد این پروژه، متوجه شدیم که نسخه های اولیه این README و سند ما در مورد هدف FlexGen نامشخص بودند. این یک تلاش اولیه برای کاهش منابع مورد نیاز LLM ها است، اما محدودیت های زیادی نیز دارد و در صورت وجود منابع کافی جایگزین موارد استفاده نیست.

استنتاج LLM فرآیندی است که در آن از یک مدل زبان برای ایجاد پیش‌بینی در مورد متن ورودی استفاده می‌شود: این شامل استفاده از یک مدل زبان، مانند یک مدل تولیدی مانند GPT (تبدیل پیش‌آموز مولد)، برای پیش‌بینی در مورد آنچه محتمل‌تر است. اتفاق افتادن. به عنوان یک پاسخ پس از یک متن خاص ورودی ارائه شود.

درباره FlexGen

این بسته شامل یک نمونه اسکریپت برای ایجاد ربات است. که به کاربر اجازه می دهد یکی از مدل های زبان در دسترس عموم را دانلود کنید و بلافاصله شروع به چت کنید.

به عنوان پایه، پیشنهاد می شود از یک مدل زبان بزرگ منتشر شده توسط فیس بوک، آموزش دیده در مجموعه های BookCorpus (10 هزار کتاب)، CC-Stories، Pile (OpenSubtitles، Wikipedia، DM Mathematics، HackerNews و غیره)، Pushshift.io استفاده شود. (بر اساس داده های Reddit)) و CCNewsV2 (بایگانی اخبار).

این مدل حدود 180 میلیارد توکن (800 گیگابایت داده) را پوشش می دهد. برای آموزش این مدل، 33 روز اجرای کلاستر با 992 پردازنده گرافیکی NVIDIA A100 80 گیگابایتی طول کشید.

موتور FlexGen با اجرای OPT-175B روی سیستمی با واحد پردازش گرافیکی NVIDIA T4 (16 گیگابایت)، عملکردی تا 100 برابر سریع‌تر از راه‌حل‌های ارائه‌شده قبلی نشان داد، و استفاده از مدل‌های زبان بزرگ را مقرون به صرفه‌تر کرد و به آن‌ها اجازه می‌دهد روی سیستم‌هایی بدون شتاب‌دهنده‌های تخصصی کار کنند.

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

در حال حاضر، FlexGen فقط از مدل های زبان OPT پشتیبانی می کند، اما در آینده، توسعه دهندگان همچنین قول اضافه کردن پشتیبانی از BLOOM (176 میلیارد پارامتر، پشتیبانی از 46 زبان و 13 زبان برنامه نویسی)، CodeGen (قابلیت تولید کد در 22 زبان برنامه نویسی) و GLM را نیز داده اند.

در پایان لازم به ذکر است که کد به زبان Python نوشته شده است، از چارچوب PyTorch استفاده می کند و تحت مجوز Apache 2.0 توزیع شده است.

برای علاقه مند به یادگیری بیشتر در مورد آن است، می توانید جزئیات را بررسی کنید در لینک زیر.


محتوای مقاله به اصول ما پیوست اخلاق تحریریه. برای گزارش یک خطا کلیک کنید اینجا.

اولین کسی باشید که نظر

نظر خود را بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند با *

*

*

  1. مسئول داده ها: میگل آنخل گاتون
  2. هدف از داده ها: کنترل هرزنامه ، مدیریت نظرات.
  3. مشروعیت: رضایت شما
  4. ارتباط داده ها: داده ها به اشخاص ثالث منتقل نمی شوند مگر با تعهد قانونی.
  5. ذخیره سازی داده ها: پایگاه داده به میزبانی شبکه های Occentus (EU)
  6. حقوق: در هر زمان می توانید اطلاعات خود را محدود ، بازیابی و حذف کنید.