HeadlinesBriefing HeadlinesBriefing 12 languages

How to Make LLMs 3X Faster

ByteByteGo ·

🇬🇧 English

Every agent already runs a loop. Loop engineering adds a loop around the agent itself, enabling it to evaluate its output, try again when the work falls short, and refine its instructions when the same mistakes recur. Today, you perform that role: reviewing the work, diagnosing what went wrong, and prompting the agent again. This article shows how to automate that process with a working example, while exploring where human judgment still belongs.

A 70-billion-parameter model requires reading roughly 140 GBs of weights out of the GPU memory. On a modern data center GPU, this transfer can take tens of milliseconds. The actual calculation applied to these weights takes a fraction of that time. This means that the processor’s math units are unused for most of the time taken by the token generation step. Speculative decoding is a technique that converts this unused capacity into output.

A second, much smaller model produces several candidate tokens in advance. The large model evaluates all of them in a single forward pass instead of one pass per token, resulting in 2-3 times faster generation. To make things better, the text produced remains statistically identical to the output of the large model running alone.

Text generation works one token at a time. The model reads everything produced so far, computes a probability distribution over its vocabulary, selects the next token, appends that token to the input, and repeats the cycle. Each cycle is called a forward pass, and every forward pass runs the input through all layers of the model. Modern inference systems use a KV cache, which stores the attention state for tokens already processed, cutting the work done inside each pass, though the requirement for one pass per token still remains.

View original article →


🇸🇦 العربية

كيف تجعل نماذج LLM أسرع 3 مرات

كل وكيل يعمل بالفعل في حلقة. هندسة الحلقات تضيف حلقة حول الوكيل نفسه، مما تمكنه من تقييم مخرجاته، وإعادة المحاولة عندما يكون العمل دون المستوى، وتحسين تعليماته عندما تتكرر نفس الأخطاء. اليوم، أنت تؤدي هذا الدور: مراجعة العمل، وتشخيص ما حدث خطأ، وإعادة توجيه الوكيل. يوضح هذا المقال كيفية أتمتة هذه العملية بمثال عملي، مع استكشاف أين لا يزال الحكم البشري ضروريًا.

نموذج يحتوي على 70 مليار معلمة يتطلب قراءة حوالي 140 جيجابايت من الأوزان من ذاكرة GPU. على وحدة معالجة رسومات حديثة في مركز بيانات، قد يستغرق هذا النقل عشرات المللي ثانية. الحساب الفعلي المطبق على هذه الأوزان يستغرق جزءًا صغيرًا من ذلك الوقت. هذا يعني أن وحدات الرياضيات في المعالج تظل غير مستخدمة معظم الوقت الذي يستغرقه خطوة توليد الرموز. فك الترميز التخميني هو تقنية تحول هذه السعة غير المستخدمة إلى مخرجات.

نموذج ثانٍ أصغر بكثير ينتج عدة رموز مرشحة مسبقًا. يقوم النموذج الكبير بتقييمها جميعًا في تمريرة أمامية واحدة بدلاً من تمريرة لكل رمز، مما يؤدي إلى توليد أسرع بمقدار 2-3 مرات. والأفضل من ذلك، أن النص المنتج يظل مطابقًا إحصائيًا لمخرجات النموذج الكبير الذي يعمل بمفرده.

توليد النص يعمل رمزًا برمز. يقرأ النموذج كل ما تم إنتاجه حتى الآن، ويحسب توزيع الاحتمالات على مفرداته، ويختار الرمز التالي، ويضيف هذا الرمز إلى الإدخال، ويكرر الدورة. كل دورة تسمى تمريرة أمامية، وكل تمريرة أمامية تمرر الإدخال عبر جميع طبقات النموذج. تستخدم أنظمة الاستدلال الحديثة ذاكرة تخزين مؤقت KV، التي تخزن حالة الانتباه للرموز التي تمت معالجتها بالفعل، مما يقلل العمل داخل كل تمريرة، على الرغم من أن شرط تمريرة واحدة لكل رمز لا يزال قائمًا.

الكيانات الرئيسية: الشركات: ByteByteGo

كيف يحقق فك الترميز التخميني توليد LLM أسرع بمقدار 2-3 مرات دون فقدان الجودة؟

