זיהוי NSFW דו-שלבי מבוסס AI לאפליקציות מובייל

משתמשים מצפים לשליחת תמונות מיידית, אך סינון NSFW מאט לעיתים קרובות את הצ'אט או חוסם תמונות לגיטימיות. אנחנו בונים מערכת זיהוי AI דו-שלבית לאפליקציות מובייל: מסנן מקדים מהיר במכשיר עם CoreML/TFLite ואימות בצד השרת למקרי קצה. הצוות שלנו מספק פתרון turnkey—מבחירת מודל ועד אינטגרציה עם תמיכה מתמשכת—המבטיח איזון בין מהירות לדיוק ללא חסימות שגויות.

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

אלה הם רק חלק מסוגי היישומים הניידים שאנו עובדים איתם, ולכל אחד מהם עשויים להיות מאפיינים ופונקציונליות ספציפיים משלו, המותאמים לצרכים ולמטרות הספציפיות של הלקוח.

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
זיהוי NSFW דו-שלבי מבוסס AI לאפליקציות מובייל
בינוני
~3-5 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

זיהוי NSFW דו-שלבי מבוסס בינה מלאכותית לאפליקציות מובייל

משתמש מעלה תמונה בצ'אט — שרת המודרציה מאחר, והנמען רואה מסך ריק למשך 2 שניות. או שחסימה שגויה על תמונה רפואית גורמת לגל של משוב שלילי. ארכיטקטורה דו-שלבית פותרת את שתי הבעיות: מהירות (התוכן מוצג עם עיכוב מינימלי) ודיוק (תוצאות חיוביות שגויות הורסות אמון). שתי הדרישות מתנגשות, והארכיטקטורה הנכונה היא פשרה. הניסיון שלנו מראה: תכנית דו-שלבית עם מסנן מקדים במכשיר ואימות בענן מספקת את האיזון הטוב ביותר. מודל MobileNetV3-Small במכשיר מעבד תמונה ב-50–100 אלפיות השנייה, מהיר פי 8 מבקשת ענן ל-AWS Rekognition (300–800 אלפיות השנייה). חיסכון בעלויות השרת בגישה זו מגיע ל-40%, כלומר חיסכון של $2,000–$5,000 בחודש לאפליקציה בגודל בינוני.

מלכודות נפוצות בזיהוי NSFW

סיווג מלא בצד השרת ללא מסנן מקדים

אם כל תמונה שהועלתה פונה לשירות API ומחכה לתגובה לפני הצגתה, זמן האחזור גדל בעומס שיא וחוויית המשתמש מתדרדרת. בקשה אחת ל-AWS Rekognition DetectModerationLabels אורכת 300–800 אלפיות השנייה. עבור צ'אט עם תמונות או שוק עם העלאות מהירות, זה בלתי מתקבל על הדעת.

סיווג נאיבי במכשיר

הרצת מודל NSFW מלא על כל פריים של שיחת וידאו או כל תמונה בגלריה מחממת את המכשיר ומרוקנת את הסוללה. אייפון 12 עם מודל Open NSFW (~50 MB ב-CoreML) בעיבוד רציף נכנס למצב הגבלת חום תוך 8–10 דקות.

הפתרון שלנו: ארכיטקטורה דו-שלבית

אנו מיישמים צינור דו-שלבי: מסנן מקדים קל במכשיר ואימות בענן למקרים גבוליים. מודל במכשיר בצד הלקוח (CoreML/TFLite) נותן פסק דין מהיר למקרים פשוטים. אימות שרת (Google Cloud Vision SafeSearch או AWS Rekognition) מנתח תמונות חשודות בדיוק גבוה. התוצאה: הצגה מיידית של תוכן בטוח והחלטה סופית על מקרים שנויים במחלוקת.

כיצד למזער תוצאות חיוביות שגויות

תוצאות חיוביות שגויות הן נקודת הכאב העיקרית. תמונות רפואיות, יצירות אמנות או תמונות ספורט עלולות להיות מסומנות בטעות כ-NSFW. הפתרון הוא כוונון עדין של ספים ורשימות לבנות לקטגוריות מותרות. לדוגמה, בעת שילוב Google Cloud Vision SafeSearch, אנו קובעים את הסף עבור medical ל-VERY_LIKELY ואינם חוסמים; עבור racy, אנו מפעילים ב-POSSIBLE. זה מפחית חסימות שגויות ב-30–40% ללא אובדן רגישות. לפי App Store Review Guidelines (סעיף 5.1.1), אפליקציות עם תוכן משתמש (UGC) חייבות לסנן תוכן.

