تغییر
در بیشتر دو سال گذشته، معماری عامل توسط یک محدودیت سخت شکل میگرفت: هر توکن هزینه داشت و کنتور روی زیرساخت شخص دیگری میچرخید. تیمها منطقی واکنش نشان دادند. پرامپتها را کوتاه کردند، با شدت کش کردند و بزرگترین مدلها را برای مراحلی که واقعاً به آنها نیاز داشتند نگه داشتند. مدل منبع کمیاب بود؛ ارکستراسیون هر چیزی بود که دور آن جا میشد.
آن محدودیت در حال شل شدن است. مدلهای با وزن باز بخش زیادی از شکاف را در پیروی از دستور، استفاده از ابزار و خروجی ساختاریافته پر کردهاند، در حالی که پشتههای سرویسدهی به اندازه کافی کارآمد شدهاند تا آنها را با حجم معنادار روی سختافزار تحت مالکیت یا رزروشده اجرا کنند. پیامد عملی این نیست که مدلهای بزرگ میزبانیشده ناپدید میشوند. این است که هزینه حاشیهای یک توکن به یک پارامتر طراحی تحت کنترل شما تبدیل میشود، نه صورتحسابی که دریافت میکنید.
وقتی استنتاج حاشیهای ارزان و قابل پیشبینی باشد، سؤال جالب دیگر "کدام مدل؟" نیست، بلکه "چند بار، به چه ترتیبی، و چگونه تأیید شود؟" است. گلوگاه از انتخاب مدل به کیفیت ارکستراسیون و بهرهوری سختافزار مهاجرت میکند.
مسیریابی به معماری تبدیل میشود
اولین تغییر قابل مشاهده این است که مسیریابی مدل از یک تصمیم تأمین به یک تصمیم ساختاری تبدیل میشود. یک بار کاری عامل با حجم بالا به ندرت به طور یکنواخت دشوار است. این یک دنباله بلند از مراحل آسان است — طبقهبندی، استخراج، نرمالسازی، بازنویسی پرسوجوی بازیابی، اعتبارسنجی طرحواره — که با تعداد کمی از مراحل واقعاً دشوار نقطهگذاری شده است: برنامهریزی چند مرحلهای، رفع ابهام مبهم، ترکیب از منابع متناقض.
وقتی بتوانید مراحل آسان را روی یک مدل کوچک خودمیزبان اجرا کنید، مشخصات هزینه کل سیستم تغییر شکل میدهد. مراحل دشوار هنوز به یک مدل مرزی مسیریابی میشوند، اما اکنون اقلیت فراخوانیها را تشکیل میدهند. معماری به عنوان یک سیاست مسیریابی خوانده میشود: یک طبقهبند ارزان تصمیم میگیرد که کدام لایه هر مرحله را مدیریت کند، و لایه گرانقیمت رزرو میشود. آن سیاست کدی است که شما مالک، نسخهبندی و تست میکنید — نه نقطه پایانی یک فروشنده.
این مکانیزمی است که ارزش دارد درباره آن مشخص باشیم. یک لایه مسیریابی معمولی سه بخش دارد:
- یک سیگنال دشواری. یک مدل کوچک (یا یک اکتشافی بر اساس طول ورودی، تعداد ابزار و پیچیدگی طرحواره) مرحله ورودی را امتیازدهی میکند. این سیگنال ارزان و ناقص است؛ وظیفهاش محافظهکاری در تشدید است.
- یک نقشه لایه. هر لایه به یک استقرار مشخص اشاره میکند: یک مدل با وزن باز کوانتیزه روی GPUهای محلی، یک مدل کوچک میزبانیشده، یک مدل مرزی میزبانیشده. لایهها پشت یک رابط پایدار قابل تعویض هستند.
- یک مسیر بازگشت و تشدید. وقتی لایه ارزان در اعتبارسنجی شکست میخورد — JSON نامعتبر، استناد گمشده، فراخوانی ابزار ناموفق — مرحله روی لایه بعدی دوباره تلاش میشود. تشدید شبکه ایمنی است که به شما اجازه میدهد درباره لایه ارزان جسور باشید.

اقتصاد فقط در صورتی کار میکند که تشدید نادر و اندازهگیری شده باشد. اگر یک سوم فراخوانیهای لایه ارزان تشدید شوند، دو بار پرداخت کردهاید و چیزی به دست نیاوردهاید. آن اندازهگیری یک نگرانی ارکستراسیون است و جایی است که بیشتر تلاش مهندسی اکنون صرف میشود.
چه چیزی را ممکن میکند
استنتاج حاشیهای ارزان و قابل کنترل تغییر میدهد که چه طراحیهای عاملی مقرونبهصرفه هستند و بنابراین چه طراحیهایی ساخته میشوند.
پخش گستردهتر. یک مرحله برنامهریزی که قبلاً یک طرح نامزد تولید میکرد، اکنون میتواند چندین طرح تولید کند، هر کدام قبل از انتخاب ارزیابی و امتیازدهی شوند. نمونهبرداری از چندین مسیر استدلال و انتخاب بهترین، روشی شناختهشده برای افزایش قابلیت اطمینان است، اما استنتاج را چند برابر میکند. وقتی ضریب یک هزینه محلی کنترلشده باشد نه یک فاکتور به ازای هر فراخوانی، پخش به یک پیشفرض تبدیل میشود نه یک تجمل.
تأییدهای بیشتر. تأیید بخشی از طراحی عامل است که هزینه خود را جبران میکند و در فشار هزینه آسانترین بخش برای حذف است. یک مدل تأییدکننده ارزان که هر فراخوانی ابزار را دوباره میخواند، هر فیلد استخراجشده را با بازه منبعش بررسی میکند و ادعاهای پشتیبانینشده را رد میکند، میتواند روی هر مرحله اجرا شود نه روی یک نمونه. تأییدکننده نیازی به درخشش ندارد؛ نیاز به ثبات و ارزانی دارد تا همیشه اجرا شود.
ارزیابی مداوم. شاید مهمترین تغییر در هارنس ارزیابی باشد. وقتی استنتاج یک قلم هزینه تحت مالکیت شماست، یک مجموعه ارزیابی یک کار دستهای شبانه نیست که برای بودجه رقابت کند. این یک سرویس است که به طور مداوم در برابر هر تغییر پرامپت، سیاست مسیریابی و نسخه مدل اجرا میشود. تشخیص رگرسیون از "صبح روز بعد" به "کامیت بعدی" منتقل میشود. رانش رفتاری در یک مدل کوانتیزه یا یک مسیریاب دوباره تنظیمشده در حالی که تغییر هنوز در حال بررسی است ظاهر میشود.
هیچکدام از اینها تکنیکهای جدید نیستند. همه شناخته شده بودند و همه سهمیهبندی شده بودند. تغییر این است که محدودیت سهمیهبندی جابجا شده است.
چه هزینهای دارد
مالکیت استنتاج یک صورتحساب متغیر را با یک بار عملیاتی ثابت مبادله میکند و بار کوچک نیست.

برنامهریزی ظرفیت. یک نقطه پایانی میزبانیشده اوجها را جذب میکند. یک استقرار خودمیزبان این کار را نمیکند. باید بدانید حداکثر تعداد مراحل همزمان شما چقدر است، توکن بر ثانیه به ازای هر replica چقدر است، و چه مقدار فضای خالی برای اجراهای ارزیابی که اکنون با ترافیک تولید رقابت میکنند نگه دارید. کمتأمین کنید و تأخیر دقیقاً زمانی که عامل مشغولترین است کاهش مییابد؛ بیشتأمین کنید و مزیت هزینه در GPUهای بیکار تبخیر میشود. این یک مسئله پیشبینی با پیامدهای واقعی است و از بین نمیرود.
انتخابهای کوانتیزاسیون. اجرای یک مدل با وزن باز با دقت کاهشیافته معمولاً برای جا دادن توان عملیاتی مفید روی سختافزار موجود ضروری است. هر سطح کوانتیزاسیون یک مدل متفاوت با رفتار متفاوت است: خروجی ساختاریافته ممکن است قبل از متن آزاد تخریب شود و یادآوری زمینه بلند اغلب اول تخریب میشود. انتخاب یک جزئیات استقرار نیست؛ یک تغییر رفتاری است که باید مانند هر تغییر دیگری ارزیابی شود.
پین کردن نسخه. مدلهای مرزی میزبانیشده زیر پای شما تغییر میکنند، که مشکل خودش را دارد، اما حداقل تغییر یکنواخت است. یک ناوگان خودمیزبان وزنهای دقیق، نسخههای دقیق پشته سرویسدهی و مصنوعات کوانتیزاسیون دقیق را پین میکند. این بازتولیدپذیری میدهد و تعهد نگهداری را نیز میدهد: وصلههای امنیتی، بهروزرسانی درایور، و نظم برای برخورد با ارتقاء وزنها به عنوان یک انتشار با اجرای ارزیابی خودش.
ناوگانهای ناهمگن ارزیابی را پیچیده میکنند. این مصالحه صادقانه در مرکز این تز است. وقتی رفتار بر اساس مسیر متفاوت باشد، یک امتیاز ارزیابی تجمیعی واحد گمراهکننده است. یک تغییر پرامپت که لایه مرزی را بهبود میبخشد ممکن است بیصدا لایه ارزان را تخریب کند و تجمیع حرکت نکند. ارزیابی باید بر اساس مسیر برش داده شود و معیارهای سطح مسیر باید در طول زمان ردیابی شوند. هارنس دقیقاً به این دلیل پیچیدهتر میشود که معماری توانمندتر شده است.
هزینه دیگری نیز وجود دارد که به راحتی دستکم گرفته میشود: خود سیاست مسیریابی به یک مؤلفه با حالتهای شکست تبدیل میشود. یک سیگنال دشواری بدتنظیم مراحل دشوار را به لایه ارزان میفرستد، جایی که در اعتبارسنجی شکست میخورند و تشدید میشوند — یا بدتر، در اعتبارسنجی شکست میخورند و پذیرفته میشوند. مسیریاب به تستهای خودش، معیارهای خودش (نرخ تشدید، نرخ پذیرش لایه ارزان، هزینه به ازای هر کار تکمیلشده) و فرآیند بررسی خودش نیاز دارد.
محدودیت جابجا میشود
تغییر وزن باز اغلب به عنوان یک داستان هزینه روایت میشود و یکی هست. اما تغییر پایدار معماری است. وقتی استنتاج گران و خارجی بود، مدل محدودیت بود و ارکستراسیون لولهکشی. وقتی استنتاج ارزان و تحت مالکیت است، مدل یک مؤلفه است و ارکستراسیون محدودیت.
این بازتعریف میکند که تلاش مهندسی باید کجا برود. به سیاستهای مسیریابی میرود که اندازهگیری میشوند نه فرض. به تأییدی میرود که روی هر مرحله اجرا میشود چون میتواند. به هارنسهای ارزیابی میرود که به اندازه کافی سریع هستند تا به طور مداوم اجرا شوند و به اندازه کافی دانهریز تا رگرسیونهای خاص مسیر را بگیرند. به مدلهای ظرفیت میرود که بهرهوری را بالا نگه میدارند بدون گرسنه گذاشتن تولید.
هیچکدام از اینها رایگان نیست. این یک صورتحساب متفاوت است که با توجه عملیاتی پرداخت میشود نه هزینه به ازای هر توکن، و فقط زمانی ارزش پرداخت دارد که حجم به اندازه کافی بالا باشد که هزینه حاشیهای واقعاً مهم باشد. برای عاملهای کمحجم، یک نقطه پایانی میزبانیشده پاسخ صحیح باقی میماند. اشتباه این است که فرض کنیم پاسخ میزبانیشده با رشد حجم صحیح میماند — و کشف مسئله مسیریابی فقط پس از اینکه معماری حول یک لایه واحد سخت شده است.
تیمهایی که بیشترین سود را از اقتصاد وزن باز میبرند آنهایی نیستند که بزرگترین GPUها را دارند. آنهایی هستند که ارکستراسیونشان از قبل به اندازه کافی خوب بود تا از استنتاج ارزان بهرهبرداری کند، و کسانی که مسیریابی، تأیید و ارزیابی را به عنوان مهندسی درجه یک در نظر گرفتند نه به عنوان پیکربندی.
