LLM cost optimization — بهینهسازی هزینههای استفاده از LLM
بهینهسازی هزینههای استفاده از مدلهای زبانی بزرگ (LLM) — مجموعهای از راهبردها و روشهای فنی است که هدف آن کاهش منابع محاسباتی و مالی مورد نیاز برای آموزش، fine-tuning و بهویژه اجرای (inference) مدلهای زبانی بزرگ است. اهمیت این حوزه به دلیل هزینههای سنگین توسعه و بهرهبرداری از LLM است.
برای نمونه، آموزش مدل GPT-3 با ۱۷۵ میلیارد پارامتر، طبق برآوردها، حدود ۴٫۶ میلیون دلار روی زیرساخت ابری GPU هزینه داشته[1] و ۱٫۳ میلیون کیلوواتساعت برق مصرف کرده است[2]. با این حال، بخش عمده هزینهها اغلب به مرحله inference مربوط میشود. طبق برآوردها، هزینههای عملیاتی روزانه پشتیبانی از سرویس ChatGPT در اوایل سال ۲۰۲۳ حدود ۷۰۰ هزار دلار (تقریباً ۰٫۰۰۳۶ دلار به ازای هر درخواست) بوده که چندین برابر هزینه یکباره آموزش است[3].
بهینهسازی در مرحله آموزش و انتخاب مدل
مدیریت مؤثر هزینهها از تصمیمات بنیادینی آغاز میشود که پیش از مرحله inference اتخاذ میشوند.
قوانین مقیاسبندی: اندازه مدل در برابر حجم داده
یکی از دستاوردهای کلیدی در درک اقتصاد آموزش LLM، قوانین مقیاسبندی Chinchilla است که پژوهشگران DeepMind در سال ۲۰۲۲ ارائه دادند. این قوانین نشان دادند که برای استفاده بهینه از بودجه محاسباتی، باید مدل را روی حجم داده بسیار بیشتری نسبت به آنچه پیشتر رایج بود آموزش داد[4].
تاریخاً فرض بر این بود که عملکرد عمدتاً با افزایش تعداد پارامترها بهبود مییابد. اما پژوهش Chinchilla نشان داد که مدل Chinchilla (۷۰ میلیارد پارامتر) که روی ۱٫۴ تریلیون token آموزش دیده، از نظر کیفیت از مدل بسیار بزرگتر GPT-3 (۱۷۵ میلیارد پارامتر) که تنها روی ~۳۰۰ میلیارد token آموزش دیده، پیشی میگیرد[5]. نسبت توصیهشده حدود ۲۰ token داده آموزشی به ازای هر پارامتر مدل است. این رویکرد امکان ساخت مدلهای فشردهتر و کارآمدتر را فراهم میکند و هم هزینههای آموزش و هم هزینههای inference بعدی را کاهش میدهد.
Fine-tuning و کارایی آن
به جای آموزش پرهزینه مدل از صفر، روش رو به رشدی که اکنون رایج شده، fine-tuning مدلهای متنباز موجود (مانند خانواده LLaMA و Falcon) است. برای کاهش بیشتر هزینهها، روشهای fine-tuning با کارایی پارامتری (Parameter-Efficient Fine-Tuning, PEFT) به کار میروند.
محبوبترین روش، LoRA (Low-Rank Adaptation)، امکان تطبیق مدل را از طریق بهروزرسانی تعداد کمی پارامتر اضافی فراهم میکند. پژوهشها نشان میدهند که LoRA میتواند هزینههای fine-tuning را دهها درصد (تا ~۶۸٪ در برخی سناریوها) کاهش دهد، با تأثیر ناچیز بر کیفیت[6].
کاهش اندازه مدل (Model Compression)
یکی از مهمترین جهتهای بهینهسازی، کاهش اندازه فیزیکی مدل با حفظ عملکرد آن است.
تقطیر دانش (Knowledge Distillation)
تقطیر دانش فرآیندی است که در آن یک مدل بزرگ و قدرتمند به عنوان «معلم» برای آموزش یک مدل فشردهتر «دانشآموز» استفاده میشود. دانشآموز یاد میگیرد تا پاسخهای معلم را روی مجموعه داده گستردهای تقلید کند و «دانش» او را فرا میگیرد. این روش امکان دستیابی به کیفیت قابل مقایسه در وظایف خاص با هزینهای به مراتب کمتر را فراهم میکند. برای نمونه، مدل DeepSeek-R1 با موفقیت از ۶۷۱ میلیارد پارامتر به ۷۰ میلیارد و حتی ۱٫۵ میلیارد پارامتر تقطیر شد، با افت کیفیت قابل قبول برای بسیاری از کاربردها[7].
کوانتیزاسیون (Quantization)
کوانتیزاسیون فرآیند کاهش دقت عددی مورد استفاده برای نمایش وزنهای مدل است. به جای اعداد ممیز شناور استاندارد ۳۲ بیتی یا ۱۶ بیتی، از اعداد صحیح ۸ بیتی یا حتی ۴ بیتی استفاده میشود.
- کوانتیزاسیون ۸ بیتی اندازه مدل را تقریباً ۵۰٪ کاهش میدهد با افت دقت حدود ۱٪.
- کوانتیزاسیون ۴ بیتی اندازه مدل را ۷۵٪ کاهش میدهد و در عین حال کیفیت رقابتی خروجیها را حفظ میکند[7].
در صورت وجود پشتیبانی سختافزاری (مانند GPU های مدرن Nvidia) و کتابخانههای نرمافزاری (مانند TensorRT)، کوانتیزاسیون میتواند سرعت inference را ۲ تا ۴ برابر افزایش دهد[8].
بهینهسازی در مرحله inference
پس از آموزش و استقرار مدل، بخش عمده هزینهها به استفاده روزمره از آن مربوط میشود.
دستهبندی درخواستها (Batching)
دستهبندی یعنی ترکیب چند درخواست کاربری در یک «batch» برای پردازش همزمان روی GPU. این کار بهرهوری تجهیزات و توان عملیاتی کلی را به طور قابل توجهی افزایش میدهد. برای LLM ها که تولید پاسخ به صورت token به token انجام میشود، مؤثرترین روش دستهبندی پیوسته (continuous/in-flight batching) است. این روش امکان افزودن پویای درخواستهای جدید به batch را در حین اتمام درخواستهای دیگر فراهم میکند، که از بیکاری GPU جلوگیری کرده و بهرهبرداری از آن را به حداکثر میرساند[9].
کَش کلیدها و مقادیر (KV Cache)
در مدلهای transformer، برای تولید هر token جدید، اطلاعات مربوط به تمام token های قبلی لازم است. برای جلوگیری از رشد نمایی محاسبات، از کَش کلیدها و مقادیر (KV Cache) استفاده میشود. سیستم نتایج میانی محاسبات مکانیزم attention برای زمینه پردازششده را ذخیره کرده و مجدداً از آنها استفاده میکند، که این امر تولید دنبالههای طولانی و گفتگوهای چند مرحلهای را بسیار کارآمدتر میسازد[7].
بهینهسازی مکانیزم attention
ذخیره KV-cache حجم قابل توجهی از حافظه را میطلبد. برای کاهش آن، نسخههای بهینهشدهای از مکانیزم attention توسعه یافتهاند:
- Multi-Query Attention (MQA): تمام سرهای attention از یک مجموعه مشترک از کلیدها و مقادیر استفاده میکنند.
- Grouped-Query Attention (GQA): یک مصالحه میانی است که در آن سرهای attention به گروههایی تقسیم میشوند و هر گروه از یک مجموعه مشترک از کلیدها و مقادیر بهره میبرد.
شرکت Meta با موفقیت GQA را در مدلهای LLaMA 2 به کار برد که موجب افزایش چشمگیر کارایی inference هنگام کار با زمینههای طولانی شد، بدون افت قابل توجه در کیفیت[10].
بهینهسازی زیرساخت و معماری سیستم
سیستمهای ترکیبی و Retrieval-Augmented Generation (RAG)
همیشه نیازی به بزرگترین و قدرتمندترین مدل برای یک وظیفه نیست. رویکرد ترکیبی یا آبشاری به این معناست که از یک مدل کوچک و ارزان برای درخواستهای ساده استفاده میشود و تنها در صورت شکست یا برای وظایف پیچیده، درخواست به مدل بزرگ و گرانتر هدایت میشود.
نمونه خاص و بسیار مؤثر چنین رویکردی، Retrieval-Augmented Generation (RAG) است. در این معماری، LLM میتواند نسبتاً فشرده باشد، زیرا برای پاسخ دادن از اطلاعات بهروز دریافتشده از یک پایگاه دانش خارجی (مانند مستندات سازمانی یا موتور جستجو) استفاده میکند. این نه تنها نیاز به اندازه مدل را کاهش میدهد، بلکه مشکل توهمات را نیز حل میکند. استقرار یک مدل تخصصی ۷۰ میلیارد پارامتری با RAG روی زیرساخت محلی میتواند ۲ تا ۴ برابر ارزانتر از استفاده از API مدل GPT-4 در فضای ابری باشد[11].
یادداشتها
- ↑ «OpenAI's GPT-3 Language Model: A Technical Overview». Lambda Labs. [۱]
- ↑ «The Energy Footprint of Humans and Large Language Models». Communications of the ACM. [۲]
- ↑ «The Inference Cost Of Search Disruption - Large Language Model Cost Analysis». SemiAnalysis. [۳]
- ↑ Hoffmann, J., et al. (2022). «Training Compute-Optimal Large Language Models». arXiv:2203.15556.
- ↑ Chow, T. (2024). «Three Kuhnian Revolutions in ML Training». Substack. [۴]
- ↑ «A Study to Evaluate the Impact of LoRA Fine-tuning on the Performance of Non-functional Requirements Classification». arXiv:2503.07927. (2025).
- ↑ 7.0 7.1 7.2 «LLM Inference Optimization: How to Speed Up, Cut Costs, and Scale AI Models». deepsense.ai. [۵]
- ↑ Jin, H., et al. (2024). «GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers».
- ↑ «Continuous vs dynamic batching for AI inference». Baseten Blog. [۶]
- ↑ «What is grouped query attention?». IBM. [۷]
- ↑ «Inferencing on-premises with Dell Technologies». Dell Technologies Analyst Paper. [۸]