Speach Recognitions

Overview

easy_meeting

photo_2021-10-20 12 07 05

Добро пожаловать в интерфейс сервиса автопротоколирования совещаний Easy Meeting.

Website - http://cf5c-62-192-251-83.ngrok.io/

Принципиально данный сервис можно разделить на три основных и два дополнительных шага.

К основным шагам относится:
💁 Загрузка файла в сервис;
💁 Обработка файла;
💁 Редактирование и сохранение.

Дополнительные шаги включают в себя:
🧐 Получение саммари текста
🤓 Возможность задать вопросы к тексту (возможность поиска по ключевым словам)

Первым этапом работы сервиса является загрузка в него исходного файла. Сервис Easy Meeting может принимать файл из 2-х источников: Загрузить файлы с устройства; Вставить ссылку с YouTube. Во время загрузки файла вам не нужно думать о его формате. Данный сервис работает со всеми форматами (видео/аудио).

01

Для того чтобы загрузить файл с компьютера, необходимо нажать на кнопку “Загрузить файл с устройства”, после чего появится возможность выбрать файл с диска.

02

Если у вас есть ссылка на YouTube, то выберите пункт “Укажите ссылку на YouTube”, после чего вставьте необходимую ссылку в поле.

03

Ожидайте загрузку файла.

04

После того как вы выбрали один из методов загрузки файла и загрузили его в сервис Easy Meeting, вы увидите надпись “Данные загружены! Теперь можно приступить к извлечению файла”.

Чтобы начать обработку файла и извлечение текста из аудио, нажмите кнопку “Обработать”. Начнется обработка файла, вы увидите прогресс бар, в котором будет отражено время выполнения алгоритма преобразования речи в текст.

12

После того как прогресс бар будет заполнен на 100% , появится сообщение “Текст распознан! Теперь его можно посмотреть и при необходимости отредактировать”.

Ниже вы увидите окошко, в котором будет весь распознанный текст с возможностью его редактирования.

07

Когда закончите с редактированием, то ниже данного окошка появятся две кнопки: “Скачать аудио” и “Скачать распознанный текст”.

Также в нашем сервисе предусмотрены две дополнительные функции:

  1. Функция суммаризации текста
  2. Q&A с текстом 💁

08

Для того чтобы получить краткое описание всей конференции и не читать все страницы, вы можете получить выжимку, нажав на кнопку “Получить краткое содержание”, в результате наш алгоритм предложит вам сжатую версию конференции, которой вы сможете ознакомиться с основными тезисами любой встречи.

09

Вторая не менее важная дополнительная функция доступна в интерфейсе в левой части экрана и появляется только после обработки аудио и получения полной версии текста. В данной функции вы сможете задать вопрос по тексту.

11

Например, если вы пропустили совещание и не знаете, шла ли речь о вас или нет 🤓 🙈 вы можете спросить у нейронной сети, что говорили про (конечно) Ивана Ивановича Иванова.

После того как файл обработан и все необходимые файлы скачаны, вы можете проделать эту процедуру еще раз. Для этого просто вернитесь к первому шагу выбора файла.

В связи с ограниченными ресурсами hardware, оптимальное время работы алгоритмов:

Из расчёта записи в 1 час.

  1. Загрузка файла ~2 минут
  2. Обработка файла и получение транскрибации ~ 5 минут
  3. Суммаризация текста ~ 3 минуты
  4. Q&A ~ 1-2 минуты

Для локального запуска необходимо в корневой директории проекта создать папку "models"
В нее поместить файлы находящиеся в папке models на облаке:
https://drive.google.com/drive/folders/1Bkzutf6FJf7Qm05GEf9C6Dmd05wBzjjk?usp=sharing

Далее запустить в cmd:
pip install -r requirements.txt
streamlit run app_run.py

Все глобальные переменные для моделей изменяются в config.py

Спасибо! Надеемся, вам понравился наш быстрый и удобный сервис Easy Meeting!

С уважением,
команда Teenage Mutant Ninja Turtles (TMNT)

10

You might also like...
Comments
  • Suggest to loosen the dependency on pytube

    Suggest to loosen the dependency on pytube

    Hi, your project easy_meeting.Hack requires "pytube==11.0.1" in its dependency. After analyzing the source code, we found that some other versions of pytube can also be suitable without affecting your project, i.e., pytube 11.0.0, 11.0.2, 12.0.0. Therefore, we suggest to loosen the dependency on pytube from "pytube==11.0.1" to "pytube>=11.0.0,<=12.0.0" to avoid any possible conflict for importing more packages or for downstream projects that may use easy_meeting.Hack.

    May I pull a request to loosen the dependency on pytube?

    By the way, could you please tell us whether such dependency analysis may be potentially helpful for maintaining dependencies easier during your development?



    For your reference, here are details in our analysis.

    Your project easy_meeting.Hack(commit id: eb60d740e136ce139fddb447cd4e2aacb636ad98) directly uses 2 APIs from package pytube.

    pytube.__main__.YouTube.__init__, pytube.exceptions.RegexMatchError.__init__
    
    

    From which, 8 functions are then indirectly called, including 4 pytube's internal APIs and 4 outsider APIs, as follows (neglecting some repeated function occurrences).

    [/Maximgitman/easy_meeting.Hack]
    +--pytube.__main__.YouTube.__init__
    |      +--pytube.extract.video_id
    |      |      +--pytube.helpers.regex_search
    |      |      |      +--re.compile
    |      |      |      +--pytube.exceptions.RegexMatchError.__init__
    |      +--pytube.monostate.Monostate.__init__
    |      +--pytube.helpers.install_proxy
    |      |      +--urllib.request.ProxyHandler
    |      |      +--urllib.request.build_opener
    |      |      +--urllib.request.install_opener
    +--pytube.exceptions.RegexMatchError.__init__
    

    We scan pytube's versions among [11.0.0, 11.0.2, 12.0.0] and 11.0.1, the changing functions (diffs being listed below) have none intersection with any function or API we mentioned above (either directly or indirectly called by this project).

    diff: 11.0.1(original) 11.0.0
    ['pytube.cipher.get_throttling_function_name', 'pytube.__main__.YouTube', 'pytube.contrib.playlist.Playlist.last_updated', 'pytube.contrib.search.Search', 'pytube.contrib.search.Search.__init__', 'pytube.contrib.playlist.Playlist']
    
    diff: 11.0.1(original) 11.0.2
    ['pytube.parser.throttling_array_split']
    
    diff: 11.0.1(original) 12.0.0
    ['pytube.__main__.YouTube', 'pytube.parser.throttling_array_split', 'pytube.__main__.YouTube.__eq__', 'pytube.cipher.get_throttling_function_name']
    
    

    As for other packages, the APIs of @outside_package_name are called by pytube in the call graph and the dependencies on these packages also stay the same in our suggested versions, thus avoiding any outside conflict.

    Therefore, we believe that it is quite safe to loose your dependency on pytube from "pytube==11.0.1" to "pytube>=11.0.0,<=12.0.0". This will improve the applicability of easy_meeting.Hack and reduce the possibility of any further dependency conflict with other projects/packages.

    opened by Agnes-U 0
Owner
Maksim
Maksim