Skip to content

Latest commit

 

History

History
115 lines (85 loc) · 5.02 KB

File metadata and controls

115 lines (85 loc) · 5.02 KB

voice-assistant-patient-autumn2024

Голосовой помощник для работы с записью пациентов/получения фидбека по телефону

В рамках проекта необходимо будет разработать систему голосового бота, состоящую из 3 блоков. Задачи, исполняемые ботом, а также модели, используемые в работе, могут быть определены на ваше усмотрение. Общение с клиентом должно проходить в зависимости от заданных сценариев: Выбор сценария будет зависеть от цели звонка(подтверждение записи, повторное подтверждение, опрос клиента, доп. информация), а так же от ответов клиента(полный отказ от записи, запись на другое время, переход на оператора, просьбы клиентов об услугах и т.д.). Необходимо будет разработать базовые сценарии ведения диалога с клиентом, обосновать свой выбор. Функционал можете выбрать любой, главное чтобы бот поддерживал минимум несколько сценариев работы и имел возможность получать информацию из БД.

Работа с базами данных

  1. Предварительно установите Docker для вашей системы.

  2. Склонируйте репозиторий:

    git clone <URL_репозитория>
    cd <название_папки_с_репозиторием>
  3. Зайдите в папку 'db'

  4. Создайте и активируйте виртуальное окружение:

    • Для Mac или Linux:

      python3 -m venv env
      source env/bin/activate
    • Для Windows:

      python -m venv venv
      venv\Scripts\activate
  5. Соберите и запустите контейнеры:

    make run-docker
  6. Доступ к приложению:

    После успешного выполнения миграций, приложение будет доступно по адресу: http://localhost:8000.

  7. Остановите контейнеры и удалите созданные образы:

    make stop-docker
    
    

TTS (Text-to-Speech) block

TTS (Text-to-Speech) block - поддерживает генерацию аудио (потоковую и в файл) на основе переданного текста.

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

╰─➤  python TTS -t {string} -p {bool}

options:
  -t {string}, --text Текст который необходимо озвучить
  -p {bool}, --pronounce {True, False} Подтвердить озвучивание, в ином случае результат запишится в mp3

Примеры использования:
  python TTS -t "Привет"

Пример вызова функции

from TTS import vocalize

vocalize("Привет", True)

STT (Speech-to-Text) block

STT (Speech-to-Text) block - поддерживает генерацию текста по аудио или же в режиме реального времени, используя микрофон.

Запуск файла "STT_audio.py" для получения текста из аудио

  1. Создайте и активируйте виртуальное окружение:
  • Для Mac или Linux:

    python3 -m venv env
    source env/bin/activate
  • Для Windows:

    python -m venv venv
    venv\Scripts\activate
  1. Запустите файлик:
python3 STT_audio.py <название аудио>
  1. В файлик transcription.txt запишется содержимое аудио.

Запуск файла "STT_RealTime.py" для получения текста из аудио

  1. Проверьте, что микрофон на вашем устройстве включён

  2. Создайте и активируйте виртуальное окружение:

    • Для Mac или Linux:

      python3 -m venv env
      source env/bin/activate
    • Для Windows:

      python -m venv venv
      venv\Scripts\activate

Запустите файлик:

python3 STT_RealTime.py
  1. Говорите свою речь и нажмите Ctrl+C для остановки записи.
  2. В файлик transcript.txt запишется содержимое разговора.