يستخدم فك الترميز التخميني نموذجًا صغيرًا للمسودة للتنبؤ بعدة رموز مرشحة مسبقًا. ثم يقوم النموذج الكبير بتقييم جميع المرشحين في تمريرة أمامية واحدة، بدلاً من تمريرة لكل رمز. هذا يحول وقت GPU الخامل إلى عمل مفيد، مما يسرع التوليد بمقدار 2-3 مرات مع الحفاظ على المخرجات مطابقة إحصائيًا للنموذج الكبير وحده.

العربية version →


🇧🇩 বাংলা

LLM-কে 3 গুণ দ্রুততর করা

প্রতিটি এজেন্ট ইতিমধ্যে একটি লুপ চালায়। লুপ ইঞ্জিনিয়ারিং এজেন্টের চারপাশে একটি লুপ যোগ করে, যা এটিকে তার আউটপুট মূল্যায়ন করতে, কাজ অপর্যাপ্ত হলে আবার চেষ্টা করতে এবং একই ভুল পুনরাবৃত্তি হলে তার নির্দেশাবলী পরিমার্জন করতে সক্ষম করে। আজ, আপনি সেই ভূমিকা পালন করেন: কাজ পর্যালোচনা করা, কী ভুল হয়েছে তা নির্ণয় করা এবং এজেন্টকে আবার প্রম্পট করা। এই নিবন্ধটি একটি কার্যকর উদাহরণ সহ সেই প্রক্রিয়াটি স্বয়ংক্রিয় করার উপায় দেখায়, পাশাপাশি মানব বিচার এখনও কোথায় প্রয়োজন তা অন্বেষণ করে।

70 বিলিয়ন প্যারামিটার বিশিষ্ট একটি মডেলের GPU মেমরি থেকে প্রায় 140 GB ওজন পড়ার প্রয়োজন হয়। আধুনিক ডেটা সেন্টার GPU-তে, এই স্থানান্তর কয়েক দশ মিলিসেকেন্ড নিতে পারে। এই ওজনের উপর প্রয়োগ করা প্রকৃত গণনা সেই সময়ের একটি ভগ্নাংশ নেয়। এর অর্থ হল প্রসেসরের গণিত ইউনিটগুলি টোকেন জেনারেশন ধাপে নেওয়া সময়ের বেশিরভাগ সময় অব্যবহৃত থাকে। স্পেকুলেটিভ ডিকোডিং একটি কৌশল যা এই অব্যবহৃত ক্ষমতাকে আউটপুটে রূপান্তর করে।

একটি দ্বিতীয়, অনেক ছোট মডেল আগে থেকেই বেশ কয়েকটি প্রার্থী টোকেন উত্পাদন করে। বড় মডেলটি একটি একক ফরোয়ার্ড পাসে তাদের সব মূল্যায়ন করে, প্রতি টোকেনে একটি পাসের পরিবর্তে, ফলে 2-3 গুণ দ্রুত জেনারেশন হয়। আরও ভালো কথা, উত্পাদিত পাঠ্যটি একা চলমান বড় মডেলের আউটপুটের সাথে পরিসংখ্যানগতভাবে অভিন্ন থাকে।

টেক্সট জেনারেশন একবারে একটি টোকেন কাজ করে। মডেলটি এখন পর্যন্ত উত্পাদিত সবকিছু পড়ে, তার শব্দভান্ডারের উপর সম্ভাব্যতা বন্টন গণনা করে, পরবর্তী টোকেন নির্বাচন করে, সেই টোকেনটি ইনপুটে যুক্ত করে এবং চক্রটি পুনরাবৃত্তি করে। প্রতিটি চক্রকে ফরোয়ার্ড পাস বলা হয়, এবং প্রতিটি ফরোয়ার্ড পাস ইনপুটটিকে মডেলের সমস্ত স্তরের মাধ্যমে চালায়। আধুনিক ইনফারেন্স সিস্টেমগুলি KV ক্যাশ ব্যবহার করে, যা ইতিমধ্যে প্রক্রিয়াকৃত টোকেনগুলির জন্য মনোযোগের অবস্থা সঞ্চয় করে, প্রতিটি পাসের ভিতরে কাজ হ্রাস করে, যদিও প্রতি টোকেনে একটি পাসের প্রয়োজনীয়তা এখনও থাকে।

মূল সত্তা: কোম্পানি: ByteByteGo

স্পেকুলেটিভ ডিকোডিং কীভাবে গুণমান না হারিয়ে LLM জেনারেশন 2-3 গুণ দ্রুত করে?

স্পেকুলেটিভ ডিকোডিং একটি ছোট ড্রাফ্ট মডেল ব্যবহার করে আগে থেকেই বেশ কয়েকটি প্রার্থী টোকেন পূর্বাভাস দেয়। তারপর বড় মডেলটি একটি একক ফরোয়ার্ড পাসে সমস্ত প্রার্থী মূল্যায়ন করে, প্রতি টোকেনে একটি পাসের পরিবর্তে। এটি নিষ্ক্রিয় GPU সময়কে দরকারী কাজে রূপান্তর করে, জেনারেশন 2-3 গুণ দ্রুত করে এবং আউটপুটকে একা বড় মডেলের সাথে পরিসংখ্যানগতভাবে অভিন্ন রাখে।

বাংলা version →


🇩🇪 Deutsch

So machen Sie LLMs 3-mal schneller

Jeder Agent führt bereits eine Schleife aus. Schleifen-Engineering fügt eine Schleife um den Agenten selbst hinzu, die es ihm ermöglicht, seine Ausgabe zu bewerten, es erneut zu versuchen, wenn die Arbeit nicht ausreicht, und seine Anweisungen zu verfeinern, wenn dieselben Fehler erneut auftreten. Heute übernehmen Sie diese Rolle: die Arbeit überprüfen, diagnostizieren, was schief gelaufen ist, und den Agenten erneut auffordern. Dieser Artikel zeigt, wie man diesen Prozess mit einem funktionierenden Beispiel automatisiert, und untersucht, wo menschliches Urteilsvermögen weiterhin erforderlich ist.

Ein Modell mit 70 Milliarden Parametern erfordert das Lesen von etwa 140 GB Gewichten aus dem GPU-Speicher. Auf einer modernen Rechenzentrums-GPU kann diese Übertragung Dutzende von Millisekunden dauern. Die tatsächliche Berechnung, die auf diese Gewichte angewendet wird, dauert nur einen Bruchteil dieser Zeit. Das bedeutet, dass die Mathematik-Einheiten des Prozessors die meiste Zeit, die der Token-Generierungsschritt benötigt, ungenutzt bleiben. Spekulative Dekodierung ist eine Technik, die diese ungenutzte Kapazität in Ausgabe umwandelt.

Ein zweites, viel kleineres Modell erzeugt im Voraus mehrere Kandidaten-Token. Das große Modell bewertet alle in einem einzigen Vorwärtsdurchgang statt eines Durchgangs pro Token, was zu einer 2-3-mal schnelleren Generierung führt. Um es besser zu machen, bleibt der erzeugte Text statistisch identisch mit der Ausgabe des großen Modells, das allein läuft.

Die Textgenerierung funktioniert ein Token nach dem anderen. Das Modell liest alles, was bisher erzeugt wurde, berechnet eine Wahrscheinlichkeitsverteilung über seinen Wortschatz, wählt das nächste Token aus, fügt dieses Token zur Eingabe hinzu und wiederholt den Zyklus. Jeder Zyklus wird als Vorwärtsdurchgang bezeichnet, und jeder Vorwärtsdurchgang führt die Eingabe durch alle Schichten des Modells. Moderne Inferenzsysteme verwenden einen KV-Cache, der den Aufmerksamkeitszustand für bereits verarbeitete Token speichert und die Arbeit innerhalb jedes Durchgangs reduziert, obwohl die Anforderung eines Durchgangs pro Token weiterhin besteht.

Wichtige Entitäten: Unternehmen: ByteByteGo

Wie erreicht spekulative Dekodierung eine 2-3-mal schnellere LLM-Generierung ohne Qualitätsverlust?

Spekulative Dekodierung verwendet ein kleines Entwurfsmodell, um mehrere Kandidaten-Token im Voraus vorherzusagen. Das große Modell bewertet dann alle Kandidaten in einem einzigen Vorwärtsdurchgang, anstatt eines Durchgangs pro Token. Dies wandelt ungenutzte GPU-Zeit in nützliche Arbeit um, beschleunigt die Generierung um das 2-3-fache und hält die Ausgabe statistisch identisch zu der des großen Modells allein.

