AI Bot-Symbol erscheint nicht im Header für Nicht-Mitarbeiter

Ich glaube, dass das Hinzufügen von Gruppen zu den KI-Chatbot-Einstellungen den Button nicht anzeigt, wenn sie Zugriff auf den KI-Bot haben. Nur Trust Level/Admins sehen diesen Button in meinem Fall.

1 „Gefällt mir“

Diese Site-Einstellung ist irreführend (cc @falco/@roman), sie sollte ai_bot_add_ai_pm_to_header lauten.

AI-Bot-Recherche hier:

Site-Einstellungskontext nachschlagen

Kontext lesen für: ai_helper_add_ai_pm_to_header

ai_helper_add_ai_pm_to_header ist eine Site-Einstellung im Discourse AI-Plugin. Wenn sie aktiviert ist, wird in der Kopfzeile des Discourse-Forums eine Schaltfläche angezeigt, mit der Benutzer eine private Nachricht (PM) mit einem KI-Bot starten können.

Hier ist eine detaillierte Aufschlüsselung, wie es funktioniert:

  1. Die Einstellung wird in der Datei settings.yml des Discourse AI-Plugins mit dem Standardwert true definiert. Das bedeutet, dass die Schaltfläche zum Starten einer PM mit dem KI-Bot standardmäßig in der Kopfzeile angezeigt wird.

  2. Die Einstellung wird in der Datei ai-bot-replies.js verwendet. Diese JavaScript-Datei enthält die Logik für die Interaktion mit dem KI-Bot.

  3. Die Funktion attachHeaderIcon prüft, ob die Einstellung ai_helper_add_ai_pm_to_header aktiviert ist. Wenn ja, ruft sie die Liste der aktivierten KI-Bots aus der Einstellung ai_bot_enabled_chat_bots ab. Diese Einstellung enthält eine Liste von KI-Bots, die für den Chat aktiviert sind, getrennt durch ein Pipe-Symbol (|).

  4. Wenn aktivierte KI-Bots vorhanden sind, fügt die Funktion attachHeaderIcon zwei Widget-Aktionen zur Kopfzeile hinzu: showAiBotPanel und hideAiBotPanel. Diese Aktionen steuern die Sichtbarkeit des KI-Bot-Panels.

  5. Die Aktion showAiBotPanel setzt den Zustand botSelectorVisible auf true, wodurch das KI-Bot-Panel angezeigt wird.

  6. Die Aktion hideAiBotPanel setzt den Zustand botSelectorVisible auf false, wodurch das KI-Bot-Panel ausgeblendet wird.

Beachten Sie, dass die Benutzer-ID des KI-Bots in der Funktion isGPTBot fest codiert ist als -110, -111 und -112. Diese Funktion prüft, ob ein Benutzer anhand seiner Benutzer-ID ein KI-Bot ist.


Site-Einstellungskontext nachschlagen

Kontext lesen für: ai_bot_allowed_groups

Die Einstellung ai_bot_allowed_groups steuert, welche Benutzergruppen berechtigt sind, mit dem KI-Bot in privaten Nachrichten zu interagieren. Dies ist besonders wichtig, um zu kontrollieren, wer Antworten vom KI-Bot in einem PM-Kontext erhalten kann.

Die standardmäßig erlaubten Gruppen sind @staff (Gruppen-ID: 3) und @trust_level_4 (Gruppen-ID: 14). Diese Gruppen-IDs sind in der Einstellung ai_bot_allowed_groups in der Datei settings.yml des discourse-ai-Plugins angegeben.

Die Einstellung ai_bot_allowed_groups wird im Initialisierer ai-bot-replies.js verwendet. Hier wird geprüft, ob der aktuelle Benutzer Mitglied einer der erlaubten Gruppen ist. Wenn der Benutzer in einer erlaubten Gruppe ist und die KI-Bot-Funktion aktiviert ist, fügt der Initialisierer die Kopfzeilenikone hinzu und initialisiert die KI-Bot-Antworten.

Die Einstellung ai_bot_allowed_groups wird auch im Modul entry_point.rb des KI-Bots verwendet. Dieses Modul fügt das Attribut ai_enabled_chat_bots zum current_user-Serializer hinzu. Dieses Attribut wird eingeschlossen, wenn die KI-Bot-Funktion aktiviert ist und der authentifizierte Benutzer Mitglied einer der erlaubten Gruppen ist.

Wenn ein neuer Beitrag erstellt wird, wird das Ereignis post_created ausgelöst. Wenn der Beitrag ein normaler Beitrag in einer privaten Nachricht ist und der Benutzer des Beitrags zu einer der erlaubten Gruppen gehört, wird ein KI-Antwort-Job in die Warteschlange gestellt.

Zusammenfassend lässt sich sagen, dass die Einstellung ai_bot_allowed_groups entscheidend dafür ist, welche Benutzer mit dem KI-Bot in privaten Nachrichten interagieren können. Sie wird an mehreren Stellen im discourse-ai-Plugin verwendet, um diese Einschränkung durchzusetzen.

2 „Gefällt mir“

Ich wollte sagen, dass diese PM-Schaltfläche anscheinend nur für Administratoren/Mitarbeiter angezeigt wird, unabhängig von den erlaubten Gruppen. Es scheint, dass die PM-Schaltfläche in den Header-Einstellungen die erlaubten KI-Bot-Gruppen nicht berücksichtigt, sondern fest auf Administratoren beschränkt ist? Ich kann dies einem normalen Benutzer nicht anzeigen lassen.

Das ist sicherlich nicht der Fall, zumindest nicht hier… ich habe dich gerade zur Gruppe der Bot-Tester hinzugefügt, kannst du die Schaltfläche hier sehen? (neu laden)

Hm, es scheint hier zu funktionieren. Ich kann es nicht in zwei Instanzen zum Laufen bringen. Seltsam.. Ich habe jetzt alle Einstellungen mehrmals durchgesehen.

Unsere aktuellen Einstellungen sind:

Aber ich werde diesen Namen für die Website-Einstellung korrigieren, da er wirklich verwirrend ist.

Bist du auf dem neuesten Stand?

Meine Einstellungen sind fast vollständig gleich, aber ich habe eine Vertrauensstufengruppe in der Liste. Ich habe es aber auch ohne Admin/TL-Gruppen versucht, und nur die KI-Bot-Gruppe mit demselben Ergebnis, auch Safemode mit deaktivierten Themes/Nicht-Offiziellen versucht, in allen Fällen kein Button :thinking:

Ich bin tatsächlich auf dem neuesten Stand.

Könnte dies eine Interaktion mit einem anderen Plugin sein? Können Sie mit allen inoffiziellen Plugins entfernt neu erstellen?

1 „Gefällt mir“

Klar, ich baue gerade neu auf. Melde mich gleich, das ist ein ziemlich langsamer Server :grinning_face:

Keine Änderung nach dem Rebuild. Meine aktuelle Plugin-Liste:


    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/discourse/discourse-whos-online.git
          - git clone https://github.com/discourse/discourse-data-explorer.git
          - git clone https://github.com/discourse/discourse-fingerprint.git
          - git clone https://github.com/discourse/discourse-adplugin.git
          - git clone https://github.com/discourse/discourse-chat-integration.git
          - git clone https://github.com/discourse/discourse-docs.git
          - git clone https://github.com/discourse/discourse-chat.git
          - git clone https://github.com/discourse/discourse-gamification
          - git clone https://github.com/discourse/discourse-openid-connect
          - git clone https://github.com/discourse/discourse-rss-polling
          - git clone https://github.com/discourse/discourse-ai

Zu Ihrer Information: Der Benutzer kann die KI anschreiben. Nur der Button wird für die Benutzer nicht angezeigt.

Hmm, haben Sie Glück? Ich muss das leider sagen, aber können Sie auch die offiziellen Plugins mit Bisect versuchen, um zu sehen, ob sie sich gegenseitig stören? Fangen Sie vielleicht damit an, nur mit discourse-ai neu zu erstellen? Es wird nichts Schlimmes passieren, Sie können kurz danach immer wieder mit den anderen neu erstellen.

1 „Gefällt mir“

Ich werde das versuchen und Ihnen Bescheid geben. Mir ist aufgefallen, dass nicht nur der Header-Button, sondern auch der KI-Composer-Helfer das gleiche Problem aufweist.

UPDATE
Ich habe den Fehler für Sie gefunden, er hat mit der Gruppen-Privatsphäre zu tun.

Jeder Wert darunter (Besitzer/Besitzer+Mods) führt dazu, dass der Button ausgeblendet wird. Ich bin mir nicht sicher, ob dies irgendwo dokumentiert ist, vielleicht habe ich es übersehen.

Das Hinzufügen des Bots zur Gruppe machte keinen Unterschied. Das Ändern der oben gezeigten Sichtbarkeitseinstellung schon.

2 „Gefällt mir“

Gut gemacht, das ist sehr gut lösbar, wird nächste Woche erledigt.

2 „Gefällt mir“

Für mich besteht keine Eile. Ich möchte hinzufügen, dass dasselbe Problem auch bei Vertrauensstufengruppen auftritt, da diese standardmäßig ausgeblendet sind. Das Ändern der Sichtbarkeit lässt den KI-PM-Button erscheinen.

1 „Gefällt mir“

Ich habe es behoben gemäß:

Wird später heute zusammengeführt.

6 „Gefällt mir“