Skip to content

urfu-software-engineering-team7/whisper_rest_api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Audio -> url -> API -> Whisper -> text -> Response

Python Workflow

Данное приложение получает на вход API "прямую" ссылку на mp3 аудио файл, в ответ с дилем приложение отправляет текст-расшифровку, что было сказано в этом аудио.

  • для перевода используется библиотека Whisper
  • для передачи ссылки на аудио-файл и получения результата перевода используется библиотека Fastapi
  • ссылка на файл передается методом GET через параметр url=

Для преобразования аудио в текст используется библиотека whisper.
Для работы whisper также нужен мультимедийный фреймворк FFmpeg.

Установка FFmpeg

Установка для Windows:
Для Windows можно установить по ссылке download, после добавить в PATH.
Или же поставить в Windows установщик scoop и через него прописать команду.
В PowerShell прописать команду:

iwr -useb get.scoop.sh | iex

Далее устанавливаем ffmpeg:

scoop install ffmpeg

Установка для Linux и MacOS:

# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg

# on Arch Linux
sudo pacman -S ffmpeg

# on MacOS using Homebrew (https://brew.sh/)
brew install ffmpeg

Установка Whisper

Желательно установить whisper c помощью команды ниже, так как она значительно повышает скорость скачивания.

pip install git+https://github.com/openai/whisper.git

Обновление:

pip install --upgrade --no-deps --force-reinstall git+https://github.com/openai/whisper.git

Установка Linux пакетов для хостинга

sudo apt install python3-pip, uvicorn, ffmpeg -y

Библиотека whisper может анализировать множество языков, но в реализации был выбран русский язык для лучшего результата.
В качестве модели была выбрана модель "base".

Реализация API:

Для реализации API используется библиотека Fastapi. Чтобы обрабатывать ссылку, которую пользователь отправляет пользователь, используется библиотека requests.

Для их скачивания можно использовать файл requirements.txt

Работа приложения:
Ссылка на файл передается методом GET через параметр url=

Ссылка должно быть прямой. Файл должен быть к примеру, на git (https://raw.githubusercontent.com/), Dropbox, или другие файлообменники.
Однако ссылки на google disck не работают, так как они не дают доступ к файлу напрямую.

Чтобы обратиться к сервису необходимо обратиться к /translate/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages