Back home

پس از عمومی شدن مدل منبع باز، اولین چیزی که شکننده می شود قفل نسخه است.

وزن مدل هنوز قابل دستیابی است، اما نسخه ثابت ممکن است قابل تکرار نباشد.

پس از عمومی شدن یک مدل منبع باز، نسخه ثابت معمولاً اولین نسخه ای است که شل می شود، در حالی که فایل وزن اغلب پایدارترین است.

نام انبار هنوز وجود دارد، و نام مدل هنوز وجود دارد، اما ورودی واقعی مورد استفاده برای اجرای ارزیابی‌ها، انجام رگرسیون و اتصال ترافیک اغلب یکسان نیست. چیزی که امروز کشیدیم main است و هفته آینده همچنان همان مسیر خواهد بود، اما توکنایزر، قالب، بسته کوانتیزه‌سازی، نوع پیش‌فرض d و حتی پارامترهای توصیه‌شده در README تغییر کرده‌اند. چیزی که آنلاین می بینید این نیست که “مدل ناپدید می شود”، بلکه “همان نام مدل تبدیل به یک تحویل دیگر می شود”.

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

ورودی پیش فرض راحت تر از وزن است.

فایل وزن ثابت است، ورودی نیست.

model-name:latest این شیوه نوشتن آسان به نظر می رسد، اما مشکل اینجاست که موضوع “زمان به روز رسانی” را به بیرون واگذار می کند. اگر upstream توکنایزر را تغییر دهد، یک الگوی چت اضافه کند، یا بسته کمیت را دوباره تایپ کند، رفتار طرف دسترسی مطابق با آن تغییر خواهد کرد. نمرات ارزیابی ممکن است فقط کمی نوسان داشته باشد، اما خروجی آنلاین بی سر و صدا لحن خود را تغییر می دهد. عذاب آورترین بخش هنگام عیب یابی اینجاست: همه چیز در گزارش عادی به نظر می رسد، اما در واقع، ورودی دیگری فراخوانی می شود.

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

تصاویر، الگوها و بسته‌های کوانتیزه‌سازی باید با هم ثابت شوند

فقط قفل کردن وزنه کافی نیست.

پس از اینکه یک مدل منبع باز واقعاً وارد گردش کار شد، معمولاً حاوی بیش از یک .bin یا .safetensors است. همچنین توکنایزر، قالب چت، پارامترهای چارچوب استنتاج، فایل‌های کمی‌سازی، تصاویر دانلود، اسکریپت‌های راه‌اندازی و مسیرهای کش را به همراه خواهد داشت. اگر هر یک از آنها دریفت شود، ممکن است در نهایت نشان دهد که “مدل بدتر شده است”. در واقع، اغلب مدل تغییر نمی کند، بلکه بسته تحویل است.

model:
  repo: example/model
  revision: 8f3c1a2
  tokenizer_revision: 8f3c1a2
  cache_dir: /opt/model-cache

این نوع پیکربندی پیچیده به نظر می رسد، اما منجر به سه چیز می شود: تصویر مسئول در دسترس بودن است، شماره نسخه و هش مسئول تکرارپذیری هستند، و اسکریپت راه اندازی مسئول پارامترهای استنتاج ثابت است. بدون هیچ یک از این لایه ها، مدل موسوم به “از قبل عمومی” را فقط می توان یک محصول نیمه تمام در نظر گرفت. برای طرف دسترسی، مهم‌ترین چیز این نیست که آیا می‌توان آن را دانلود کرد یا نه، بلکه این است که آیا محتوای دانلود شده همچنان می‌تواند مجموعه‌ای از نتایج را سه هفته بعد ایجاد کند.

آنچه واقعاً باید حفظ شود، توانایی تولید مثل است

پس از اینکه مدل منبع باز عمومی شد، چیزی که تیم باید از آن محافظت کند یک ورودی مرموز نیست، بلکه تکرارپذیری است.

هنگامی که تکرارپذیری قطع شود، خط پایه ارزیابی تغییر می کند، نتایج A/B مخدوش می شود و پخش تصادف مرجع را از دست می دهد. زمانی که همه با استفاده از ضرب المثل “هفته گذشته عادی بود” درباره مشکل صحبت می کنند، مدیریت نسخه اساساً شکست خورده است. در این مرحله صحبت در مورد قابلیت های مدل چندان منطقی نیست. فقط با سفت کردن نسخه ثابت، همگام سازی تصویر، تأیید هش و مسیر برگشتی می توانیم واجد شرایط ادامه صحبت در مورد اثر باشیم.

این نوع مدل بیشتر شبیه یک مصنوع نرم افزاری است تا وب سرویس. اگر صفحه وب خراب است، شما همچنان می توانید 500 را ببینید، و نسخه مدل در حال حرکت است، و در بسیاری از موارد فقط به آرامی در خروجی تغییر می کند. در ظاهر هنوز هم همین نام است، اما در واقع نیمی از سیستم تغییر کرده است.

FAQ

What to read next

Related

Continue reading