מדוע סינון מקדים במכשיר קריטי לחוויית המשתמש

בלעדיו, המשתמש ממתין לתגובת השרת עד 800 אלפיות השנייה — בצ'אטים ורשתות חברתיות, זה הורס את תחושת המשוב המיידי. מודל לקוח קל (8–15 MB) פותר זאת: הוא רץ ב-50–100 אלפיות השנייה. אם רמת הביטחון >0.92, אנו חוסמים מיד ללא העלאה. זה חוסך בסוללה ומפחית עומס על השרת.

מידע נוסף על כוונון ספיםהספים נקבעים אמפירית: עבור `unsafe` אנו משתמשים בדרך כלל ב-0.92 לחסימה בצד הלקוח, ו-0.65–0.92 לשליחה לשרת. הערכים תלויים בגיל הקהל ובמדיניות התוכן.

פרטי הארכיטקטורה הדו-שלבית

במכשיר (CoreML / TFLite)

בצד הלקוח, אנו מריצים מודל בינארי קל (~8–15 MB): MobileNetV3-Small או מודל NSFW ייעודי שהומר עם coremltools. פלט: שתי מחלקות (safe / unsafe) בתוספת ציון ביטחון.

// iOS: CoreML inference перед загрузкой
func checkImage(_ image: UIImage, completion: @escaping (NSFWResult) -> Void) {
    guard let pixelBuffer = image.resized(to: CGSize(width: 224, height: 224)).toCVPixelBuffer() else { return }
    let request = VNCoreMLRequest(model: nsfwModel) { request, _ in
        guard let results = request.results as? [VNClassificationObservation], let top = results.first else { return }
        let result = NSFWResult(
            label: top.identifier,
            confidence: top.confidence
        )
        DispatchQueue.main.async {
            completion(result)
        }
    }
    try? VNImageRequestHandler(cvPixelBuffer: pixelBuffer).perform([request])
}

ספים: // iOS: CoreML inference перед загрузкой func checkImage(_ image: UIImage, completion: @escaping (NSFWResult) -> Void) { guard let pixelBuffer = image.resized(to: CGSize(width: 224, height: 224)).toCVPixelBuffer() else { return } let request = VNCoreMLRequest(model: nsfwModel) { request, _ in guard let results = request.results as? [VNClassificationObservation], let top = results.first else { return } let result = NSFWResult( label: top.identifier, confidence: top.confidence ) DispatchQueue.main.async { completion(result) } } try? VNImageRequestHandler(cvPixelBuffer: pixelBuffer).perform([request]) } עבור confidence > 0.92 → חסימה במכשיר, ללא העלאה. unsafe בין 0.65 ל-0.92 → העלאה במצב נסתר, שליחה לאימות שרת.

קריטריון במכשיר (מסנן מקדים) אימות שרת
מהירות 50–100 אלפיות השנייה 300–800 אלפיות השנייה
דיוק ~85% במקרים גבוליים >95%
השפעה על סוללה נמוכה (מודל 8–15 MB) אין
תרחיש סינון ראשוני החלטה סופית על חשודים

אנדרואיד: ML Kit + TFLite

באנדרואיד, אנו משתמשים ב-confidence מספריית TFLite Task Library — היא מנהלת את מחזור חיי המודל ועיבוד ImageClassifier ללא טיפול ידני בבופרים:

val classifier = ImageClassifier.createFromFileAndOptions(
    context,
    "nsfw_lite.tflite",
    ImageClassifier.ImageClassifierOptions.builder()
        .setMaxResults(2)
        .setScoreThreshold(0.5f)
        .build()
)
val tensorImage = TensorImage.fromBitmap(bitmap)
val results = classifier.classify(tensorImage)
val nsfwScore = results.flatMap { it.categories }
    .firstOrNull { it.label == "nsfw" }?.score ?: 0f

אימות שרת באמצעות Google Cloud Vision / AWS Rekognition

למקרים גבוליים ובדיקות סופיות לפני פרסום:

// отправка на сервер только пограничных случаев
if (nsfwScore in 0.65f..0.92f) {
    uploadForReview(imageUri, nsfwScore)
}

