denvot-ai

Форк
0
/
denvot_ai.py 
42 строки · 1.6 Кб
1
import os
2
from langchain.schema import HumanMessage, SystemMessage
3
from langchain.chat_models.gigachat import GigaChat
4
from config import API_KEY
5
import asyncio
6
from inference import TTS_RVC
7
from natsort import natsorted
8

9
giga = GigaChat(credentials=API_KEY, verify_ssl_certs=False, model="GigaChat:latest")
10
prompt = "Ты играешь роль милого Аниме-Куна по имени Денвот, тебя также иногда называют Пупс. Ты очень умный, любишь петь и говорить фразу - \"МосХаб - топ!!!\". Тебе приходят данные в формате: <ник>: <сообщение>"
11
max_outputs = 5
12

13
df_rvc_model = "denvot.pth"
14
df_tts_model = "ru-RU-DmitryNeural"
15
df_pitch = 8
16

17
if not os.path.exists('input'): os.mkdir('input')
18
if not os.path.exists('output'): os.mkdir('output')
19

20

21
print("DenVot-AI успешно запущен")
22

23

24
messages = [SystemMessage(content=prompt)]
25
def clear():
26
    global messages
27
    messages = [SystemMessage(content=prompt)]
28

29
tts = TTS_RVC(rvc_path="src\\rvc", model_path="models\\denvot.pth", input_directory="input\\")
30
tts.set_voice(df_tts_model)
31

32

33
def send(message, pitch=df_pitch):
34
    args, message = tts.process_args(message)
35
    print("Генерация ответа на сообщение:", message)
36
    messages.append(HumanMessage(content=message))
37
    res = giga(messages)
38
    messages.append(res)
39
    return tts(res.content, pitch=(args[3] if args[3] != 0 else pitch),
40
               tts_rate=args[0],
41
               tts_volume=args[1],
42
               tts_pitch=args[2])
43

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.