Eine Telegram-Community zu moderieren klingt nach einem gelösten Problem, bis man tatsächlich eine betreibt. Eine Gruppe von zehntausend Menschen erzeugt einen Sturzbach an Nachrichten, und darin verborgen sind Spammer, die jahrelang gelernt haben, jeden naiven Filter zu umgehen, den Sie schreiben könnten. Sie mischen Schriftsysteme, fügen Zeichen mit Nullbreite ein, übersetzen ihren Pitch in dreißig Sprachen und wechseln die Formulierung schneller, als eine Sperrliste hinterherkommt.
Telm ist unsere Antwort darauf. Das Designprinzip dahinter lautet, dass Spam-Erkennung zwei Probleme auf einmal ist: Sie muss schnell genug sein, um zu handeln, bevor eine Nachricht gesehen wird, und genau genug, um echte Mitglieder nicht zu bestrafen. Diese Ziele ziehen in entgegengesetzte Richtungen – die genaueste Prüfung ist zugleich die langsamste –, und statt uns für eines zu entscheiden, haben wir eine Pipeline aus drei Schichten gebaut, von denen jede das fängt, was die vorherige nicht konnte, und nur die schweren Fälle weiterreicht.
Schicht eins: die Regel-Engine
Die erste Schicht ist eine handoptimierte Regel-Engine, und sie erledigt den Großteil der Arbeit. Sie umfasst über 200 Muster, die den Spam abdecken, der sich nie wirklich ändert: Einladungen zu Krypto-Pumps, gefälschte Jobangebote, „Schreib mir für leicht verdientes Geld", Phishing-Links und die Verschleierungstricks, mit denen sie an Filtern vorbeigeschmuggelt werden.
Die zwei Dinge, die sie wirksam machen, sind Breite und Geschwindigkeit.
- Sie normalisiert Text vor dem Abgleich – klappt ähnlich aussehende Unicode-Zeichen zusammen, entfernt Leerzeichen mit Nullbreite, löst die Homoglyphen-Tricks auf, die aus „invest" eine Zeichenkette machen, die identisch aussieht, es aber nicht ist. Spammer setzen darauf, dass Ihr Regex etwas anderes sieht als das menschliche Auge; die Normalisierung schließt diese Lücke.
- Sie deckt über 30 Sprachen ab, denn eine Regel, die nur Englisch kennt, ist für den größten Teil des weltweiten Spams blind.
- Sie läuft in unter 10 Millisekunden. Das ist die Zahl, mit der Telm eine Nachricht löschen kann, bevor der Raum sie wirklich gesehen hat, statt erst danach, wenn der Schaden bereits angerichtet ist.
Die Regel-Engine fängt den überwiegenden Großteil des Spams von allein. Doch Regeln haben eine Obergrenze: Sie wissen nur, was man ihnen gesagt hat, und ein wirklich neuartiger Betrug passt auf kein Muster. Genau dafür sind die nächsten Schichten da.
Schicht zwei: der KI-Klassifikator
Wenn eine Nachricht die Regeln übersteht, aber dennoch verdächtig aussieht – ein ungewöhnlicher Link, ein merkwürdiges Postmuster, eine erstmalig postende Person mit einer pitch-förmigen Nachricht –, geht sie an einen Machine-Learning-Klassifikator, der auf gelabelten Spam- und legitimen Nachrichten trainiert wurde.
Der Klassifikator fängt das, was Regeln nicht in Worte fassen können: den Ton eines Betrugs, die Struktur eines Manipulationsversuchs, die Gestalt einer Nachricht, die technisch sauber, statistisch aber spam-verdächtig ist. Das Problem ist, dass Modell-Inferenz teuer ist, und sie auf jede Nachricht anzuwenden würde das Latenzbudget sprengen, das die Regel-Engine so hart zu schützen versucht.
Deshalb sitzt der Klassifikator hinter einem Cache. Spam kommt in Wellen – dieselbe Kampagne trifft viele Gruppen innerhalb von Minuten mit nahezu identischen Nachrichten. Wir schlüsseln den Cache über einen normalisierten Fingerabdruck der Nachricht, sodass die erste Instanz einer Kampagne die vollen Inferenzkosten trägt und jede weitere Kopie ein Cache-Treffer ist. In der Praxis fängt der Cache den Großteil des wiederholten Verkehrs ab, und das Modell läuft nur bei wirklich neuen Inhalten tatsächlich.
message ──▶ normalize ──▶ rule engine (<10ms, 200+ patterns)
│ uncertain
▼
fingerprint cache ──hit──▶ verdict
│ miss
▼
AI classifier ──▶ verdict + cache writeSchicht drei: das semantische Gedächtnis
Die dritte Schicht ist diejenige, die Telm über die Zeit schwer zu umgehen macht. Spammer senden nicht zweimal dieselbe Nachricht – sie paraphrasieren. Aus „Tritt unserer exklusiven Signalgruppe bei" wird „Erhalte Zugang zu unserem privaten Trading-Kanal", was zum selben Angebot auf Portugiesisch wird. Ein Fingerabdruck-Cache sieht drei verschiedene Zeichenketten. Ein Mensch sieht einen Betrug.
Das semantische Gedächtnis schließt diese Lücke, indem es mit Bedeutung statt mit Text arbeitet. Wenn eine Nachricht als Spam bestätigt ist, speichert Telm ein Embedding – einen numerischen Vektor, der erfasst, was die Nachricht bedeutet, statt wie sie geschrieben ist. Neue Nachrichten werden ebenfalls eingebettet und über Ähnlichkeit mit diesem Gedächtnis verglichen. Eine Paraphrase, eine Übersetzung, ein umformulierter Pitch landen alle nahe am Original im Vektorraum, obwohl sie fast keine buchstäblichen Zeichen teilen.
Genau das lässt Telm die zweite, dritte und hundertste Variante eines Betrugs fangen, den es nur ein einziges Mal gesehen hat. Die Regel-Engine bewältigt das Bekannte, der Klassifikator bewältigt das Neuartige, und das semantische Gedächtnis bewältigt das Mutierte – den langen Schwanz an Spam, der gerade deshalb überlebt, weil er sich nie Wort für Wort wiederholt.
Die CAS-Sperrliste
Nicht jede Abwehr muss lokal berechnet werden. Telm integriert die Combot-Anti-Spam-Sperrliste (CAS), ein globales, von der Community gepflegtes Register von Konten, die im gesamten Telegram-Ökosystem bereits als Spammer bestätigt sind.
Der Wert von CAS besteht darin, dass es handelt, bevor eine Nachricht existiert. Wenn ein bekannt-schlechtes Konto beizutreten oder zu posten versucht, kann Telm es auf den ersten Blick bannen – kein Inhalt zu analysieren, keine Inferenz auszuführen, denn die Identität selbst ist das Signal. Es ist die günstigstmögliche Prüfung, und sie entfernt einen bedeutsamen Anteil der Übeltäter, bevor die Erkennungspipeline überhaupt über sie nachdenken muss.
Beobachtungsmodus: erst handeln, wenn Sie ihm vertrauen
Ein Moderations-Bot, der eine falsche Entscheidung trifft, ist schlimmer als gar kein Bot. Löschen Sie am ersten Tag die Nachricht eines echten Mitglieds, und Sie haben der Community beigebracht, dem Werkzeug nicht zu vertrauen. Deshalb startet jede neue Gruppe Telm im Beobachtungsmodus.
In diesem Modus beobachtet und meldet Telm, rührt aber nichts an. Für jede Nachricht protokolliert es die Aktion, die es ergreifen *würde* – löschen, stummschalten, bannen –, und zeigt sie Ihnen, ohne tatsächlich etwas davon zu tun. Sie bekommen genau zu sehen, wie sich die Pipeline gegen den realen Verkehr Ihrer Community verhält, mit Ihren echten Mitgliedern, bevor sie die Erlaubnis zum Handeln hat.
Das bewirkt zweierlei. Es baut berechtigtes Vertrauen auf: Sie schalten Telm erst dann aktiv, wenn Sie gesehen haben, dass seine Entscheidungen mit Ihrem Urteil übereinstimmen. Und es ist ein Sicherheitsnetz für die Feinabstimmung – wenn eine bestimmte Regel für die Kultur Ihrer Gruppe zu aggressiv ist, erfahren Sie das in einem Bericht und nicht in einer wütenden Nachricht eines Mitglieds, das gebannt wurde, weil es „schau dir mein Projekt an" gesagt hat.
Der Beobachtungsmodus ist in gewisser Weise die ganze Philosophie in einer einzigen Funktion. Die Erkennung darf aggressiv sein, weil die Aktivierung konservativ ist. Sie sehen zu, bevor es handelt, und wenn es handelt, wissen Sie bereits, dass es richtig liegt.