Deutsch version →


🇪🇸 Español

Cómo hacer que los LLM sean 3 veces más rápidos

Cada agente ya ejecuta un bucle. La ingeniería de bucles añade un bucle alrededor del propio agente, permitiéndole evaluar su salida, reintentar cuando el trabajo no alcanza el nivel esperado y refinar sus instrucciones cuando los mismos errores se repiten. Hoy, tú desempeñas ese papel: revisar el trabajo, diagnosticar lo que salió mal y volver a indicar al agente. Este artículo muestra cómo automatizar ese proceso con un ejemplo práctico, explorando dónde sigue siendo necesario el juicio humano.

Un modelo de 70 mil millones de parámetros requiere leer aproximadamente 140 GB de pesos de la memoria de la GPU. En una GPU moderna de centro de datos, esta transferencia puede tardar decenas de milisegundos. El cálculo real aplicado a estos pesos toma una fracción de ese tiempo. Esto significa que las unidades matemáticas del procesador están sin usar la mayor parte del tiempo que toma el paso de generación de tokens. La decodificación especulativa es una técnica que convierte esta capacidad no utilizada en salida.

Un segundo modelo mucho más pequeño produce varios tokens candidatos por adelantado. El modelo grande evalúa todos ellos en una sola pasada hacia adelante en lugar de una pasada por token, resultando en una generación 2-3 veces más rápida. Para mejorar las cosas, el texto producido permanece estadísticamente idéntico a la salida del modelo grande ejecutándose solo.

La generación de texto funciona un token a la vez. El modelo lee todo lo producido hasta ahora, calcula una distribución de probabilidad sobre su vocabulario, selecciona el siguiente token, lo añade a la entrada y repite el ciclo. Cada ciclo se llama una pasada hacia adelante, y cada pasada hacia adelante ejecuta la entrada a través de todas las capas del modelo. Los sistemas de inferencia modernos usan una caché KV, que almacena el estado de atención para tokens ya procesados, reduciendo el trabajo dentro de cada pasada, aunque el requisito de una pasada por token sigue existiendo.

Entidades clave: Empresas: ByteByteGo

¿Cómo logra la decodificación especulativa una generación de LLM 2-3 veces más rápida sin pérdida de calidad?

La decodificación especulativa usa un modelo borrador pequeño para predecir varios tokens candidatos por adelantado. Luego, el modelo grande evalúa todos los candidatos en una sola pasada hacia adelante, en lugar de una pasada por token. Esto convierte el tiempo inactivo de la GPU en trabajo útil, acelerando la generación 2-3 veces mientras mantiene la salida estadísticamente idéntica a la del modelo grande solo.

Español version →


🇫🇷 Français

Comment rendre les LLM 3 fois plus rapides

Chaque agent exécute déjà une boucle. L'ingénierie de boucle ajoute une boucle autour de l'agent lui-même, lui permettant d'évaluer sa sortie, de réessayer lorsque le travail est insuffisant et d'affiner ses instructions lorsque les mêmes erreurs se reproduisent. Aujourd'hui, vous jouez ce rôle : examiner le travail, diagnostiquer ce qui a mal tourné et redonner des instructions à l'agent. Cet article montre comment automatiser ce processus avec un exemple concret, tout en explorant où le jugement humain reste nécessaire.

Un modèle de 70 milliards de paramètres nécessite la lecture d'environ 140 Go de poids depuis la mémoire GPU. Sur un GPU moderne de centre de données, ce transfert peut prendre des dizaines de millisecondes. Le calcul réel appliqué à ces poids ne prend qu'une fraction de ce temps. Cela signifie que les unités mathématiques du processeur sont inutilisées pendant la majeure partie du temps pris par l'étape de génération de jetons. Le décodage spéculatif est une technique qui convertit cette capacité inutilisée en sortie.

Un deuxième modèle, beaucoup plus petit, produit plusieurs jetons candidats à l'avance. Le grand modèle les évalue tous en une seule passe avant, au lieu d'une passe par jeton, ce qui entraîne une génération 2 à 3 fois plus rapide. Pour améliorer les choses, le texte produit reste statistiquement identique à la sortie du grand modèle fonctionnant seul.

