برنامه نویسی

10 پروژه MLOps منبع باز که درباره آنها نمی دانستید

خودت را تکرار نکن یک اصل اساسی در علم کامپیوتر است. به این ترتیب، مهندسان نرم افزار اغلب از کدهای در دسترس یا راه حل های از پیش ساخته شده برای مشکلات رایج استفاده می کنند. در نتیجه، برای پروژه‌های بزرگ یادگیری ماشین متکی به بسیاری از پروژه‌های منبع باز دیگر معمول است. به عنوان مثال، ترانسفورماتورها – کتابخانه ای که معمولاً برای ساخت مدل های مبتنی بر ترانسفورماتور استفاده می شود – به بیش از 1000 پروژه منبع باز دیگر متکی هستند.

استفاده از پروژه های متن باز برای ساخت پروژه شما دارای جنبه های مثبت و منفی است. استفاده از پروژه های متن باز مناسب، توسعه محصول شما را بدون نیاز به ساختن آن از ابتدا تسریع می کند. با این حال، اگر توسعه فعال یا عدم پشتیبانی برای پروژه های منبع باز انتخابی شما وجود نداشته باشد، ممکن است پروژه شما به تاخیر بیفتد.

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

سنجش قابلیت اطمینان پروژه های منبع باز

اگر به GitHub بروید، پروژه های متن باز متعددی را خواهید دید که در نگاه اول مفید به نظر می رسند. با این حال، همه آنها بالغ و آماده برای استفاده در محصولات تجاری نیستند. برای تعیین اینکه آیا باید از یک کتابخانه منبع باز خاص استفاده کنید یا نه، می توانید آن را بر اساس معیارهای زیر ارزیابی کنید:

  • مستندات و پشتیبانی: پروژه هایی با مستندات دقیق و پشتیبانی سریع (از طریق GitHub، Slack یا Discord) بهتر از پروژه هایی هستند که بدون آن هستند.
  • فعالیت: پروژه های منبع باز که به طور فعال درخواست ها و مشکلات را حل می کنند را می توان قابل اعتمادتر از پروژه های بایگانی شده یا قدیمی در نظر گرفت.
  • حامیان: پروژه هایی که توسط شرکت های دیگر حمایت می شوند قابل اعتماد هستند زیرا مشارکت کنندگان و نگهبانان برای ساخت و بهبود فعال پروژه دستمزد می گیرند.
  • مجوز: برخی از پروژه ها دارای مجوزهایی هستند که کاربران را از توزیع و استفاده از پروژه برای استفاده تجاری باز می دارد. از این رو، عاقلانه است که فایل “LICENSE” را قبل از استفاده تجاری به دقت بخوانید.

اکنون که معیارهای ارزیابی یک پروژه منبع باز را می دانید، اجازه دهید ده پروژه مفید MLOps منبع باز را که ممکن است نام آنها را نشنیده باشید، بررسی کنیم.

