یافتن راهکار هوش مصنوعی/ یادگیری ماشین مناسب برای ویژگی‌تان

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

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

  • آیا این ویژگی باید محتوای جدید تولید کند (هوش مصنوعی زایا)، یا به‌صورت قطعی پیش‌بینی/دسته‌بندی کند (یادگیری ماشین سنتی)؟
  • دامنه ویژگی: آیا تکلیف می‌تواند کاملاً در برنامه شما انجام شود (هوش درون‌برنامه) یا برای انجام آن به چند برنامه نیاز است (هوش سطح سیستم)؟
  • مکان مدل: آیا تکلیف می‌تواند به‌صورت آفلاین (مدل درون‌دستگاهی) انجام شود یا نیاز به تعامل با سرور (مدل مبتنی بر ابر) دارد؟
  • نسخه مدل یا جعبه‌ابزار: پیچیدگی تکلیف چقدر است، از تکالیف ساده تک‌استنتاجی تا هماهنگ‌سازی چندعاملی؟

نمودار جریان زیر فرایند تصمیم‌گیری را در سطح بالا نشان می‌دهد:

بله نه بله نه بله نه بله نه همه بله نه ویژگی آیا لازم است محتوای جدید تولید کنید (به‌جای پیش‌بینی یا طبقه‌بندی داده‌ها)؟ هوش مصنوعی زایا آیا این تکلیف بین‌برنامه‌ای است؟ یادگیری ماشین سنتی هوش سیستم استفاده از AppFunctions هوش درون‌برنامه آیا ویژگی می‌تواند به‌صورت آفلاین اجرا شود، یا محدودیت هزینه دارید؟ آیا دستگاه‌های هدف از مدل‌های درون‌دستگاهی پشتیبانی می‌کنند؟ آیا لازم است این ویژگی هنگام بسته بودن برنامه به اجرا ادامه دهد (وضعیت حفظ شود)، یا به دسترسی به پایگاه داده خصوصی نیاز دارید؟ مدل درون‌دستگاهی استفاده از Gemini Nano ازطریق ML Kit یا LiteRT رویکرد ترکیبی ترجیح دادن مدل‌های درون‌دستگاهی اما استفاده از مدل‌های ابری به‌عنوان جایگزین مدل مبتنی بر ابر استفاده از سرور خودمیزبان سفارشی مدل مبتنی بر ابر استفاده از پس‌بست مدیریت‌شده ازطریق Firebase AI Logic
شکل ۱. فرایند تصمیم‌گیری سطح بالا برای انتخاب راهکار هوش مصنوعی/ یادگیری ماشین.

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

هوش مصنوعی زایا درمقابل یادگیری ماشین سنتی

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

جعبه ابزار / راه‌حل نوع مورد استفاده اصلی مثال‌ها
کیت توسعه نرم‌افزار ML Kit در دستگاه تکالیف ازپیش ساخته‌شده پردازش زبان طبیعی و بینایی
  • اسکنر رسید OCR
  • اعلام حضور سریع در رویداد با رمزینه پاسخ‌سریع
  • ترجمه آفلاین منو
LiteRT در دستگاه زمان‌های اجرای مدل سفارشی
  • طبقه‌بندی تصویر پزشکی
  • پیش‌بینی هوشمند کلمه صفحه‌کلید برای موضوعات خاص
MediaPipe در دستگاه تکالیف درک جاری‌سازی صوتی یا ویدیویی هم‌زمان
  • راهنمایی هم‌زمان برای حالت تمرین
  • فیلترها و جلوه‌های چهره
  • تشخیص اشاره دست
میاناهای برنامه‌سازی کاربردی Google Cloud ازجمله Cloud Vision API و Cloud Natural Language API مبتنی بر ابر تکالیف ازپیش ساخته‌شده پردازش زبان طبیعی و بینایی
  • زیرنویس خودکار ویدیو
  • کنترل کیفیت تصویر و رعایت مقررات
پلاتفرم Agent مبتنی بر فضای ابری آموزش و استقرار مدل سفارشی سرتاسر
  • تشخیص تصویر تخصصی در مقیاس
  • جستجوی عکس آرشیوی

بقیه این سند درباره راهکارهای هوش مصنوعی زایا است.

هوش درون‌برنامه‌ای درمقابل هوش سطح سیستم

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

هوش درون‌برنامه هوش در سطح سیستم
محدوده تکلیف درون‌برنامه در برنامه‌ها (یا راه‌اندازی‌شده توسط سیستم، خارج از هر برنامه)
ابزارها کیت توسعه نرم‌افزار ML Kit،‏ LiteRT،‏ Firebase AI Logic، یا باطن خودمیزبان AppFunctions
موارد استفاده
  • خلاصه کردن، نمونه‌خوانی، یا ترانویسی نوشتار
  • توصیف تصاویر
  • ساختن روبات گپ درون‌برنامه
  • تولید تصاویر
  • ساختن فهرست خرید در برنامه تحویل سفارش براساس آنچه در سند یادداشت‌ها نوشته‌اید
  • برای رفتن به دفتر یک سفر رزرو کن و زمان برآوردی ورودم را به همکارم پیام بده
  • پیشنهاد رستوران را در صندوق ورودی ایمیلتان پیدا کنید و رزرو کنید

هوش درون‌برنامه

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

اگر کاری انجام می‌دهید که به ورودی ویدیو نیاز دارد یا تکالیفی که شامل چندین عامل می‌شود، باید از مدل مبتنی بر ابر استفاده کنید. جدول زیر قابلیت‌های مدل‌های درون‌دستگاهی را با مدل‌های مبتنی بر ابر مقایسه می‌کند:

در دستگاه ابر
ابزارها کیت توسعه نرم‌افزار ML Kit یا LiteRT Firebase AI Logic یا زیرینه خودمیزبان
نوع ورودی
  • نوشتار
  • تصویر
  • صوتی
  • نوشتار
  • تصویر
  • صوتی
  • ویدیو
نوع خروجی
  • نوشتار
  • نوشتار
  • تصویر
  • صوتی
حساسیت داده‌های کاربر بالاتر پایین‌تر
مدل‌ها
  • Gemma
  • ‏Gemini Nano
  • Gemini Flash
  • Gemini Flash Lite
  • Gemini Pro
موارد استفاده
  • پردازش محتوای کوتاه، برای مثال خلاصه کردن، نمونه‌خوانی، یا بازنویسی پیام گپ یا ایمیل کوتاه
  • توصیف تصاویر
  • شخصی‌سازی خروجی برای کاربران براساس علایق آن‌ها
  • مدیریت داده‌های حساس کاربر
  • آوانویسی کلیپ صوتی کوتاه
  • ساختن روبات گپ
  • تولید تصاویر
  • ترجمه هم‌زمان مکالمه‌ها
  • ویرایش عکس درون‌برنامه
  • تکالیف چندعاملی

مدل‌های درون‌دستگاهی

اگر هریک از موارد زیر صدق کند، احتمالاً مدل‌های درون‌دستگاهی ترجیح داده می‌شوند:

  • محدودیت‌های هزینه
  • ویژگی باید بتواند به‌صورت آفلاین اجرا شود
  • الزامات حریم خصوصی
  • وظیفه موردنظر نسبتاً ساده است و به هماهنگ‌سازی چندعاملی نیاز ندارد

به‌خاطر داشته باشید که دستگاه‌های کاربران شما باید بتوانند از مدل‌های درون‌دستگاهی پشتیبانی کنند. مدل‌های روی دستگاه معمولاً به دستگاه‌های ممتازتری نیاز دارند که بتوانند از پردازش محلی پشتیبانی کنند.

وقتی تشخیص دادید که مدل‌های درون‌دستگاهی برای ویژگی شما کافی است، جعبه‌ابزار یا راهکار بهینه عمدتاً به پیچیدگی تکلیف بستگی دارد. جدول زیر گزینه‌های ابزار هوش مصنوعی زایای درون‌برنامه‌ای و درون‌دستگاهی را خلاصه می‌کند:

پیچیدگی تکلیف مشخصات ویژگی مثال جعبه ابزار/راه‌حل
کم
  • استنتاج تکی
  • تولید خالص
خلاصه کردن نوشتار
متوسط
  • مدل زبانی بزرگ افزوده
  • فراخوانی تابع
  • سابقه مکالمه
پُرسمان و پاسخ
حداکثر
  • حلقه تک‌عاملی، چرخه تا زمانی که تکلیف تکمیل شود ادامه دارد
بازخورد مشتری یا اولویت‌بندی اشکال

از ML Kit Prompt API برای تولید نوشتار مکالمه‌ای تک‌نوبتی یا چندنوبتی ساده استفاده کنید. وقتی ویژگی شما به اجرای چندمرحله‌ای و خودکار در دستگاه نیاز دارد، از ML Kit GenAI Agent API استفاده کنید. Agent API از حلقه‌های استدلال درون‌دستگاهی پشتیبانی می‌کند که می‌توانند برنامه‌ریزی کنند، ابزارهای تایپ‌شده را بااستفاده از حاشیه‌نویسی‌های @Tool فراخوانی کنند، بافت جلسه را در تعاملات حفظ کنند، و محدودیت‌های نوبت را بااستفاده از maxTurns اعمال کنند.

مدل‌های مبتنی بر ابر

اگر ویژگی شما نمی‌تواند کاملاً در دستگاه اجرا شود، باید از مدل مبتنی بر ابر استفاده کنید. دو گزینه اصلی برای نحوه استفاده از مدل ابری وجود دارد:

  • پشت‌باند مدیریت‌شده بااستفاده از Firebase AI Logic. اگر درحال‌حاضر کاربر Firebase هستید یا می‌خواهید نمونه اولیه‌ای را نسبتاً سریع بسازید، Firebase AI Logic احتمالاً بهترین راهکار است.

  • سرور زیرینه سفارشی یا سرور خودمیزبان. اگر می‌خواهید از مدل‌های غیر Gemini استفاده کنید، الزامات حریم خصوصی سخت‌گیرانه‌ای دارید، یا باید تکلیف بسیار پیچیده‌ای را تکمیل کنید، احتمالاً باید از پسای سفارشی استفاده کنید. همچنین ابزارهای زیر را برای راه‌اندازی باطن سفارشی توصیه می‌کنیم:

    • بک‌اند سفارشی‌تان را با چارچوب عامل‌گرایی مثل Agent Development Kit اجرا کنید
    • اتصال پیشانه برنامه به زیرینه عاملی بااستفاده از AG-UI
    • به عامل‌ها امکان می‌دهد بااستفاده از A2UI واسط‌های کاربر غنی و تعاملی تولید کنند

جدول زیر خلاصه می‌کند که چه زمانی باید از Firebase AI Logic یا باطن سفارشی برای ابزار هوش مصنوعی زایای درون‌برنامه مبتنی بر ابر استفاده کرد:

پیچیدگی تکلیف مشخصات ویژگی مثال جعبه ابزار/راه‌حل
کم
  • استنتاج تکی
  • تولید خالص
خلاصه کردن نوشتار
  • Firebase AI Logic
  • بخش نهایی سفارشی
متوسط
  • مدل زبانی بزرگ افزوده
  • فراخوانی تابع
  • سابقه مکالمه
پُرسمان و پاسخ
  • Firebase AI Logic
  • بخش نهایی سفارشی
حداکثر
  • حلقه تک‌عاملی، چرخه تا زمانی که تکلیف تکمیل شود ادامه دارد
بازخورد مشتری یا اولویت‌بندی اشکال
  • بخش پشتی سفارشی
بسیار بالا
  • سازمان‌دهی چندعاملی
یک تیم عامل برای مدیریت جنبه‌های مختلف سفر ایجاد کن
  • بخش نهایی سفارشی

رویکرد ترکیبی

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

هوش در سطح سیستم

هوش در سطح سیستم به پلاتفرم Android امکان می‌دهد به‌عنوان هماهنگ‌کننده وظایف عمل کند. هوش در سطح سیستم به عامل‌های سیستم، مانند Gemini، امکان می‌دهد درخواست‌های کاربر را در چندین برنامه و سرویس وب تکمیل کنند.

برای متصل کردن برنامه‌تان به سیستم هوش Android، روش ادغام را براساس اینکه کنترل برنامه‌ای می‌خواهید یا کنش‌های خودکار مبتنی بر میانای کاربر انتخاب کنید:

گزینه یکپارچه‌سازی مورد استفاده
AppFunctions قابلیت‌های خاصی را در برنامه‌تان دردسترس قرار دهید تا نمایندگان بتوانند آن‌ها را در دستگاه کاوش و اجرا کنند.
سرور MCP از راه دور قابلیت‌های خاصی را در برنامه‌تان دردسترس قرار دهید تا مستقیماً با زیرینه نماینده ادغام شود. برای توسعه چندسکویی خوب است.
کنترل رایانه به دستیار ازپیش‌بارشده OEM اجازه می‌دهد با تعامل مستقیم با واسط کاربر برنامه، تکالیف را خودکارسازی کند.

برای کسب اطلاعات بیشتر درباره گزینه‌های ابزار هوش مصنوعی در سطح سیستم، به متصل کردن برنامه به سیستم هوش مصنوعی Android مراجعه کنید.