من بیش از یک دهه در حوزه داده و هوش مصنوعی فعالیت کردهام و بیشتر دوران حرفهای خود را صرف عملیات یادگیری ماشین (MLOps) کردهام. من کار در این حوزه را پیش از آنکه MLOps در اواخر دهه ۲۰۱۰ به یک اصطلاح رسمی تبدیل شود، آغاز کردم. با اینکه امروزه MLOps یک اصطلاح جاافتاده است، اما شرکتها و تیمهای بسیار کمی از اصول صحیح آن پیروی میکنند.
در بسیاری از تیمهایی که امروزه با آنها روبرو میشوم، معمولاً نامتعادلی در تخصص وجود دارد. برخی از اعضای تیم تجربه عمیقی در علم داده دارند و میدانند چگونه مدلهای یادگیری ماشین (ML) را بسازند و مانیتور کنند، اما با شیوههای توسعه و عملیات (DevOps) کمتر آشنا هستند. برخی دیگر از پسزمینه قوی مهندسی نرمافزار میآیند و اصول دوآپس را به شدت دنبال میکنند، با این حال اغلب با مؤلفه یادگیری ماشین یا هوش مصنوعی به عنوان یک جعبه سیاه برخورد میکنند.
هیچکدام از این شرایط ذاتاً مشکلآفرین نیستند، اما هر دو چالشهایی را ایجاد میکنند زمانی که هدف تیم ساخت سیستمهای قابل اعتماد یادگیری ماشین/هوش مصنوعی باشد که به سایر تیمها یا سازمان اجازه میدهند با سرعت بیشتری ارزشآفرینی مداوم داشته باشند. موفقیت مستلزم پر کردن این شکاف است: پذیرش ماهیت غیرقطعی بسیاری از مؤلفههای یادگیری ماشین/هوش مصنوعی و در عین حال به کارگیری نظم و انضباط شیوههای دوآپس.
کتاب MLOps with Databricks بر یادگیری ماشین سنتی تمرکز دارد. حدود یک سوم آن به عملیات مدلهای زبانی بزرگ (LLMOps) اختصاص دارد که زیرمجموعه تخصصی MLOps است و بر برنامههای کاربردی ساخته شده پیرامون مدلهای زبانی بزرگ و بهطور گستردهتر، مدلهای پایه و چندوجهی مولد تمرکز دارد.
به همین معنا، MLOps شالوده و پایه را فراهم میکند: اصول و شیوههای ساخت، استقرار و نگهداری سیستمهای یادگیری ماشین. این اصول و روشها به طور طبیعی به دستههای جدیدتر مدلها تسری مییابند، حتی اگر تأکید اغلب از آموزش به استنتاج تغییر کند.
در حالی که مدلهای پایه قابلیتهای قدرتمند جدیدی را باز کردهاند و به سرعت در طیف وسیعی از موارد استفاده پذیرفته میشوند، یادگیری ماشین سنتی از بین نمیرود. بسیاری از سیستمهای دنیای واقعی همچنان به آن متکی هستند و اصول اساسی پشت آن همچنان زیربنای برنامههای کاربردی مدرن هوش مصنوعی است.
هدف من کمک به حرفهایتر کردن حوزه یادگیری ماشین (و هوش مصنوعی به عنوان یک مفهوم وسیعتر) و قابلاعتمادتر و مستحکمتر کردن سیستمهای هوش مصنوعی که میسازیم است، تا تیمهای علمی بتوانند سریعتر و با سطوح بالاتری از اعتماد، ارزشآفرینی کنند.
چرا دیتابریکس (Databricks)؟
من معتقدم که MLOps درباره ابزارها نیست، بلکه درباره اصول است. با این حال، به شدت باور دارم که بهترین راه برای یادگیری MLOps تمرین عملی و استفاده مستقیم از ابزارها است. این امر ضروری است زیرا برای پشتیبانی از این اصول به مؤلفههای مختلف به هم پیوسته نیاز است. هیچ ابزار واحدی بینقص نیست و همه آنها متناسب با رایجترین موارد استفادهای که کاربرانشان با آنها سر و کار دارند، طراحی شدهاند.
هنگامی که شرکتها پلتفرم MLOps خود را طراحی میکنند، باید بین دو گزینه یکی را انتخاب کنند:
آنها میتوانند پلتفرم سرتاسری (End-to-End) را از ابزارهای ناهمگن و برتر مجزا (Best-of-Breed) بسازند – و سپس با تمام پیچیدگیهای ناشی از ترکیب این ابزارها با یکدیگر مواجه شوند. سازمانهایی که این مسیر را انتخاب میکنند اغلب در نهایت ترکیبی از ابزارهای متنباز (Open Source) و فروشندگان نرمافزارهای تجاری را به کار میگیرند.
به عنوان گزینهای دیگر، آنها میتوانند از یک فروشنده پلتفرم همهکاره (All-in-One) موجود برای MLOps استفاده کنند.
این یک انتخاب دشوار است و اینکه کدام گزینه درست است به عوامل زیادی بستگی دارد؛ مانند سطح دانش و اندازه تیمی که از پلتفرم نگهداری میکند، مشخصات راهاندازی زیرساخت (مانند داخلی/On-premises، چند ابری یا تک ابری)، اینکه شرکت از چه ابزارهای دیگری استفاده میکند و کاربران نهایی پلتفرم چه کسانی خواهند بود.
پلتفرمهای مختلفی برای MLOps به صورت همهکاره وجود دارد. از جمله آنها میتوان به Azure ML، AWS Sagemaker، Vertex AI و Databricks اشاره کرد. با وجود اینکه هیچکدام بینقص نیستند و هر کدام مزایا و معایب خود را دارند، اما برای من، دیتابریکس در طول سالها از سایرین متمایز بوده است.
دیتابریکس توسط سازندگان آپاچی اسپارک (Apache Spark) تأسیس شد و از نظر تاریخی، به طور گستردهای توسط تیمهای مهندسی داده استفاده شده است. دلتا لیک (Delta Lake) در ابتدا توسط دیتابریکس توسعه یافت و پرکاربردترین فرمت ذخیرهسازی لیکهاوس (Lakehouse) در جهان است. دیتابریکس با خرید شرکت Tabular (توسعهدهنده Apache Iceberg) و متنباز کردن Delta، تعهد خود را به متنباز بودن تقویت کرده است. دیتابریکس همچنین یونیتی کاتالوگ (Unity Catalog) را ایجاد کرد که آن را در سال ۲۰۲۴ به عنوان نرمافزار متنباز (OSS) منتشر نمود. این یک لایه حاکمیتی است که کنترل دسترسی متمرکز، قابلیت کشف و ردیابی (Lineage) را برای تمام داراییهای داده (از جمله مدلها) فراهم میکند. از آنجا که دادهها در قلب هر سیستم یادگیری ماشین و هوش مصنوعی قرار دارند، این امر همکاری بین تیمهای مهندسی داده و یادگیری ماشین/هوش مصنوعی را ساده میکند.
با تکامل حوزه یادگیری ماشین، دیتابریکس به عنوان یکی از بازیگران پیشرو در MLOps ظهور کرده است و بسیاری از ابزارهای آن در فضای تولید یادگیری ماشین همهگیر شدهاند. در واقع، دیتابریکس در نظرسنجی وضعیت تولید یادگیری ماشین (State of Production ML Survey) در سال ۲۰۲۵ از مؤسسه هوش مصنوعی اخلاقی و یادگیری ماشین، در بیشتر دستهها در بین سه رتبه برتر قرار گرفت.
یکی از ابزارهای شاخص، MLflow است که به خوبی شناخته شده و بهطور گسترده استفاده میشود. این ابزار یکی از اولین ابزارها برای ردیابی آزمایشها و ثبت مدلها بود. با این حال، همه نمیدانند که MLflow توسط دیتابریکس توسعه یافته است و به عنوان یک سرویس مدیریتشده MLflow با فضاهای کاری پلتفرم سازمانی آن یکپارچه شده است که بسیاری از جنبههای MLOps را ساده میکند.
در نهایت، دیتابریکس شرکت Tecton را نیز خریداری کرده است که یکی از بازیگران پیشرو در موتورهای مخزن ویژگی (Feature Store Engines) محسوب میشود. این ابزار شکاف بین دریاچه داده (Data Lake) و خطوط لوله داده یادگیری ماشین را پر میکند.
تمرکز دیتابریکس بر نرمافزارهای متنباز و تبدیل کردن این ابزارها به بخشی از پلتفرم خود، این شرکت را به یک بازیگر قدرتمند در حوزه داده و هوش مصنوعی تبدیل کرده است. اینها برخی از دلایلی هستند که دیتابریکس را به ابزار انتخابی من برای کتاب MLOps with Databricks تبدیل کردهاند. این ترجیح من همچنین برگرفته از تجربه عملی گستردهام در استفاده از دیتابریکس در محیطهای دنیای واقعی، هم به عنوان یک مهندس و هم از طریق کار مشاورهایام است. در طول سالها، من استقرار سیستمهای یادگیری ماشین/هوش مصنوعی در محیط تولید را رهبری کردهام، از پذیرش MLOps و LLMOps در شرکتهای بزرگ پشتیبانی نمودهام و صدها متخصص را از طریق دورهها و کارگاهها آموزش دادهام.
بنابراین، با کار کردن با طیفرمسانی از ابزارها و پلتفرمها، ترجیح من برای دیتابریکس صرفاً بر اساس آشناییام با آن به دلیل استفاده گسترده نیست. من بارها دیدهام که این پلتفرم در کجاها از سایرین متمایز میشود؛ به خصوص زمانی که چالش از ساخت دموی هوش مصنوعی به بهرهبرداری قابلاعتماد از سیستمهای هوش مصنوعی در محیط تولید تغییر میکند.
کتاب MLOps with Databricks برای چه کسانی و چه منظوری نوشته شده است؟
این یک کتاب فنی است. این یعنی شما باید مقداری تجربه کاری در زمینه علم داده، داده، یادگیری ماشین یا مهندسی هوش مصنوعی داشته باشید. تمام کدهای پوشش داده شده در کتاب با پایتون نوشته شدهاند که معمولاً برای توسعه برنامههای کاربردی هوش مصنوعی استفاده میشود. اگر قبلاً با دیتابریکس کار کرده باشید، مطالعه کتاب آسانتر خواهد بود، اما این یک پیشنیاز قطعی نیست.
کتاب MLOps with Databricks همچنین شامل کدهای زیادی است. برای اینکه بیشترین بهره را ببرید، باید به درون کدجهش کنید و آن را گامبهگام آزمایش کنید. از سوی دیگر، من نمیخواهم کدها را کورکورانه اجرا کنید. به همین دلیل است که این کتاب ابتدا بر اصول MLOps تمرکز میکند و توضیح میدهد که چگونه استفاده از مؤلفههای مختلف دیتابریکس به روش صحیح، به پشتیبانی از این اصول کمک میکند.
کتاب MLOps with Databricks همچنین معماریها را پوشش میدهد و ملاحظات مختلفی را برای اینکه چرا یک معماری خاص انتخاب خوبی برای یک مورد استفاده خاص است، ارائه میدهد. معماران داده و هوش مصنوعی نیز حتی اگر کدها را اجرا نکنند، از این کتاب بهرهمند خواهند شد.
نوشتن یک کتاب فنی که ویژگیهای مختلف پلتفرم دیتابریکس را پوشش میدهد کار آسانی نیست. بر اساس تجربه من، این یکی از محصولات با سریعترین روند تکامل است. متوجه هستم که بخشهایی از کتاب ممکن است قدیمی شوند و امیدوارم با اتخاذ رویکرد «اصول-محور» این خطر را به حداقل برسانم. این یعنی اگرچه برخی از کدها، ابزارها و جزئیات فنی ممکن است منسوخ شوند، اما مبانی نظری و بهترین روشهای ارائهشده نباید کهنه شوند. من معتقدم که این کتاب به بسیاری از متخصصان داده و هوش مصنوعی کمک میکند تا جریانهای کاری یادگیری ماشین خود را با قویتر و قابلاعتمادتر کردن آنها بهبود ببخشند.
من کتاب MLOps with Databricks را به عنوان کتابچه راهنمایی نوشتهام که آرزو داشتم زمانی که برای اولین بار کار با دیتابریکس را شروع میکردم، در اختیار داشتم. یکی از نقاط دردناکی که متوجه شدم این است که در حالی که نمونههای زیادی از نحوه استفاده از مؤلفههای مختلف دیتابریکس وجود دارد، نمونههای بسیار کمی وجود دارند که دیدگاهی منسجم از نحوه کار کردن واقعی همه این مؤلفهها در کنار یکدیگر ارائه دهند. امیدوارم کتاب MLOps with Databricks آن نمونهها را برای شما فراهم کند، زمان زیادی را برای شما صرفهجویی کند و در سفر MLOps به شما کمک نماید.
ساختار کتاب MLOps with Databricks
این کتاب بر دو مورد استفاده اصلی تمرکز دارد: برنامه کاربردی یادگیری ماشین سنتی (که از آن برای نشان دادن مفاهیم ارائهشده در فصلهای ۲ تا ۶ استفاده میکنم) و یک برنامه کاربردی مبتنی بر مدل زبانی بزرگ (که در فصلهای ۷ تا ۹ به آن میپردازم). همچنین نحوه استقرار این برنامهها به روشی مستحکم را پوشش میدهد.
-
در فصل ۱، کتاب MLOps with Databricks را با تفکیک اصول و مؤلفههای MLOps که برای هر برنامه کاربردی هوش مصنوعی مرتبط هستند، آغاز میکنم.
-
در فصل ۲ کتاب MLOps with Databricks، شما را به بررسی عمیق گزینههای مختلف برای توسعه یک برنامه کاربردی روی دیتابریکس میبرم. همچنین جزئیات مرتبط با زیرساخت دیتابریکس را توضیح میدهم و اهمیت پیروی از بهترین شیوههای مهندسی نرمافزار را برجسته میکنم.
-
در فصل ۳ کتاب MLOps with Databricks، به بررسی مؤلفههای اصلی MLflow برای یادگیری ماشین سنتی میپردازم و نشان میدهم چگونه میتوانید از این مؤلفهها برای ردیابی آزمایشها و ثبت مدلها استفاده کنید. MLflow به شدت با قابلیت سرویسدهی مدل (Model Serving) در دیتابریکس مرتبط است.

