KI-Bot - Agents

:bookmark: Diese Anleitung erklärt, wie Agents für Discourse AI - AI bot eingerichtet und verwaltet werden.

:person_raising_hand: Erforderliches Benutzerniveau: Administrator

Die Discourse AI-Bot verfügt über ein flexibles System zur Verwaltung von Agents. Diese Anleitung behandelt:

  • Interaktionsmethoden für KI-Agents
  • Konfigurationsoptionen
  • Erweiterte Einstellungen
  • Unterstützte Werkzeuge
  • Anpassungsmöglichkeiten

:link: Erfahren Sie mehr über den KI-Bot und wie Sie ihn aktivieren in dieser Anleitung.

Was sind Agents?

Agents sind ein leistungsstarkes Feature, mit dem Sie das Verhalten der KI-Engine in Ihrem Discourse-Forum anpassen können. Sie fungieren als „Systemnachricht“, die die Antworten und Interaktionen der KI leitet und so hilft, eine persönlichere und ansprechendere Benutzererfahrung zu schaffen.

Warum Agents verwenden?

Mit Agents können Sie das Verhalten der KI an den Kontext und den Ton Ihres Forums anpassen. Ob Sie möchten, dass die KI für ein professionelles Umfeld formeller ist, für ein Community-Forum lockerer, oder sogar einen bestimmten Charakter für ein Rollenspiel verkörpert – Agents geben Ihnen die Flexibilität dazu.

Gruppenspezifischer Zugriff auf Agents

Darüber hinaus können Sie festlegen, dass bestimmte Benutzergruppen Zugriff auf spezifische Agents haben. Das bedeutet, dass Sie für verschiedene Bereiche Ihres Forums unterschiedliche KI-Verhaltensweisen haben können, was die Vielfalt und den Reichtum der Interaktionen Ihrer Community weiter bereichert.

Interaktion mit Agents

Mit Agents kann auf verschiedene Weisen interagiert werden:

  1. Private Nachricht (PM)
  2. Chat-Direktnachricht (DM)
  3. Chat-Kanal-Erwähnungen
  4. Erwähnung in einem öffentlichen Thema über @example_bot_username

Administratoren können steuern, welche Interaktionsmethoden für jeden Agent über vier separate Umschalter erlaubt sind:

  • Private Nachrichten erlauben: Benutzern erlauben, PMs mit diesem Agent zu beginnen (standardmäßig aktiviert)
  • Themen-Erwähnungen erlauben: @Erwähnung in Themen erlauben, um eine Antwort auszulösen
  • Chat-Direktnachrichten erlauben: Chat-DMs mit diesem Agent erlauben (erfordert Chat-Plugin)
  • Chat-Kanal-Erwähnungen erlauben: @Erwähnung in Chat-Kanälen erlauben (erfordert Chat-Plugin)

Konfiguration

Um Agents zu konfigurieren, navigieren Sie zu discourse.example.com/admin/plugins/discourse-ai/ai-agents.

Zu den wichtigsten Konfigurationsoptionen gehören:

  • System-Prompt: Steuert das Gespräch
  • Vision-Unterstützung: Aktivieren für Vision-fähige LLMs, d. h. GPT-4 Turbo, Claude 3
  • Standardmodell: Erforderlich für erwähnbare Agents und Agents mit aktivierter Option „Standard-LLM erzwingen“
  • Zugelassene Gruppen: Berechtigungen mithilfe der Discourse-Gruppensicherheit definieren
  • Uploads: Textdateien für zusätzliches Wissen indizieren (unter Verwendung von RAG - Retrieval-Augmented Generation)
  • Aktivierte Werkzeuge: Zugriff auf spezifische Werkzeuge steuern
  • Ausführungsmodus: Wählen Sie zwischen „Standard“ und „Agentic“ Modus (Agentic Modus ermöglicht mehrstufige Werkzeugnutzung mit konfigurierbaren Token-Grenzwerten und Kompression)

