ترجمه کتاب ساخت برنامههای کاربردی با مدلهای پایه - انتشارات O’Reilly
BOOK: O'Reilly_AI_Engineering_Building_Applications_with_Foundation_Models
مهندسی هوش مصنوعی به فرآیند ساخت برنامههای کاربردی بر روی مدلهای پایه اشاره دارد. مردم بیش از یک دهه است که در حال ساخت برنامههای کاربردی هوش مصنوعی هستند - فرآیندی که اغلب به عنوان مهندسی یادگیری ماشین (ML engineering) یا MLOps (مخفف عملیات یادگیری ماشین) شناخته میشود.
چرا اکنون در مورد مهندسی هوش مصنوعی صحبت میکنیم؟
اگر مهندسی ML سنتی شامل توسعه مدلهای ML است، مهندسی هوش مصنوعی مدلهای موجود را به کار میگیرد. در دسترس بودن و دسترسی پذیری مدلهای پایه قدرتمند منجر به سه عامل میشود که در کنار هم، شرایط ایدهآلی برای رشد سریع مهندسی هوش مصنوعی به عنوان یک رشته ایجاد میکنند:
عامل ۱: قابلیتهای هوش مصنوعی همهمنظوره (General-purpose AI capabilities)
مدلهای پایه قدرتمند هستند نه فقط به این که میتوانند وظایف موجود را بهتر انجام دهند، بلکه به این دلیل که میتوانند وظایف بیشتری را انجام دهند. برنامههای کاربردی که قبلاً غیرممکن تصور میشد اکنون ممکن شدهاند، و برنامههای کاربردی که قبلاً به آنها فکر نشده بود در حال ظهور هستند. حتی برنامههای کاربردی که امروز غیرممکن به نظر میرسند ممکن است فردا ممکن شوند. این موضوع هوش مصنوعی را برای جنبههای بیشتری از زندگی مفید میسازد و به طور قابل توجهی هم کاربری و هم تقاضا برای برنامههای کاربردی هوش مصنوعی را افزایش میدهد.
برای مثال، از آنجایی که هوش مصنوعی اکنون میتواند به خوبی انسانها و گاهی حتی بهتر بنویسد، میتواند هر وظیفهای که نیازمند ارتباطات است را به طور کامل یا جزئی خودکارسازی کند - که تقریباً همه چیز را شامل میشود. از هوش مصنوعی برای نوشتن ایمیلها، پاسخ به درخواستهای مشتریان و توضیح قراردادهای پیچیده استفاده میشود. هر فردی با یک کامپیوتر به ابزارهایی دسترسی دارد که میتوانند فوراً تصاویر و ویدیوهای باکیفیت و سفارشیشده تولید کنند تا به ایجاد مطالب بازاریابی، ویرایش عکسهای پروفایل حرفهای، تصویرسازی مفاهیم هنری، مصورسازی کتابها و غیره کمک کنند. هوش مصنوعی حتی میتواند برای سنتز دادههای آموزشی، توسعه الگوریتمها و نوشتن کد استفاده شود، که همه اینها به آموزش مدلهای قدرتمندتر در آینده کمک خواهند کرد.
عامل ۲: افزایش سرمایهگذاریها در هوش مصنوعی (Increased AI investments)
موفقیت چتجیپیتی (ChatGPT) باعث افزایش شدید سرمایهگذاری در هوش مصنوعی شد، هم از سوی سرمایهگذاران خطرپذیر و هم از سوی enterprises (شرکتهای بزرگ). از آنجایی که ساخت برنامههای کاربردی هوش مصنوعی ارزانتر و سریعتر به بازار عرضه میشوند، بازده سرمایهگذاری (ROI) برای هوش مصنوعی جذابتر شده است. شرکتها برای ادغام هوش مصنوعی در محصولات و فرآیندهای خود عجله دارند. مت راس، یک مدیر ارشد تحقیقات کاربردی در Scribd، به من گفت که هزینه تخمینی هوش مصنوعی برای موارد استفاده او از آوریل ۲۰۲۲ تا آوریل ۲۰۲۳ دو برابر کاهش یافته است.
تحقیقات گلدمن ساکس تخمین زد که سرمایهگذاری در هوش مصنوعی میتواند تا سال ۲۰۲۵ به ۱۰۰ میلیارد دلار در ایالات متحده و ۲۰۰ میلیارد دلار در سطح جهانی نزدیک شود. هوش مصنوعی اغلب به عنوان یک مزیت رقابتی ذکر میشود. FactSet دریافت که از هر سه شرکت در شاخص S&P 500، یک شرکت در تماسهای درآمدی (earnings calls) خود برای سهماهه دوم سال ۲۰۲۳ به هوش مصنوعی اشاره کرده است - سه برابر بیشتر از سال قبل. شکل ۱-۵ تعداد شرکتهای S&P 500 که از سال ۲۰۱۸ تا ۲۰۲۳ در تماسهای درآمدی خود به هوش مصنوعی اشاره کردهاند را نشان میدهد.

