LoRA چیست؟#

LoRA مخفف Low-Rank Adaptation است؛ روشی برای آموزش تکمیلی (فاین‌تیون) مدل‌های بزرگ بدون دست زدن به اصل مدل. در فاین‌تیون کامل، همه‌ی میلیاردها وزن مدل تغییر می‌کنند و سخت‌افزار سنگین لازم است. در LoRA وزن‌های اصلی ثابت می‌مانند و فقط چند ماتریس کوچک کنار آن‌ها آموزش داده می‌شود. خروجی کار یک فایل «آداپتور» است که در مقایسه با خود مدل بسیار کوچک است.

یک تشبیه ساده#

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

کجا با آن روبه‌رو می‌شوید#

  • ساخت تصویر: در سایت‌های اشتراک مدل، هزاران LoRA برای یک سبک نقاشی، یک شخصیت یا یک محصول خاص پیدا می‌شود که روی مدل اصلی سوار می‌شوند.
  • مدل‌های زبانی: برای این‌که یک مدل متن‌باز لحن برند، قالب گزارش یا اصطلاحات یک حوزه‌ی خاص را یاد بگیرد.
  • سرویس‌های فاین‌تیون: بسیاری از سرویس‌ها پشت صحنه از LoRA یا نسخه‌ی کوانتیزه‌ی آن به نام QLoRA استفاده می‌کنند.

محدودیت‌ها#

LoRA دانش تازه‌ی زیادی به مدل اضافه نمی‌کند؛ بیشتر رفتار، سبک و قالب را تغییر می‌دهد. برای این‌که مدل از اسناد به‌روز شما جواب بدهد، معمولاً RAG انتخاب بهتری است. همچنین هر آداپتور فقط با همان مدلی کار می‌کند که رویش آموزش دیده است.