Введение в создание голосового помощника
Голосовые помощники становятся всё более популярными, и создание простого помощника на Python — это отличный способ познакомиться с основами работы с искусственным интеллектом и обработкой речи. В этой статье мы создадим простого голосового помощника, который сможет выполнять базовые команды, такие как поиск информации в интернете и выполнение простых задач.
Что нам понадобится
Для начала убедитесь, что у вас установлен Python версии 3.6 или выше. Также вам понадобятся следующие библиотеки:
- speech_recognition — для распознавания речи;
- pyttsx3 — для синтеза речи;
- wikipedia — для поиска информации в Википедии;
- datetime — для работы с датой и временем.
Установить необходимые библиотеки можно с помощью pip:
pip install SpeechRecognition pyttsx3 wikipedia
Создание простого голосового помощника
Теперь давайте перейдем к написанию кода. Откройте ваш текстовый редактор и создайте новый файл, например, assistant.py. Вставьте следующий код:
import speech_recognition as sr
import pyttsx3
import wikipedia
from datetime import datetime
# Инициализация синтезатора речи
engine = pyttsx3.init()
def speak(text):
engine.say(text)
engine.runAndWait()
def listen():
recognizer = sr.Recognizer()
with sr.Microphone() as source:
print("Слушаю...")
audio = recognizer.listen(source)
try:
command = recognizer.recognize_google(audio, language='ru-RU')
print(f"Вы сказали: {command}")
return command
except sr.UnknownValueError:
print("Не удалось распознать речь.")
return ""
except sr.RequestError:
print("Ошибка сервиса распознавания.")
return ""
def respond(command):
if 'время' in command:
current_time = datetime.now().strftime("%H:%M")
speak(f"Сейчас {current_time}")
elif 'поиск' in command:
query = command.replace("поиск", "")
result = wikipedia.summary(query, sentences=1)
speak(result)
else:
speak("Извините, я не понимаю команду.")
if __name__ == "__main__":
speak("Привет, я ваш голосовой помощник.")
while True:
command = listen()
respond(command)
Как работает код
Давайте разберем, что делает каждая часть нашего кода:
- Импорт библиотек: Мы импортируем необходимые библиотеки для распознавания речи, синтеза речи и работы с Википедией.
- Функция speak: Эта функция принимает текст и произносит его с помощью синтезатора речи.
- Функция listen: Она активирует микрофон и слушает команды пользователя. Если речь распознана, она возвращает текст команды.
- Функция respond: В зависимости от команды, она выполняет разные действия, такие как озвучивание текущего времени или поиск информации в Википедии.
- Основной цикл: В бесконечном цикле программа слушает команды и отвечает на них.
Запуск голосового помощника
Чтобы запустить вашего голосового помощника, просто выполните команду:
python assistant.py
После этого вы сможете взаимодействовать с ним, задавая вопросы о времени или запрашивая информацию из Википедии.
Не забудьте проверить настройки вашего микрофона и убедиться, что он работает корректно!
Расширение функционала
Теперь, когда у вас есть базовый голосовой помощник, вы можете расширить его функционал. Вот несколько идей:
- Добавьте возможность управлять музыкой на вашем компьютере;
- Интегрируйте API для получения погоды;
- Создайте напоминания и задачи;
- Добавьте поддержку нескольких языков.
Попробуйте интегрировать вашего помощника с другими сервисами, такими как Google Calendar или Todoist, чтобы сделать его ещё более полезным!
Заключение
Создание простого голосового помощника на Python — это увлекательный и полезный проект, который поможет вам освоить основы работы с искусственным интеллектом и обработкой речи. Вы можете использовать этот код как основу для создания более сложных приложений и интеграции с другими сервисами.
Не бойтесь экспериментировать и добавлять новые функции. Удачи в ваших начинаниях!