۲۹ شهریور ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

Inside Phi 2: مدل زبان کوچک مایکروسافت

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

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

۲۰۲۳ بسیار سال مدل زبان بزرگ بود. مدل‌های GPT OpenAI، Llama متا، Google’s Palm و Anthropic’s Claude 2 همگی مدل های زبان بزرگ یا LLM با میلیاردها پارامتر هستند که بر روی محتوای آموزش داده شده از اینترنت، و برای تولید متن و کد استفاده می شود.

اما آنها تنها فناوری‌هایی نیستند که در حال توسعه هستند. نمونه موردی: Microsoft Research در حال بررسی روشی جایگزین برای ساخت مدل‌های هوش مصنوعی مولد که نتایج ثابتی را با تعداد بسیار کمتری از پارامترها ارائه می‌دهد. مدل زبان کوچک یا SLM را وارد کنید.

چرا مدل های زبان کوچک؟

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

در حال حاضر کارهای زیادی روی SLM ها انجام شده است که نتایج شگفت انگیزی دارد. یکی از خانواده‌های جالب‌تر مدل‌ها سری Phi تحقیقاتی مایکروسافت، که اخیراً از مجوز تحقیقاتی به مجوز MIT مجاز تر تغییر کرده است.

Microsoft Research از رویکردی استفاده کرده است که آن را «کتاب‌های درسی تمام چیزی است که نیاز دارید» برای آموزش سری Phi از SLM‌های خود استفاده کرده است. ایده آموزش استراتژیک مدل با استفاده از منابع معتبر، به منظور ارائه پاسخ‌ها به شکلی واضح و مختصر است. برای آخرین نسخه، Phi 2، داده‌های آموزشی مایکروسافت محتوای مصنوعی و اطلاعات خزیدن در وب را ترکیب کرده است.< /p>

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

چگونه هوش مصنوعی قبلاً کدنویسی را برای همیشه تغییر داده است

آموزش SLM با داده های انتخاب شده

Microsoft Research اشاره می‌کند که کیفیت داده‌های آموزشی مورد استفاده برای ارائه نتایج خوب و نشان دادن نوع رفتاری که در مدل‌های بسیار بزرگ‌تر دیده می‌شود، کلیدی است. تیم سازنده مدل‌های Phi به جای آموزش مدل بر روی مجموعه بزرگی از داده‌های وب، که ذاتاً تصادفی هستند، داده‌های آموزشی خود را با تمرکز بر کیفیت محتوا مدیریت می‌کنند. این تیم همچنین از دانش موجود از مدل‌های قبلی Phi برای شروع Phi 2 استفاده کرده است و سرعت آموزش را افزایش می‌دهد.

برخلاف ترانسفورماتورهای مقیاس بزرگتر، مدل‌های Phi هیچ یادگیری تقویتی مبتنی بر بازخورد انسانی دریافت نمی‌کنند. تنظیم داده های آموزشی این یادگیری تقویتی را غیر ضروری می کند. همچنین باعث می‌شود مدل کمتر بتواند خروجی‌های سمی یا مغرضانه ارائه دهد. با این حال، زباله در، زباله خارج اعمال می شود: می توان با انتخاب مجموعه ای از داده های آموزشی، نسخه ای از Phi را آموزش داد که عمداً سوگیری شده است. در نتیجه، باید هر SLM را قبل از استفاده آزمایش کنید تا مطمئن شوید که مطابق انتظار عمل می کند.

داده‌های مصنوعی که به‌عنوان بخشی از مجموعه آموزشی Phi استفاده می‌شود، خود توسط هوش مصنوعی تولید شده است، بنابراین باید به دقت بررسی شود تا اطمینان حاصل شود که نادرستی را شامل نمی‌شود. نسخه اول Phi برای کار به عنوان تولید کننده کد طراحی شده بود و آموزش دیده بود در پایگاه های کد موجود با مجوزهای مجاز؛ سپس اینها بیشتر انتخاب شدند تا کدهایی را که برای اهداف آموزشی مناسب نبود فیلتر کنند. Phi ممکن است تمام قدرت OpenAI’s Codex را نداشته باشد، اما می تواند نکات و ایده های مفیدی را برای کار با کد ارائه دهد – به خصوص زمانی که با یک فهرست جستجوی متمرکز بر کد جفت شود.

کتابهای درسی تمام چیزی هستند که نیاز دارید

خواندن مقاله اصلی کتابهای درسی همه آن چیزی است که نیاز دارید ارزش دارد و پیگیری آن، همانطور که آنها به جزئیات در مورد چگونگی توسعه مجموعه داده های آموزشی مصنوعی توسط تیم مدل با استفاده از GPT 3.5 برای ساخت می پردازند. هم نمونه کد و هم کتاب های درسی. یکی از نکات جالب این بود که چگونه آنها توانستند با اضافه کردن تصادفی بودن به دستورات مورد استفاده برای ایجاد محتوا، اسناد تولید شده را از شباهت بیش از حد جلوگیری کنند. هنگامی که یک مدل پایه تولید شد، تیم آن را با داده های دقیق تر تنظیم کرد، به عنوان مثال تنظیم های مختلف برای کارهای مختلف تولید کرد.

خودکارسازی CI/CD با GitHub Actions

اگرچه Phi 2 پارامترهای بسیار کمتری نسبت به مثلاً GPT 3.5 دارد، اما همچنان به یک محیط آموزشی اختصاصی نیاز دارد. SLM از یک مجموعه داده ۱.۴ تریلیون رمزی با ۲.۷ میلیارد پارامتر استفاده کرد و آموزش آن ۱۴ روز طول کشید. در حالی که به ۹۶ پردازنده گرافیکی Nvidia A100 نیاز داشت، آموزش زمان بسیار کمتر و منابع بسیار کمتری نسبت به آموزش یک LLM مانند GPT صرف کرد. آموزش یک SLM قابل تصور است که در دسترس اکثر سازمان ها است، به خصوص اگر از ظرفیت پرداخت در حین کار در یک ابر عمومی استفاده می کنید.

می‌توان فرمول‌بندی‌های جایگزین Phi را که بر روی مجموعه‌های داده مصنوعی مختلف ساخته شده‌اند، تصور کرد، به‌عنوان مثال کتابخانه‌ای از قراردادهای مصنوعی یا سایر انواع سند رایج. پس از آموزش، تنظیم دقیق با اسناد واقعی در دامنه هدف، خطر خطا را کاهش می دهد و به ارائه یک مدل پایه کمک می کند،

البته ساختن یا تنظیم نوع خود ضروری نیست. برای عملکرد اصلی چت، می‌توانید از Phi 2 همانطور که هست استفاده کنید، یا به احتمال زیاد، آن را به عنوان بخشی از یک برنامه مبتنی بر RAG (نسل تقویت‌شده بازیابی)، کار با LangChain یا رویکردی مشابه استفاده کنید. از آنجایی که Phi بخشی از Azure AI Studio (و به زودی Windows AI Studio)، می توان از آن هم در فضای ابری و هم در محل استفاده کرد.

استفاده از SLM در برنامه های خود

یک ساختار کوانتیزه شده از Phi 2 کمتر از ۱.۹ گیگابایت وزن دارد، به اندازه کافی کوچک که به عنوان بخشی از یک برنامه وب ارائه شود. (یک برنامه نمایشی Rust/WebAssembly را در Hugging Face repo.) در هنگام بارگیری پاسخ اولیه به کندی انجام می شود، اما هنگامی که SLM در حافظه پنهان ذخیره می شود، به طور معقولی پاسخگو است. این نیز بدون استفاده از GPU یا NPU است. شتاب دهنده ها باید به یک SLM اجازه دهند تا در کنار کدهای سنتی به خوبی کار کند.

هوش مصنوعی مسئول با دموکراتیک کردن دانش هوش مصنوعی شروع می شود

توجه به این نکته مهم است که SLMهایی مانند Phi 2 محدودیت‌های خود را دارند، به خصوص در مورد طول توکن درخواست‌ها. شما نباید انتظار داشته باشید که از دستورات پیچیده استفاده کنید. با این حال، اگر ورودی‌ها را به دقت پاکسازی کنید و محدودیت‌های سختی را برای طول رشته اعمال کنید، باید متوجه شوید که یک SLM اغلب درخواست‌ها را انجام می‌دهد، برای مثال در یک برنامه پرسش و پاسخ.

داشتن یک SLM محلی سبک وزن که بر روی داده های سفارشی تنظیم شده یا به عنوان بخشی از یک برنامه RAG محلی استفاده می شود، جایی که SLM رابط زبان طبیعی را برای جستجو فراهم می کند، یک چشم انداز جذاب است. یک نکته کلیدی این است که اندازه و منابع مورد نیاز SLM ها آنها را از نظر اقتصادی برای کارهایی که انجام آنها با LLM بسیار پرهزینه است، جذاب می کند.

قرار دادن یک SLM مانند Phi در گردش‌های کاری رایج، مانند ارائه سریع خلاصه‌های قابل خواندن و قابل فهم از داده‌های کلیدی، می‌تواند بسیار مفید باشد. نتیجه یک جایگزین جذاب برای پارادایم‌های قدیمی رابط کاربری خواهد بود، به ویژه هنگام کار با داده‌های بدون ساختار.

یک گزینه جالب ما را به اوایل دهه ۱۹۹۰ و تحقیق در مورد ایده “عوامل هوشمند” می برد. تیمی از SLMها مانند Phi که هر کدام یک عامل هوشمند را تامین می‌کنند و رابطی بین ما و دریایی از داده‌های بدون ساختار ارائه می‌کنند، می‌توانند یکی از راه‌های ارائه محیط محاسباتی مبتنی بر زمینه و تطبیقی ​​باشد که توسط محققان اولیه محاسباتی که همه جا حاضر بودند تصور می‌کردند.