تجزیه و تحلیل احساسات AI توربوشارژ: چگونه ما با خدمات میکرو GPU به 50K RPS رسیدیم

من به یاد می آورم روزی که خط لوله تجزیه و تحلیل احساسات تک فرآیند ما در نهایت تحت افزایش درخواست ها قرار گرفت. سیاهههای مربوط به این سیاههها ناگوار بودند: استخرهای نخ سرخ شده ، مشاغل دسته ای متوقف شده و حافظه افزایش می یابد. این زمانی است که تصمیم گرفتیم از طراحی یکپارچه خود خلاص شویم و همه چیز را از ابتدا بازسازی کنیم. در این پست به شما نشان خواهم داد که چگونه ما به میکروسرویس ها که از Kubernetes ، AutoScaling Aware GPU و یک خط لوله ETL جریان برای کنترل داده های اجتماعی گسترده در زمان واقعی نزدیک می شویم ، محور هستیم.


یکپارچه خوب است ، تا زمانی که نباشند

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

با جابجایی به خدمات میکرو ، هر عملکرد را جدا کردیم:

  1. دروازه API: مسیرها درخواست ها را درخواست می کنند و احراز هویت را انجام می دهند.
  2. پاکسازی متن و نشانه گذاری: کنترل متن دوستانه CPU.
  3. سرویس احساسات مبتنی بر GPU: استنباط مدل واقعی.
  4. ذخیره داده ها و گزارش ها: نتایج نهایی احساسات و گزارش های خطا را حفظ می کند.
  5. نظارت: عملکرد را با حداقل سربار مشاهده می کند.

اکنون می توانیم هر قطعه را به طور مستقل مقیاس کنیم و عملکرد را در تنگناهای خاص تقویت کنیم.


Source link