Найти в Дзене
Chill Programms

Голосовой Ассистент на python. 1 часть - va_voice

Приветствую тебя мой друг. Все вы в кино видели голосовых ассистентов которые помогают своим хозяином. Решил я значит сделать своего ассистента. Идея голосового ассистента была взята с канала Хауди-Хо. Так как код будет большим - я разобью статью на несколько частей: 1 часть - va_voice 2 часть - micro 3 часть - main Во 1-ой части мы разберем как сделать голос для нашего голосового ассистента. Установка нужных библиотек: Первым делом чтобы начать создавать голос и микрофон для нашего ассистента на нужно установить несколько библиотек. Открываем командную строку комбинаций клавиш windows и R. В данном поле ввести cmd. Открываем командную строку и устанавливаем библиотеки: pip install sounddevice pip install torch Пожалуй начнем с голоса нашего ассистента создаем проект (я пишу код в visual studio), а далее добавляем в него файл.py и называем va_voice. Код для va_voice: import torch import sounddevice as sd import time language = 'ru' model_id = 'ru_v3' sample_rate = 48000 # 48000 spe
Оглавление

Приветствую тебя мой друг. Все вы в кино видели голосовых ассистентов которые помогают своим хозяином. Решил я значит сделать своего ассистента. Идея голосового ассистента была взята с канала Хауди-Хо.

Так как код будет большим - я разобью статью на несколько частей:

1 часть - va_voice

2 часть - micro

3 часть - main

Во 1-ой части мы разберем как сделать голос для нашего голосового ассистента.

Установка нужных библиотек:

Первым делом чтобы начать создавать голос и микрофон для нашего ассистента на нужно установить несколько библиотек. Открываем командную строку комбинаций клавиш windows и R. В данном поле ввести cmd.

-2

Открываем командную строку и устанавливаем библиотеки:

pip install sounddevice
pip install torch

Пожалуй начнем с голоса нашего ассистента создаем проект (я пишу код в visual studio), а далее добавляем в него файл.py и называем va_voice.

Код для va_voice:

-3
import torch
import sounddevice as sd
import time
language = 'ru'
model_id = 'ru_v3'
sample_rate = 48000 # 48000
speaker = 'xenia' # aidar, baya, kseniya, xenia, random
put_accent = True
put_yo = True
device = torch.device('cpu') # cpu или gpu

Первые 3 строчки отвечают за импорт библиотек. Все остальные вы надеюсь поймете за что они отвечают если сможете перевести. Если говорить пару словами, то эти строчки отвечают за параметры голоса. Обратите внимание на строчку данную снизу

speaker = 'xenia' # aidar, baya, kseniya, xenia, random

Это голос каким будет говорить наш ассистент, всего их 4. Если вы захотите, то сможете поменять.

-4
model, _ = torch.hub.load(repo_or_dir='snakers4/silero-models',
model='silero_tts',
language=language,
speaker=model_id)
model.to(device)

В этих строчках кода устанавливается нужный yml файл

-5
def speak(what):
audio = model.apply_tts(text=what+"..",
speaker=speaker,
sample_rate=sample_rate,
put_accent=put_accent,
put_yo=put_yo)
sd.play(audio, sample_rate * 1.05)
time.sleep((len(audio) / sample_rate) +0.5)
sd.stop

Данная функция уже воспроизводит текст, но не может воспроизводить цифры или числа. Чтобы узнать как она работает в самом конце добавьте вот такую строчку:

speak('text')

И вместо text напишите любое предложение.

Вот и голос нашего ассистента готов. В следующей части мы сделаем микрофон для нашего ассистента, чтобы он мог распознавать наш голос и нашу речь.

Ждите следующую часть, а я вам желаю хорошого кода.

До новых встреч!