מסנן ספאם רב-לשוני
מסנני ספאם רבים נבנו עבור אנגלית. ספאם בשפות אחרות חומק מהם, ודואר רגיל בשפות אחרות מסומן בגלל הכתב שלו. Spam Scanner בנוי כדי להימנע משני הדברים.
קריאת המילים#
המילים מזוהות בעזרת Intl.Segmenter, כללי גבולות המילים של Unicode עם מילונים לסינית, יפנית, תאית, לאו, חמרית ובורמזית. משפט בסינית הופך למילים כמו 恭喜, 获得 ו-大奖, ולא למחרוזת ארוכה אחת שלעולם לא חוזרת.
הסוואות מבוטלות לפני הספירה: תווים בלתי נראים בתוך מילים, אותיות קיריליות או יווניות בתוך מילים לטיניות (pаypal), ספרות במקום אותיות (v1agra), ואותיות מתמטיות או מוקפות (𝐅𝐑𝐄𝐄). כל הסוואה היא גם סימן בפני עצמו.
לא לסמן את מה שהוא לא מכיר#
מאגרי ספאם ציבוריים מכילים הרבה יותר ספאם בשפות זרות מאשר hamדואר רצוי: ההפך מספאם. בשפות זרות, ולכן מסווג תמים לומד שטקסט בערבית או בקוריאנית כשלעצמו הוא ספאם. Spam Scanner אף פעם לא משתמש בשפה כסימן, שוקל כל מילה מול ספירות הספאם וה-ham של השפה שלה, ונשאר „לא בטוח” ביחס למיעוט ה-ham שראה בשפה.
בבדיקה על הודעות SMS ב-21 שפות שהמודל המצורף מעולם לא ראה, זה הוריד לאפס את החיוביות השגויות שלו בסינית, ערבית, קוריאנית, יפנית, הינדי, בנגלית, אורדו, טורקית, אוקראינית ושוודית.
תפיסת ספאם בכל שפה#
- בדיקות שלא קוראות מילים: דומיינים מתחזים, קישורים מטעים, קבצי הרצה, פקודות מאקרו, SPFSender Policy Framework: רשומת DNS שמפרטת את השרתים שמורשים לשלוח דואר עבור דומיין., DKIMDomainKeys Identified Mail: חתימה על הודעה, שנבדקת בעזרת מפתח ציבורי שמפורסם ב-DNS של השולח., DMARCמדיניות DNS שאומרת לשרתים המקבלים מה לעשות כשדואר שמתיימר להגיע מדומיין נכשל בהתאמת SPF ו-DKIM. ורשימות שחורות.
- מודל שפה להודעות „לא בטוח”. מודלים פתוחים כמו Qwen 3.5 ו-Gemma 4 קוראים 140 עד 200 שפות; בדיקות הקצה-לקצה בודקות ספאם ו-ham בסינית, ערבית, קוריאנית, הינדי ותאית מול מודל אמיתי.
- הדואר שלכם. כמה מאות הודעות מכל סוג בשפה מסוימת נותנות למודל שאומן על הדואר שלכם ביטחון מלא בה.
spamscanner scan message.eml --llm ollama --llm-model qwen3.5:4b
spamscanner train --spam ~/Maildir/.Junk --ham ~/Maildir/cur --out my-model.jsonכדי לקבל רק חלק מהשפות, --allow-language en,de מוסיף נקודות לדואר שזוהה בביטחון בכל שפה אחרת.