GPT-In-Voice — это бот для дискорда которым управляемый с помощью LLM, его цель это поддержание диалогов в войс-чате вашего дискорде сервера.
Warning
Проект в активной разработке. Некоторые функции могут быть недоработаны или не работать стабильно.
- Подключение к голосовым каналам
- Распознование говорящего
- Расширенный поиск по памяти (RAG)
- Модульность проекта
Можно заменить LLM или сервера TTS & STT на любые (требуется написание дополнительного класса для взаимодействия) - Панель управления ботов
- Запросы на подключение в голосовой канал
- Гибкость настройки
┌─ GPT-In-Voice/
├── whisper-server/ # сервис распознавания речи (speech-to-text)
├── piper-server/ # сервис синтеза речи (text-to-speech)
├── src/main/
│ └── java/... # основной Java-бот (основная логика)
│ └── resource/... # Файлы конфигурации Spring и т.д
└── (другие конфигурационные файлы, .gitignore и т.п.)
Warning
Если вы используете форк или модифицированный проект (свой сервер для TTS или STT), то шаги могут отличатся от предоставленных в этом гайде!
- Скачайте проект
git clone https://github.com/aDL1n/GPT-In-Voice.git
cd GPT-In-Voice- Установка piper-server
cd piper-server
.\.venv\Scripts\activate.bat
pip install -r requiremets.txt- Установка whisper-server
cd whisper-server
.\.venv\Scripts\activate.bat
pip install -r requiremets.txt-
Запуск
-
Запустите PG-Vector Database (это можно сделать в Docker Container).
-
В файле конфигурации Spring (src/main/recource/application.yml) укажите URL вашей базы данных.
-
В этом же файле конфигурации укажите данные от вашего Discord-бота (можно оставить значения по умолчанию и указать параметры в параметрах запуска).
-
Запустите whisper-server
./whisper-server/start.bat
-
Запустите piper-server
./piper-server/start.bat
-
Запустите основное приложение
Если оставили дефолтные значения для дискорд бота в файле конфигурации Spring, то используйте
mvn spring-boot:run args...
Если нет, то
mvn spring-boot:run
-
Проект распространяется под лицензией MIT.
Любые улучшения приветствуются — создавай issue, форкай проект или делай pull request.
Перед публикацией убедись, что код проходит сборку без ошибок (mvn verify).
Автор: @aDL1n
Telegram: @adlin_dev
Discord: adl1n_