مشکل ساده، راه‌حل سخت (بخش اول)

عکس از سایت گت‌فیلتربیشتر از یک‌سال پیش من یک اپلیکیشن به اسم گت‌فیلتر درست کردم تا پیامک‌های تبلغاتی رو مسدود کنه و درمورد استفاده از یادگیری ماشین نوشتم که چجوری ازش استفاده کردم.به دلیل کمبود وقت و اینکه این پروژه رایگان بود دوباره به سراغش نرفتم برای آپدیت کردن. باید گفت که همچنان تعداد کاربران خوبی رو داره بدون تغییر یا تبلیغات و اینکه پس از ریلیز توی صفحه اصلی اپ‌استور پروموت شده بود توسط اپل.گت‌فیلتر توی صفحه اصلی اپل۳ماه پیش تصمیم گرفتم بررسی کنم تا ببینم چجوری میتونم روش‌های جدیدی رو اضافه کنم برای مقابله با پیامک‌های تبلیغاتی یا چه امکاناتی رو میتونم اضافه کنم که توی همین زمنیه باشه. بعد از چند روز به این لیست رسیدم:۱. فراهم کردن شرایطی که یادگیری ماشین کیفیتش بیشتر بشه بدون لازم بودن کار اضافه از من۲. استفاده از امکان گزارش‌دهی تماس یا پیامک که به آی‌او‌اس۱۲ اضافه شده۳. تشویق‌کردن کاربر‌ها برای دعوت از بقیه دوستانشون برای استفاده از اپ۴. تست‌کردن ایده جمع‌سپاری اطلاعات با رعایت کامل حریم‌شخصی کاربر۵. ساختن بک‌اند کاملا نوشته شده به زبان سوییفت۶. مسدودکردن تماس‌های تلفنی تبلیغاتی۷. پشتیبانی‌کردن از زبان‌های بیشتراول توی این فکر بودم که دونه دونه این امکانات رو اضافه کنم، ولی بعد به این نتیجه رسیدم که شاید لازم باشه تغییرات اساسی رو انجام بدم اگر بخوام امکان مهمی رو اضافه کنم پس همه‌ی امکانات رو با‌هم انجام دادم، اپ رو از‌اول بازنویسی کردم و طراحی جدید هم براش انجام دادم.به راحتی میشه گفت گت‌فیلتر۲ یکی از وقت‌گیرترین پروژه‌های شخصی من هست، شاید با دیدن این عکس از روش کارکردن کل سیستم شما هم به این نتیجه برسید.getFilter 2.0توی این ساختار:۱. هر پیامک گزارش‌شده، ارسال‌کننده پیامک شمارش ارزشش توی جمع‌سپاری تغییر‌میکنه و توی سینک‌بعدی میره توی دستگاه کاربران برای استفاده آنلاین، هر ۱۲ساعت. متن پیامک تمیزمیشه(اعداد، لینک‌ها و علایم ازش پاک‌میشه قبل ارسال) و به دیتابیس اضافه میشه. اگر پیامک تکراری باشه ارزشش تغییر میکنه و اگر تکراری نباشه AI آنلاین همون موقع آموزش میبینه با پیامک جدید.۲. برای فیلترکردن پیامک اول متن پیامک براساس قوانین کاربر چک میشه، بعد با قوانین جمع‌سپاری(فقط شماره‌تلفن)، AIآنلاین پیامک تمیز‌شده و اگر شرایط استفاده آنلاین نباشه از نسخه آفلاین.۳. اطلاعات تغییر پیدا کرده به صورت اتوماتیک هر ۱۲ساعت آپدیت میشن، فقط تغییرات برای همین همیشه سینک سریع و کم حجم می‌مونه.۴. مسدود سازی تماس‌های تلفنی براساس شماره‌های گزارش‌شده و قوانین کاربر انجام میشه. این اطلاعات بعد از هر سینک دراختیار آی‌او‌اس قرار داده میشه چون باید سریع تصمیم گرفته شه که شماره باید مسدود شه یا نه.۵. برای استفاده از CPU کمتر جواب درخواست‌ها AI آنلاین توی دیتابیس ذخیره میشن. هر دوهفته پیامک‌هایی که نمونشون توی گزارش‌شده‌ها هست اگر وضعیتشون یکی نیست با AI از دیتابیس پاک میشن تا دفعه بعدی که درخواست میشه از AI جوابش آپدیت بشه.۶. AI آفلاین و آنلاین. دیتاشون و مدل‌هاشون برای هرزبان فرق میکنه. زبان‌های براساس دقت مدل‌ها(چینی، انگلیسی، فارسی)۷. تمامی اطلاعات اگر توی سرور ذخیره‌میشه برای استفاده از بهبود کیفیت سرویس، تمامی اطلاعات کاربر ازش پاک میشه. و درتمامی مراحل اطلاعات درحال انتقال رمزگذاری میشه. اطلاعات دخیره شده طوری هست که اگر هم بخوام نتونم به کاربر وابستشون بکنم که هیچ‌موقع استرس لو رفتن اطلاعات شخصی کاربر‌ها رو نداشته باشم.این ساختار تنها زمانی میتونه کیفیت خوبی رو ارایه کنه که تعداد کاربران زیادی داشته باشه. برای همین کاربر‌ها اگر می‌خوان از یادگیری‌ماشین و جمع‌سپاری استفاده کنن. باید کاربر دیگری رو دعوت کنن، برای هر نصب کسی دیگه با لینک اون کاربر هردو یک‌ماه‌ رایگان سرویس میگیرن. احتمالا این مقدار رو تغییر میدم و راحت‌ترش میکنم برای هر کشوری که تعداد کاربراش زیاد‌تر بشه!توی قسمت‌های بعد میتونم درمورد این موضوع‌ها بنویسم، توی نظر‌ها میتونید بگید کدوم رو دوست دارید سریع‌تر بخونید یا اگر بخشی دیگه رو دوست‌دارید بدونید میتونم پوشش بدم• یادگیری ماشین برای پشتیبانی چند‌زبانه• UI و UX اپ• سوییفت روی سرورپانویس: گت‌فیلتر۲ هنوز ریلیزنشده و درحال تست هست. اگر دوست‌دارید پیامی برام بفرستید یا از گت‌فیلتر می‌خواید پشتیبانی کنید از طریق توییتر میتونید میتونید با من ارتباط برقرار کنید.