mirror of
https://gitflic.ru/project/maks1ms/ocab.git
synced 2024-12-23 16:23:01 +03:00
Базовая разметка README.md
This commit is contained in:
parent
8378625694
commit
d7bafdf513
57
README.md
57
README.md
@ -1 +1,58 @@
|
|||||||
# OpenChatAiBot V2
|
# OpenChatAiBot V2
|
||||||
|
|
||||||
|
## Что такое OCAB?
|
||||||
|
|
||||||
|
OCAB - это бот для Telegram, который призван помочь во взаимодействии с чатом.
|
||||||
|
Бот поддерживает интеграцию модулей для расширения функционала.
|
||||||
|
Фактически бот является платформой для запуска созданных для него модулей.
|
||||||
|
Модули могут взаимодействовать друг с другом или быть полностью независимыми.
|
||||||
|
|
||||||
|
## Что такое модуль?
|
||||||
|
|
||||||
|
Модуль - это директория, которая содержит в себе код модуля и его конфигурацию.
|
||||||
|
|
||||||
|
### Структура модуля
|
||||||
|
|
||||||
|
*Будет дополнено после закрытия [issue #17](https://gitflic.ru/project/armatik/ocab/issue/17).*
|
||||||
|
|
||||||
|
## Стандартные модули
|
||||||
|
|
||||||
|
В стандартный состав бота входят следующие модули:
|
||||||
|
|
||||||
|
* `admin` - модуль для модерирования чата. Позволяет удалять сообщения, банить пользователей и т.д.
|
||||||
|
* `reputation` - модуль репутации пользователей. Позволяет оценивать ответы пользователей и накапливать репутацию.
|
||||||
|
* `welcome` - модуль приветствия новых пользователей. Позволяет приветствовать новых пользователей в чате, а также
|
||||||
|
проверять пользователя капчей для предотвращения спама.
|
||||||
|
* `roles` - модуль ролей. Позволяет назначать пользователям роли и ограничивать доступ к командам бота по ролям.
|
||||||
|
Является важной частью системы прав доступа и модуля `admin`.
|
||||||
|
|
||||||
|
## Дополнительные официальные модули
|
||||||
|
|
||||||
|
* `gpt` - модуль для генерации ответов на основе нейросети GPT-3.5. Позволяет боту отвечать на сообщения
|
||||||
|
пользователей, используя нейросеть. Ключевой особенностью является построение линии контекста для нейросети,
|
||||||
|
которая позволяет боту отвечать на вопросы, используя контекст предыдущих сообщений. Для этого используется
|
||||||
|
модуль база данных хранящий историю сообщений.
|
||||||
|
* `bugzilla` - модуль для интеграции с BugZilla. Позволяет получать уведомления о новых багах в BugZilla, отслеживать их
|
||||||
|
статус, формировать стандартизированные сообщения для корректного описания багов. В будущем планируется интеграция с
|
||||||
|
API BugZilla для возможности создания багов из чата.
|
||||||
|
* `alt_packages` - модуль для интеграции с AltLinux Packages. Позволяет получать уведомления о новых пакетах в репозитории
|
||||||
|
AltLinux, поиска пакетов по названию, получения истории изменений, команды для установки пакета из репозитория и
|
||||||
|
прочей информации о пакете.
|
||||||
|
* `notes` - модуль заметок. Позволяет сохранять заметки для пользователей и чатов. Заметки являются ссылками на
|
||||||
|
сообщения в чате.
|
||||||
|
|
||||||
|
Список модулей будет пополняться. Идеи для модулей можно оставлять в [issues](https://gitflic.ru/project/armatik/ocab/issue/create).
|
||||||
|
|
||||||
|
## Установка бота
|
||||||
|
|
||||||
|
### Docker
|
||||||
|
|
||||||
|
### Вручную
|
||||||
|
|
||||||
|
## Технологический стек
|
||||||
|
|
||||||
|
* Python 3.11 - основной язык программирования.
|
||||||
|
* SQLite 3 - база данных для хранения информации о чате и пользователях.
|
||||||
|
* [Poetry](https://gitflic.ru/project/armatik/ocab/blob?file=how-to%20install%20deps.md&branch=OCAB-V2) - менеджер зависимостей.
|
||||||
|
* aiogram - библиотека для работы с Telegram API.
|
||||||
|
* peewee - ORM для работы с базой данных.
|
Loading…
Reference in New Issue
Block a user