پروژه های یادگیری ماشین منبع باز

  1. KitOps
    در پروژه‌های یادگیری ماشین، مهندسان داده، دانشمندان داده و مهندسان یادگیری ماشین اغلب برای همکاری با یکدیگر مشکل دارند. انتقال مصنوعات (ویژگی‌ها، مدل‌ها، کد، مجموعه داده‌ها و غیره) شامل یک فرآیند نرم‌افزاری پیچیده است که می‌تواند مستلزم جلسات مکرر یا جلسات برنامه‌نویسی زوجی باشد. بسیاری سعی کرده‌اند این فرآیند را خودکار کنند، اما به ابزارهای متعددی نیاز دارد که می‌توانند پیچیدگی‌های بیشتری را ایجاد کنند.
    KitOps، ابزار منبع باز MLOps

    KitOps این پیچیدگی ها را با در نظر گرفتن تمام اجزای یک پروژه ML به عنوان یک واحد نرم افزاری واحد از بین می برد. این امر بسته‌بندی، نسخه‌سازی و ردیابی آن مؤلفه‌ها را آسان‌تر می‌کند و در نتیجه انتقال نرم بین ذینفعان مختلف ایجاد می‌شود.

    علاوه بر این، با KitOps، می توان اجزای جداگانه (داده، مدل یا کد) را باز کرد و روی آنها کار کرد. این امر همکاری و مدیریت وابستگی را ساده می کند. KitOps از اکثر ابزارهای موجود در اکوسیستم ML پشتیبانی می کند و دارای اسناد مبتدی پسند است که جابجایی را آسان تر می کند.

    تیم پشتیبان کیت اوپس اخیراً پروژه دومی به نام Jozu Hub را برای میزبانی ModelKits اعلام کرد. می‌توانید پیش‌نمایش را اینجا بررسی کنید و برای دسترسی زودهنگام از اینجا ثبت‌نام کنید.

  2. EvalML
    تنظیم فراپارامتر و ارزیابی مدل های ML جنبه های جدایی ناپذیر توسعه محصول ML هستند. EvalML یک کتابخانه AutoML است که هدف آن تسهیل فرآیند ساخت، بهینه‌سازی و ارزیابی مدل‌های ML با کمک به مهندسان برای اجتناب از آموزش دستی و تنظیم مدل‌ها است. همچنین شامل بررسی کیفیت داده ها و اعتبارسنجی متقابل است.
    EvalML

  3. برآمدگی. سوراخ
    Burr یک کتابخانه جدید است که بر روی کاربردهای مدل های زبان بزرگ (LLM) تمرکز دارد. Burr توسعه دهندگان را قادر می سازد تا با استفاده از بلوک های ساختمانی ساده پایتون، عوامل تصمیم گیری (چت ربات و شبیه سازی) بسازند و آنها را بر روی سخت افزار سفارشی مستقر کنند. شامل سه جزء است:

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

    بدیهی است که به کاربران اجازه می دهد تا تست های از پیش تعریف شده را اجرا کنند یا تست های سفارشی را برای مدل یادگیری ماشین خود ایجاد کنند. نتایج و معیارهای آزمایش محاسبه شده را می توان در یک داشبورد تعاملی نمایش داد که می تواند در زیرساخت ابر عمومی یا خصوصی میزبانی شود.

  5. اجرا مجدد
    اکثر ابزارها در فضای MLOps بر روی مدل ها و زیرساخت ها تمرکز دارند. برخلاف آن ابزارها، Rerun بر روی داده‌ها تمرکز دارد که برای هر پروژه یادگیری ماشینی ضروری است. Rerun یک پایگاه داده سری زمانی و تصویرساز برای داده های زمانی و چندوجهی است. این در رباتیک، محاسبات فضایی، شبیه سازی 2 بعدی/3 بعدی و امور مالی برای تأیید، اشکال زدایی و توضیح استفاده می شود. Rerun SDK ها (C++، Python و Rust) را برای ثبت داده هایی مانند تصاویر، تانسورها، ابرهای نقطه و متن فراهم می کند.
    اجرا مجدد

  6. عامل
    برخلاف سایر کتابخانه‌های موجود در لیست، Agenta یک پلت فرم توسعه دهنده LLM است. این به مهندسان اجازه می دهد تا در مورد درخواست ها، ارزیابی و نظارت بر برنامه های کاربردی مبتنی بر LLM همکاری کنند. همچنین با ترکیب بازخورد انسانی و استقرار برنامه های مبتنی بر LLM کمک می کند. Agenta مدل و کتابخانه ای است که به مهندسان اجازه می دهد از هر کتابخانه و مدلی استفاده کنند که به نوبه خود این ابزار را همه کاره تر و مفیدتر می کند.
    عامل

  7. ماریمواریمو
    Jupyter Notebook ابزاری مؤثر برای آزمایش مدل‌های یادگیری ماشینی است، اما چند مشکل دارد: استقرار و همکاری در نوت‌بوک‌های Jupyter دشوار است. marimo یک نوت بوک واکنشی منبع باز برای پایتون است. برخلاف Jupyter Notebooks، نوت‌بوک‌های marimo قابل تکرار، تعاملی، git-friendly، آسان برای همکاری هستند و می‌توانند به عنوان اسکریپت یا برنامه استفاده شوند. در نتیجه، نوت بوک های marimo کاندیدای مناسبی برای ساخت ابزارهای داخلی مانند این ابزار مقایسه مدل هستند.
    ماریمو

  8. سدر
    یک مشکل جدی در پروژه های یادگیری ماشین، فرآیند پیچیده ای است که در انتقال مدل ها از توسعه به تولید وجود دارد. Kedro یک ابزار متن باز است که این مشکل را با به کارگیری بهترین شیوه های مهندسی نرم افزار حل می کند تا به شما کمک کند خطوط لوله مهندسی داده و علوم داده را ایجاد کنید که قابل تکرار، نگهداری و ماژولار هستند.

    علاوه بر این، kedro kedro-viz را برای تجسم گردش کار یادگیری ماشین فراهم می کند. همچنین به شما اجازه می دهد تا قالب های پروژه را برای سازماندهی پیکربندی، کد منبع، آزمایش ها، اسناد و نوت بوک ها در یک پروژه ایجاد کنید.
    سدر

  9. اسکای پایلوت
    LLM ها این روزها بسیار داغ هستند. شرکت ها و افراد از آنها برای خودکارسازی کارهای خسته کننده و بهبود کارایی و پاسخگویی استفاده می کنند. با این حال، LLM ها برای استقرار دست و پا گیر هستند و هزینه بالایی را متحمل می شوند.

