MeetDot — это система видеоконференцсвязи с наложенными субтитрами в реальном времени. Система предназначена для облегчения общения между людьми, говорящими на разных языках, и снижения коммуникационных барьеров между многоязычными участниками.
В настоящее время наша система поддерживает речь и субтитры на четырёх языках (английском, китайском, испанском и португальском) и объединяет автоматическое распознавание речи (ASR) и машинный перевод (MT) каскадным способом.
Создайте среду conda с использованием Python 3.7 или 3.8 (вероятно, будут работать и более новые версии).
conda create -n streaming_translation python=3.7.9
conda activate streaming_translation
cd backend
pip install -r requirements.txt
из вашей среды conda.pip install -e .
python env_setup.py --copy-keys
. Это задаст переменные среды, необходимые для запуска API, и скопирует учётные данные. Также будут установлены git-хуки фиксации изменений. Если вы не работаете на нашем общем сервере, см. python env_setup.py --help
В MeetDot мы предоставляем интеграцию ASR/MT с Google Cloud, чтобы можно было работать без доступа к нашим серверам или внутренним API. Если вы не работаете на нашем общем сервере, выполните следующие действия:
backend/resources/credentials.json
.env
.В MeetDot используется dotenv во фронтенде и бэкенде.
Переменные можно задать, отредактировав файл .env
или используя командную строку BACKEND_PORT=5888 python src/app.py
.
См. .env.default
для списка возможных ключей.
python src/app.py
(используйте флаг --debug
, чтобы перезапускать при изменении кода, полезно для разработки).cd frontend
yarn install
yarn run serve --port=8080
(можно использовать --mode=production
, чтобы обслуживать минифицированный пакет)cd backend/
pytest
Мы используем pre-commit для управления git-хуками.
Выполните команду pre-commit install
, чтобы настроить его.
Он должен запускать средство форматирования (Prettier для JavaScript) и проверки синтаксиса при каждой фиксации.
Должен быть настроен на обновление себя и установку библиотек, но дополнительную информацию см. в файле .pre-commit-config.yaml
.
cd backend/
python src/services/evaluation/evaluate.py
При первом запуске системы MeetDot браузеру требуется разрешение на доступ к микрофону для демонстрации. Современные браузеры не позволяют небезопасным веб-сайтам получать доступ к микрофону.
Локальные среды (localhost
) считаются безопасными. Для удалённого развёртывания вам потребуется выполнить одно из следующих действий:
Предоставьте доступ к веб-сайту через HTTPS. Задайте пути к вашим... Файлы ключей и сертификатов находятся в backend/resources/keys.json. Имена файлов генерируются по умолчанию LetsEncrypt.
Используйте самозаверяющий сертификат, и ваши пользователи будут должны принимать предупреждения браузера. (Не рекомендуется).
Попросите пользователей включить экспериментальные флаги для обхода настроек безопасности браузера. (Также не рекомендуется). В Chrome это chrome://flags#unsafely-treat-insecure-origin-as-secure. В Firefox это media.devices.insecure.enabled в about:config.
Наш скрипт развёртывания копирует файлы в $DEPLOY_ROOT (например, /srv/example.com, заданный в переменных gitlab). Статические файлы фронтенда обслуживаются из $DEPLOY_ROOT/dist с помощью nginx. Файлы бэкенда сохраняются в $DEPLOY_ROOT/backend и обслуживаются с помощью простого сервера flask-socketio.
Эти процессы (nginx, бэкенд) управляются скриптами systemd.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )