KI Bot - Agents

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

: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 Befehle
  • Anpassungsmöglichkeiten

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

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 dazu beiträgt, ein personalisierteres und ansprechenderes Benutzererlebnis zu schaffen.

Warum Agents verwenden?

Mit Agents können Sie das Verhalten der KI an den Kontext und den Ton Ihres Forums anpassen. Egal, ob Sie möchten, dass die KI in einem professionellen Umfeld formeller, in einem Community-Forum legerer oder sogar eine bestimmte Figur für ein Rollenspiel verkörpert, Agents bieten Ihnen die nötige Flexibilität.

Gruppenspezifischer Zugriff auf Agents

Darüber hinaus können Sie festlegen, dass bestimmte Benutzergruppen Zugriff auf spezifische Agents haben. Dies 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

Agents können auf verschiedene Arten angesprochen werden:

  1. Private Nachricht (PM)
  2. Direkte Chat-Nachricht (DM)
  3. Erwähnungen in Chat-Kanälen
  4. Erwähnung in einem öffentlichen Thema über @examle_bot_username

Administratoren können steuern, welche Interaktionsmethoden für jeden Agent erlaubt sind.

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 die Konversation
  • Vision-Unterstützung: Aktivieren Sie dies für Vision-fähige LLMs, d.h. GPT-4 Turbo, Claude 3
  • Standardmodell: Erforderlich für erwähnbare Agents
  • Zulässige Gruppen: Berechtigungen mithilfe der Discourse-Gruppensicherheit definieren
  • Uploads: Textdateien für zusätzliches Wissen indexieren (unter Verwendung von RAG - Retrieval-Augmented Generation)
  • Aktivierte Befehle: Zugriff auf spezifische Befehle steuern
  • Chat zulassen: Chat über DM aktivieren (erfordert das Chat-Plugin, ein Standard-LLM (Large Language Model) und einen Benutzer)

Hier ist ein Blick auf einen vollständigen KI-Agenten-Konfigurationsbildschirm:

Erweiterte Konfigurationsoptionen

Der Agenten-Editor bietet mehrere erweiterte Optionen:

  • Temperatur und top_p (Nucleus Sampling): Steuern Kreativität vs. Vorhersagbarkeit
  • Max. Kontext-Posts: Begrenzt die Anzahl der an das LLM übergebenen Posts für den Verlauf – weniger Posts reduzieren die Kosten, führen aber dazu, dass die KI ältere Inhalte „vergisst“
  • Upload-Optionen:
    • Chunk-Token: Steuert die Dokumentenaufteilung
    • Chunk-Überlappungs-Token: Legt die Überlappung zwischen Chunks fest
    • Konversations-Chunks durchsuchen: Anzahl der Dokumentfragmente, die Benutzerabfragen hinzugefügt werden
    • Fragenkonsolidierendes LLM: Wählen Sie das LLM zur Bestimmung der Benutzerfragen

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 ai_embeddings_model

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

:information_source: Self-Hosters oder Benutzer, die mehr Auswahlmöglichkeiten wünschen, können ein Embedding-Modell selbst 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 YOUR METADATA HERE]] steuern:

[[metadata about cats]]
a long story about cats
[[metadata about dogs]]
a long story about dogs

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

Debugging von KI-Agents

Um Ihren Agenten zu debuggen:

  1. Fügen Sie Benutzer zur Gruppe hinzu, die in der Einstellung ai bot debugging enabled groups angegeben ist
  2. Benutzer in dieser Gruppe sehen einen KI-Debugging-Button am Ende von KI-Posts
  3. Klicken Sie auf den Button, um auf das Debugging-UI-Modal zuzugreifen

: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 Befehle

Discourse AI unterstützt verschiedene Befehle, darunter:

  • Kategorien
  • Tags
  • Suche
  • Webbrowser
  • GitHub-Integration (Code durchsuchen, Pull Request Diff, Dateiinhalt)
    • Erfordert das Ausfüllen der Einstellung ai bot github access token
  • Suche Meta Discourse
  • Zufallsauswahl
  • Lesen
  • Uhrzeit
  • Google-Suche
    • Erfordert das Ausfüllen der Einstellungen ai google custom search api key und ai google custom search cx
  • Bilderzeugung über DALL-E
    • Erfordert einen open_ai-Schlüssel
  • Bilderzeugung über Stable Diffusion
    • Erfordert das Ausfüllen der Einstellung ai stability api key
    • Die Einstellung ai stability engine steuert den Bildgenerierungsalgorithmus
  • Schema
  • Sucheinstellungen
  • Kontext festlegen

Einige Befehle erfordern zusätzliche Konfigurationen oder API-Schlüssel.

Unterstützung für benutzerdefinierte Tools

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

Anpassen von System-Agents

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

Anpassen der Suche

Um die Suche für einen neuen Agenten anzupassen:

  1. Neuen Agent erstellen
  2. Den Befehl „search“ hinzufügen
  3. Suchoptionen konfigurieren, einschließlich:
    • Basis-Suchanfrage
    • Maximale Anzahl von Suchergebnissen
    • Option zum Einbeziehen privater Themen

Dies ermöglicht es Ihnen, Suchberechtigungen zu delegieren, die Anzahl der Ergebnisse zu erhöhen oder die Suche auf bestimmte Bereiche Ihrer Website 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“