Seamless:Facebook推出的跨语言语音识别/翻译/合成大模型
Seamless 介绍
Seamless 是一系列 AI 模型,旨在实现更自然和真实的跨语言沟通。SeamlessM4T 是一个支持约 100 种语言的大规模多语言多模态机器翻译模型。SeamlessM4T 是 SeamlessExpressive 的基础,后者能够在不同语言间保留语调和声音风格的元素,同时 SeamlessStreaming 则支持同时翻译和流式语音识别(ASR)。SeamlessExpressive 和 SeamlessStreaming 被整合为 Seamless,一个统一模型,具备多语言、实时和富有表现力的翻译功能。
链接
演示
SeamlessM4T v2 | SeamlessExpressive | SeamlessStreaming | |
---|---|---|---|
演示 | SeamlessM4T v2 演示 | SeamlessExpressive 演示 | |
HuggingFace Space 演示 | 🤗 SeamlessM4T v2 空间 | 🤗 SeamlessExpressive 空间 | 🤗 SeamlessStreaming 空间 |
论文
Seamless
EMMA
SONAR
博客
Meta AI 博客
教程
详尽的 教程 在 NeurIPS 2023 - Seamless EXPO 上提供,是学习如何使用整个 Seamless 模型套件的一站式商店。请随意玩转该笔记本。
SeamlessM4T
SeamlessM4T 是我们基础的全能 Massively Multilingual 和 Multimodal Machine Translation 模型,提供近 100 种语言的高质量翻译。
SeamlessM4T 模型支持以下任务:
- 语音到语音翻译 (S2ST)
- 语音到文本翻译 (S2TT)
- 文本到语音翻译 (T2ST)
- 文本到文本翻译 (T2TT)
- 自动语音识别 (ASR)
🌟 我们发布了 SeamlessM4T v2,这是使用我们新型 UnitY2 架构的更新版本。该新模型在质量和语音生成任务中的推理延迟方面都有所改善。
想要了解更多关于 SeamlessM4T 模型集合、各自使用的方法、语言覆盖和性能,请访问 SeamlessM4T README 或 🤗 模型卡。
[!NOTE]
Seamless M4T 也可在 🤗 Transformers 库中使用。有关详细信息,请访问 该部分。
SeamlessExpressive
SeamlessExpressive 是一种语音到语音翻译模型,捕捉语调的一些未被充分探索的方面,如语速和停顿,同时保留语音风格和高内容翻译质量。
要了解更多关于 SeamlessExpressive 模型的信息,请访问 SeamlessExpressive README 或 🤗 模型卡。
SeamlessStreaming
SeamlessStreaming 是一种流式翻译模型。该模型支持语音作为输入模态,语音/文本作为输出模态。
SeamlessStreaming 模型支持以下任务:
- 语音到语音翻译 (S2ST)
- 语音到文本翻译 (S2TT)
- 自动语音识别 (ASR)
要了解更多关于 SeamlessStreaming 模型的信息,请访问 SeamlessStreaming README 或 🤗 模型卡。
Seamless
Seamless 模型是用于富有表现力的流式语音到语音翻译的统一模型。
新动态
- [2023年12月18日] 我们开源了基于 Conformer 的 W2v-BERT 2.0 语音编码器,具体说明请见 论文 第 3.2.1 节,该编码器是我们 Seamless 模型的核心。
- [2023年12月14日] 我们发布了在 NeurIPS 2023 上提供的 Seamless 教程。
快速开始
安装
[!NOTE]
一个前提是 fairseq2,该库的预构建包仅在 Linux x86-64 和 Apple Silicon Mac 电脑上可用。此外,它依赖于 libsndfile,这可能在你的计算机上未安装。如果遇到安装问题,请参考其 README 获取进一步说明。
pip install .
[!NOTE]
转录推理音频以计算指标使用 Whisper,该工具会自动安装。Whisper 反过来需要在系统上安装命令行工具ffmpeg
,该工具在大多数包管理器中都可用。
运行推理
SeamlessM4T 推理
以下是使用 CLI 从根目录运行推理的示例。
S2ST 任务:
m4t_predict <输入音频路径> --task s2st --tgt_lang <目标语言> --output_path <保存音频路径>
T2TT 任务:
m4t_predict <输入文本> --task t2tt --tgt_lang <目标语言> --src_lang <源语言>
请参阅 推理 README 获取关于如何运行推理和支持语言列表的详细说明。
SeamlessExpressive 推理
[!NOTE]
请查看 该部分 了解如何下载模型。
以下是使用 CLI 从根目录运行推理的示例。
expressivity_predict <输入音频路径> --tgt_lang <目标语言> --model_name seamless_expressivity --vocoder_name vocoder_pretssel --output_path <保存音频路径>
SeamlessStreaming 和 Seamless 推理
流式评估 README 有关于如何运行 SeamlessStreaming 和 Seamless 模型评估的详细说明。CLI 具有一个 --no-scoring
选项,可用于跳过评分部分并仅运行推理。
请查看推理 README 获取更多详细信息。
运行 SeamlessStreaming 演示
你可以复制 SeamlessStreaming HF 空间 来运行流式演示。
你也可以通过从 这里 克隆空间来在本地运行演示。有关安装的更多详细信息,请参阅 SeamlessStreaming HF 仓库的 README。
在本地运行 SeamlessM4T & SeamlessExpressive Gradio 演示
要在本地启动与我们在 Hugging Face 上托管的演示 Space 相同的演示:
cd demo
pip install -r requirements.txt
python app.py
资源与使用
模型
SeamlessM4T 模型
模型名称 | 参数数量 | 检查点 | 指标 |
---|---|---|---|
SeamlessM4T-Large v |
2 | 125M | SeamlessM4T-Large v2 | S2ST: WER(英语) 22.9%, S2TT: WER(英语) 7.2%, T2ST: 3.0% |
SeamlessExpressive 模型
模型名称 | 参数数量 | 检查点 | 指标 |
---|---|---|---|
SeamlessExpressive-Large | 125M | SeamlessExpressive-Large | WER(英语) 18.0% |
SeamlessStreaming 模型
模型名称 | 参数数量 | 检查点 | 指标 |
---|---|---|---|
SeamlessStreaming-Large | 125M | SeamlessStreaming-Large | S2ST: WER(英语) 21.0%, S2TT: WER(英语) 5.5% |
数据集
- Common Voice(多语言语音数据集)
- Ted-LIUM(多语言语音数据集)
- LibriSpeech(英语语音数据集)
- Tatoeba(多语言文本数据集)
- MUSE(多语言词向量)
许可
Seamless 及其所有组件在 MIT 许可下发布。请参见 LICENSE 获取更多详细信息。
联系我们
请通过以下电子邮件地址与我们联系:metaai@meta.com