Lassen Sie Bot die Reden und Emoticons von Gruppenfreunden lernen!
Ein Lern-Plug-in, das es Bot ermöglicht, basierend auf der Regelmäßigkeit der Kommentare von Gruppenmitgliedern automatisch historische Zitate oder Emoticons zum Antworten auszuwählen.
Nach der Installation dieses Plug-Ins ist es nicht sofort wirksam. Sie müssen dem Bot etwas Zeit geben, um Gruppenchat-Datensätze zu sammeln.
Nach einem gewissen Lerngrad wird das Plug-In zu einem gesprächigen König. Schnapp dir alle seltsamen Kommentare und Emoticons von Gruppenfreunden .
Dieses Plug-in ist außerdem mit einer Web UI
Hintergrundverwaltung ausgestattet, mit der der Bot-Besitzer die Konfiguration ändern kann, und unterstützt die Gruppenkonfiguration .
Dieses Plug-in funktioniert nur mit OneBot V11
Adapter und Gruppenchat .
Öffnen Sie die Befehlszeile im Stammverzeichnis des nonebot2-Projekts und geben Sie zur Installation die folgenden Befehle ein
nb plugin install nonebot-plugin-learning-chat
Im Gegensatz zu anderen Imperative-Plug-Ins verfügt dieses Plug-In nur über zwei Befehle zum Verwalten von Bots in Gruppenchats.
Anweisung | Beispiel | Wirkung |
---|---|---|
Lernen ein-/ausschalten | @bot Lernen einschaltenSprechen lernenSchnell lernenLernen ausschaltenNicht lernenHalt den Mund | Aktivieren oder deaktivieren Sie die Lernfähigkeit dieser Gruppe (erfordert Aite Robot). |
Antworten deaktivieren | @bot kanndamekann das nicht sagen | Um eine erlernte Antwort zu deaktivieren, müssen Sie diesen Satz in Zukunft nicht mehr sagen. Sie müssen über Administratorrechte für Aite Robot verfügen und auf die Rede des Roboters antworten . |
Dieses Plug-in zeichnet die Reden der Gruppenmitglieder in der Datenbank auf und reagiert entsprechend den regulären Reden der Gruppenmitglieder.
Immer wenn ein Gruppenmitglied einen neuen Kommentar abgibt, zeichnet das Plug-in diesen Kommentar als eine der optionalen Antworten auf den vorherigen Kommentar auf, durchsucht dann die Datenbank nach historischen Antworten auf diesen Kommentar, die die Bedingungen erfüllen, und wählt eine davon zum Antworten aus Zu.
Das Folgende ist ein einfaches Beispiel:
群友1:诶嘿
群友2:诶嘿是什么意思啊
群友1:诶嘿
群友2:诶嘿是什么意思啊
群友1:诶嘿
群友2:诶嘿是什么意思啊
群友1:诶嘿
群友2:诶嘿是什么意思啊
Jedes Mal, wenn jemand诶嘿
sagt, sagt jemand诶嘿是什么意思啊
Diese Konversationen können als normale Sprache angesehen werden (dasselbe gilt für Emoticons) .
诶嘿是什么意思啊
wird als Antwort auf诶嘿
viermal gelernt, und诶嘿
wird als Antwort auf诶嘿是什么意思啊
gelernt.
In der Standardkonfiguration muss eine Antwort viermal gelernt werden, bevor sie als eine der optionalen Antworten aufgeführt wird.
Wenn daher in Zukunft ein Gruppenfreund诶嘿
sagt, durchsucht das Plug-in die Daten nach Antworten mit Lernzeiten von mehr als 4. Wenn es eine Art von诶嘿是什么意思啊
“ gibt, Es besteht die Möglichkeit, dass Sie antworten诶嘿是什么意思啊
“
Kurz gesagt, dieses Plug-in ist ein fortgeschrittenerer Repeater und eine QA-Fragen-und-Antwort-Person. Wenn Ihre Gruppenfreunde nicht offensichtlich regelmäßig sprechen, ist die Wirkung dieses Plug-ins möglicherweise gering.
Das Plug-in verfügt außerdem über die Funktionen Wiederholen und aktives Sprechen.
Wie der Name schon sagt, handelt es sich um eine Wiederholung. Wenn Gruppenmitglieder eine bestimmte Anzahl von Malen erneut lesen (Standard ist 3), liest das Plug-in entsprechend erneut.
In den folgenden Fällen erfolgt die Wiederholung nicht, selbst wenn die Anzahl erreicht ist:
Das Plug-in bewertet jede Minute die Beliebtheit von Gruppenchats, wählt eine Gruppe aus und sendet nach dem Zufallsprinzip eine oder mehrere historische Aussagen der Gruppe.
Je aktiver die Gruppe tagsüber ist, desto einfacher ist es, aktive Kommentare auszulösen, nachdem es in der Gruppe ruhig geworden ist . Epilepsie Aufwärmen.
Voraussetzungen für das Ergreifen der Initiative zum Reden:
Nachdem die aktive Rede als erfolgreich beurteilt wurde, wird die Nachricht zufällig aus den historischen Chat-Aufzeichnungen der Gruppe ausgewählt und gesendet.
Dieses Plug-in verwendet yml
Dateien als Konfigurationsdateien, da es eine dynamische Änderung und Gruppenkonfiguration erfordert, wird .env
Konfigurationsform von Nonebot nicht verwendet.
Die yml
-Konfigurationsdatei befindet sich im Bot目录/data/learing_chat/learning_chat.yml
. Ich persönlich empfehle jedoch, dass Sie Web UI
Hintergrundverwaltung verwenden, um die Konfiguration zu ändern.
Die Funktion jedes Konfigurationselements wird auf der Hintergrundverwaltungsseite ausführlich vorgestellt . Hier sind nur einige davon:
Konfigurationselemente | Standardwert | veranschaulichen |
---|---|---|
Gruppenchat-Lernschalter | WAHR | Wie der Name schon sagt |
Wörter blockieren | [ ] | Der Chatverlauf, der diese Wörter enthält, wird nicht gelernt |
Benutzer blockieren | [ ] | Der mit diesen Benutzern verknüpfte Chatverlauf wird nicht gelernt |
Schwellenwert für gruppenübergreifende Antworten | 3 | Wenn alle N Gruppen dieselbe Antwort haben, wird diese als globale Antwort verwendet. |
Maximale Anzahl an Lernzeiten | 6 | Die maximale Häufigkeit, mit der Lernantworten akkumuliert werden können |
Benutzerdefiniertes Wörterbuch | [ ] | Fügen Sie benutzerdefinierte Wörter hinzu, damit die Wortsegmentierung nicht erfasste Wörter identifizieren kann |
Antwortschwelle | 4 | Wie oft müssen Sie es lernen, bevor es zu einer der optionalen Antworten wird? |
Wiederholungsschwelle | 3 | Wie oft wiederholten die Gruppenmitglieder die Lesung, bevor sie sie weiter wiederholten? |
Aktive Sprechschwelle | 5 | Wahrscheinlichkeit, die Initiative zu ergreifen, um zu sprechen |
Einige Konfigurationen sind globale Konfigurationen, andere können in Gruppen konfiguriert werden. Weitere Informationen finden Sie in der Hintergrundverwaltung.
Dieses Plug-in bietet eine einfache Web UI
Hintergrundverwaltung. Sie können Folgendes in der Hintergrundverwaltung durchführen:
Web UI
ist standardmäßig aktiviert. Besuchen Sie http://127.0.0.1:nb端口/learning_chat/login
um sich anzumelden.
chat
admin
Nach erfolgreicher Anmeldung werden Sie zur Hintergrundverwaltungsseite http://127.0.0.1:nb端口/learning_chat/admin
weitergeleitet.
Bitte ändern Sie nach der Anmeldung den Standard-Benutzernamen, das Passwort und den Token-Schlüssel, die für die Verschlüsselung verwendet werden.
pip install ujson
pip install jieba_fast
DEBUG
-Level-Protokoll, um den Lern- und Wiederherstellungsprozess des Plug-Ins anzuzeigen.