هوش مصنوعی وب: هر آنچه که باید در مورد هوش مصنوعی روی دستگاه برای وب بدانید
در طول دو سال گذشته، نوآوریهای هوش مصنوعی در صنایع مختلف افزایش یافته و تقاضا برای استقرار برنامههای هوش مصنوعی در محیطهای مختلف را افزایش داده است و وب نیز از این قاعده مستثنی نیست.
زنجیره ابزار، خط لوله و نیازهای استقرار هوش مصنوعی در وب مستلزم درک هوش مصنوعی وب است و در این مقاله، بررسی میکنیم که چگونه هوش مصنوعی وب، استنتاج هوش مصنوعی روی دستگاه را برای برنامههای وب تقویت میکند.
استقرار هوش مصنوعی - تغییر
استقرار هوش مصنوعی از هوش مصنوعی ابری به هوش مصنوعی روی دستگاه در حال گسترش است و انتخاب نوع استقرار به نیازهای فنی مختلف بستگی دارد. به عنوان مثال، در خودروهای خودران، که مدلها باید بر اساس دادههای بلادرنگ از حسگرها و دوربینها، پیشبینیهای فوری انجام دهند، مدلها نزدیک به محل تولید دادهها - روی دستگاه - مستقر میشوند تا پردازش دادههای غیرپنهان تضمین شود. در خانهها/شهرهای هوشمند و در مراقبتهای بهداشتی، هوش مصنوعی روی دستگاه یک راه حل عملیتر است.
با دسترسی برنامههای کاربردی وب به محاسبات دستگاه میزبان از طریق APIهایی مانند WebGPU، WebAssembly و استانداردهای نوظهور مانند API شبکه عصبی وب، استقرار مدلهای هوش مصنوعی به طور مستقیم در مرورگر، کاربردیتر میشود.
هوش مصنوعی وب چیست؟
هوش مصنوعی وب، لایه انتزاعی وب بر روی محاسبات دستگاه است که به مدلها اجازه میدهد روی مرورگر اجرا شوند. برخلاف هوش مصنوعی ابری، که در آن مدلها روی زیرساخت ابری مستقر میشوند، هوش مصنوعی وب ابزارها و APIهایی را برای استنتاج مدل سمت کلاینت فراهم میکند.
نحوه عملکرد هوش مصنوعی وب