اسکای پایلوت

Skypilot is an open source tool that helps engineers LLMs, AI models, or any batch jobs in the cloud while ensuring high availability. Its [autostop and autodown feature](https://skypilot.readthedocs.io/en/latest/reference/auto-stop.html) automatically stop and delete resources when they are not in use, resulting in low cloud bills.
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

  1. شکل ویژگی موفقیت یک مدل یادگیری ماشینی به کیفیت داده ها و در نتیجه ویژگی های ارائه شده به مدل متکی است. با این حال، در سازمان های بزرگ، اعضای یک تیم ممکن است از ویژگی های خوب توسعه یافته توسط تیم های دیگر در سازمان آگاه نباشند. یک فروشگاه ویژگی با ارائه یک مخزن مرکزی از ویژگی‌ها که برای همه تیم‌ها و افراد در یک سازمان قابل دسترسی است، به رفع این مشکل کمک می‌کند.

فرم ویژگی

[Featureform is a virtual feature store](https://docs.featureform.com/getting-started/architecture-and-components#resource-and-feature-registry) that enables data scientists to define, manage, and serve their ML model's features. The virtual feature store sits on top of the existing data infrastructure and orchestrates it to work like a traditional feature store. Its benefits include easy collaboration, organized experimentation, easy deployment (of features), and increased reliability.
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

در حال حاضر، باید واضح باشد که پروژه‌های ML بر پروژه‌های منبع باز متعددی تکیه می‌کنند تا مدلی را از آموزش به تولید ببرد. به این ترتیب، بسیار مهم است که ابزارهایی را انتخاب کنید که به راحتی با سایر ابزارهای MLOps ادغام شوند، مستندات خوبی داشته باشند و منحنی یادگیری کم عمقی داشته باشند. KitOps یکی از این ابزارها است. در کنار همه این ویژگی ها، نصب آن آسان است، آموزش های متعددی دارد و شامل پشتیبانی سازمانی از جوزو است.

اگر این پست برای شما مفید بود، با یک ستاره GitHub از ما حمایت کنید!
KitOps را با یک ستاره GitHub پشتیبانی کنید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا