МУНИЦИПАЛЬНОЕ АВТОНОМНОЕ НЕТИПОВОЕ ОБЩЕОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ «ГИМНАЗИЯ №2»
Секция «Информационные технологии»
Возрастная номинация: 9-11 класс
Проектная работа по теме:
«Создание голосового помощника для изучения языков программирования python и pascal и подготовке к ЕГЭ по информатике и физике»
Выполнила:
Сираполко Дарья,
ученица 11 «А» класса
Руководители:
Куренко Н.В., Баранова Т.А.
Учителя информатики
МАНОУ «Гимназия № 2»
г. Мариинск
2022 год
Оглавление Введение 3
Основная часть 4
Значимость голосовых помощников в жизни человека 5
Примеры голосовых помощников 6
Этапы разработки голосового помощника и его описание 11
Заключение 15
Список использованных источников литературы 16
Приложение 1 17
Введение
Голосовой поиск — это технология распознавания речи, позволяющая осуществлять перевод речевого запроса пользователя в текстовый вид, который затем передается в стандартную систему «поиска по базе данных». Приложения, наиболее явно связанные с термином «голосовой поиск», основываются на использовании систем распознавания речи.
Голосовой поиск — это не просто игрушка, к которой все со временем потеряют интерес. Напротив — всё больше людей пользуются голосовым поиском, этому способствует развитие технологий в смартфонах — практически все современные модели оснащены опцией голосового поиска.
С момента своего появления, голосовой поиск стремительно набрал популярность и стал одним из самых удобных способов быстро искать информацию, особенно в мобильных приложениях. По прогнозам экспертов, рынок голосовых запросов в ближайшие годы будет только расти. Особую актуальность голосовому поиску, как и многим другим видам бесконтактной коммуникации, предáли реалии рынка электронной коммерции во время пандемии.
Цель: создание голосового помощника для изучения языков программирования Python и Pascal и подготовки к ЕГЭ по информатике и физике.
Задачи:
Подобрать литературу для изучения технологии голосового ввода данных;
Подобрать литературу для изучения технологии голосового поиска;
Подобрать материал для наполнения голосового помощника;
Создать голосовой помощник на основе технологии голосового поиска;
Основная часть
1. Значимость голосового поиска в жизни человека (значимость голосового ввода)
Зачем люди используют голосовой поиск
Голосовой поиск — удобная альтернатива привычному поиску с помощью набора текста.
Он экономит время. В минуту человек может набрать в среднем 40 слов, а сказать — 150 слов.
Он позволяет освободить руки. Это особенно важно для водителей, которые хотят проложить маршрут, но не могут отвлечься на набор текста, а также для тех, кто постоянно на ногах, поскольку при ходьбе сложно печатать текст.
Голосовой поиск постоянно интегрируется с новыми технологиями и гаджетами. Люди любят упрощать себе жизнь с помощью умных устройств, а голосовые помощники теперь присутствуют практически в каждом таком устройстве.
Статистика 2014 года показывает, что голосовых ассистентов, в целях поиска информации, связанной с обучением, использует всего 31% пользователей.
Рисунок 1
По данным исследования Global Digital Overview, доля использование голосового поиска по всему миру выросла более чем на 9% за 2019 год, при этом 43% пользователей в возрасте от 16 до 64 лет пользуются голосовым поиском и голосовыми командами ежемесячно. В России 25% пользователей ищут что-либо в интернете с помощью голоса минимум раз в месяц.[6]
Рисунок 2
Голосовой поиск постоянно интегрируется с новыми технологиями и гаджетами. Люди любят упрощать себе жизнь с помощью умных устройств, а голосовые помощники теперь присутствуют практически в каждом таком устройстве.
Популяризация голосового поиска привела к удлинению поисковых запросов. Например, набирая запрос на клавиатуре, пользователь введет сборную фразу «купить кроссовки недорого». В случае с голосовым поиском фраза будет более длинной и логичной «где купить недорогие кроссовки в Москве». Голосовые запросы можно условно разделить на две большие группы:
Информационные – пользователи ищут обучающие, тематические, развлекательные материалы, а также гайды по выбору, обзоры, мастер-классы. Информационные запросы имеют вопросительный окрас: «как выбрать», «как сделать», «что будет, если» и другие;
Коммерческие – стандартные запросы, в которые пользователи интегрируют слова «цена», «купить», «заказать», «расчет» и иные.[5]
2. Примеры голосовых помощников
На сегодняшний день с помощью технологии голосового поиска работают:
Виртуальный секретарь:
считает на калькуляторе;
вычисляет корень из 100500;
конвертирует валюту;
переводит иностранные слова и фразы;
ищет значение слов в толковом словаре;
назначает встречи по работе;
записывает напоминания;
сохраняет контакты;
звонит родителям;
пугает бабушек;
создает видеоконференцию с партнерами из Китая;
находит рестораны поблизости;
проверяет погоду;
отправляет СМСки;
будит по утрам.
Голосовой прораб в «умном» доме — знает подход к каждой железке:
управляет умными девайсами;
варит кофе;
кипятит воду в чайнике;
регулирует влажность;
следит за температурой в комнате;
отпирает и запирает входную дверь;
управляет видеонаблюдением;
следит за освещением;
гоняет пылесос за котами;
регулирует громкость телевизора;
и даже регулирует температуру воды в бойлере.
Мультимедийный органайзер:
воспроизводит музыку;
ищет понравившиеся треки в сети;
читает книги вслух;
распознает песни;
ищет любимое кино;
покупает билеты в кинотеатр;
формирует плейлисты.
Мастер шоппинга, развлечений и знаток автомобильных заправок:
составляет списки покупок;
находит ближайшие магазины;
заказывает товары на онлайн-площадках;
прокладывает автомобильный или пеший маршрут;
сообщает о загруженности дорог;
предусматривает погодные условия;
находит заправки;
водит нас в кино и театр.
Бесплатная нянька на максималках — научит, поиграет и убаюкает:
читает вслух сказки;
ищет мультфильмы;
включает убаюкивающие мелодии;
загадывает загадки;
распознает детский голос;
включает фильтрацию контента;
играет в «города»;
играет в «угадай мелодию»;
гадает;
ищет тосты (взрослым тоже иногда нужна нянька);
придумывает поздравления;
и даже читает стихотворения.
Медицинский справочник с функциями доктора:
перечисляет симптомы;
дает советы по оказанию первой помощи;
рассказывает об эпидемиологической ситуации;
подсказывает ближайшие аптеки.
Википедия без регистрации и смс:
считает расстояние до луны;
знает о нобелевских лауреатах;
определяет растения по фотографии;
рассказывает о значении имен;
сообщает, какой сегодня праздник;
объясняет, почему трава зеленая. [4]
На сегодняшний день создано большое количество голосовых помощников, наибольшую известность получили: Siri, Google Assistant, Cortana, Alexa, Алиса.
Siri
Сервис разрабатывали под Android и BlackBerry, он должен был стать простой технологией распознавания голоса. Но инновационные идеи Apple превратили стартап в юзерфрендли-говорилку для фирменных девайсов.
С тех пор Сири выучила не один десяток языков и теперь смело работает на пользователей практически в любой стране. С ее помощью можно узнать погоду, найти контакт в справочнике и даже попросить: «Напомни мне позвонить родителям, когда я приеду домой». Помощник распознает команду «установить напоминание» и поставит триггер «исполнить» на GPS-метку. В этом автоматика преуспела на несколько лет вперед. Но и без курьезов идеальная «американка» не обходится. Если разговор уходит от компьютерных алгоритмов и принимает витиеватую форму, смекалка ассистента тут же иссякает.
Google Assistant
Это первый помощник пользователей Android. Ассистент интегрирован в фирменную экосистему и наделен искусственным разумом, поэтому с задачами типа «эй, напомни выключить газовую плиту через 10 минут» он справляется на раз-два. Впрочем, как и предыдущий помощник. Он легко прокладывает маршрут до ресторана, заказывает билеты в кино, управляет умным пылесосом и знает, кто снялся в роли Джокера. Интересно, что он ответит на вопросы, в которых запнулась Сири.
Cortana
С 2014 года Кортана присутствует во всех устройствах компании Microsoft. Это обычный голосовой помощник с необычной историей — его перенесли из игровой вселенной Halo про космос и далекое будущее. Разработчики решили, что будущее уже наступило, и выпустили цифровую девушку в реальный мир.
Кортана — это единственная программа, которая знает Windows от и до. Она может искать файлы, перебирать заметки, создавать документы. Уникальное качество этого ассистента — конфиденциальность. Когда все голосовые помощники требуют полный доступ к системе, файлам и личным данным пользователя, Кортана спрашивает, можно ли получить доступ к нужной части системы.
Но, как и в случае с предыдущим сервисом, Cortana не выучила русский язык, поэтому для русскоговорящего пользователя этот помощник бесполезен. Несмотря на то, что значок программы есть во всех локализациях Windows 10, на вопрос «что новенького?» система отвечать не станет. [4]
Alexa
Alexa от Amazon — это не просто голосовой помощник, а настоящий универсальный солдат для домохозяек. Почему так? Ассистент был задуман и выпущен как система управления умным домом. Алекса управляет телевизорами, кондиционерами, пылесосами и стиральными машинами. Amazon поддерживает огромное количество аксессуаров, при подключении к которым Алекса заметно умнеет. Например, с помощью двух колонок Amazon Echo можно разговаривать, находясь в разных комнатах, — мечта любого ребенка.
Кроме фирменных фишек, которые аппаратно привязаны к колонкам и аксессуарам, ассистент недавно научился выходить из дома, показывать погоду и прокладывать маршрут в навигаторе. Остальные помощники научились этому гораздо раньше Алексы, поэтому отнести ее функции к числу уникальных не получится. К тому же в России помощница работает неполноценно. Проверить работу ассистента в наших реалиях не получится.
Алиса
Сервис от Yandex появился в 2017 году, на несколько лет позже других проектов. Это пошло ему на пользу: старшее поколение ассистентов подсказало, где и что нужно исправить. Разработчики не постеснялись перенять богатый опыт других компаний и сразу сделали хорошо. Это «хорошо» назвали Алисой.
Несмотря на то, что голосовые помощники уже в то время были привычным делом, Алисе удалось произвести впечатление на русскоговорящую публику. Еще бы — когда Siri отнекивалась стандартными фразами, а Google щедро снабжал сухими фактами из поисковой системы, Алиса с удовольствием подхватывала беседу и становилась ведущей в этом диалоге.
Среди всех сервисов нельзя выделить лучший или худший — каждый ассистент адаптирован для работы в определенных условиях. Поэтому эффективнее всех покажет себя тот сервис, который наиболее интегрирован в жизнь страны и особенности культуры, знает язык и буквально «чувствует» собеседника. Пожалуй, у нас в этих вопросах лучше разбирается самая русскоговорящая и до серверных корней «ламповая» Алиса от Yandex. Она интегрирована в российские сервисы, колонки и телевизоры и знает буквально каждый камешек на своей территории. Ассистент играет в игры, читает детям сказки, находит растения по фотографии и даже может выбрать, купить и доставить букет роз. [4]
Идея голосового поиска интересная, инновационная и открывает широкую сферу возможностей, поэтому я решила изучить эту технологию и создать подобного голосового помощника.
3. Этапы разработки голосового помощника и его описание
Для создания голосового помощника было необходимо отобрать информацию по физике и информатике. Информация для подготовки к ЕГЭ была взята из кодификаторов открытого банка заданий ФИПИ.
Голосовой помощник имеет следующие возможности:
Рассказывает о назначении функций и процедур языков программирования Python и Pascal;
Показывает алгоритмы решения задач для ЕГЭ по информатике (выводит на экран изображение);
Произносит термины и определения для подготовки к ЕГЭ по физике, по запросу пользователя;
Общается с пользователем.
Как работает виртуальный помощник
Чтобы пользователь получил ответ, программа проходит пять этапов:
Убирает фоновый шум.
Преобразует звук в цифровой код.
Выделяет речь, анализирует отдельные слова и связь между ними.
Сравнивая полученную информацию с шаблонами, система ищет варианты, как слово произносится. Если слово для неё новое, она так же сравнивает его с шаблонами. Когда голосовой помощник не может найти ответ, не понимает команду, то просит пользователя задать вопрос по-другому.
Выдаёт ответ, ориентируясь на библиотеку шаблонов и поведение пользователя в сети, его прошлые запросы в поисковых системах, геолокацию.
Первым этапом было необходимо подключить библиотеки для работы.
Установленные библиотеки на python и их предназначение:
Для установки библиотек необходимо в командной строке набрать следующее:
pip install colorama #название библиотеки, которую нужно установить
Colorama - Позволяет последовательностям escape-символов ANSI (для создания цветного терминального текста и позиционирования курсора) работать под MS Windows.
Gtts - Настраиваемый токенизатор предложений для конкретной речи, который позволяет читать неограниченную длину текста, сохраняя при этом правильную интонацию, аббревиатуры, десятичные дроби и многое другое.
Random – генератор случайных чисел.
Playsound – библиотека для воспроизведения звука.
Speech_recognition – библиотека для распознавания речи.
pyAudio – библиотека для ввода и вывода звука.
OWM, config, timestamps – библиотека для вывода погоды на экран.
datetime, date, time – библиотека для вывода времени на экран.
Os - для вывода картинки и удаления аудиофайлов.
Рисунок 3
Вторым этапом было необходимо применить технологию распознавания речи. Это технология, с помощью которой речь человека возможно трансформировать в текст.
Рисунок 4
Третьим этапом было необходимо создать процедуру, которая сверяет полученные данные с заготовками:
Рисунок 5
Четвертым этапом было необходимо создать процедуру, которая записывает ответ помощника в отдельный звуковой файл, который удаляется после воспроизведения:
Рисунок 6
Для работы с голосовым помощником необходимо запустить программу и задать запрос на интересующую тему.
Для завершения работы с программой необходимо подать голосовую команду: «пока». Код рабочей программы приведен в приложении.
Рисунок 7
Заключение
Трудно сказать, сколько технологических достижений в сфере голосового поиска поджидает нас в ближайшем будущем. Всего через несколько лет технология голосового поиска вполне может стать гораздо более продвинутой и распространенной, чем сейчас, и превратиться в приоритетный способ поиска для большинства людей.
Хотя невозможно предугадать все особенности голосового поиска, вполне можно предположить, что его основные принципы будут продолжать развиваться в том же направлении: ключевые слова будут терять свою значимость, семантический поиск получит приоритет, люди будут пользоваться голосовым поиском для решения срочных сиюминутных задач.
Скорее всего, некоторые возможности голосового поиска изменятся таким образом, чтобы анализировать пользовательские запросы и выдавать немедленные готовые ответы, а не генерировать длинные страницы поисковой выдачи, как это происходит сейчас. База знаний Google (Knowledge Graph) уже сейчас указывает на это, а все уменьшающиеся в размерах мобильные устройства вроде часов Apple Watch, очевидно, лишь выиграют от поисковой выдачи в формате «вопрос-ответ». Если развитие действительно пойдет таким путем, поисковая оптимизация как отрасль продолжит стремительно эволюционировать.
Созданная в рамках данного проекта программа голосового поиска обладает удобным интуитивным голосовым управлением и позволяет учащимся подготовиться к ЕГЭ по физике и информатике, а также изучать языки программирования.
Список использованных источников литературы
https://www.youtube.com/watch?v=YeS755SPSI8HYPERLINK "https://www.youtube.com/watch?v=YeS755SPSI8&list=LL&index=5&t=604s"&HYPERLINK "https://www.youtube.com/watch?v=YeS755SPSI8&list=LL&index=5&t=604s"list=LLHYPERLINK "https://www.youtube.com/watch?v=YeS755SPSI8&list=LL&index=5&t=604s"&HYPERLINK "https://www.youtube.com/watch?v=YeS755SPSI8&list=LL&index=5&t=604s"index=5HYPERLINK "https://www.youtube.com/watch?v=YeS755SPSI8&list=LL&index=5&t=604s"&HYPERLINK "https://www.youtube.com/watch?v=YeS755SPSI8&list=LL&index=5&t=604s"t=604s 01.02.2022 19.00
https://www.youtube.com/watch?v=YlbAPIijZeI 01.02.2022 19.30
bingads_2019_voicereport.pdf (azureedge.net) 01.06.2022 19.48
https://club.dns-shop.ru/blog/t-78-smartfonyi/47887-zachem-nujnyi-golosovyie-pomoschniki-kakie-byivaut-i-chto-umeut/?utm_referrer=https%3A%2F%2Fyandex.ru%2F 20.10.2022 20.03
https://www.insales.com/ua/blogs/blog/golosovoy-poisk?ysclid=l9h314l63197855966 18.10.2022 15.46
https://ppc.world/articles/chto-znachit-golosovoy-poisk-dlya-marketologov-statistika-i-sovety-po-optimizacii/?ysclid=l9h362oit2748850233 20.10.2022 20.20
Приложение
Программа на языке python:
Вызов необходимых библиотек языка python:
from pyowm import OWM
from pyowm.utils import config
from pyowm.utils import timestamps
from datetime import datetime, date, time
import colorama
from colorama import Fore, Back, Style
colorama.init()
from gtts import gTTS
import random
import time
import playsound
import speech_recognition as sr
import os
Функция для прослушивания и перевода в текстовой вид команды:
def listen_command():
r = sr.Recognizer()
with sr.Microphone() as source:
print(Fore.YELLOW+"Скажите вашу команду:
audio = r.listen(source)
try:
our_speech = r.recognize_google(audio, language="ru")
print(Fore.RED+"Вы сказали: "+our_speech
return our_speech
except sr.UnknownValueError:
return "ошибка"
except sr.RequestError:
return "ошибка"
Функция для нахождения команды в списке:
def do_this_command(message):
message = message.lower()
if "привет" in message:
say_message("Привет меня зовут аврора")
elif "что ты умеешь" in message:
say_message ('вы можете со мной поговорить или выбрать одну из категорий: развлечения или учеба')
elif "учёба" in message:
say_message ('Вы можете задавать вопросы касательно кинематики в физике, ЕГЭ по информатике, а так же теории для изучения языков программирования python и pascal ')
elif "назови физические величины" in message:
say_message ('1. длина, ширина и высота измеряются в метрах измерительной лентой 2. площадь измеряется в квадратных метрах 3. скорость измеряется в метрах делённых на секунду 4. время измеряется в секундах секундомером. Это основные физические величины')
elif "физические величины" in message:
say_message ('1. длина, ширина и высота измеряются в метрах измерительной лентой 2. площадь измеряется в квадратных метрах 3. скорость измеряется в метрах делённых на секунду 4. время измеряется в секундах секундомером. Это основные физические величины')
elif "что такое траектория" in message:
say_message ('траектория - это линия по которой движется тело')
elif "траектория" in message:
say_message ('траектория - это линия по которой движется тело')
elif "что такое сила трения" in message:
say_message ('это сила, возникающая при соприкосновении двух тел и препятствующая их относительному движению')
elif "сила трения" in message:
say_message ('это сила, возникающая при соприкосновении двух тел и препятствующая их относительному движению')
elif "что такое сила реакции опоры" in message:
say_message ('это сила, с которой опора действует на тело')
elif "сила реакции опоры" in message:
say_message ('это сила, с которой опора действует на тело')
elif "что такое вес тела" in message:
say_message ('Сила, с которой тело действует на опору, препятствующую падению, возникающая в поле сил тяжести.')
elif "вес тела" in message:
say_message ('Сила, с которой тело действует на опору, препятствующую падению, возникающая в поле сил тяжести.')
elif "что такое путь" in message:
say_message ('путь это место, направление или сам процесс перемещения ')
elif "путь" in message:
say_message ('путь это место, направление или сам процесс перемещения ')
elif "что такое перемещение" in message:
say_message("перемещение это вектор соединяющий начальное и конечное положение тела")
elif "перемещение" in message:
say_message("перемещение это вектор соединяющий начальное и конечное положение тела")
elif "как найти среднюю скорость" in message:
say_message ('Средняя скорость равна среднему арифметическому от скоростей тела во время движения только в том случае, когда тело двигалось с этими скоростями одинаковые промежутки времени.')
elif "средняя скорость" in message:
say_message ('Средняя скорость равна среднему арифметическому от скоростей тела во время движения только в том случае, когда тело двигалось с этими скоростями одинаковые промежутки времени.')
elif "как найти ускорение" in message:
say_message ('ускорение – это отношение изменения скорости к промежутку времени, за который это изменении произошло')
elif "ускорение" in message:
say_message ('ускорение – это отношение изменения скорости к промежутку времени, за который это изменении произошло')
elif 'что такое проекция вектора на ось' in message:
say_message("Проекция вектора на ось — это длина отрезка, заключенного между проекциями начала и конца вектора на эту ось")
elif 'проекция вектора на ось' in message:
say_message("Проекция вектора на ось — это длина отрезка, заключенного между проекциями начала и конца вектора на эту ось")
elif 'что такое свободное падение' in message:
say_message("Свободное падение – движение под действием одной силы тяжести")
elif 'свободное падение' in message:
say_message("Свободное падение – движение под действием одной силы тяжести")
elif 'расскажи первый закон ньютона' in message:
say_message("Существуют такие системы отсчета, называемые инерциальными, в которых тела движутся равномерно и прямолинейно, если на них не действуют никакие силы или действие других сил скомпенсирован")
elif 'первый закон ньютона' in message:
say_message("Существуют такие системы отсчета, называемые инерциальными, в которых тела движутся равномерно и прямолинейно, если на них не действуют никакие силы или действие других сил скомпенсирован")
elif 'расскажи второй закон нютона' in message:
say_message("Ускорение тела (материальной точки) в инерциальной системе отсчета прямо пропорционально приложенной к нему силе и обратно пропорционально массе.")
elif 'второй закон нютона' in message:
say_message("Ускорение тела (материальной точки) в инерциальной системе отсчета прямо пропорционально приложенной к нему силе и обратно пропорционально массе.")
elif 'расскажи третий закон ньютона' in message:
say_message("Два тела воздействуют друг на друга с силами, противоположными по направлению, но равными по модулю")
elif 'третий закон ньютона' in message:
say_message("Два тела воздействуют друг на друга с силами, противоположными по направлению, но равными по модулю")
elif 'что такое сила упругости' in message:
say_message("Сила, возникающая в теле в результате его деформации и стремящаяся вернуть его в исходное состояние.")
elif 'сила упругости' in message:
say_message("Сила, возникающая в теле в результате его деформации и стремящаяся вернуть его в исходное состояние.")
elif 'расскажи закон гука' in message:
say_message("Сила упругости, возникающая при упругой деформации растяжения или сжатия тела, пропорциональна абсолютному значению изменения длины тела.")
elif 'закон гука' in message:
say_message("Сила упругости, возникающая при упругой деформации растяжения или сжатия тела, пропорциональна абсолютному значению изменения длины тела.")
elif 'расскажи закон всемирного тяготения' in message:
say_message("Закон всемирного тяготения гласит: два любых тела притягиваются друг к другу с силой, прямо пропорциональной массе каждого из них и обратно пропорциональной квадрату расстояния между ними.")
elif 'закон всемирного тяготения' in message:
say_message("Закон всемирного тяготения гласит: два любых тела притягиваются друг к другу с силой, прямо пропорциональной массе каждого из них и обратно пропорциональной квадрату расстояния между ними.")
elif 'что такое импульс' in message:
say_message("векторная физическая величина, являющаяся мерой механического движения тела")
elif 'импульс' in message:
say_message("векторная физическая величина, являющаяся мерой механического движения тела")
elif 'расскажи закон сохранения импульса' in message:
say_message("Закон, утверждающий, что сумма импульсов всех тел системы есть величина постоянная, если векторная сумма внешних сил, действующих на систему тел, равна нулю")
elif 'закон сохранения импульса' in message:
say_message("Закон, утверждающий, что сумма импульсов всех тел системы есть величина постоянная, если векторная сумма внешних сил, действующих на систему тел, равна нулю")
elif 'что такое механическая работа' in message:
say_message("скалярная количественная мера действия силы на тело или сил на систему тел")
elif 'механическая работа' in message:
say_message("скалярная количественная мера действия силы на тело или сил на систему тел")
elif 'что такое мощность' in message:
say_message("Скалярная физическая величина, характеризующая мгновенную скорость передачи энергии от одной физической системы к другой в процессе её использования и в общем случае определяемая через соотношение переданной энергии к времени передачи")
elif 'мощность' in message:
say_message("Скалярная физическая величина, характеризующая мгновенную скорость передачи энергии от одной физической системы к другой в процессе её использования и в общем случае определяемая через соотношение переданной энергии к времени передачи")
elif 'что такое потенциальная энергия' in message:
say_message("Потенциальная энергия – это энергия взаимодействия. Потенциальная энергия тела, поднятого над землей, определяется массой тела, ускорением свободного падения и расположением тела относительно земли")
elif 'потенциальная энергия' in message:
say_message("Потенциальная энергия – это энергия взаимодействия. Потенциальная энергия тела, поднятого над землей, определяется массой тела, ускорением свободного падения и расположением тела относительно земли")
elif 'что такое кинетическая энергия' in message:
say_message("Кинетическая энергия – энергия движения тела. Она определяет запас энергии тела, которое обладает скоростью")
elif 'кинетическая энергия' in message:
say_message("Кинетическая энергия – энергия движения тела. Она определяет запас энергии тела, которое обладает скоростью")
elif 'что такое механическая энергия' in message:
say_message("В физике механи́ческая эне́ргия описывает сумму потенциальной и кинетической энергий, имеющихся в компонентах механической системы.")
elif 'механическая энергия' in message:
say_message("В физике механи́ческая эне́ргия описывает сумму потенциальной и кинетической энергий, имеющихся в компонентах механической системы.")
elif 'закон сохранения энергии' in message:
say_message("энергия не может появляться из ничего и пропадать никуда, она не может быть ни создана, ни уничтожена, но она может быть преобразована, таким образом энергия только принимает другой вид, и её количество при этом сохраняется во времени")
elif 'расскажи закон сохранения энергии' in message:
say_message("энергия не может появляться из ничего и пропадать никуда, она не может быть ни создана, ни уничтожена, но она может быть преобразована, таким образом энергия только принимает другой вид, и её количество при этом сохраняется во времени")
elif 'что такое момент силы' in message:
say_message("Векторная физическая величина, характеризующая действие силы на механический объект, которое может вызвать его вращательное движение.")
elif "типы данных" in message:
say_message("Паскаль: числа с плавающей запятой real, целые integer, символьный char, логический boolean. Пайтон:целые числа, числа с плавающей точкой (вещественные), строки, логический тип.")
elif "меню" in message:#дописать
print('append(x)')
say_message("язык:пайтон. Добавляет элемент в конец последовательности")
elif "append" in message:
print('append(x)')
say_message("язык:пайтон. Добавляет элемент в конец последовательности")
elif "кант" in message:
print('count(x)')
say_message("язык:пайтон. Считает количество элементов, равных x")
elif "extend" in message:
print('extend(s)')
say_message("язык:пайтон. Добавляет к концу последовательности последовательность s")
elif "яндекс" in message:
print('index(x)')
say_message("язык:пайтон. Возвращает наименьшее i, такое что s[i]=х.")
elif "insert" in message:
print('insert(i,x)')
say_message("язык:пайтон и паскаль. Вставляет элемент x в i-й промежуток")
elif "pop" in message:
print('pop([i])')
say_message("язык:пайтон. Возвращает i-й элемент, удаляя его из последовательности")
elif "reverse" in message:
print('reverse()')
say_message("язык:пайтон. Меняет порядок элементов s на обратный")
elif "сорт" in message:
print('sort([cmpfunc])')
say_message("язык:пайтон. Сортирует элементы s. Может быть указана своя функция сравнения cmpfun")
elif "delete" in message:
print('delete(s,p,n)')
say_message("язык:паскаль. удаляет n символов в строке s, начилая с p ")
elif "стр" in message:
print('str(v,s)')
say_message("язык:паскаль. Число v преобразуется в строку, результат записывается в s ")
elif "вал" in message:
print('val(s,v)')
say_message("язык:паскаль. Если строка s состоит из цифр, то она преобразуется в числовое значение переменной v")
elif "concat" in message:
print('concut(s1,s2,...sm)')
say_message("язык:паскаль. Строки s1,s2,...sm записываются одна за другой. ")
elif "копи" in message:
print('copy(s,p,n)')
say_message("язык:паскаль. Из строки s начиная с p выбирается n символов. ")
elif "ленг" in message:
print('length(s)')
say_message("язык:паскаль. Определяется длина строки s. ")
elif "поз" in message:
print('pos(w,s)')
say_message("язык:паскаль. В строке s отыскивается первое вхождение строки w (номер позиции) ")
elif "задание 2" in message:
say_message("алгоритм решения второго задания из ЕГЭ по информатике вы можете увидеть на экране ")
os.system("2.jpg")
elif "задание 6" in message:
say_message("алгоритм решения шестого задания из ЕГЭ по информатике вы можете увидеть на экране ")
os.system("6.jpg")
elif "задание 12" in message:
say_message("алгоритм решения двенадцатого задания из ЕГЭ по информатике вы можете увидеть на экране ")
os.system("12.jpg")
elif "задание 14" in message:
say_message("алгоритм решения четырнадцатого задания из ЕГЭ по информатике вы можете увидеть на экране ")
os.system("14.jpg")
elif "задание 15" in message:
say_message("алгоритм решения пятнадцатого задания из ЕГЭ по информатике вы можете увидеть на экране ")
os.system("15.jpg")
#добавить 17
elif "задание 22" in message:
say_message("алгоритм решения двадцать второго задания из ЕГЭ по информатике вы можете увидеть на экране ")
os.system("22.jpg")
elif "задание 23" in message:
say_message("алгоритм решения двадцать третьего задания из ЕГЭ по информатике вы можете увидеть на экране ")
os.system("23.jpg")
elif 'расскажи анекдот' in message:
say_message("Мой разработчик не научил меня шутить...ха ха ха")
elif "аврора" in message:
say_message ('чем я могу вам помочь')
elif "как дела" in message:
say_message("у меня всё отлично")
elif "расскажи что-нибудь" in message:
say_message("я даже не знаю что")
elif "кем ты работаешь" in message:
say_message("голосовым помощником")
elif "тебе нравится учиться" in message:
say_message("я не знаю что это такое")
elif "сколько времени" in message:
say_message("самое время учиться")
elif "какой предмет в школе тебе нравится больше" in message:
say_message("это сложный вопрос")
elif "где ты живёшь" in message:
say_message("в проводах")
elif "где" in message:
say_message( "У шкафчике")
elif "есть" in message:
say_message( "Вот и славно")
elif "зачем?" in message:
say_message( "Для высших целей")
elif "время" in message:
now = datetime.now()
say_message( "сейчас"+str(now))
elif "как" in message:
say_message( "Как заблагорассудится")
elif "когда" in message:
say_message( "Как только, так сразу")
elif "кому" in message:
say_message( "Бабушке в деревню")
elif "кто" in message:
say_message( "Конь в пальто")
elif "кто ты" in message:
say_message( "Я Великий Разум!")
elif "откуда" in message:
say_message( "От квартиры где деньги лежат",)
elif "нет" in message:
say_message("На нет и суда нет")
elif "почему?" in message:
say_message( "Потому что гладиолусы")
elif "почему дует ветер?" in message:
say_message( "Потому что деревья качаются")
elif "почему ёлки зелёные?" in message:
say_message("Спроси у Деда Мороза")
elif "сколько?" in message:
say_message( "Потому что гладиолусы")
elif 'развлечения' in message:
say_message("выберите категорию: Фильмы, книги, путешествия, игры")
elif'фильмы' in message:
say_message('лучший фильм по версии гугла это круэлла')
elif 'книги' in message:
say_message('советую прочитать серию книг о гарри поттере')
elif 'путешествия' in message:
say_message('путешествия по России это самые увлекательные путешествия, ведь нет ничего интереснее, чем видеть свою родину с разных сторон')
elif 'игры' in message:
say_message('лично я играю в бравл старс')
elif "что ты любишь?" in message:
say_message( "Ловить бабочек перелетающих из файла в файл")
elif "что?" in message:
say_message("Да так, ничего")
elif "да" in message:
say_message("Другое дело чувак")
elif "пока" in message:
say_message("Пока!")
exit()
else:
say_message("повторите пожалуйста")
Функция для сохранения, воспроизведения и удаления звукового файла:
def say_message(message):
voice = gTTS(message, lang="ru")
print(Fore.YELLOW+"Голосовой ассистент: "+message)#
file_voice_name = "_audio_"+str(time.time())+"_"+str(random.randint(0,100000))+".mp3"
voice.save(file_voice_name)
playsound.playsound(file_voice_name)
os.remove(file_voice_name)
if __name__ == '__main__':
while True:
command = listen_command()
do_this_command(command)