-
در فصل ۴ کتاب MLOps with Databricks، معماریهای مختلف سرویسدهی مدل و زمان استفاده از هر یک را مورد بحث قرار میدهم و اجرای عملی آن معماریها را بررسی میکنم.
-
در فصل ۵ کتاب MLOps with Databricks، بر استقرار کل خط لوله یادگیری ماشین با استفاده از بستههای اتوماسیون اعلانمحور (Declarative Automation Bundles) تمرکز میکنم. این فصل تمام کدهایی را که در فصلهای قبل درباره آنها بحث کردیم گرد هم میآورد و نشان میدهد که چگونه تمام مراحل خط لوله با یکدیگر مرتبط هستند. همچنین درباره طراحی پلتفرم دیتابریکس، استراتژیهای استقرار و تست صحبت خواهیم کرد.
-
در فصل ۶ کتاب MLOps with Databricks، قابلیت مانیتورینگ کیفیت داده را پوشش میدهم. اهمیت مانیتورینگ را برجسته میکنم و به شما نشان میدهم چگونه از جداول استنتاج (Inference Tables) برای سادهسازی مانیتورینگ پایگاههای سرویسدهی مدل استفاده کنید.
فصلهای ۷ تا ۹ کتاب MLOps with Databricks بخش ویژهای را تشکیل میدهند که در آن بر قابلیتهای مدلهای زبانی بزرگ در دیتابریکس تمرکز میکنم و نشان میدهم چگونه اصول مطرحشده در سراسر کتاب در عمل برای برنامههای کاربردی هوش مصنوعی اعمال میشوند. من به طور خاص میخواستم این مطالب را به دلیل تغییر صنعت از یادگیری ماشین سنتی به سمت سیستمهای هوش مصنوعی و تقاضای رو به رشد پیرامون آنها بگنجانم.
پیشنویسهای اولیه کتاب MLOps with Databricks همه این موارد را تنها در یک فصل پوشش میدادند، اما مشخص شد که سطح عملیاتی بسیار وسیعتر از آن است که بتوان به همه آنها در یک جا پرداخت، بنابراین آن را به سه فصل تقسیم کردم. هر فصل نشان میدهد که چه مقدار از آنچه در فصلهای ۲ تا ۶ بررسی کردیم، در عمل برای برنامههای کاربردی مبتنی بر مدلهای زبانی بزرگ نیز کاربرد دارد.

-
فصل ۸ به MLflow برای هوش مصنوعی مولد میپردازد و اینکه چگونه از ارزیابی، ردیابی (Tracing) و جریان کاری توسعه برای این سیستمها پشتیبانی میکند.
-
فصل ۹ کتاب MLOps with Databricks استقرار و مانیتورینگ این سیستمها را در محیط تولید پوشش میدهد. این شامل مانیتورینگ هزینه نیز میشود، زیرا برای هوش مصنوعی مولد، هزینههای بار کاری یکی از سیگنالهای عملیاتی است که باید به دقت زیر نظر داشته باشید.
در فصل ۱۰ کتاب MLOps with Databricks، نحوه مواجهه با مقررات هوش مصنوعی، پیادهسازی بهترین شیوههای امنیتی و ایجاد حاکمیت مدل با استفاده از پلتفرم دیتابریکس را بررسی میکنم. من همچنین این موضوعات را دوباره به اصول عملیاتی، استقرار و مدیریت چرخه عمر بحثشده در سراسر کتاب مرتبط میکنم.