هوش مصنوعی وب را میتوان به کتابخانههایی تقسیم کرد که با وظایف مدل و خطوط لوله تعامل دارند و یک پشته اجرایی که استنتاج را در محیط مرورگر انجام میدهد.
APIها و کتابخانههای هوش مصنوعی وب
کتابخانههای هوش مصنوعی وب و APIهای وب داخلی، لایه هماهنگی را برای برنامههای هوش مصنوعی در مرورگر فراهم میکنند. آنها به توسعهدهندگان اجازه میدهند مدلها را انتخاب کنند، آنها را دانلود کنند، بهصورت محلی ذخیره کنند و خطوط لوله وظیفه را برای پردازش دادههای تولید شده توسط وب بسازند.
این لایه چرخه حیات مدل و جریان دادهها را مدیریت میکند، تبدیلهای ورودی و خروجی را مدیریت میکند، چندین مدل را به هم متصل میکند و عملیات سطح وظیفه مانند تبدیل متن به جاسازیها یا مسیریابی جاسازیها به وظایف تولید پاییندستی را هماهنگ میکند. با انتزاع این مسئولیتها، کتابخانهها منطق خط لوله را از پشته اجرایی زیرین جدا میکنند.
پشتههای اجرایی
پشته اجرایی هوش مصنوعی وب مسئول انجام محاسبات مدل در مرورگر است. در حالی که کتابخانهها چرخه حیات مدل و هماهنگی خط لوله را مدیریت میکنند، پشته اجرایی نحوه و محل اجرای استنتاج روی سختافزار کلاینت را مدیریت میکند.
پشته اجرا از دو لایه اصلی تشکیل شده است:
موتورهای زمان اجرا
موتورهای زمان اجرا به عنوان واسطه بین کتابخانههای هوش مصنوعی وب و بکاندهای وب زیربنایی عمل میکنند. آنها مدل را در حافظه بارگذاری میکنند، عملیات مدل را به دستورالعملهای اجرایی ترجمه میکنند و جلسات استنتاج را مدیریت میکنند. آنها با انتزاعی کردن بکاند، به مدلها اجازه میدهند تا بدون نیاز به تغییر در منطق برنامه، در اهداف محاسباتی مختلف اجرا شوند.
موتورهای زمان اجرا (Runtime Engines) به گونهای طراحی شدهاند که مدلهای از پیش بهینهشده را به طور مؤثر اجرا کنند تا عملکرد را روی سختافزارهای محدود بهبود بخشند.
برخی از موتورهای زمان اجرا رایج عبارتند از:
ONNX runtime Web: که مدلها را با فرمت .onnx اجرا میکند و از چندین backend وب پشتیبانی میکند.
LiteRT.js: نسخهی تحت وب TensorFlow Lite که برای استنتاج کارآمد مدلهای .tflite طراحی شده است و از تبدیل مدل از سایر چارچوبهای یادگیری ماشین نیز پشتیبانی میکند.
TensorFlow.js: یک چارچوب یادگیری ماشین مبتنی بر جاوا اسکریپت که شامل مدلها، موتورهای زمان اجرا و پشتیبانی از چندین بکاند وب است.
بکاندهای وب
بکاندهای وب، لایه انتزاعی محاسباتی را فراهم میکنند که مستقیماً با قابلیتهای سختافزاریِ در معرض مرورگر ارتباط برقرار میکند. این بکاندها عملیات سطح پایین و هستههای مورد نیاز برای استنتاج مدل را اجرا میکنند.
بکاندهای رایج وب عبارتند از:
WebAssembly برای اجرای مبتنی بر CPU
WebGPU و WebGL برای شتابدهی GPU
رابط برنامهنویسی کاربردی شبکه عصبی وب برای شتابدهی اپراتور یادگیری ماشین سطح بالا که بسته به پشتیبانی پلتفرم، ممکن است از سختافزار CPU، GPU یا NPU بهره ببرد.
موتورهای زمان اجرا و بکاندهای وب در کنار هم، مسیر اجرایی را تشکیل میدهند که گرافهای مدل را به محاسبات سطح سختافزار در محیط مرورگر تبدیل میکند.
تفاوت بین هوش مصنوعی ابری و هوش مصنوعی وب
اگرچه هم هوش مصنوعی ابری و هم هوش مصنوعی وب، استنتاج مدل را در برنامهها امکانپذیر میکنند، اما اساساً در محل انجام محاسبات و نحوه استقرار مدلها متفاوت هستند. در اینجا نحوه تمایز آنها آورده شده است:
| هوش مصنوعی وب | هوش مصنوعی ابری |
|---|---|
| هوش مصنوعی وب، دادهها را روی دستگاه پردازش میکند | هوش مصنوعی ابری، دادهها را روی فضای ابری پردازش میکند. |
| برنامهها به صورت محلی در مرورگر با مدلها تعامل دارند. | برنامهها درخواستها را از طریق شبکه به مدلها ارسال میکنند. |
| این مدل روی دستگاه مستقر شده است. | این مدل بر روی زیرساخت ابری مستقر شده است. |
| از اجرای مدل در مرورگر سمت کلاینت پشتیبانی میکند. | از اجرای مدل مبتنی بر ابر از راه دور پشتیبانی میکند. |
| پشته اجرا در معرض توسعهدهنده قرار میگیرد. | پشته اجرا در پشت یک API سرور خلاصه شده است |
مزایای هوش مصنوعی وب
کاهش تأخیر : از آنجایی که استنتاج به صورت محلی روی دستگاه کلاینت اجرا میشود، رفت و برگشتهای شبکه و تأخیر انتقال را از بین میبرد.
صرفهجویی در هزینه : از آنجا که اجرای مدل به منابع محاسباتی کلاینت متکی است، نیازی به زیرساخت سمت سرور و هزینههای اعتباری هوش مصنوعی نیست.
حریم خصوصی دادهها : از آنجایی که دادهها روی دستگاه کلاینت باقی میمانند، هیچ انتقال خارجی یا پردازش سمت سروری انجام نمیشود.
استفاده آفلاین : هوش مصنوعی تحت وب، قابلیتهای هوش مصنوعی آفلاین را فعال میکند، زیرا برای پردازش قابلیتهای هوش مصنوعی نیازی به اتصال به شبکه نیست.
پردازش بلادرنگ: هوش مصنوعی وب امکان پردازش دادهها را در بلادرنگ فراهم میکند، که به ویژه برای پردازش ویدیو و صدا ضروری است.
پیادهسازی هوش مصنوعی - پشته هوش مصنوعی وب
هوش مصنوعی وب میتواند در سطوح مختلف انتزاع پیادهسازی شود، بسته به اینکه به چه میزان کنترل بر انتخاب مدل، پیکربندی زمان اجرا و اجرا نیاز دارید. برخی رویکردها بیشتر زیرساختهای اساسی را انتزاعی میکنند، در حالی که برخی دیگر نیاز به مدیریت مستقیم مدلها و موتورهای زمان اجرا دارند.
در عمل، پیادهسازیهای هوش مصنوعی وب عموماً به سه دسته تقسیم میشوند:
هوش مصنوعی داخلی
کتابخانههای متنباز
پورتهای مستقل 
هوش مصنوعی داخلی
هوش مصنوعی داخلی یک رابط مرورگر استاندارد برای دسترسی به قابلیتهای هوش مصنوعی در مرورگر است. آنها سطح بالایی از انتزاع را برای پشته هوش مصنوعی وب حفظ میکنند، زیرا کاملاً به رابط API وب برای تعامل با مدلهای هوش مصنوعی متکی است.
هوش مصنوعی داخلی سادهترین راه برای پیادهسازی هوش مصنوعی وب است که نیازی به راهاندازی یا نصب ندارد و طوری طراحی شده است که در مرورگرهای پشتیبانیشده کار کند.
آنها برای وظایف رایج پردازش زبان طبیعی و ویژگیهای سبک هوش مصنوعی در برنامههای وب عالی هستند.
برخی از موارد استفاده رایج برای هوش مصنوعی داخلی عبارتند از:
مدلهای زبان : مدل متخصص زبان که از طریق API تشخیص زبان و API مترجم برای تشخیص و ترجمه زبان مبتنی بر متن ارائه میشود.
APIهای مولد هوش مصنوعی : در برخی از مرورگرها، مانند کروم، این APIها ممکن است برای انجام خلاصهسازی، تولید متن، تصحیح گرامر و سایر وظایف مرتبط با متن، به مدلهای بنیادی مانند Gemini Nano متکی باشند. نمونههایی از این APIها عبارتند از Summarizer API، Prompt API، Proofreader API و Writer/Rewrite API.
قابلیتهای چندوجهی : رابط برنامهنویسی کاربردی Prompt با پردازش تصویر، صدا و متن به زبانهای مختلف، از قابلیتهای چندوجهی مانند رونویسی صوتی، توصیف تصویر و وظایف مبتنی بر متن پشتیبانی میکند.
APIهای داخلی برای برنامههایی که سادگی و مدیریت حداقلی پشته را در اولویت قرار میدهند، مناسبتر هستند.

