Discourse AI - Spam-Erkennung

:bookmark: Dieser Leitfaden erklärt, wie die Spam-Erkennungsfunktion von Discourse AI konfiguriert und verwendet wird, einschließlich des Einrichtungsprozesses, der Scan-Kriterien, der Klassifizierungslogik, der Anpassungen und des Vergleichs mit der KI-Triage.

:person_raising_hand: Erforderliches Benutzerniveau: Administrator

:megaphone: Dies ist jetzt standardmäßig für Starter- und Pro-Kunden sowie für unsere älteren Kunden Basic, Open Source, Creator und Business aktiviert.

Discourse AI bietet eine effiziente Spam-Erkennungsfunktion, die Spam-Beiträge mit minimaler Konfiguration identifiziert und kennzeichnet. Obwohl sie auf Einfachheit ausgelegt ist, ergänzt sie das vielseitigere KI-Triage-System, das breitere Arbeitsabläufe und größere Anwendungsfälle unterstützt.

Zusammenfassung

In diesem Leitfaden lernen Sie:

  • Wie die KI-Spam-Erkennung funktioniert und welche Inhalte gescannt werden
  • Die von der KI verwendete Klassifizierungslogik und der Kontext
  • Schritte zur Konfiguration der Spam-Erkennung über /admin/plugins/discourse-ai/ai-spam
  • Richtlinien für die Auswahl von Large Language Models (LLMs)
  • Wichtige Unterschiede zwischen Spam-Erkennung und KI-Triage
  • Wie man gekennzeichnete und übersehene Beiträge verwaltet

Wie die KI-Spam-Erkennung funktioniert

Welche Inhalte werden gescannt?

Die KI-Spam-Erkennung bewertet Beiträge anhand dieser Kriterien:

  1. Benutzer-Vertrauensstufe:

    • Scannt Beiträge von Benutzern mit Vertrauensstufe 1 oder niedriger.
    • Schließt Beiträge von höheren Vertrauensstufen aus.
  2. Beitragsart:

    • Öffentliche Beiträge (ausgenommen private Nachrichten).
    • Sowohl Antwortbeiträge als auch erste Themenbeiträge sind enthalten, basierend auf zusätzlichen Schwellenwerten.
  3. Beitragsbearbeitungen:

    • Scannt Beiträge mit erheblichen Bearbeitungen (z. B. Änderungen, die 10 Zeichen überschreiten).
    • Erzwingt eine 10-minütige Verzögerung zwischen Scans desselben Beitrags.
  4. Beitragsfrequenz:

    • Priorisiert Beiträge von neuen Benutzern mit weniger als 4 Gesamtbeiträgen in öffentlichen Themen.
    • Schließt Beiträge von Benutzern aus, die diesen Schwellenwert überschreiten.

Der Klassifizierungsprozess

Beiträge, die die Kriterien erfüllen, werden zur Analyse an ein KI-Modell (LLM) gesendet. Das Modell bewertet, ob der Beitrag “SPAM” oder “NICHT SPAM” ist, basierend auf:

  • Kontext: Beinhaltet Beitragsinhalt, Thema, Benutzerkontodaten (z. B. Kontenalter und Vertrauensstufe) und Website-Richtlinien.
  • Benutzerdefinierte Anweisungen: Vom Administrator definierte Regeln für verstärkte oder angepasste Scan-Kriterien.
  • Automatisierte Erkennung:
    • Kennzeichnet irrelevante oder werbliche Inhalte (z. B. Anzeigen oder kommerzielle Materialien).
    • Identifiziert automatisierte oder botähnliche Verhaltensweisen.
    • Bewertet die Relevanz des Inhalts für die Diskussion.

Standard-Prompt und Kontext

Die KI verwendet einen Standard-System-Prompt zur Steuerung der Spam-Erkennung. Dieser Prompt beschreibt die Regeln für die Spam-Klassifizierung. Zum Beispiel:

Sie sind ein Spam-Erkennungssystem. Analysieren Sie den folgenden Inhalt und Kontext.
Hinweise:
- Antworten müssen relevant für den Diskussionsfaden bleiben.
- Markieren Sie als SPAM, wenn der Inhalt irrelevant, werblich oder automatisiert ist.
- Betrachten Sie Beiträge neuer Benutzer mit Links als potenziellen SPAM, es sei denn, sie sind explizit themenrelevant.
Antworten Sie nur mit "SPAM" oder "NICHT SPAM".

Der Scanner kompiliert auch ein Kontextpaket, das Folgendes enthält:

  • Metadaten von Themen und Kategorien.
  • Relevanz von Antworten für den Thread.
  • Autoren-Daten (z. B. Erstellungsdatum des Kontos, Gesamtbeiträge, Vertrauensstufe).
  • Beitrags-Text gekürzt auf 5000 Zeichen zur Verarbeitung.

KI-Spam-Erkennung konfigurieren

Konfigurationsanleitung

  1. Einstellungen aufrufen:
    Navigieren Sie zu /admin/plugins/discourse-ai/ai-spam.

  2. LLM auswählen:

    :information_source: Wenn Ihre Website von Discourse gehostet wird

    Sie können unser CDCK Hosted Small LLM aus der LLM-Liste auswählen.

  3. Spam-Erkennung aktivieren:
    Aktivieren Sie die Spam-Erkennung, indem Sie die Funktion einschalten.

    :information_source: Hinweis: Ein verbundenes LLM ist zwingend erforderlich.

  4. Benutzerdefinierte Anweisungen hinzufügen:

    • Definieren Sie Regeln, die spezifisch für Ihr Forum sind (z. B. strengere Überwachung externer Links).
    • Speichern Sie alle Änderungen, um sie anzuwenden.

Unterschiede zur KI-Triage

Während die Spam-Erkennung speziell für die Identifizierung von Spam entwickelt wurde, unterstützt die KI-Triage breitere Aufgaben der Beitragsverwaltung.

Merkmal KI-Spam-Erkennung KI-Triage
Komplexität Optimierte, meinungsbasierte Einrichtung Hochgradig anpassbar und flexibel
Primärer Anwendungsfall Erkennung von Spam mit minimalem Aufwand Erweiterte Arbeitsabläufe für Kategorisierung, Tagging, Antworten, Spam-Erkennung, NSFW-Erkennung
Aktionen Kennzeichnet Spam, sperrt Benutzer Taggt, kategorisiert, versteckt Beiträge, fügt Antworten hinzu, kennzeichnet Beiträge, sperrt Benutzer
Empfehlung Einfache Einrichtung und effektiv für die meisten Situationen Verwenden Sie für reichhaltige, hochgradig anpassbare Arbeitsabläufe

Weitere Details finden Sie unter Discourse AI - KI-Triage.


Empfehlungen zur LLM-Auswahl

Die Leistung der Spam-Erkennung hängt vom gewählten LLM ab.

Die meisten kostengünstigen LLMs funktionieren effektiv, wie z. B.:

  • GPT-4o-mini
  • Claude 3.5 Haiku
  • Gemini 2.0 Flash

Experimentieren Sie mit verschiedenen Modellen, um die beste Lösung zu finden. Konfigurieren Sie Ihre Modelle über /admin/plugins/discourse-ai/ai-llms.


Testen des Verhaltens des Spam-Scanners

Sie können die Regeln zur Spam-Erkennung direkt auf der Konfigurationsseite testen.

  • Fügen Sie eine Beitrags-URL oder -ID in das Testfeld ein.
  • Überprüfen Sie das Klassifizierungsergebnis (z. B. “SPAM” oder “NICHT SPAM”) und analysieren Sie die Protokolle, um die Begründung zu verstehen.
  • Nicht gespeicherte Änderungen werden während des Tests angewendet, was Experimente ohne Risiko ermöglicht.

Umgang mit gekennzeichneten und übersehenen Beiträgen