La génération de texte fonctionne un jeton à la fois. Le modèle lit tout ce qui a été produit jusqu'à présent, calcule une distribution de probabilité sur son vocabulaire, sélectionne le jeton suivant, ajoute ce jeton à l'entrée et répète le cycle. Chaque cycle est appelé une passe avant, et chaque passe avant fait passer l'entrée à travers toutes les couches du modèle. Les systèmes d'inférence modernes utilisent un cache KV, qui stocke l'état d'attention pour les jetons déjà traités, réduisant le travail à l'intérieur de chaque passe, bien que l'exigence d'une passe par jeton demeure.

Entités clés : Entreprises : ByteByteGo

Comment le décodage spéculatif permet-il une génération de LLM 2 à 3 fois plus rapide sans perte de qualité ?

Le décodage spéculatif utilise un petit modèle de brouillon pour prédire plusieurs jetons candidats à l'avance. Le grand modèle évalue ensuite tous les candidats en une seule passe avant, plutôt qu'une passe par jeton. Cela convertit le temps GPU inactif en travail utile, accélérant la génération de 2 à 3 fois tout en maintenant la sortie statistiquement identique à celle du grand modèle seul.

Français version →


🇮🇳 हिन्दी

LLM को 3 गुना तेज़ कैसे बनाएं

हर एजेंट पहले से ही एक लूप चलाता है। लूप इंजीनियरिंग एजेंट के चारों ओर एक लूप जोड़ती है, जिससे वह अपने आउटपुट का मूल्यांकन कर सकता है, काम कम पड़ने पर फिर से प्रयास कर सकता है, और जब वही गलतियाँ दोहराई जाती हैं तो अपने निर्देशों को परिष्कृत कर सकता है। आज, आप वह भूमिका निभाते हैं: काम की समीक्षा करना, गलत क्या हुआ इसका निदान करना, और एजेंट को फिर से प्रॉम्प्ट करना। यह लेख एक कार्यशील उदाहरण के साथ उस प्रक्रिया को स्वचालित करने का तरीका दिखाता है, साथ ही यह पता लगाता है कि मानवीय निर्णय अभी भी कहाँ आवश्यक है।

70 बिलियन पैरामीटर वाले मॉडल को GPU मेमोरी से लगभग 140 GB वज़न पढ़ने की आवश्यकता होती है। आधुनिक डेटा सेंटर GPU पर, यह स्थानांतरण दसियों मिलीसेकंड ले सकता है। इन वज़न पर लागू वास्तविक गणना उस समय का एक अंश लेती है। इसका मतलब है कि प्रोसेसर की गणित इकाइयाँ टोकन जनरेशन चरण द्वारा लिए गए अधिकांश समय के लिए अप्रयुक्त रहती हैं। स्पेक्युलेटिव डिकोडिंग एक तकनीक है जो इस अप्रयुक्त क्षमता को आउटपुट में परिवर्तित करती है।

एक दूसरा, बहुत छोटा मॉडल पहले से कई उम्मीदवार टोकन उत्पन्न करता है। बड़ा मॉडल उन सभी का मूल्यांकन एक ही फॉरवर्ड पास में करता है, प्रति टोकन एक पास के बजाय, जिसके परिणामस्वरूप 2-3 गुना तेज़ जनरेशन होता है। बेहतर बात यह है कि उत्पादित पाठ सांख्यिकीय रूप से अकेले चलने वाले बड़े मॉडल के आउटपुट के समान रहता है।

टेक्स्ट जनरेशन एक समय में एक टोकन काम करता है। मॉडल अब तक उत्पादित सब कुछ पढ़ता है, अपने शब्दावली पर संभाव्यता वितरण की गणना करता है, अगला टोकन चुनता है, उस टोकन को इनपुट में जोड़ता है, और चक्र दोहराता है। प्रत्येक चक्र को फॉरवर्ड पास कहा जाता है, और हर फॉरवर्ड पास इनपुट को मॉडल की सभी परतों के माध्यम से चलाता है। आधुनिक इंफेरेंस सिस्टम KV कैश का उपयोग करते हैं, जो पहले से संसाधित टोकन के लिए ध्यान स्थिति संग्रहीत करता है, प्रत्येक पास के अंदर काम को कम करता है, हालांकि प्रति टोकन एक पास की आवश्यकता अभी भी बनी रहती है।

मुख्य संस्थाएँ: कंपनियाँ: ByteByteGo