کتابخانههای متنباز
برخلاف APIهای داخلی، کتابخانههای متنباز برای پیادهسازی هوش مصنوعی وب انعطافپذیرتر هستند. آنها به توسعهدهندگان اجازه میدهند بین مدلها انتخاب کنند، زمان اجرا یا بکاندهای وب را پیکربندی کنند و مدلهای سفارشی را روی مرورگر اجرا کنند. به دلیل این انعطافپذیری، راهاندازی آنها به تلاش بیشتری نیاز دارد و برای تیمهایی که میخواهند کنترل بیشتری بر مدلها، خطوط لوله یا انتزاعات سطح پایین داشته باشند، عالی هستند.
کتابخانههای متنباز قابل حمل هستند و به مدلها اجازه میدهند در محیطهای مختلف، از جمله مرورگر و سرور، اجرا شوند.
در اینجا برخی از رایجترین کتابخانههای متنباز آورده شده است؛
ترانسفورماتور.js
Transformer.js یک کتابخانه محبوب جاوا اسکریپت است که به توسعهدهندگان امکان دسترسی به ۱۲۰۰ مدل از پیش آموزشدیده برای اجرا در مرورگر را میدهد. این کتابخانه از خطوط لوله هوش مصنوعی آماده برای استفاده پشتیبانی میکند، ضمن اینکه امکان سفارشیسازی خطوط لوله برای وظایف خاص هوش مصنوعی را نیز فراهم میکند.
Transformers.js با استفاده از ONNX Runtime Web که مدلهای .onnx را درون مرورگر اجرا میکند، استنتاج مدل را انجام میدهد.
وظایف هوش مصنوعی پشتیبانی شده توسط Transformer.js:
پردازش زبان طبیعی : وظایف متنی مبتنی بر مبدل مانند طبقهبندی، تشخیص موجودیتهای اسمی، پاسخ به سوالات، خلاصهسازی، ترجمه و تولید متن.
بینایی کامپیوتر : وظایف استنتاج مبتنی بر تصویر شامل طبقهبندی، تشخیص شیء، قطعهبندی و پردازش زبان بینایی چندوجهی.
پردازش صوت : حجم کاری استنتاج گفتار و صدا مانند تشخیص خودکار گفتار (ASR)، طبقهبندی صوت و تولید موسیقی.
وظایف چندوجهی : خطوط لوله چندوجهی که ورودیهای متن، تصویر یا صدا را ترکیب میکنند، از جمله تبدیل تصویر به متن، پاسخ به سوالات سند و تولید جاسازی. 
مدیاپایپ
مدیاپایپ (MediaPipe) یک چارچوب یادگیری ماشینی چند پلتفرمی است که توسط گوگل نگهداری میشود و در ابتدا بر وظایف بینایی و ادراک رایانهای بلادرنگ متمرکز بود و اخیراً برای پشتیبانی از وظایف متنی و صوتی نیز گسترش یافته است.
مدیاپایپ از استقرار مدلهای .tflite از پیش تبدیلشده پشتیبانی میکند و با موتور زمان اجرای خود که بر اساس WebAssembly ساخته شده است، ارائه میشود که آن را به یک چارچوب اجرایی مستقلتر برای استنتاج مدل تبدیل میکند.
قابلیتهای هوش مصنوعی پشتیبانیشده توسط MediaPipe عبارتند از:
بینایی کامپیوتر : وظایف ادراک بلادرنگ مانند تشخیص اشیا، قطعهبندی و پردازش ویدیو، از جمله قطعهبندی پسزمینه که در پلتفرمهایی مانند Google Meet استفاده میشود.
واقعیت افزوده : ردیابی نقاط عطف چهره و ژست برای آواتارها و تجربیات واقعیت افزوده تمام بدن.
وظایف تولیدی و زبانی : استنتاج LLM روی دستگاه و گردشهای کاری تولید مبتنی بر متن، شامل تبدیل متن به متن، تبدیل متن به تصویر، جاسازیها، طبقهبندی و بازیابی تولید افزوده (RAG).
صدا : وظایف استنتاج صوتی، مانند وظایف طبقهبندی صوتی 
تنسورفلو.js
TensorFlow.js یک کتابخانه یادگیری ماشین جاوا اسکریپت است که بر اساس مفاهیم TensorFlow ساخته شده است و از آموزش مدل و استنتاج در محیطهای مرورگر و Node.js پشتیبانی میکند. این کتابخانه برای توسعه مدلهای سفارشی مناسب است و همچنین مجموعهای از مدلهای از پیش آموزشدیده را برای کارهایی مانند تشخیص شیء، تشخیص سمیت و هرزنامه و طبقهبندی رویدادهای صوتی ارائه میدهد.
TensorFlow.js برای فعال کردن استنتاج آفلاین سمت کلاینت در برنامههای کاربردی تولیدی، به عنوان مثال، ویژگیهای انتخاب شیء در محصولات وب Adobe، مورد استفاده قرار گرفته است.
این کتابخانهها برخی از پرکاربردترین رویکردهای متنباز برای هوش مصنوعی وب را نشان میدهند. برای مواردی که به یک قابلیت هوش مصنوعی واحد و تکظرفیتی نیاز است، پورتهای مدل مستقل، جایگزینی سبک و تخصصی ارائه میدهند.
پورتهای مستقل
پورتهای مستقل، کتابخانههای متنباز ماژولار هستند که بر روی یک وظیفه هوش مصنوعی واحد تمرکز دارند. آنها برای تیمهایی مناسب هستند که به قابلیتهای هوش مصنوعی خاص و مستقل بدون نیاز به یک چارچوب یادگیری ماشینی همه منظوره کامل نیاز دارند.
این پورتها معمولاً شامل مدلهایی هستند که در اکوسیستمهای دیگر آموزش دیدهاند و به فرمتهای سازگار با مرورگر مانند .onnx یا .tflite تبدیل شدهاند و امکان اجرا از طریق موتورهای زمان اجرای مبتنی بر وب را فراهم میکنند.
مثالها عبارتند از:
سیلرو
Silero مجموعهای از مدلهای گفتاری، از جمله تشخیص خودکار گفتار (ASR)، تبدیل متن به گفتار (TTS)، تبدیل گفتار به متن (STT) و تشخیص فعالیت صوتی (VAD) را ارائه میدهد.
Silero VAD یک مدل تخصصی است که برای تشخیص وجود یا عدم وجود فعالیت گفتاری در یک جریان صوتی طراحی شده است. Ricky0123/vad نسخه جاوا اسکریپت Silero VAD برای مرورگرها است.
ویتس-وب
VITS-web یک مدل تبدیل متن به گفتار است که از مدلهای کتابخانهای Piper TTS مبتنی بر پایتون پورت شده است. این مدل توسط استودیوی انتشار VITS-web ساخته شده و بیش از صد صدا را در مرورگر پشتیبانی میکند.
کوکورو-جیاس
Kokoro-js یک پورت جاوا اسکریپت از مدل Kokoro-TTS است که امکان تبدیل متن به گفتار سبک را در محیطهای وب فراهم میکند.
اکوسیستم هوش مصنوعی وب همچنان در حال تکامل است و روشهای استقرار هوش مصنوعی در مرورگر را گسترش میدهد. درک رویکردهای مختلف برای پیادهسازی هوش مصنوعی وب، امکان استفاده مؤثر و هدفمند از این فناوری را فراهم میکند.
محدودیتها
هوش مصنوعی وب چندین محدودیت را ایجاد میکند که باید در طول پیادهسازی مورد توجه قرار گیرند:
تنوع سختافزاری: دستگاههای کلاینت از نظر ظرفیت CPU، GPU و حافظه تفاوت قابل توجهی دارند که میتواند بر کیفیت و سرعت مدل تأثیر بگذارد.
محدودیتهای اندازه مدل: مدلهای بزرگ، حجم دانلود، استفاده از حافظه و تقاضای محاسبات را افزایش میدهند و پیادهسازی کارآمد آنها را در محیطهای مرورگر دشوار میکنند.
فشار حافظه: اجرای مدلها در مرورگر با سایر منابع برنامه رقابت میکند که میتواند منجر به بیثباتی یا جمعآوری اجباری زباله شود.
پشتیبانی ناقص مرورگرها: رابطهای برنامهنویسی کاربردی (API) هوش مصنوعی داخلی ممکن است پشتیبانی محدودی از مرورگرهای مختلف داشته باشند، زیرا برخی از ویژگیها همچنان آزمایشی یا مختص فروشنده هستند.
نتیجهگیری
پذیرش هوش مصنوعی روی دستگاهها در پلتفرمهای مختلف، از جمله اندروید، iOS و وب، با حمایت روزافزون مشارکتهای اجتماعی و سرمایهگذاریهای سازمانی، در حال گسترش است. پیشرفتهای سختافزاری مانند رایانههای شخصی مجهز به هوش مصنوعی از اینتل میتواند به طور بالقوه قابلیتهای محاسباتی را تقویت کند.
در عین حال، استانداردهای نوظهور مرورگر و پشتیبانی بهبود یافته از زمان اجرا، حجم کاری سنگینتر هوش مصنوعی را در مرورگر امکانپذیر میکند و با رشد اکوسیستم، هوش مصنوعی وب میتواند بر نحوه استقرار و تعامل مدلها تأثیر بگذارد.





ارسال نظر