Hier ist ein Blick auf einen vollständigen Bildschirm zur Konfiguration eines KI-Agents:

Erweiterte Konfigurationsoptionen

Der Agent-Editor bietet mehrere erweiterte Optionen:

  • Temperatur und top_p (Nukleus-Sampling): Steuern Kreativität vs. Vorhersagbarkeit
  • Maximale Kontextbeiträge: Begrenzt die Anzahl der Beiträge, die dem LLM als Verlauf übergeben werden – weniger Beiträge reduzieren Kosten, führen aber dazu, dass die KI ältere Inhalte „vergisst“ (nicht im Agentic-Modus verfügbar)
  • Ausführungsmodus: „Standard“ für einmalige Antworten, „Agentic“ für mehrstufige Werkzeugnutzung mit:
    • Maximale Zug-Token: Token-Budget für die Agentic-Ausführung
    • Kompression-Schwellenwert: Prozentualer Schwellenwert für die Kontextkompression (20-99 %)
  • Denkprozess anzeigen: Zeigt den Denkprozess der KI den Benutzern an (standardmäßig aktiviert)
  • Genehmigung erforderlich: Erfordert menschliche Genehmigung, bevor bestimmte Aktionen ausgeführt werden
  • Standard-LLM erzwingen: Verhindert, dass Benutzer LLMs für diesen Agenten wechseln
  • Antwortformat: Konfiguriert das Format der strukturierten Ausgabe
  • Beispiele: Few-Shot-Beispiele zur Steuerung des KI-Verhaltens (Paare von Benutzer-/Assistentennachrichten)
  • Upload-Optionen:
    • Chunk-Token: Steuert die Aufteilung von Dokumenten
    • Chunk-Überlappungs-Token: Legt die Überlappung zwischen Chunks fest
    • Suchkontext-Chunks: Anzahl der Dokumentfragmente, die zu Benutzerabfragen hinzugefügt werden
    • Frage-Konsolidator-LLM: Wählt das LLM zur Bestimmung von Benutzerfragen
    • RAG LLM-Modell: Wählt ein spezifisches LLM für die RAG-Verarbeitung

Voraussetzungen für die Upload-Unterstützung

Um die Upload-Unterstützung zu nutzen:

  1. Aktivieren Sie die Einstellung ai_embeddings_enabled
  2. Konfigurieren Sie ein Embedding-Modell über ai_embeddings_selected_model

Discourse AI unterstützt verschiedene Embedding-Modelle. Hosted-Kunden erhalten kostenlosen Zugriff auf das Modell bge-large-en.

:information_source: Self-Hosters oder Personen, die mehr Auswahlmöglichkeiten wünschen, können ein eigenes Embedding-Modell hosten oder Modelle von Open AI, Google (Gemini) und mehr verwenden.

Textaufteilung in Discourse AI

Discourse verwendet einen Rekursiven Zeichen-Text-Splitter, um Absätze, Zeilen und Wörter beim Aufteilen von Text zusammenzuhalten. Sie können die Textaufteilung mit dem Trennzeichen [[metadata DEIN METADATEN HIER]] steuern:

[[metadata über Katzen]]
eine lange Geschichte über Katzen
[[metadata über Hunde]]
eine lange Geschichte über Hunde

Diese Methode verhindert „Chunk-Kontamination“, indem sichergestellt wird, dass nur relevante Daten in jedem Chunk enthalten sind.

Debugging von KI-Agents

Um Ihren Agent zu debuggen:

  1. Fügen Sie Benutzer der in der Einstellung ai_bot_debugging_allowed_groups angegebenen Gruppe hinzu
  2. Benutzer dieser Gruppe sehen einen KI-Debugging-Button am Ende von KI-Beiträgen
  3. Klicken Sie auf den Button, um das Debugging-UI-Modal aufzurufen

