摘要:如今,实时转录对于在客户支持、现场活动和虚拟通信中提供即时反馈至关重要。它增强了可访问性,确保了听力障碍人士的包容性,并改善了整体用户体验。并支持依赖实时数据的行业的快速决策、法规遵从性和无缝的全球协作。
如今,实时转录对于在客户支持、现场活动和虚拟通信中提供即时反馈至关重要。它增强了可访问性,确保了听力障碍人士的包容性,并改善了整体用户体验。并支持依赖实时数据的行业的快速决策、法规遵从性和无缝的全球协作。
WhisperFlow是一种由 OpenAI 的 Whisper 模型提供支持的解决方案,旨在将传统的批处理转变为实时音频转录,确保现代应用程序的性能和准确性。
WhisperFlow 巧妙地建立在 OpenAI 的 Whisper 框架和模型之上,它通过添加实时功能扩展了 OpenAI Whisper。WhisperFlow 采用了 Whisper 最先进的准确性,并进一步完善,使其在不同情况下更有用,尤其是实时处理。
Whisper 模型
Whisper 框架专为批处理而构建,可一次转录整个音频文件。尽管效果显著,但现代应用程序通常需要实时反馈,尤其是对于实时会议转录、语音助手或实时播客字幕等用例。WhisperFlow 通过添加实时处理功能增强了 Whisper 的功能,允许在用户仍在讲话时转录实时音频流。WhisperFlow 利用 WebSockets 进行实时音频流传输,以亚秒级延迟处理小块音频。它使用滚动窗口技术,根据暂停对音频进行分段,以提供即时的部分结果,并在获得更多上下文时提高准确性。
音频块和滚动窗口
音频块实时转录,随着新块的到来和更多上下文的添加,部分结果得到改进。暂停将结果标记为最终结果,确保快速准确地转录动态音频或视频。要直观地了解这一点,请参阅下面的部分结果表。
部分结果和最终结果
转录速度至关重要,WhisperFlow 以令人印象深刻的延迟脱颖而出。在 Apple M1 芯片上,WhisperFlow tiny.en 的平均延迟为 275.22 毫秒——即使对于实时应用程序来说也非常低。在 GPU 机器上,性能进一步提高,超越了仅 CPU 的基准,从而能够更快地处理大型任务。WhisperFlow 可确保你的应用程序高效快速地运行,而不会影响准确性。
WhisperFlow 不会使开发人员的生活变得复杂。它的打包方式使集成到现有 Python 项目中变得简单。你可以将其用作简单的 Python 库,在自己的代码中调用它,或者将其部署为独立的 FastAPI 服务器以用于更广泛的用例。其灵活的架构使其非常适合小型脚本和更大的分布式系统。
要将 WhisperFlow 作为 Web 服务器运行,请先将存储库克隆到本地计算机:
git clone https://github.com/dimastatz/whisper-flow.git然后导航到 WhisperFlow 文件夹,创建一个包含所有依赖项的本地 venv,并在端口 8181 上运行 Web 服务器:
cd whisper-flow./run.sh -localsource .venv/bin/activate./run.sh -benchmark要将 WhisperFlow 集成到你的 Python 应用程序中,请先安装 whisper python 包:
pip install whisperflow然后导入 WhsiperFlow 和 transcriber 模块:
import whisperflow.streaming as stimport whisperflow.transcriber as ts@app.websocket("/ws")async def websocket_endpoint(websocket: WebSocket):model = ts.get_modelasync def transcribe_async(chunks: list):return await ts.transcribe_pcm_chunks_async(model, chunks)async def send_back_async(data: dict):await websocket.send_json(data)try:await websocket.acceptsession = st.TrancribeSession(transcribe_async, send_back_async)while True:data = await websocket.receive_bytessession.add_chunk(data)except exception as exception:await session.stopawait websocket.closeWhisperFlow 弥补了批量转录和实时转录之间的差距,为开发人员提供了 Whisper 模型的强大功能和附加功能。无论你是在寻找低延迟性能、轻松集成还是实时应用程序的实时转录,WhisperFlow 都能满足您的需求。这是一款面向未来的工具,希望它成为你的工具包中的一员。
来源:安卡达