项目简介
该项目使用 FastRTC 处理实时音频流,并通过 Transformers 使用开源自动语音识别模型。
检查 FastRTC 文档以查看您可以调整哪些与音频流、语音活动检测(VAD)等相关的参数。
System Requirements 系统要求
-
python >= 3.10 -
ffmpeg
安装
步骤 1:克隆仓库
git clone https://github.com/sofi444/realtime-transcription-fastrtc
cd realtime-transcription-fastrtc
步骤 2:设置环境
选择您首选的包管理器:
步骤 3:安装 ffmpeg
步骤 4:配置环境
创建项目根目录下的 .env
文件:
UI_MODE=fastapi
APP_MODE=local
SERVER_NAME=localhost
-
UI_MODE:控制要使用的界面。如果设置为 gradio
,将通过 Gradio 启动应用程序并使用其默认界面。如果设置为其他任何内容(例如fastapi
),它将使用根目录中的index.html
文件来创建界面(您可以按需自定义它)(默认fastapi
)。 -
APP_MODE: 如果仅在本地运行,请忽略此设置。如果您在 Spaces 等环境中部署,则需要配置一个 Turn 服务器。在这种情况下,将其设置为 deployed
,按照此处说明操作(默认local
)。 -
模型 ID:您要使用的 ASR 模型的 HF 模型标识符(见此处)(默认 openai/whisper-large-v3-turbo
) -
服务器名称:绑定到的主机(默认 localhost
) -
端口:端口号(默认 7860
)
步骤 5:启动应用程序
python main.py
点击弹出的 URL(例如:https://localhost:7860)以开始使用应用程序!
Whisper选择您想要使用的 Whisper 模型版本。查看所有版本 – 当然,您也可以使用非 Whisper ASR 模型。
在 MPS 上,我可以无问题地运行 whisper-large-v3-turbo
。这是我目前最喜欢的,因为它轻量级、性能好且多语言!
调整参数如你所愿,但请记住,对于实时转录,我们希望批量大小为 1(即一旦有数据块可用就开始转录)。
如果您想转录不同的语言,请将语言参数设置为目标语言,否则 Whisper 默认翻译成英语(即使设置了 transcribe
作为任务)。
项目链接
https://github.com/sofi444/realtime-transcription-fastrtc
扫码加入技术交流群,备注「开发语言-城市-昵称」
(文:GitHubStore)