:warning: Denken Sie daran: Wenn Sie einem LLM vage oder wenig hilfreiche Informationen zur Verfügung stellen, wird es große Schwierigkeiten haben, diese in nützliche Informationen umzuwandeln.

Unterstützte Werkzeuge

Discourse AI unterstützt verschiedene Werkzeuge, darunter:

Immer verfügbar

  • Kategorien
  • Zeit
  • Suche
  • Lesen
  • Datenbankschema
  • Sucheinstellungen
  • Kontext bereitstellen
  • Zufallsauswahl
  • Webbrowser
  • Suche in Meta Discourse
  • JavaScript-Evaluator
  • Forscher
  • Beitrag melden
  • Thema schließen
  • Thema ausblenden
  • Beitrag sperren
  • Thema löschen
  • Beitrag bearbeiten
  • Kategorie bearbeiten
  • Thementimer setzen
  • Slow Mode einstellen
  • Beiträge verschieben
  • Abzeichen vergeben

GitHub-Integration

  • GitHub-Inhalt von Dateien
  • GitHub Pull Request Diff
  • GitHub-Dateien suchen

Diese drei Werkzeuge sind immer verfügbar. Zusätzlich gilt:

  • GitHub Code suchen erfordert, dass die Einstellung ai_bot_github_access_token ausgefüllt ist

Bedingte Werkzeuge

  • Tags und Tags bearbeiten: Verfügbar, wenn das Tagging auf Ihrer Seite aktiviert ist
  • Bilderzeugung (Bild, Bild erstellen, Bild bearbeiten): Erfordert die Konfiguration eines benutzerdefinierten Bilderzeugungs-Werkzeugs über die Admin-UI
  • Google-Suche: Erfordert, dass die Einstellungen ai_google_custom_search_api_key und ai_google_custom_search_cx ausgefüllt sind
  • Artefakte (Artefakt erstellen, Artefakt aktualisieren, Artefakt lesen): Verfügbar, wenn ai_artifact_security auf lax, hybrid oder strict gesetzt ist
  • Zuweisen: Verfügbar, wenn das Zuweisungs-Plugin installiert ist
  • Als gelöst markieren: Verfügbar, wenn das Gelöst-Plugin installiert ist

Einige Werkzeuge erfordern zusätzliche Konfiguration oder API-Schlüssel.

Unterstützung für benutzerdefinierte Werkzeuge

Sie können Ihre eigenen Werkzeuge mithilfe der Unterstützung für benutzerdefinierte Werkzeuge erstellen.

System-Agents anpassen

  1. Neuen Agent erstellen
  2. Den System-Prompt des zugehörigen Agenten kopieren und einfügen
  3. Nach Bedarf ändern
  4. Optional den ursprünglichen System-Agent deaktivieren, um Duplizierung zu vermeiden

Suche anpassen

Um die Suche für einen neuen Agent anzupassen:

  1. Neuen Agent erstellen
  2. Das Werkzeug „Suchen“ hinzufügen
  3. Suchoptionen konfigurieren, einschließlich:

Dies ermöglicht es Ihnen, Suchberechtigungen zu delegieren, die Anzahl der Ergebnisse zu erhöhen oder die Suche auf bestimmte Bereiche Ihrer Seite zu beschränken.

7 „Gefällt mir“

Ein Beitrag wurde in ein neues Thema aufgeteilt: Kann ich eine Bildgeneratorfunktion für Discourse AI bereitstellen

Was genau macht das Read-Tool?

Außerdem sind Erwähnungen in Beiträgen derzeit aufgrund dieses Fehlerberichts kaputt.

Kurz gesagt, es ermöglicht dem LLM, Themen und Beiträge in Ihrem Forum zu lesen.

1 „Gefällt mir“

Im Grunde liest es ein Thema/einen Beitrag, wenn eine URL, ein Name oder eine ID angegeben wird, und andernfalls oder immer noch verwendet es Einbettungen und was, wann, warum und wie hängt vom Modell selbst ab, vom Auffordern usw.?