Google Cloud Vision SafeSearch מחזיר 5 קטגוריות: adult, spoof, medical, violence, racy — כל אחת עם Bitmap עד val classifier = ImageClassifier.createFromFileAndOptions( context, "nsfw_lite.tflite", ImageClassifier.ImageClassifierOptions.builder() .setMaxResults(2) .setScoreThreshold(0.5f) .build() ) val tensorImage = TensorImage.fromBitmap(bitmap) val results = classifier.classify(tensorImage) val nsfwScore = results.flatMap { it.categories } .firstOrNull { it.label == "nsfw" }?.score ?: 0f . זה מאפשר מדיניות מפורטת: אפליקציות רפואיות מלבינות את // отправка на сервер только пограничных случаев if (nsfwScore in 0.65f..0.92f) { uploadForReview(imageUri, nsfwScore) } , אפליקציות ילדים קובעות את VERY_UNLIKELY כטריגר לחסימה.

וידאו: ניתוח פריים אחר פריים עם דגימה

עבור תוכן וידאו של משתמשים, אנו מחלצים פריימים באמצעות VERY_LIKELY (iOS) במרווחים של שנייה אחת, ומריצים את המודל במכשיר במקביל דרך medical. באנדרואיד, אנו משתמשים ב-racy = POSSIBLE עם קורוטינות על AVAssetImageGenerator. אם פריים כלשהו חורג מהסף הלא בטוח, כל הסרטון מסומן לבדיקה.

מקרה בוחן: הפחתת תוצאות חיוביות שגויות באפליקציית בריאות

עבדנו עם אפליקציית טלרפואה שאפשרה למשתמשים לשתף תמונות טיפול. המודרציה הראשונית בצד השרת חסמה בטעות 15% מהתמונות הרפואיות הלגיטימיות, וגרמה לתלונות משתמשים. לאחר שילוב מסנן מקדים במכשיר עם רשימה לבנה לקטגוריית DispatchQueue.concurrentPerform וכוונון ספים, החסימות השגויות ירדו ל-2%. האפליקציה מציגה כעת תמונות בטוחות באופן מיידי, ומקרים גבוליים נבדקים על ידי מודרטורים אנושיים תוך 30 שניות. עלויות השרת ירדו ב-35%, וחוסכו לאפליקציה $3,000 בחודש. עם ניסיון של למעלה מ-7 שנים במודרציה מבוססת בינה מלאכותית ויותר מ-50 פרויקטים מוצלחים, הצוות שלנו מבטיח דיוק גבוה ומינימום תוצאות חיוביות שגויות.

תהליך העבודה שלנו

  1. ניתוח מדיניות תוכן: אילו קטגוריות לחסום, אילו דורשות בדיקה אנושית, רשימות לבנות לרפואה/אמנות.
  2. בחירה ובדיקה של מודל במכשיר על מערך נתונים מייצג של האפליקציה.
  3. שילוב הלוגיקה הדו-שלבית בלקוח + מאמת שרת.
  4. כוונון ספים בהתחשב בקהל (דירוג גיל האפליקציה).
  5. תיעוד והכשרת צוות המודרציה.

הצוות שלנו של למעלה מ-10 מהנדסים מבטיח ביצוע מהיר ואספקה אמינה. אפליקציות מובילות סומכות עלינו, והפתרון שלנו עומד בסטנדרטים הטובים ביותר בתעשייה לאבטחת מידע.

מה כלול בשירות

  • ניתוח דרישות למודרציית תוכן.
  • בחירה והתאמה של מודל במכשיר (CoreML/TFLite).
  • שילוב עם מאמת שרת (Google Cloud Vision או AWS Rekognition).
  • בדיקות על נתונים אמיתיים (מינימיזציה של תוצאות חיוביות שגויות).
  • תיעוד, גישה לשירות, והכשרת צוות.
  • תמיכה לאחר השקה (שבועיים של ניטור).
  • שירות השילוב הדו-שלבי שלנו מתחיל ב-$4,000.

הערכות זמנים

שלב משך
מסנן מקדים במכשיר עם CoreML/TFLite 2–3 ימים
מערכת דו-שלבית מלאה עם אימות שרת 1–1.5 שבועות
בדיקות וכוונון ספים 3–5 ימים
שילוב עיבוד וידאו +2 ימים

צרו קשר כדי לדון בפרטים ולקבל ייעוץ על שילוב מודרציה מבוססת בינה מלאכותית באפליקציה שלכם. בקשו הערכת כוונון ספים — נבדוק את הפרויקט שלכם ונציע ארכיטקטורה אופטימלית.