Docker با در دسترس قرار دادن کانتینرها برای همه، نامی برای خود دست و پا کرد. اکنون، شرکتی که مترادف با توسعه کانتینری است، در تلاش است تا با آسانتر کردن اجرای و آزمایش مدلهای زبانی بزرگ (LLM) هوش مصنوعی برای توسعهدهندگان بر روی رایانههای شخصی خود با راهاندازی Docker Model Runner، شهرت بیشتری کسب کند.
Docker Model Runner یک ویژگی بتا جدید در Docker Desktop 4.40 برای Macهای مجهز به سیلیکون اپل است. این ویژگی به توسعهدهندگان امکان میدهد LLMها و سایر مدلهای هوش مصنوعی را روی رایانههای شخصی خود اجرا کنند. شما میتوانید مستقیماً از طریق خط فرمان به آن دسترسی داشته باشید. همچنین به طور یکپارچه در بقیه اکوسیستم Docker ادغام میشود.
چرا به صورت محلی؟ علاوه بر اینکه میتوانید آن را مستقیماً در جریان کار خود ادغام کنید، Docker Model Runner نیاز به فراخوانی رابطهای برنامهنویسی کاربردی (API) ابری خارجی را از بین میبرد. این به نوبه خود، حریم خصوصی دادهها را تضمین میکند، تأخیر را کاهش میدهد و هزینهها را پایین میآورد.
با Docker Model Runner، LLMهای شما به عنوان مصنوعات Open Container Initiative (OCI) بستهبندی میشوند. این به شما امکان میدهد مدلها را از Docker Hub یا سایر رجیستریها بکشید و آنها را با استفاده از ابزارهای آشنا در خطوط لوله CI/CD ادغام کنید. به عنوان مثال، میتوانید با استفاده از دستورات آشنای Docker CLI مانند «docker model pull»، «docker model run» و «docker model list» با مدلها کار کنید. به عبارت دیگر، مدلهای هوش مصنوعی "شهروندان درجه یک" در گردش کار Docker هستند، درست مانند کانتینرها و تصاویر.
اجرای LLMها بر روی ماشینهای محلی مدتهاست که یک چالش بوده است، که با ابزارهای پراکنده، مسائل مربوط به سازگاری سختافزاری و گردشهای کاری ناپیوسته مانع شده است. توسعهدهندگان اغلب چندین ابزار را دستکاری میکنند، محیطهای پیچیده را پیکربندی میکنند و مدلها را خارج از تنظیمات کانتینری خود مدیریت میکنند، که منجر به اصطکاک و افزایش هزینههای استنتاج ابری میشود.
برای انجام این ترفند، Docker Model Runner از llama.cpp استفاده میکند. این یک کتابخانه C++ متنباز است که استقرار و استنتاج کارآمد LLMها را بدون GPUها امکانپذیر میکند. در واقع، کریس ولونز، مهندس نرمافزار مشهور، گزارش میدهد که توانسته با موفقیت llama.cpp را به ویندوز XP پورت کند و یک مدل 360M را روی یک لپتاپ مربوط به سال 2008 اجرا کند. به طور خلاصه، شما میتوانید با این مدلها کار واقعی را روی رایانه شخصی کاری خود انجام دهید.
llama.cpp، همانطور که از نامش پیداست، به خوبی با LLMهای LLaMA متا هوش مصنوعی کار میکند. با این حال، به مدلهای LLaMA محدود نمیشود. به لطف استفاده از یک API سازگار با OpenAI، میتواند با مدلهای دیگر نیز کار کند. Docker در حال حاضر فهرستی از LLMهای محبوب را که برای موارد استفاده محلی مناسبتر هستند، در دسترس قرار داده است. سادهترین راه برای شروع، بررسی مخزن هوش مصنوعی Docker Hub است.
در حال حاضر کمی بیش از دوازده LLM وجود دارد، اما موارد بیشتری در راه است. Docker با رهبران هوش مصنوعی مانند گوگل، HuggingFace، Qualcomm، Spring AI، VMware Tanzu و Dagger همکاری میکند. این همکاریها مجموعه گستردهای از مدلها و ابزارهای با کیفیت بالا و بهینه شده را مستقیماً به گردش کار Docker میآورند و آزمایش و ساخت برنامههای کاربردی مبتنی بر هوش مصنوعی را به صورت محلی برای توسعهدهندگان آسانتر میکنند.
با نگاهی به آینده، Docker قصد دارد پشتیبانی را به پلتفرمهای بیشتری از جمله ویندوز با شتابدهی GPU گسترش دهد. علاوه بر این، این طرح به توسعهدهندگان امکان میدهد مدلهای سفارشی را با ادغام عمیقتر در اکوسیستم گستردهتر هوش مصنوعی منتشر کنند. این شرکت آیندهای را پیشبینی میکند که در آن اجرا، اشتراکگذاری و استقرار مدلهای هوش مصنوعی به اندازه کار با کانتینرها در حال حاضر یکپارچه و استاندارد شده باشد.
اما، صبر کنید! باز هم هست.
پروتکل متن مدل
Docker همچنین در حال ادغام پروتکل متن مدل (MCP) است. این یک استاندارد باز است که برای سادهسازی اتصال بین عوامل هوش مصنوعی و منابع داده، ابزارها و محیطهای کاربردی طراحی شده است.
MCP که در ابتدا توسط Anthropic توسعه یافته است، به سرعت به عنوان یک استاندارد بالفعل ظهور کرده است - که گاهی اوقات به عنوان "USB-C برای هوش مصنوعی" توصیف میشود - برای اتصال دستیاران هوش مصنوعی به طیف گستردهای از منابع، از جمله پایگاههای داده، APIها، خدمات ابری و سیستمهای فایل محلی. MCP با ارائه یک پروتکل جهانی، نیاز به کانکتورهای سفارشی برای هر ابزار یا منبع داده جدید را از بین میبرد و ساخت، استقرار و مقیاسبندی عوامل هوش مصنوعی را که میتوانند وظایف معنیدار و غنی از زمینه را در محیطهای مختلف انجام دهند، به طور چشمگیری آسانتر میکند.
Docker آن را از طریق Docker MCP Catalog ارائه میدهد. این کاتالوگ Docker Hub یک راه متمرکز برای کشف، اجرا و مدیریت بیش از 100 سرور MCP از ارائه دهندگان پیشرو، از جمله Grafana Labs، Kong، Neo4j، Pulumi، Heroku و Elasticsearch ارائه میدهد. توسعهدهندگان اکنون میتوانند ابزارهای فعال شده با MCP را به همان آسانی که سرویسهای کانتینری سنتی را راهاندازی میکنند، مرور و راهاندازی کنند.
این شرکت همچنین ابزار Docker MCP Toolkit را ارائه میدهد که مدیریت و امنیت درجه سازمانی را به گردشهای کاری MCP میآورد. این شامل ویژگیهایی مانند مدیریت دسترسی به رجیستری و تصویر، مدیریت اسرار و ادغام OAuth است که انتشار، مدیریت و اتصال ایمن سرورهای MCP را در محیطهای Docker موجود خود برای تیمها آسانتر میکند.
به گفته مارک کاویج، رئیس و مدیر ارشد عملیات جدید Docker، نکته تمام اینها این است که «ساخت برنامههای کاربردی هوش مصنوعی کاربردی نباید تفاوت اساسی با ساخت هر برنامه دیگری داشته باشد. توسعهدهندگان میخواهند هوش مصنوعی را در گردشهای کاری موجود خود ادغام کنند - به صورت محلی بسازند، آزمایش کنند و با اطمینان به تولید ارسال کنند. با شروع رفتار ابزارهای عاملی مانند سیستمهای نرمافزاری کامل، چالشهای قدیمی بستهبندی، نسخهبندی و احراز هویت به سرعت برمیگردند. Docker MCP Catalog همه اینها را در یک مکان، یک تجربه مطمئن و توسعهدهنده پسند در Docker Hub گرد هم میآورد، جایی که ابزارها تأیید شده، ایمن و آسان برای اجرا هستند.»
بنابراین، اگر میخواهید هوش مصنوعی را بدون خون، عرق و اشک بخشی از جریان کار خود کنید، و از قبل از Docker برای جریان کار توسعه خود استفاده میکنید، این مجموعه جدید از ابزارهای هوش مصنوعی شبیه یک برنده قطعی به نظر میرسد.