Skip to content

FreshLend/Petya_Ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 Petya_Ai — Умный Discord бот с экономикой

Join Discord Add Bot Python Version Discord.py License

Petya_Ai — это многофункциональный Discord-бот с открытым исходным кодом, разработанный в течение 3 лет. Проект сочетает в себе гибкую систему плагинов, полноценную экономическую RPG, модуль искусственного интеллекта (с поддержкой локальных LLM и OpenRouter) и множество инструментов для модерации и взаимодействия с пользователями.

🧠 Особенность проекта: наличие самообучающегося алгоритма (ai_learning_algorithm), который может работать без GPU и API-ключей, используя легковесный перцептрон и граф знаний. (это плагин написанный ИИ, так как не хочу заниматься плагинами..)


📜 Лицензия

Проект распространяется под лицензией GNU General Public License v3.0 (GPLv3).
Вы можете свободно использовать, изменять и распространять код при условии сохранения лицензии и указания авторства.


✨ Основные возможности

🤖 Искусственный интеллект

  • Три режима работы:
    • Онлайн через OpenRouter API
    • Локально через GGUF-модели (llama-cpp-python)
    • AI Learning Algorithm (легковесный самообучающийся ИИ плагин)
      • Самообучение: ИИ учится на диалогах в реальном времени
      • Гибкая настройка личности: 7 трейтов (формальность, юмор, эмпатия и др.)
      • Граф знаний и семантический поиск
  • Контекстный диалог с рабочей памятью

💰 Экономическая система

  • Полноценная валюта (медные, серебряные, золотые, платиновые монеты, FreshCoin)
  • Банковская система с депозитами, кредитами и комиссиями
  • Магазин и чёрный рынок
  • Система уровней и опыта (XP)
  • Профессии с ежедневной работой и случайными событиями
  • Инвентарь с предметами (металлоискатели, баффы, наборы)
  • Казино (слоты, напёрстки, блэкджек)
  • Поиск сокровищ в локациях (есть проблема с работой системы удачи, поправимо, но пока не хочу исправлять)

🔌 Система плагинов

  • Полноценная архитектура плагинов с метаданными
  • Поддержка зависимостей между плагинами
  • Хуки на события Discord (on_ready, on_message и др.)
  • Регистрация slash-команд и фоновых задач
  • 📚 Документация по созданию плагинов

🛠 Инструменты и утилиты

  • Шифрование: 12+ шифров (Цезарь, Виженер, XOR, Base64, Морзе, хэши MD5/SHA)
  • Математика: Калькулятор, символьные вычисления (sympy), работа с комплексными числами (есть небольшие проблемы, но пойдёт)
  • Управление эмодзи: просмотр, отправка, информация
  • Информация о серверах: детальная структура каналов
  • Автоматическая смена аватара по сезонам и событиям

🎉 Развлечения

  • Взаимодействия (приветствия, поцелуи, выстрелы) с гифками из аниме
  • Шутки, цитаты, магический шар
  • Генерация случайных чисел

📦 Установка

Требования

Быстрая установка (Windows/Linux)

Windows (run.bat):

run.bat
# Выберите 1 - полная установка

Linux (run.sh):

chmod +x run.sh
./run.sh
# Выберите 1 - полная установка

Ручная установка

  1. Клонируйте репозиторий:
git clone https://github.com/FreshLend/Petya_Ai.git
cd Petya_Ai
  1. Создайте виртуальное окружение:
python -m venv venv
source venv/bin/activate  # Linux
venv\Scripts\activate     # Windows
  1. Установите зависимости:
pip install discord.py tqdm langdetect pynacl transformers torch llama-cpp-python emoji openai protobuf numpy sympy
  1. Настройте config.py:
TOKEN = "ваш_токен_бота"
OPENROUTER_API_KEY = "ваш_ключ_openrouter"  # если используете онлайн-модели
ALLOWED_ID = [ВАШ_DISCORD_ID]  # для админ-команд
  1. (Опционально) Настройте модели в data/models.json:
{
  "my_local_model": {
    "type": "offline",
    "path": "data/models/model.gguf",
    "context_length": 2048,
    "default_temperature": 0.7,
    "max_tokens": 1024,
    "n_gpu_layers": 0
  }
}
  1. Запустите бота:
python main.py

🧩 Структура проекта

Petya_Ai/
├── main.py                 # Главный файл с системой плагинов
├── config.py               # Конфигурация бота
├── modules/                # Загружаемые модули
│   ├── ai.py                   # Модуль AI (OpenRouter + локальные LLM)
│   ├── economy.py              # Экономическая система
│   ├── tools.py                # Инструменты (шифрование, матем, эмодзи)
│   └── entertainment.py        # Развлечения и взаимодействия
├── plugins/                # Плагины
│   └── ai_learning_algorithm/  # Самообучающийся ИИ-алгоритм
│       ├── metadata.json
│       ├── main.py
│       └── config.json
├── data/                   # Данные (профили, магазин, контексты)
│   ├── avatars/                # Аватары по сезонам
│   ├── client/                 # Профили, инвентарь, контексты
│   └── server/                 # Настройки серверов, обратная связь
├── run.bat                 # Запуск на Windows
└── run.sh                  # Запуск на Linux

🤖 Самообучающийся ИИ-алгоритм (плагин)

Плагин ai_learning_algorithm — это замена ai.py для пользователей со слабым железом или без доступа к API.

Особенности

  • Легковесный перцептрон (FastCPUClassifier) для классификации намерений
  • Граф знаний с семантическими связями
  • Рабочая память (контекст диалога)
  • Семантический поиск по предыдущим сообщениям
  • Адаптивная личность (7 трейтов, подстраивается под пользователя)
  • Самообучение в реальном времени
  • Сохранение знаний в JSON (до 10000 узлов графа)

Команды плагина

  • /ai_chat — диалог с ИИ
  • /ai_teach — обучить ИИ паре вопрос-ответ
  • /ai_stats — статистика обучения
  • /ai_knowledge — поиск в базе знаний
  • /ai_personality — настройка личности
  • /ai_save / /ai_reset — управление базой знаний

⚠️ Этот плагин не является обязательным для работы бота. Он создан как альтернатива для маломощных систем.

🎮 Экономика

Команды

Категория Команды
Искусственный Интеллект /ask, /define, /get, /history, /model_info, /queue_info, /reset, /set, /set_model, /summarize, /translate
Развлечения /8ball, /interact_bang, /interact_bye, /interact_hi, /interact_kiss, /joke, /quote, /roll
Экономика /profile, /work, /set_group, /exchange, /transfer, /bank, /deposit, /withdraw, /shop, /inventory, /treasure, /casino, /set_bank
Инструменты /avatar, /bot_channel, /calc, /cipher, /connect, /emoji, /emoji_list, /feedback, /help, /info, /invite, /math, /ping, /plugins, /reboot, /say, /servers, /shutdown

Валюты

  • 🟤 Медные → ⚪ Серебряные → 🟡 Золотые → ⚫ Платиновые (курс 100:1)
  • 💎 FreshCoin (донатная валюта)

🔧 Управление плагинами

/plugins list          # Список всех плагинов
/plugins load <id>     # Загрузить плагин
/plugins unload <id>   # Выгрузить плагин
/plugins reload <id>   # Перезагрузить плагин
/plugins reload_all    # Перезагрузить всё
/plugins info <id>     # Информация о плагине

Обратная связь

Система /feedback создаёт тему на форуме, для идей/багов/отзывов бота:

  • Принять/отклонить идею
  • Отметить проблему как решённую
  • Ответить пользователю (ответ дублируется в ЛС)

🙏 Благодарности

  • Discord.py — за отличную библиотеку
  • DeepSeek — за помощь в создании плагина AI Learning Algorithm (демонстрация плагинов написана ИИ, потому что... ну вы поняли)
  • Всем, кто пользовался, тестировал и верил в проект

Отдельное спасибо @freshgame и @freshgame_yt (да, дважды, потому что я заслужил и потому-что потому) :)

📞 Контакты


⭐ История версий

Текущая версия: Посмотрите сами в Releases (не хочу менять README каждый апдейт)

  • Полная система плагинов
  • Самообучающийся ИИ-алгоритм
  • Экономическая RPG с банками и казино
  • 30+ slash-команд

📄 Лицензия

Этот проект лицензирован под GPLv3. Подробнее см. файл LICENSE.

*Разработано с помощью бочек кофе и 3 года без сна для Discord сообщества*