स्पेक्युलेटिव डिकोडिंग बिना गुणवत्ता हानि के LLM जनरेशन को 2-3 गुना तेज़ कैसे प्राप्त करता है?

स्पेक्युलेटिव डिकोडिंग एक छोटे ड्राफ्ट मॉडल का उपयोग करके पहले से कई उम्मीदवार टोकन की भविष्यवाणी करता है। फिर बड़ा मॉडल सभी उम्मीदवारों का मूल्यांकन एक ही फॉरवर्ड पास में करता है, प्रति टोकन एक पास के बजाय। यह निष्क्रिय GPU समय को उपयोगी कार्य में परिवर्तित करता है, जनरेशन को 2-3 गुना तेज़ करता है जबकि आउटपुट को अकेले बड़े मॉडल के सांख्यिकीय रूप से समान रखता है।

हिन्दी version →


🇮🇩 Bahasa Indonesia

Cara Membuat LLM 3 Kali Lebih Cepat

Setiap agen sudah menjalankan loop. Rekayasa loop menambahkan loop di sekitar agen itu sendiri, memungkinkannya mengevaluasi keluarannya, mencoba lagi ketika pekerjaan kurang memadai, dan menyempurnakan instruksinya ketika kesalahan yang sama terulang. Saat ini, Anda memainkan peran itu: meninjau pekerjaan, mendiagnosis apa yang salah, dan meminta agen lagi. Artikel ini menunjukkan cara mengotomatiskan proses itu dengan contoh yang berfungsi, sambil mengeksplorasi di mana penilaian manusia masih diperlukan.

Model dengan 70 miliar parameter memerlukan pembacaan sekitar 140 GB bobot dari memori GPU. Pada GPU pusat data modern, transfer ini dapat memakan waktu puluhan milidetik. Perhitungan aktual yang diterapkan pada bobot ini hanya memakan sebagian kecil dari waktu itu. Ini berarti unit matematika prosesor tidak digunakan selama sebagian besar waktu yang diambil oleh langkah pembuatan token. Decoding spekulatif adalah teknik yang mengubah kapasitas yang tidak digunakan ini menjadi keluaran.

Model kedua yang jauh lebih kecil menghasilkan beberapa token kandidat terlebih dahulu. Model besar mengevaluasi semuanya dalam satu forward pass alih-alih satu pass per token, menghasilkan generasi 2-3 kali lebih cepat. Untuk membuatnya lebih baik, teks yang dihasilkan tetap secara statistik identik dengan keluaran model besar yang berjalan sendiri.

Pembuatan teks bekerja satu token pada satu waktu. Model membaca semua yang telah dihasilkan sejauh ini, menghitung distribusi probabilitas atas kosakatanya, memilih token berikutnya, menambahkan token itu ke input, dan mengulangi siklus. Setiap siklus disebut forward pass, dan setiap forward pass menjalankan input melalui semua lapisan model. Sistem inferensi modern menggunakan cache KV, yang menyimpan status perhatian untuk token yang sudah diproses, mengurangi pekerjaan di dalam setiap pass, meskipun persyaratan satu pass per token tetap ada.

Entitas kunci: Perusahaan: ByteByteGo

Bagaimana decoding spekulatif mencapai generasi LLM 2-3 kali lebih cepat tanpa kehilangan kualitas?

Decoding spekulatif menggunakan model draf kecil untuk memprediksi beberapa token kandidat terlebih dahulu. Model besar kemudian mengevaluasi semua kandidat dalam satu forward pass, bukan satu pass per token. Ini mengubah waktu GPU yang menganggur menjadi pekerjaan yang berguna, mempercepat generasi 2-3 kali sambil menjaga keluaran secara statistik identik dengan model besar saja.

Bahasa Indonesia version →


🇯🇵 日本語

LLMを3倍高速化する方法

すべてのエージェントはすでにループを実行しています。ループエンジニアリングは、エージェント自体の周りにループを追加し、出力を評価し、作業が不十分な場合に再試行し、同じ間違いが繰り返される場合に指示を改良できるようにします。今日、あなたはその役割を果たしています:作業をレビューし、何が問題だったかを診断し、エージェントに再度プロンプトを送ります。この記事では、実際の例を使ってそのプロセスを自動化する方法を示し、人間の判断が依然として必要な場所を探ります。

700億パラメータのモデルは、GPUメモリから約140 GBの重みを読み取る必要があります。最新のデータセンターGPUでは、この転送に数十ミリ秒かかる場合があります。これらの重みに適用される実際の計算は、その時間のほんの一部しかかかりません。これは、プロセッサの数学ユニットがトークン生成ステップにかかる時間の大部分で使用されていないことを意味します。投機的デコーディングは、この未使用の容量を出力に変換する技術です。

2番目の、はるかに小さいモデルが、事前に複数の候補トークンを生成します。大きなモデルは、トークンごとに1回のパスではなく、単一のフォワードパスでそれらすべてを評価し、生成が2〜3倍高速になります。さらに良いことに、生成されるテキストは、単独で実行される大きなモデルの出力と統計的に同一のままです。

テキスト生成は一度に1トークンずつ機能します。モデルはこれまでに生成されたすべてを読み取り、語彙に対する確率分布を計算し、次のトークンを選択し、そのトークンを入力に追加して、サイクルを繰り返します。各サイクルはフォワードパスと呼ばれ、各フォワードパスは入力をモデルのすべてのレイヤーに通します。最新の推論システムはKVキャッシュを使用します。これは、すでに処理されたトークンのアテンション状態を保存し、各パス内の作業を削減しますが、トークンごとに1回のパスが必要という要件は依然として残ります。

主要エンティティ:企業:ByteByteGo

投機的デコーディングは、品質を損なわずにLLM生成を2〜3倍高速化するにはどうすればよいですか?

投機的デコーディングは、小さなドラフトモデルを使用して、事前に複数の候補トークンを予測します。次に、大きなモデルがすべての候補を単一のフォワードパスで評価します。トークンごとに1回のパスではなく。これにより、アイドル状態のGPU時間が有用な作業に変換され、生成が2〜3倍高速化され、出力は大きなモデル単独の出力と統計的に同一に保たれます。

日本語 version →


🇧🇷 Português

Como tornar LLMs 3 vezes mais rápidos

Cada agente já executa um loop. A engenharia de loop adiciona um loop ao redor do próprio agente, permitindo que ele avalie sua saída, tente novamente quando o trabalho ficar aquém e refine suas instruções quando os mesmos erros se repetirem. Hoje, você desempenha esse papel: revisar o trabalho, diagnosticar o que deu errado e instruir o agente novamente. Este artigo mostra como automatizar esse processo com um exemplo prático, explorando onde o julgamento humano ainda é necessário.

Um modelo de 70 bilhões de parâmetros requer a leitura de aproximadamente 140 GB de pesos da memória da GPU. Em uma GPU moderna de data center, essa transferência pode levar dezenas de milissegundos. O cálculo real aplicado a esses pesos leva uma fração desse tempo. Isso significa que as unidades matemáticas do processador ficam sem uso na maior parte do tempo da etapa de geração de tokens. A decodificação especulativa é uma técnica que converte essa capacidade ociosa em saída.

Um segundo modelo, muito menor, produz vários tokens candidatos antecipadamente. O modelo grande avalia todos eles em uma única passagem direta, em vez de uma passagem por token, resultando em geração 2-3 vezes mais rápida. Para melhorar, o texto produzido permanece estatisticamente idêntico à saída do modelo grande rodando sozinho.

A geração de texto funciona um token por vez. O modelo lê tudo o que foi produzido até agora, calcula uma distribuição de probabilidade sobre seu vocabulário, seleciona o próximo token, anexa esse token à entrada e repete o ciclo. Cada ciclo é chamado de passagem direta, e cada passagem direta executa a entrada por todas as camadas do modelo. Sistemas de inferência modernos usam um cache KV, que armazena o estado de atenção para tokens já processados, reduzindo o trabalho dentro de cada passagem, embora o requisito de uma passagem por token ainda permaneça.

Entidades-chave: Empresas: ByteByteGo

Como a decodificação especulativa alcança geração de LLM 2-3 vezes mais rápida sem perda de qualidade?

A decodificação especulativa usa um pequeno modelo de rascunho para prever vários tokens candidatos antecipadamente. O modelo grande então avalia todos os candidatos em uma única passagem direta, em vez de uma passagem por token. Isso converte tempo ocioso da GPU em trabalho útil, acelerando a geração em 2-3 vezes, mantendo a saída estatisticamente idêntica à do modelo grande sozinho.

