astrbot_plugin_self_learning  by NickCharlie

AI chatbots enhanced with autonomous learning and personality evolution

Created 9 months ago
313 stars

Top 86.0% on SourcePulse

GitHubView on GitHub
Project Summary

This AstrBot plugin enables AI chatbots to autonomously learn conversation styles, group slang, manage social dynamics, and evolve personality for more natural, human-like interactions. It targets AstrBot users seeking enhanced bot adaptability and realism.

How It Works

The plugin integrates into AstrBot's message lifecycle, capturing interactions to fuel a learning pipeline. This pipeline processes messages for real-time learning, jargon mining, and persona/style review, storing data (patterns, slang, social relations, memory) in a multi-database backend (SQLite, MySQL, PostgreSQL). A hook injects learned context into LLM requests, enriching bot responses. A WebUI dashboard offers granular control over settings, learning content review, and system monitoring.

Quick Start & Requirements

Install by cloning the repository into your AstrBot plugins directory (git clone https://github.com/EterUltimate/self_learning_EterU.git astrbot_plugin_self_learning). Restart AstrBot or reload plugins. Requires AstrBot >= 4.11.4 and Python 3.11+. Python dependencies must be manually installed via the WebUI settings or command line. Access the WebUI at http://127.0.0.1:7833 (default).

Highlighted Details

  • Autonomous Learning: Captures conversation style, group slang, social relationships, and persona evolution.
  • LLM Context Injection: Enhances LLM prompts with learned social context, slang, memory, and few-shot examples.
  • WebUI Control: Provides a dashboard for settings, review of learned content (persona, style, slang), and system monitoring.
  • Flexible Data Storage: Supports SQLite, MySQL, and PostgreSQL databases with automatic table creation.

Maintenance & Community

This is a maintained fork by EterUltimate, originally developed by NickMo / Mo Zhiping. Community support is available via QQ Group: 1021544792.

Licensing & Compatibility

Licensed under GPLv3, requiring derivative works to be distributed under the same license. Compatible with AstrBot (also GPLv3).

Limitations & Caveats

Users must manually back up their AstrBot persona before use, as the plugin's rollback features are not a substitute for external backups. The project is provided "as is," with developers disclaiming liability for data loss or system issues. Manual installation of Python dependencies is required.

Health Check
Last Commit

15 hours ago

Responsiveness

Inactive

Pull Requests (30d)
20
Issues (30d)
14
Star History
38 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.