طبق WallStreetZen، شرکتهایی که در تماسهای درآمدی خود به هوش مصنوعی اشاره کردند، شاهد افزایش بیشتر قیمت سهام خود نسبت به آن که اشاره نکردند بودند: به طور متوسط ۴.۶٪ افزایش در مقایسه با ۲.۴٪. مشخص نیست که این رابطه علّی (causation) است (هوش مصنوعی این شرکتها را موفقتر میکند) یا همبستگی (correlation) (شرکتها موفق هستند زیرا سریعاً خود را با فناوریهای جدید تطبیق میدهند).
عامل ۳: مانع ورود کم برای ساخت برنامههای کاربردی هوش مصنوعی (Low entrance barrier to building AI applications)
رویکرد مدل به عنوان سرویس (Model as a Service) که توسط اوپنایآی و سایر ارائهدهندگان مدل محبوب شده است، به کارگیری هوش مصنوعی برای ساخت برنامهها را آسانتر میکند. در این رویکرد، مدلها از طریق APIها در معرض استفاده قرار میگیرند که queries (پرسوجوهای) کاربر را دریافت کرده و خروجیهای مدل را برمیگردانند. بدون این APIها، استفاده از یک مدل هوش مصنوعی مستلزم داشتن زیرساخت میزبانی و سرویسدهی آن مدل است. این APIها به شما امکان دسترسی به مدلهای قدرتمند را تنها با فراخوانیهای API تککلمهای میدهند.
نه تنها آن، هوش مصنوعی همچنین ساخت برنامههای کاربردی با حداقل کدنویسی را ممکن میسازد. اول، هوش مصنوعی میتواند برای شما کد بنویسد و به افراد بدون پیشینه مهندسی نرمافزار اجازه دهد تا به سرعت ایدههای خود را به کد تبدیل کرده و آن را در مقابل کاربران خود قرار دهند. دوم، شما میتوانید با این مدلها به زبان انگلیسی ساده (plain English) کار کنید، به جای این که مجبور به استفاده از یک زبان برنامهنویسی باشید. هر کسی، و واقعاً هر کسی، اکنون میتواند برنامههای کاربردی هوش مصنوعی توسعه دهد.
به دلیل منابعی که برای توسعه مدلهای پایه لازم است، این فرآیند فقط برای شرکتهای بزرگ (گوگل، متا، مایکروسافت، بایدو، تنسنت)، دولتها (ژاپن، امارات متحده عربی) و استارتآپهای بلندپرواز و دارای بودجه کافی (اوپنایآی، Anthropic، Mistral) امکانپذیر است. سام آلتمن، مدیرعامل اوپنایآی، در مصاحبهای در سپتامبر ۲۰۲۲ گفت که بزرگترین فرصت برای اکثریت قریب به اتفاق مردم، تطبیق این مدلها برای برنامههای کاربردی خاص خواهد بود.
دنیا به سرعت این فرصت را پذیرفته است. مهندسی هوش مصنوعی به سرعت به عنوان یکی از سریعالرشدترین رشتههای مهندسی - و به احتمال زیاد سریعالرشدترین آنها - ظهور کرده است. ابزارهای مهندسی هوش مصنوعی سریعتر از هر ابزار مهندسی نرمافزار قبلی در حال جذب توجه هستند. در عرض تنها دو سال، چهار ابزار منبع باز مهندسی هوش مصنوعی (AutoGPT, Stable Diffusion Web UI, LangChain, Ollama) توانستهاند ستارههای بیشتری در گیتهاب نسبت به بیتکوین جمعآوری کنند. آنها در مسیری هستند که حتی از محبوبترین فریمورکهای توسعه وب، از جمله React و Vue، از نظر تعداد ستاره پیشی بگیرند. شکل ۱-۶ رشد ستارههای گیتهاب ابزارهای مهندسی هوش مصنوعی را در مقایسه با بیتکوین، Vue و React نشان میدهد.
یک نظرسنجی لینکدین از آگوست ۲۰۲۳ نشان میدهد که تعداد متخصصانی که عباراتی مانند “هوش مصنوعی مولد (Generative AI)”، “ChatGPT”، “ (Prompt Engineering)” و “Prompt Crafting” را به پروفایل خود اضافه کردهاند به طور متوسط ۷۵٪ در هر ماه افزایش یافته است. ComputerWorld اعلام کرد که “آموزش رفتار به هوش مصنوعی سریعالرشدترین مهارت شغلی است”.

چرا اصطلاح “مهندسی هوش مصنوعی”؟
اصطلاحات زیادی برای توصیف فرآیند ساخت برنامههای کاربردی بر روی مدلهای پایه استفاده میشود، از جمله مهندسی ML، MLOps، AIOps، LLMOps و غیره. چرا من برای این کتاب “مهندسی هوش مصنوعی” را انتخاب کردم؟
من اصطلاح مهندسی ML را انتخاب نکردم زیرا، همانطور که در بخش “مهندسی هوش مصنوعی در مقابل مهندسی ML” در صفحه ۳۹ بحث خواهد شد، کار با مدلهای پایه در چندین جنبه مهم با کار با مدلهای ML سنتی تفاوت دارد. اصطلاح مهندسی ML برای نشان دادن این تمایز کافی نخواهد بود. با این حال، مهندسی ML یک اصطلاح عالی برای در بر گرفتن هر دو فرآیند است.
من تمام اصطلاحاتی که به “Ops” ختم میشوند را انتخاب نکردم زیرا، در حالی که مؤلفههای عملیاتی (operational) در این فرآیند وجود دارند، تمرکز بیشتر بر روی مهندسی مدلهای پایه برای انجام آنچه شما میخواهید است.
در نهایت، من از ۲۰ نفر که در حال توسعه برنامههای کاربردی بر روی مدلهای پایه بودند نظرسنجی کردم که از چه اصطلاحی برای توصیف کاری که انجام میدهند استفاده میکنند. اکثر people مهندسی هوش مصنوعی را ترجیح دادند. من تصمیم گرفتم که نظر people را بپذیرم.
جامعه به سرعت در حال گسترش مهندسین هوش مصنوعی، خلاقیت قابل توجهی با طیف incredibleی از برنامههای کاربردی هیجانانگیز نشان داده است. بخش بعدی به بررسی برخی از رایجترین الگوهای کاربردی خواهد پرداخت.