کتاب Machine Learning Platform Engineering: Build an internal developer platform for ML and AI systems (مهندسی پلتفرم یادگیری ماشین: ساخت یک پلتفرم توسعهدهنده داخلی برای سیستمهای یادگیری ماشین و هوش مصنوعی) نوشتهی بنجامین تان و همکاران، یک راهنمای عملی برای ساخت یک پلتفرم توسعهدهنده داخلی (IDP) تخصصی برای سیستمهای یادگیری ماشین و هوش مصنوعی است.
کتاب Machine Learning Platform Engineering با درک این موضوع که بسیاری از پروژههای یادگیری ماشین در مرحلهی عملیاتیسازی و تولید با شکست مواجه میشوند، به مخاطبان (متشکل از دانشمندان داده و مهندسان نرمافزار) نشان میدهد که چگونه با استفاده از ابزارهای منبعباز محبوبی مانند Kubeflow، MLFlow و Feast، کل زیرساخت مورد نیاز از جمله خطوط لولهی داده، آموزش مدل، استقرار و مانیتورینگ را از صفر پیادهسازی کنند.
در ادامه مقدمهای از کتاب Machine Learning Platform Engineering را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Machine Learning Platform Engineering:
ما این خوششانسی را داشتهایم که در یکی از هیجانانگیزترین دورههای فناوری در حوزه یادگیری ماشین (ML) کار کنیم. این حوزه با سرعتی نفسگیر در حال تحول است – از تحقیقات پیشگامانه گرفته تا کاربردهای عملی که زندگی میلیاردها نفر را تحت تأثیر قرار میدهد. بخشی از این دگرگونی بودن و تماشای این که سیستمهای یادگیری ماشین چگونه از مقالات تحقیقاتی به خدمات تولیدی تبدیل میشوند که کسبوکارهای واقعی را تغذیه میکنند، واقعاً خارقالعاده بوده است.
ما سه نفر – بنجامین، شانوپ و وارون – همگی حرفه خود را به عنوان مهندس نرمافزار آغاز کردیم. هدفمان این نبود که مهندس یادگیری ماشین شویم؛ اتفاقی وارد این مسیر شدیم. در سازمانهای خودمان، هر کدام خود را در موقعیتی یافتیم که مأمور شدیم مدلهای یادگیری ماشین را از نوتبوکها به محیط تولید ببریم. به سرعت فهمیدیم که اگرچه پیشینه مهندسی نرمافزار ما بسیار ارزشمند بود، اما یادگیری ماشین در محیط تولید به مجموعهای کاملاً جدید از مهارتها و رویهها نیاز دارد.
اولین استقرارهای تولیدی ما تجربهای فروتنانه بود. مدلهایی که در حین آموزش عملکرد عالی داشتند، در محیط تولید با مشکل مواجه میشدند. سیستمها به روشهای غیرمنتظرهای از کار میافتادند. خود را در چشماندازی پراکنده از ابزارها یافتیم و سعی میکردیم بفهمیم کدام یک از آنها واقعاً برای مسائل دنیای واقعی کار میکنند. از طریق آزمون و خطا، نشستهای رفع اشکال نیمهشب و یادگیری از اشتباهاتمان، کمکم درک کردیم که ساخت سیستمهای یادگیری ماشین قابل اعتماد به چه چیزهایی نیاز دارد.
این مسیر ما را به نوشتن کتاب Machine Learning Platform Engineering ترغیب کرد. خواستیم آنچه را آموختهام تقطیر کنیم و با جامعه گستردهتر به اشتراک بگذاریم. اکوسیستم ابزارهای یادگیری ماشین عظیم و پراکنده است – برای هر مؤلفه یک پلتفرم یادگیری ماشین، دهها گزینه وجود دارد.
از طریق آزمایش در سازمانهای خودمان، ابزارها و الگوهایی را شناسایی کردهایم که برای سیستمهای تولیدی به خوبی کار میکنند. کتاب Machine Learning Platform Engineering حاصل آن چیزی است که آموختهایم.
توجه به این نکته مهم است که مهندسی یادگیری ماشین هنوز حوزهای نوپاست. بهترین رویهها در حال ظهور هستند، نه تثبیتشده. نباید هیچ چیزی در کتاب Machine Learning Platform Engineering را به عنوان حقیقت مطلق در نظر بگیرید، زیرا این حوزه برای چنین برداشتی بیش از حد سریع در حال تحول است. آنچه برای ما کار میکند ممکن است برای شما کار نکند و بدون شک ابزارهای بهتری ظهور خواهند کرد.
هدف ما ارائه الگوها و اصولی است که فراتر از ابزارهای خاص هستند. زمانی که ما کتاب Machine Learning Platform Engineering را تصور کردیم، چند ماه بعد ChatGPT منتشر شد و بار دیگر چشمانداز را دگرگون کرد. رویههای عملیات مدلهای زبانی بزرگ (LLMOps) هنوز در حال شکلگیری توسط جامعه هستند، اما ما دو فصل را به تجربیات خود در ساخت برنامههای مدل زبانی بزرگ اختصاص دادهایم.
در همان راستای پروژههای تشخیص نویسه نوری (OCR) و توصیهگر فیلم، راهنمایی عملی و پیشنهاد ابزارهای متنباز را بر اساس آنچه برای ما کار کرده است، ارائه میدهیم.
ما در سراسر کتاب Machine Learning Platform Engineering از پروژههای واقعی برای نشان دادن این مفاهیم در عمل استفاده میکنیم. شما یک سیستم OCR، یک توصیهگر فیلم میسازید و برنامههای مدل زبانی بزرگ را بررسی میکنید. اینها نمونههای اسباببازی نیستند – آنها نسخههای سادهشده سیستمهایی هستند که ما در محیط تولید ساختهایم، با تمام جزئیات پیچیدهای که در مهندسی یادگیری ماشین دنیای واقعی وجود دارد.
چه مهندس نرمافزاری باشید که به یادگیری ماشین کنجکاو است، چه دانشمند دادهای که به دنبال استقرار مدلهای خود هستید، کتاب Machine Learning Platform Engineering به شما کمک میکند تا در دنیای هیجانانگیز و چالشبرانگیز سیستمهای تولیدی یادگیری ماشین مسیریابی کنید. چه زمانه خارقالعادهای برای زنده بودن!
درباره کتاب Machine Learning Platform Engineering
بیشتر پروژههای یادگیری ماشین هرگز به مرحله تولید نمیرسند. چالش اصلی ساخت مدلها نیست – بلکه استقرار قابل اعتماد آنها، نظارت بر عملکردشان، و نگهداری از آنها در مقیاس بزرگ است. مهندسی پلتفرم یادگیری ماشین به شما میآموزد که چگونه زیرساخت کامل و گردشکارهای لازم برای عملیاتیسازی سیستمهای یادگیری ماشین، از ردیابی آزمایشها تا استقرار در تولید، را بسازید.
تا پایان کتاب Machine Learning Platform Engineering، شما یک پلتفرم کامل یادگیری ماشین را از صفر ساختهاید. بارهای کاری یادگیری ماشین را کانتینری و ارکستراسیون میکنید، پایپلاینهای آموزش را خودکار میسازید، مدلها را به عنوان APIهای مقیاسپذیر استقرار میدهید، و نظارت جامع پیادهسازی میکنید – همه اینها با استفاده از ابزارهای استاندارد صنعتی مانند داکر، Kubernetes، MLflow و Kubeflow.
فصلهای پایانی این رویهها را به مدلهای زبانی بزرگ (LLM) تعمیم میدهند و نشان میدهند که چگونه برنامههای تولیدی RetrievalAugmented Generation (RAG) را بسازید و امن کنید.
این کتاب برای چه کسانی است؟
کتاب Machine Learning Platform Engineering برای دانشمندان داده و مهندسان نرمافزاری است که میخواهند از Jupyter Notebook فراتر رفته و وارد سیستمهای تولیدی یادگیری ماشین شوند. باید با پایتون راحت باشید و آشنایی مقدماتی با مفاهیم یادگیری ماشین داشته باشید. هیچ تجربه قبلی با داکر، Kubernetes یا ابزارهای MLOps لازم نیست – ما همه چیز را از صفر خواهیم ساخت. متخصصان باتجربه یادگیری ماشین از رویکرد سیستماتیک به زیرساخت و پوشش مدرن LLMOps در فصلهای پایانی بهرهمند خواهند شد.
آنچه خواهید ساخت
سه سیستم کامل میسازید:
- زیرساخت پلتفرم یادگیری ماشین شامل کانتینریسازی (داکر)، ارکستراسیون (Kubernetes)، ردیابی آزمایشها (MLflow)، فروشگاه ویژگیها (Feast) و پایپلاینهای خودکار (Kubeflow)
- دو برنامه سنتی یادگیری ماشین: یک سیستم تشخیص اشیا برای کارتهای شناسایی و یک موتور توصیهگر فیلم – شامل آمادهسازی داده، آموزش، اعتبارسنجی، استقرار و نظارت
- یک سیستم RAG مبتنی بر LLM به نام DakkaBot که به سوالات درباره مستندات شرکت پاسخ میدهد، شامل مدیریت پرامپت، تست معنایی، نردههای ایمنی و بهینهسازی هزینه
ساختار کتاب: نقشه راه
کتاب Machine Learning Platform Engineering دارای چهار بخش، شامل ۱۳ فصل است؛ همچنین دو پیوست دارد. بخش ۱ توضیح میدهد که MLOps چیست و چگونه زیرساخت پایهای برای سیستمهای یادگیری ماشین ساخته میشود:
فصل ۱ چرخه حیات یادگیری ماشین، مهارتهای ضروری MLOps و مؤلفههای بنیادی مورد نیاز برای ساخت یک پلتفرم تولیدی یادگیری ماشین از صفر را معرفی میکند.
فصل ۲ چرخه حیات تکراری MLOps را بررسی میکند، MLOps را با DevOps سنتی مقایسه میکند، و سطوح بلوغ سازمانی در پیادهسازی عملیات یادگیری ماشین را بررسی مینماید.
فصل ۳ ستون فقرات زیرساختی پلتفرمهای یادگیری ماشین را پوشش میدهد، شامل کانتینریسازی با داکر، ارکستراسیون با Kubernetes، خودکارسازی CI/CD و نظارت با Prometheus و Grafana.
بخش ۲ بر ساخت قابلیتهای اصلی پلتفرم تمرکز دارد که فرآیندهای موقتی یادگیری ماشین را به سیستمهای آماده تولید تبدیل میکند:
فصل ۴ نحوه ردیابی آزمایشهای یادگیری ماشین با MLflow، مدیریت مدلها در ثبتنام مدل، و سازماندهی ویژگیها با استفاده از فروشگاه ویژگی Feast برای گردشکارهای تکرارپذیر یادگیری ماشین را نشان میدهد.
فصل ۵ ارکستراسیون پایپلاین با استفاده از Kubeflow Pipelines برای خودکارسازی گردشکارهای استنتاج دستهای را آموزش میدهد و نشان میدهد که چگونه مؤلفههای قابل استفاده مجدد ساخته و آنها را در پایپلاینهای آماده تولید ترکیب کنید.
فصل ۶ نحوه استقرار مدلهای یادگیری ماشین به عنوان نقاط پایانی API با استفاده از BentoML و نظارت بر رانش داده در محیط تولید با استفاده از Evidently برای موارد استفاده دستهای و بیدرنگ را نشان میدهد.
بخش ۳ کتاب Machine Learning Platform Engineering اصول MLOps را در عمل از طریق دو پروژه کامل و واقعی به نمایش میگذارد.
فصل ۷ شما را از طریق تحلیل داده با استفاده از نوتبوکهای Kubeflow و ساخت پایپلاینهای آمادهسازی داده قوی برای دو پروژه پایانی راهنمایی میکند: یک تشخیصدهنده کارت شناسایی و یک سیستم توصیهگر فیلم.
فصل ۸ کتاب Machine Learning Platform Engineering بر طراحی مؤلفههای آموزش ماژولار، ضبط معیارها و مصنوعات، و پیادهسازی استراتژیهای اعتبارسنجی مدل از طریق مثالهای عملی با استفاده از تشخیص اشیا YOLO تمرکز دارد.
فصل ۹ نحوه مقیاسدهی پایپلاینهای آموزش با استفاده از Persistent Volumeهای Kubernetes برای مدیریت کارآمد داده، یکپارچهسازی TensorBoard برای مصورسازی آموزش، و استفاده از MLflow برای ردیابی جامع آزمایشها و نسخهبندی مدل را نشان میدهد.
فصل ۱۰ شما را از طریق استقرار مدلهای یادگیری ماشین به عنوان سرویسهای تولیدی با استفاده از BentoML راهنمایی میکند، شامل توسعه محلی، کانتینریسازی، نقاط پایانی مشاهدهپذیری، و یکپارچهسازی با MLflow برای مدیریت یکپارچه چرخه حیات مدل.
فصل ۱۱ کتاب Machine Learning Platform Engineering نحوه پیادهسازی نظارت جامع برای برنامههای یادگیری ماشین را از طریق جمعآوری معیارها، هشداردهی با Alertmanager، تجمیع لاگ با Loki، تشخیص رانش داده با استفاده از Deepchecks، و تکنیکهای تفسیرپذیری مدل برای درک رفتار پیشبینی نشان میدهد.
بخش ۴ MLOps را به هوش مصنوعی مولد از طریق LLMOps تعمیم میدهد، سیستمهای RAG تولیدی را با پایگاههای داده برداری، مدیریت پرامپت و کنترلهای ایمنی میسازد، و سپس آنها را برای استقرار سازمانی با تست، نردههای ایمنی و بهینهسازی هزینه مقاوم میکند.
فصل ۱۲ LLMOps را با ساختن یک سیستم RAG تولیدی به نام DakkaBot معرفی میکند، شامل درونریزی اسناد، پایگاههای داده برداری، ارکستراسیون LangChain، توسعه UI با Chainlit، و مشاهدهپذیری جامع با Langfuse.
فصل ۱۳ کتاب Machine Learning Platform Engineering بر مقاومسازی برنامههای LLM برای تولید از طریق مهندسی پرامپت با Langfuse، تست معنایی با DeepEval و GEval، تست امنیتی مقاوم با Promptfoo، پیادهسازی نردههای ایمنی، و استراتژیهای بهینهسازی هزینه برای مدلهای قیمتگذاری مبتنی بر توکن تمرکز دارد.
پیوستها دستورالعملهای راهاندازی ضروری و مواد مرجع را برای پشتیبانی از تمرینهای عملی در سراسر کتاب Machine Learning Platform Engineering فراهم میکنند:
پیوست A فرآیند کامل نصب و راهاندازی پلتفرم MLOps را روی ماشین محلی شما گامبهگام توضیح میدهد، شامل ابزارهای خط فرمان (yq، Kustomize، kubectl)، توزیعهای Kubernetes (k3s برای لینوکس، microK8s برای مک)، استقرار Kubeflow با استفاده از Argo CD، و راهاندازی زیرساختهای پشتیبانی مانند MLflow، PostgreSQL، MinIO، Redis، BentoML و Evidently UI.
پیوست B یک راهنمای مرجع جامع برای نحو YAML و بهترین شیوهها ارائه میدهد، شامل جفتهای کلیدمقدار، لیستها، ساختارهای تو در تو، انواع داده، نامهای مستعار و لنگرها، سبکهای بلوکی در مقابل جریانی، و مشکلات رایج. از آنجا که پیکربندیهای Kubernetes به شدت به فایلهای YAML متکی هستند، این پیوست به عنوان مرجعی ضروری برای درک و رفع اشکال فایلهای مانیفست استفادهشده در تمرینها و استقرارهای کتاب عمل میکند.
سرفصلهای کتاب Machine Learning Platform Engineering:
- Machine Learning Platform Engineering
- contents
- preface
- acknowledgments
- about this book
- Who should read this book?
- What you’ll build
- How this book is organized: A road map
- About the code
- liveBook discussion forum
- about the authors
- about the cover illustration
- Part 1 Laying the MLOps foundation
- 1 Getting started with MLOps and ML engineering
- 2 What is MLOps?
- 3 Building applications on Kubernetes
- Part 2 Building core ML platform capabilities
- 4 Designing reliable ML systems
- 5 Orchestrating ML pipelines
- 6 Productionizing ML models
- Part 3 Applying MLOps in practice
- 7 Data analysis and preparation
- 8 Model training and validation: Part 1
- 9 Model training and validation: Part 2
- 10 Model inference and serving
- 11 Monitoring and explainability
- Part 4 Extending MLOps for large language models
- 12 Designing LLMpowered systems
- 13 Production LLM system design
- Appendix A Installation and setup
- Appendix B Basics of YAML
- index
جهت دانلود کتاب Machine Learning Platform Engineering میتوانید پس از پرداخت، دریافت کنید.





دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.