Umgang mit gekennzeichneten Beiträgen

Gekennzeichnete Beiträge erscheinen in der Moderationswarteschlange. Administratoren können:

  • Berechtigte Beiträge genehmigen, die fälschlicherweise als Spam klassifiziert wurden.
  • Spam-Themen ablehnen, um das System korrekt zu halten.

:warning: Wichtig: Lehnen Sie Spam-Kennzeichnungen für falsch klassifizierte Beiträge ab. Benutzer bleiben gesperrt, bis die Kennzeichnung behoben ist.

Umgang mit übersehenem Spam

Übersehener Spam bezieht sich auf Beiträge, die die Erkennung umgehen, aber von der Community gekennzeichnet werden. Moderatoren können diese nach Bedarf verwalten.


Best Practices

  • Überwachen Sie gekennzeichneten und übersehenen Spam regelmäßig, um die Genauigkeit des Systems zu verbessern. Klickbare Metriken vereinfachen diesen Prozess.
  • Verwenden Sie Testfälle, um benutzerdefinierte Anweisungen gegen Grenzfälle zu bewerten.
  • Überprüfen und passen Sie die LLM-Einstellungen bei Bedarf an.

Zusätzliche Ressourcen


:mega: Die effektive Konfiguration der KI-Spam-Erkennung reduziert den manuellen Moderationsaufwand und sorgt für eine saubere, spamfreie Community.

16 „Gefällt mir“

Wir haben dies bereits ausgiebig getestet und scheinen überhaupt keine zuverlässigen Ergebnisse zu erzielen. Als Kontext verwenden wir das Modell gpt-4o.

Um seine Genauigkeit zu testen, habe ich die folgenden einfachen Anweisungen gegeben:

Sie sind ein Spam-Erkennungssystem. Analysieren Sie den folgenden Inhalt und Kontext.
Hinweise unten. Wenn *IRGENDETWAS* von den unten aufgeführten Punkten zutrifft, kennzeichnen Sie es als Spam:
- Der Benutzername lautet speziell „testjon“, dann ist es *IMMER* Spam.
- Antworten Sie nur mit „SPAM – Es ist Jon!“ oder „KEIN SPAM“.

Das Testen eines Beitrags des Benutzernamens testjon ergibt KEIN SPAM. Es scheint, als ob die Anweisungen überhaupt nicht gut befolgt werden. Irgendwelche Vorschläge?

Hatten andere gute oder schlechte Erfahrungen mit der KI-Spam-Erkennung?

Ich weiß nicht, wie die Dinge in dieser Situation sind, aber eine allgemeine Aussage wie die zitierte ist sehr anfällig für Fehler. Sie versteht nicht, was ANY bedeutet und fährt fröhlich fort, solange sie etwas findet. Und von dort aus fand sie schließlich NICHT SPAM.

1 „Gefällt mir“

Also, du sagst, die Fettschrift bei ANY zu entfernen? Oder meinst du die gesamte Aussage “wenn etwas unten”?

Ich sage, Sie müssen es logischer und genauer schreiben. Sie können nicht zulassen, dass eine KI in irgendeiner Weise wählt. Denken Sie daran, dass sie nicht zählen kann und definitiv nicht zuerst alles liest und dann zurückkommt, um logisch zu arbeiten. Versuchen Sie, so einfach zu erklären, wie Sie Anweisungen für ein faules, 3-jähriges Kind mit ADHS geben würden. Beispiele sind nicht falsch, erhöhen aber die Token-Nutzung.

1 „Gefällt mir“

Das sind tolle Informationen. Wie könnte man dieses exakte Szenario zum Beispiel anders formulieren?

1 „Gefällt mir“

Etwas wie…

Du bist ein Spam-Erkennungssystem. Deine Aufgabe ist es, Inhalte leise zu analysieren, um die hohe Qualität in diesem Forum aufrechtzuerhalten. Du musst Regeln befolgen, um zu definieren, wann ein Beitrag Spam ist. Wenn du Spam findest, wird deine Antwort in den Regeln beschrieben. Du verwendest nur angegebene Antworten.

## Regeln für Spam

Das mache ich nicht für dich 😏 Aber du brauchst einige Erklärungen und Beispiele. Wie ein schnelles & grobes Beispiel:
* Wenn ein Beitrag Links nach außen enthält, die mit Glücksspiel, Sex, Krypto usw. verbunden sind (ähnlich ist in diesem Zusammenhang riskant, übrigens), dann wird ein Beitrag als Spam eingestuft. Beispiel: www.buy-crypto.deal

Das musst du von Fall zu Fall abstimmen, da du Fehlalarme und falsch negative Ergebnisse erhalten wirst.

Dann musst du auch einige Richtlinien für Inhalte geben. Aber beim Testen:

* Wenn der Benutzername „testjon“ lautet, überspringe die Analyse des Inhalts und klassifiziere ihn direkt als Spam. Deine Antwort ist „SPAM – es ist Jon“.

Übrigens, kann es den Benutzer sehen?

## Regeln für andere Inhalte

Wenn ein Beitrag die Spam-Analyse bestanden hat und du sicher bist, dass es sich um legitime Inhalte handelt, ist deine einzige Antwort „KEIN SPAM“.

So etwas in der Art. Du musst natürlich testen. Und jedes Mal, wenn du eine falsche Antwort erhältst, versuche, den verwirrenden Punkt zu finden. Aber gib der KI keine Möglichkeit zu wählen, was sie tun kann, denn sie wird dann die letzte, einfachste oder netteste Richtung einschlagen. Sie muss programmiert sein, zu antworten und glücklich zu sein.

Ich habe dies gerade aktiviert und bin gespannt, wie es läuft!

Gibt es eine Einstellung oder eine Überlegung für das Vertrauensniveau der Benutzer?

Zum Beispiel: Ich brauche nicht, dass die KI für TL2 und höher greift. Sie haben sich ihren Platz verdient und sollten nicht für das Scannen in Betracht gezogen werden. Wenn sie Amok laufen, müssen wir ein paar Worte mit ihnen wechseln :sweat_smile:

2 Beiträge wurden auf ein neues Thema aufgeteilt: Discourse AI Plugin fehlt

Da dies Akismet ersetzt, frage ich mich, was die beste Alternative zur Spam-Erkennung/-Verhinderung ist, wenn man die LLM-Kosten, die mit KI einhergehen, nicht möchte.

2 „Gefällt mir“

Tatsächlich ist Gemini 2.0 Flash kostenlos verfügbar, solange Sie natürlich nicht jeden Tag eine Million Anfragen daran senden. Es funktioniert derzeit für mein Forum ohne Kosten und ist definitiv präziser und „intelligenter“ als Akismet.

Sollte die KI-Spam-Erkennung jedoch fehlschlagen, habe ich immer noch das Akismet-Plugin auf meiner Website installiert und einsatzbereit, falls ich es jemals wieder benötige, und ich denke, Sie können es immer noch installieren. (Da es jedoch ausläuft, erwarte ich nicht, dass es für immer bestehen bleibt). Denken Sie auch daran, dass Vertrauensstufen ein grundlegender Kern von Discourse sind, die Ihnen helfen, Spam auf Ihrer Website zu verwalten. :+1:

5 „Gefällt mir“

Das ist ja cool, ist es möglich, eine Token-Begrenzung festzulegen, um sicherzustellen, dass die (kostenlose) Grenze vom LLM eingehalten wird?

2 „Gefällt mir“

Soweit ich weiß, glaube ich, dass die API für die LLM einfach nicht mehr antwortet, wenn Sie das Limit überschreiten. Mein Google Cloud Console-Konto hat kein Abrechnungskonto, und ich kann die API im kostenlosen Kontingent weiterhin kostenlos nutzen, sodass Sie auf der sicheren Seite sein sollten. :+1:

5 „Gefällt mir“

Ein Beitrag wurde in ein neues Thema aufgeteilt: Verbesserung der KI-Spamerkennung für Bearbeitungen und Zusammenführungen

Woher bekomme ich den „API-Schlüssel des Dienstes, der das Modell hostet“?

Wenn Sie auf unserem Hosting sind, können Sie LLM Small verwenden.

Wenn nicht, müssen Sie eine LLM konfigurieren und einen Schlüssel von OpenAI/Google/Anthropic/X/was auch immer… erhalten.

2 „Gefällt mir“

Oh, ein API-Schlüssel von ihnen, nicht von Discourse.

2 „Gefällt mir“

Die Aktivierung der KI-Spam-Erkennung mit Gemini 2.0 Flash scheint nicht geholfen zu haben, diesen Kram zu blockieren. Ich hatte noch nie zuvor so offensichtlichen Spam, der den Filter durchgelassen hat. Vielleicht ist er speziell für Discourse-Seiten konzipiert?

| QuickBooks Payroll Fehler nach einem Update +1-800-223-1608 Schritt-für-Schritt-Lösung neu | Amerika - Kanada | | 1 | 2 | 1h |
|----|----|----|----|----|----|
| Verständnis des QuickBooks Payroll Steuerdatentabellen-Update-Fehlers +1-800-223-1608 neu | Amerika - Kanada | | 1 | 2 | 1h |
| Verständnis des QuickBooks Payroll Fehlers PS107 +1-800-223-1608 neu | Amerika - Kanada | | 1 | 2 | 2h |
| Vollständige Liste der QuickBooks®️ Kundensupport®️ USA Kontaktnummern: Ihr Expertenleitfaden neu | Amerika - Kanada | | 1 | 2 | 5h |
| Vollständige QuickBooks®️ Payroll & Fehler Supportnummern™️: Referenzhandbuch 2025 neu | Asien | | 1 | 2 | 5h |
| {Experten~ Leitfaden} QuickBooks® Payroll Support® Kontaktinformationen – USA Leitfaden 2025 neu | Amerika - Kanada | | 1 | 4 | 5h |
| {Anruf@ +1-855-510-6777} Wie kann ich den Expedia Vacation Package Buchungssupport erreichen? neu | Louisiana | | 1 | 6 | 5h |
| Vollständige Liste der™️ Caribbean Support™️ – Der detaillierte offizielle Leitfaden neu | Asien | | 1 | 2 | 6h |
| \[Call^Agent^Direct\] Welche Nummer verbindet mit dem Expedia Vacation Package Support? {Wählen Sie +1-855-510-6777} neu | Amerika - Kanada |

Ihr API-Schlüssel ist ungültig, daher werden keine Tests durchgeführt.

Wenn Sie einen Test unter https://www.foodtalkcentral.com/admin/plugins/discourse-ai/ai-spam durchführen und diese URL einfügen, erhalten Sie einen 500-Fehler. Wenn Sie in die Protokolle unter
/var/discourse/shared/web-only/log/rails/production.log eintauchen und nach „ 500 “ suchen, sehen Sie

Completed 200 OK in 399ms (Views: 123.1ms | ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 22.9ms)
DiscourseAi::Completions::Endpoints::Gemini: status: 400 - body: {
  "error": {
    "code": 400,
    "message": "API key not valid. Please pass a valid API key.",
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.ErrorInfo",
        "reason": "API_KEY_INVALID",
        "domain": "googleapis.com",
        "metadata": {
          "service": "generativelanguage.googleapis.com"
        }
      },
      {
        "@type": "type.googleapis.com/google.rpc.LocalizedMessage",
        "locale": "en-US",
        "message": "API key not valid. Please pass a valid API key."
      }
    ]
  }
}
1 „Gefällt mir“

Oh, danke. Ich habe versehentlich Gemini 2.0 Flash anstelle von Gemini 2.0 Flash Lite ausgewählt. Jetzt funktioniert es.

1 „Gefällt mir“