Português version →


🇷🇺 Русский

Как сделать LLM в 3 раза быстрее

Каждый агент уже выполняет цикл. Цикловая инженерия добавляет цикл вокруг самого агента, позволяя ему оценивать свой вывод, повторять попытку, когда работа не соответствует ожиданиям, и уточнять свои инструкции, когда повторяются одни и те же ошибки. Сегодня эту роль выполняете вы: просматриваете работу, диагностируете, что пошло не так, и снова даете инструкции агенту. В этой статье показано, как автоматизировать этот процесс на рабочем примере, а также исследуется, где по-прежнему требуется человеческое суждение.

Модель с 70 миллиардами параметров требует чтения примерно 140 ГБ весов из памяти GPU. На современном GPU для центров обработки данных эта передача может занять десятки миллисекунд. Фактические вычисления, применяемые к этим весам, занимают лишь часть этого времени. Это означает, что математические блоки процессора простаивают большую часть времени, затрачиваемого на этап генерации токенов. Спекулятивное декодирование — это метод, который преобразует эту неиспользуемую мощность в вывод.

Вторая, гораздо меньшая модель заранее создает несколько кандидатных токенов. Большая модель оценивает их все за один прямой проход вместо одного прохода на токен, что приводит к ускорению генерации в 2-3 раза. Более того, создаваемый текст остается статистически идентичным выводу большой модели, работающей в одиночку.

Генерация текста работает по одному токену за раз. Модель читает все, что было создано на данный момент, вычисляет распределение вероятностей по своему словарю, выбирает следующий токен, добавляет его к входным данным и повторяет цикл. Каждый цикл называется прямым проходом, и каждый прямой проход пропускает входные данные через все слои модели. Современные системы вывода используют KV-кэш, который хранит состояние внимания для уже обработанных токенов, сокращая работу внутри каждого прохода, хотя требование одного прохода на токен остается.

Ключевые сущности: Компании: ByteByteGo

Как спекулятивное декодирование достигает ускорения генерации LLM в 2-3 раза без потери качества?

Спекулятивное декодирование использует небольшую черновую модель для предсказания нескольких кандидатных токенов заранее. Затем большая модель оценивает всех кандидатов за один прямой проход, а не за один проход на токен. Это преобразует простаивающее время GPU в полезную работу, ускоряя генерацию в 2-3 раза, сохраняя вывод статистически идентичным выводу большой модели в одиночку.

Русский version →


🇨🇳 简体中文

如何让LLM提速3倍

每个智能体已经在运行一个循环。循环工程在智能体自身周围添加一个循环,使其能够评估自己的输出,在工作不足时重试,并在相同错误重复出现时改进指令。今天,你扮演这个角色:审查工作,诊断问题所在,并再次提示智能体。本文通过一个实际示例展示如何自动化这个过程,同时探讨人类判断仍然适用的地方。

一个700亿参数的模型需要从GPU内存中读取约140GB的权重。在现代数据中心GPU上,这种传输可能需要几十毫秒。实际应用于这些权重的计算只占其中一小部分时间。这意味着在生成token的步骤中,处理器的数学单元大部分时间处于闲置状态。投机解码是一种将这种闲置容量转化为输出的技术。

第二个更小的模型预先产生几个候选token。大模型在单次前向传递中评估所有这些候选token,而不是每个token一次传递,从而使生成速度提高2-3倍。更妙的是,生成的文本在统计上与单独运行的大模型输出相同。

文本生成一次只处理一个token。模型读取到目前为止生成的所有内容,计算其词汇表上的概率分布,选择下一个token,将该token附加到输入中,然后重复循环。每个循环称为一次前向传递,每次前向传递都会将输入通过模型的所有层。现代推理系统使用KV缓存,它存储已处理token的注意力状态,减少了每次传递中的工作量,但仍然需要每个token一次传递。

关键实体:公司:ByteByteGo

投机解码如何在不损失质量的情况下实现LLM生成速度提升2-3倍?

投机解码使用一个小型草稿模型预先预测几个候选token。然后大模型在单次前向传递中评估所有候选token,而不是每个token一次传递。这将闲置的GPU时间转化为有用的工作,使生成速度提高2-3倍,同时保持输出与大模型单独运行时的统计相同。

简体中文 version →