2 „Gefällt mir“

Oh Entschuldigung, ich habe auf einen anderen Beitrag geantwortet :slight_smile:

Es verwendet die Themen-ID oder die Themen-ID + Beitragsnummer, um den rohen Markdown für ein Thema/einen Beitrag mit einigen Schutzmaßnahmen für die maximale Länge zu finden.

Ist nicht von Einbettungen abhängig.

5 „Gefällt mir“

Ein wenig themenfremd, aber da ich nichts zu fragen habe und ihr diese Themen sowieso ab und zu aufräumt, ist es mir egal.

Automatische Titel in PMs mit KI sind jetzt in der richtigen Sprache. Nichts Großes, aber der psychologische Wert ist groß. Danke!

4 „Gefällt mir“

Gibt es eine Möglichkeit, Bot-Benutzer zu einer Gruppe hinzuzufügen? Ich möchte diesen Benutzern im Grunde einen Avatar-Flair hinzufügen, aber wenn ich sie zu einer Gruppe hinzufüge, werden sie nicht angezeigt.

Sie erscheinen nicht, sind aber trotzdem da. Sie können sicher sein, indem Sie versuchen, eine KI-Person ein zweites Mal hinzuzufügen. Oder Sie sehen die benötigte Gruppe in den Einstellungen dieser Pseudo-Benutzer.

1 „Gefällt mir“

Welchen Teil des Discourse AI-Repos sollte ich mir ansehen, wenn ich genau wissen möchte, wie die Tools des KI-Bots funktionieren?

Tool, Playground, Bot sind alles gute Bereiche für den Anfang.

Siehe dieses Beispiel: Understanding Tools in Discourse AI System - AI Conversation - Discourse Meta

3 „Gefällt mir“

Genau die Antwort, die ich gesucht habe – vielen Dank, freundlicher Herr! Für alle, die es betrifft: Ich empfehle, den Code in diesem Repo durchzulesen, um Ihre Prompts für die Werkzeuge Ihrer Persona besser steuern zu können.

1 „Gefällt mir“

Ein Beitrag wurde in ein neues Thema aufgeteilt: Engineering einer Persona, die sich auf den Chatverlauf stützt

Ich versuche derzeit, alle Beiträge eines Themas über das „Lesen“-Tool abzurufen, aber es stellt dem LLM-Modell nur maximal 100 Beiträge zur Verfügung. Ich habe „Max Beiträge“ in den Persona-Einstellungen bereits auf 999 gesetzt, aber das Problem besteht weiterhin.

Könnte es eine serverseitige API-Anforderungseinschränkung geben, die das Problem verursacht?

@sam Hast du eine Idee, was die Ursache sein könnte?

Ich habe den Code nicht überprüft, aber ich vermute, dass es sich um eine harte Grenze handelt, die im Code selbst festgelegt ist. Darf ich fragen, was Sie damit erreichen wollen? Das ist hier ein Schlüsselfaktor.

Und vielleicht wäre es am besten, die Forum-Forscher-Persona zu verwenden?

Wir haben die Kategorie „Journal/Log“, die oft mehrere hundert Beiträge enthält, in denen der Themenbesitzer über den Fortschritt seines Projekts über einen Zeitraum von 4-5 Monaten berichtet.

Mein Ziel ist es, alle Beiträge innerhalb dieses Themas abzurufen, sie nach Autor = Themenbesitzer zu filtern und eine Zusammenfassung zu erstellen.

1 „Gefällt mir“

Sie müssen dafür den Foren-Forscher verwenden, das ist der genaue Anwendungsfall für die Persona.

2 „Gefällt mir“

@sam Ich würde es sehr gerne tun, aber derzeit werden keine Bilder unterstützt. Steht das auf der Roadmap oder hat es im Moment keine Priorität?

3 „Gefällt mir“

Sicher, ich kann das hinzufügen, keine allzu große Änderung

3 „Gefällt mir“