Llama3.1 Typhoon2 Audio 8b Instruct
颱風2-音頻版是一個端到端的語音轉語音模型架構,能夠處理音頻、語音和文本輸入,並同時生成文本和語音輸出。該模型專門針對泰語優化,同時也支持英語。
下載量 664
發布時間 : 12/13/2024
模型概述
基於颱風2大語言模型的語音轉語音模型,支持泰語和英語的語音輸入與輸出,具備文本生成和語音合成能力。
模型特點
多模態輸入輸出
支持音頻、語音和文本輸入,並能同時生成文本和語音輸出
泰語優化
專門針對泰語進行優化,提供高質量的泰語語音處理能力
端到端架構
完整的語音轉語音處理流程,無需額外中間處理步驟
多輪對話支持
支持複雜的多輪對話交互,保持上下文一致性
模型能力
語音識別
語音合成
文本生成
語音轉語音
多語言處理
對話系統
使用案例
語音助手
泰語語音助手
構建泰語語音助手,支持語音輸入和語音輸出
在泰語語音質量評估中獲得7.19分(滿分10分)
語音轉錄
泰語語音轉錄
將泰語語音內容轉錄為文本
泰語ASR的WER為14.04%
語音翻譯
英泰語音翻譯
將英語語音翻譯為泰語文本或語音
英譯泰BLEU得分為27.15
🚀 Typhoon2-Audio
Typhoon2-Audio 是一個端到端的語音到語音模型架構,能夠處理音頻、語音和文本輸入,並同時生成文本和語音輸出。它專門針對泰語進行了優化,但也支持英語。
- GitHub:https://github.com/scb-10x/typhoon2-audio/
- 演示:https://audio.opentyphoon.ai/
- 論文:https://arxiv.org/abs/2412.13702

✨ 主要特性
- 端到端的語音到語音處理能力,支持音頻、語音和文本輸入,可同時生成文本和語音輸出。
- 專門針對泰語優化,同時支持英語。
📦 安裝指南
pip install pip==24.0
pip install transformers==4.45.2
pip install fairseq==0.12.2 # fairseq required pip==24.0 to install & only worked only on python 3.10
pip install flash-attn
💻 使用示例
基礎用法
加載模型
import torch
from transformers import AutoModel
model = AutoModel.from_pretrained(
"scb10x/llama3.1-typhoon2-audio-8b-instruct",
torch_dtype=torch.float16,
trust_remote_code=True
)
model.to("cuda")
單輪推理示例
conversation = [
{"role": "system", "content": "You are a helpful female assistant named ไต้ฝุ่น."},
{
"role": "user",
"content": [
{
"type": "audio",
"audio_url": "examples/tmp-2860cd0a094b64043226167340af03a3.wav",
},
{"type": "text", "text": "Transcribe this audio"},
],
},
]
x = model.generate(
conversation=conversation,
max_new_tokens=500,
do_sample=True,
num_beams=1,
top_p=0.9,
repetition_penalty=1.0,
length_penalty=1.0,
temperature=0.7,
)
# x => x['text'] (text), x['audio'] (numpy array)
# to save the audio output
# import soundfile as sf
# sf.write("examples/speechout.wav", x["audio"]["array"], x["audio"]["sampling_rate"])
高級用法
多輪推理示例
conversation_multi_turn = [
{
"role": "system",
"content": "You are a helpful female assistant named ไต้ฝุ่น. Respond conversationally to the speech provided in the language it is spoken in.",
},
{
"role": "user",
"content": [
{
"type": "audio",
"audio_url": "examples/tmp-2860cd0a094b64043226167340af03a3.wav",
# บอกชื่อเมืองใหญ่ๆในอเมริกามาให้หน่อยสิ -- "List some names of US cities"
},
{
"type": "text",
"text": "",
},
],
},
{
"role": "assistant",
"content": [
{
"type": "text",
"text": "โอเคค่ะ, ฉันจะบอกชื่อเมืองใหญ่ๆ ในอเมริกาให้คุณฟัง:\n\n1. นิวยอร์ก\n2. ลอสแอนเจลิส\n3. ชิคาโก\n4. ฮิวสตัน\n5. ฟิลาเดลเฟีย\n6. บอสตัน\n7. ซานฟรานซิสโก\n8. วอชิงตัน ดี.ซี. (Washington D.C.)\n9. แอตแลนต้า\n10. ซีแอตเทิล\n\nถ้าคุณต้องการข้อมูลเพิ่มเติมหรือมีคำถามอื่นๆ กรุณาถามได้เลยค่ะ'",
},
],
},
{
"role": "user",
"content": [
{
"type": "audio",
"audio_url": "examples/tmp-2284cd76e1c875525ff75327a2fc3610.wav",
# แล้วถ้าเป็นประเทศอังกฤษล่ะ -- "How about the UK"
},
],
},
]
x = model.generate(conversation=conversation_multi_turn)
# x => x['text'] (text), x['audio'] (numpy array)
# to save the audio output
# import soundfile as sf
# sf.write("examples/speechout.wav", x["audio"]["array"], x["audio"]["sampling_rate"])
文本轉語音功能
y = model.synthesize_speech("Hello, my name is ไต้ฝุ่น I am a language model specialized in Thai")
# y => numpy array
📚 詳細文檔
模型描述
屬性 | 詳情 |
---|---|
模型類型 | 該大語言模型基於 Typhoon2 LLM。 |
依賴庫 | Python==3.10 & transformers==4.52.2 & fairseq==0.12.2 & flash-attn |
主要語言 | 泰語 🇹🇭 和英語 🇬🇧 |
語音輸入與大語言模型許可證 | Llama 3.1 Community License |
語音輸出許可證 | CC-BY-NC |
評估結果
1) 音頻和語音理解
模型 | 英文自動語音識別 (WER↓) | 泰文自動語音識別 (WER↓) | 英文轉泰文 (BLEU↑) | 多語言轉泰文 (BLEU↑) | 泰文轉英文 (BLEU↑) |
---|---|---|---|---|---|
SALMONN - 13B | 5.79 | 98.07 | 0.07 | 0.10 | 14.97 |
DiVA - 8B | 30.28 | 65.21 | 9.82 | 5.31 | 7.97 |
Gemini - 1.5 - pro - 001 | 5.98 | 13.56 | 20.69 | 13.52 | 22.54 |
Typhoon - Audio | 8.72 | 14.17 | 17.52 | 10.67 | 24.14 |
Typhoon2 - Audio | 5.83 | 14.04 | 27.15 | 15.93 | 33.25 |
模型 | 泰語性別識別 (Acc) | 泰語口語問答 (F1) | 語音指令 (英語, 泰語) |
---|---|---|---|
SALMONN - 13B | 93.26 | 2.95 | 2.47, 1.18 |
DiVA - 8B | 50.12 | 15.13 | 6.81, 2.68 |
Gemini - 1.5 - pro - 001 | 81.32 | 62.10 | 3.24, 3.93 |
Typhoon - Audio | 93.74 | 64.60 | 5.62, 6.11 |
Typhoon2 - Audio | 75.65 | 70.01 | 6.00, 6.79 |
2) 語音到語音評估
2.1) 內容生成
模型 | 英文語音信息框架 - 質量 | 英文語音信息框架 - 風格 | 泰文語音信息框架 - 質量 | 泰文語音信息框架 - 風格 |
---|---|---|---|---|
Llama - Omni | 5.15 | 5.79 | 1.71 | 2.14 |
GPT - 4o - Audio | 6.82 | 7.86 | 6.66 | 8.07 |
Typhoon2 - Audio | 4.92 | 5.39 | 7.19 | 8.04 |
2.2) 語音質量
模型 | 英文語音信息框架 - CER | 英文語音信息框架 - UTMOS | 泰文語音信息框架 - CER | 泰文語音信息框架 - UTMOS |
---|---|---|---|---|
Llama - Omni* | 3.40 | 3.93 | 6.30 | 3.93 |
GPT - 4o - Audio | 3.20 | 3.65 | 8.05 | 3.46 |
Typhoon2 - Audio | 26.50 | 2.29 | 8.67 | 2.35 |
*注意,Llama - Omni 不生成泰語文本/語音,因此由於輸出為英語,其 CER 較低且 UTMOS 較高。
預期用途與限制
⚠️ 重要提示
該模型處於實驗階段,可能並不總是能準確遵循人類指令,容易產生幻覺內容。此外,該模型缺乏審核機制,可能會產生有害或不適當的回覆。開發者應根據具體應用仔細評估潛在風險。
關注與支持
- https://twitter.com/opentyphoon
- https://discord.gg/us5gAYmrxw
致謝
我們要感謝 SALMONN 團隊和 Llama - Omni 團隊開源他們的代碼和數據,感謝瑪希隆大學的生物醫學與數據實驗室發佈的微調版 Whisper,使我們能夠採用其編碼器。同時感謝許多其他開源項目分享有用的知識、數據、代碼和模型權重。
Typhoon 團隊
Potsawee Manakul, Warit Sirichotedumrong, Kunat Pipatanakul, Pittawat Taveekitworachai, Natapong Nitarach, Surapon Nonesung, Teetouch Jaknamon, Parinthapat Pengpun, Pittawat Taveekitworachai, Adisai Na - Thalang, Sittipong Sripaisarnmongkol, Krisanapong Jirayoot, Kasima Tharnpipitchai
引用
如果您發現 Typhoon2 對您的工作有幫助,請使用以下方式引用:
@misc{typhoon2,
title={Typhoon 2: A Family of Open Text and Multimodal Thai Large Language Models},
author={Kunat Pipatanakul and Potsawee Manakul and Natapong Nitarach and Warit Sirichotedumrong and Surapon Nonesung and Teetouch Jaknamon and Parinthapat Pengpun and Pittawat Taveekitworachai and Adisai Na-Thalang and Sittipong Sripaisarnmongkol and Krisanapong Jirayoot and Kasima Tharnpipitchai},
year={2024},
eprint={2412.13702},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2412.13702},
}
📄 許可證
該模型的語音輸入與大語言模型遵循 Llama 3.1 Community License,語音輸出遵循 CC-BY-NC。
Phi 4 Multimodal Instruct
MIT
Phi-4-multimodal-instruct是一款輕量級開源多模態基礎模型,融合了Phi-3.5和4.0模型的語言、視覺及語音研究數據。支持文本、圖像和音頻輸入,生成文本輸出,並具備128K token的上下文長度。
文本生成音頻
Transformers 支持多種語言

P
microsoft
584.02k
1,329
Ultravox V0 5 Llama 3 2 1b
MIT
Ultravox是一個基於Llama3.2-1B和Whisper-large-v3構建的多模態語音大語言模型,能夠同時處理語音和文本輸入。
文本生成音頻
Transformers 支持多種語言

U
fixie-ai
167.25k
21
Seamless M4t V2 Large
SeamlessM4T v2 是 Facebook 發佈的大規模多語言多模態機器翻譯模型,支持近100種語言的語音和文本翻譯。
文本生成音頻
Transformers 支持多種語言

S
facebook
64.59k
821
Ultravox V0 3
MIT
Ultravox 是一個基於 Llama3.1-8B-Instruct 和 Whisper-small 構建的多模態語音大語言模型,能夠同時處理語音和文本輸入。
文本生成音頻
Transformers 英語

U
fixie-ai
48.30k
17
Ultravox V0 5 Llama 3 1 8b
MIT
Ultravox是一款基於Llama3.1-8B-Instruct和whisper-large-v3-turbo構建的多模態語音大語言模型,能夠同時處理語音和文本輸入。
文本生成音頻
Transformers 支持多種語言

U
fixie-ai
17.86k
12
Hf Seamless M4t Medium
SeamlessM4T 是一個多語言翻譯模型,支持語音和文本的輸入輸出,實現跨語言交流。
文本生成音頻
Transformers

H
facebook
14.74k
30
Granite Speech 3.3 8b
Apache-2.0
專為自動語音識別(ASR)和自動語音翻譯(AST)設計的緊湊高效語音語言模型,採用雙階段設計處理音頻和文本
文本生成音頻
Transformers 英語

G
ibm-granite
5,532
35
Voila Tokenizer
MIT
Voila是一個大型語音-語言基礎模型系列,旨在提升人機交互體驗,支持多種音頻任務和語言。
文本生成音頻
Transformers 支持多種語言

V
maitrix-org
4,912
3
Hf Seamless M4t Large
SeamlessM4T 是一個支持多語言語音和文本翻譯的統一模型,能夠實現語音到語音、語音到文本、文本到語音和文本到文本的翻譯任務。
文本生成音頻
Transformers

H
facebook
4,648
57
Minicpm O 2 6 Int4
MiniCPM-o 2.6的int4量化版本,顯著降低GPU顯存佔用,支持多模態處理能力。
文本生成音頻
Transformers 其他

M
openbmb
4,249
42
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98