چرا Groq مثل تقلب به نظر می‌رسد

من اخیراً یک پایپ‌لاین چندعاملی با استفاده از LangGraph ساختم. Groq را با ارائه‌دهندگان استاندارد LLM مقایسه کردم. تفاوت بسیار عظیم بود.

سایر ارائه‌دهندگان شبیه یک فراخوانی API معمولی هستند. شما یک درخواست می‌فرستید و منتظر متن می‌مانید. اما Groq حس تقلب را دارد. یک مدل 70B قبل از اینکه من خواندن پرامپت خودم را تمام کنم، پاسخ کامل را برگرداند.

اکثر مردم تصور می‌کنند Groq از GPUهای بهتری استفاده می‌کند. این اشتباه است. Groq اصلاً از GPU استفاده نمی‌کند. آن‌ها تراشه جدیدی به نام LPU یا Language Processing Unit ساخته‌اند.

GPUها برای گرافیک و آموزش مدل‌ها ساخته شده‌اند. آن‌ها زمانی که دسته‌های عظیمی از داده‌ها را پردازش می‌کنید، خوب عمل می‌کنند. اما در استنتاج (inference) بلادرنگ با مشکل مواجه می‌شوند.

مشکل، «دیوار حافظه» (memory wall) است. در یک GPU، وزن‌های مدل در حافظه‌ای جدا از هسته‌های محاسباتی قرار دارند. تراشه زمان زیادی را صرف انتظار برای رسیدن داده‌ها می‌کند.

Groq این مشکل را با قرار دادن مستقیم حافظه روی تراشه حل کرد. آن‌ها به جای HBM از SRAM استفاده می‌کنند. این کار یک شکاف ۱۰ برابری در پهنای باند ایجاد می‌کند. همچنین اگر تأخیر (latency) را در نظر بگیرید، دسترسی به داده‌ها را ۲۰ برابر سریع‌تر می‌کند.

دلیل دیگری برای این سرعت وجود دارد: تعیین‌پذیری (determinism).

GPUها از زمان‌بندی پویا (dynamic scheduling) استفاده می‌کنند. تراشه در حین اجرا تصمیم می‌گیرد که چه کاری انجام دهد. این امر باعث ایجاد تأخیرهای بسیار کوچک می‌شود. Groq از رویکرد «نرم‌افزار-محور» استفاده می‌کند. کامپایلر آن‌ها تک‌تک عملیات و دستورالعمل‌ها را از قبل محاسبه می‌کند. تراشه از یک برنامه از پیش تعیین‌شده پیروی می‌کند و نیازی ندارد فکر کند که مرحله بعد چه کاری باید انجام دهد.

نتایج گویای همه چیز هستند: • مدل Llama 2 70B روی Groq با سرعت ۳۰۰ توکن در ثانیه اجرا می‌شود. • یک Nvidia H100 آن را با سرعت ۳۰ تا ۴۰ توکن در ثانیه اجرا می‌کند. • مدل Llama 3 8B روی Groq به سرعت بیش از ۱۳۰۰ توکن در ثانیه می‌رسد.

Groq همچنین کارآمدتر است. چون کار را بسیار سریع‌تر تمام می‌کند، انرژی کل کمتری به ازای هر توکن مصرف می‌کند.

این طراحی دارای موازنه (tradeoffs) است. SRAM گران است و فضای فیزیکی زیادی اشغال می‌کند. یک تراشه نمی‌تواند یک مدل غول‌آسا را در خود جای دهد. برای سرویس‌دهی به مدل‌های بزرگ، به صدها LPU نیاز دارید که با هم کار کنند. این موضوع باعث می‌شود سخت‌افزار گران‌تر از GPUها باشد.

هدف Groq آموزش مدل‌ها نیست. آن‌ها بر اجرای سریع‌ترین حالت ممکن مدل‌های موجود مانند Llama یا Mixtral تمرکز دارند.

صنعت به سمت استفاده از هر دو رویکرد حرکت می‌کند. GPUها آموزش‌های سنگین و پردازش‌های اولیه را انجام می‌دهند و LPUها گفتگوهای سریع و بلادرنگ را مدیریت می‌کنند.

Nvidia برای کل محاسبات بهینه شده است. Groq برای این بهینه شده که اطمینان حاصل کند محاسبات هرگز منتظر داده‌ها نمی‌ماند. برای عامل‌های هوش مصنوعی (AI agents) بلادرنگ، هدف دوم است که اهمیت دارد.

Source: https://dev.to/priyanshu79/why-groq-feels-like-cheating-29hm

Optional learning community: https://t.me/GyaanSetuAi