Mini Ichigo Llama3.2 3B S Instruct
基於Llama-3架構的多模態語言模型,原生支持音頻與文本輸入理解,專注於提升大語言模型對音頻的理解能力。
下載量 14
發布時間 : 10/8/2024
模型概述
該系列模型通過WhisperVQ作為音頻文件標記器,擴展了音頻語義標記實驗,支持英語語言處理。
模型特點
多模態輸入支持
原生支持音頻與文本雙模態輸入,可處理音頻文件轉換的語義標記。
高效音頻處理
集成WhisperVQ音頻標記器,實現高效的音頻特徵提取與轉換。
指令微調優化
使用近10億token的指令語音數據集進行微調,優化音頻理解能力。
模型能力
音頻理解
文本生成
多模態推理
指令跟隨
使用案例
語音交互研究
語音指令理解
解析並執行包含音頻輸入的複雜指令
在AudioBench評估中達到3.68分(GPT-4-O評分標準)
教育技術
語言學習輔助
通過音頻輸入提供即時語言學習反饋
🚀 [Ichigo-llama3s模型]
[Ichigo-llama3s] 模型家族由 Homebrew Research 開發併發布,該家族模型能夠原生理解音頻和文本輸入,拓展了語義標記實驗,在音頻理解能力上有獨特優勢,主要用於研究應用。
🚀 快速開始
你可以通過 Google Colab Notebook 嘗試使用此模型。
首先,需要將音頻文件轉換為聲音標記:
device = "cuda" if torch.cuda.is_available() else "cpu"
if not os.path.exists("whisper-vq-stoks-medium-en+pl-fixed.model"):
hf_hub_download(
repo_id="jan-hq/WhisperVQ",
filename="whisper-vq-stoks-medium-en+pl-fixed.model",
local_dir=".",
)
vq_model = RQBottleneckTransformer.load_model(
"whisper-vq-stoks-medium-en+pl-fixed.model"
).to(device)
vq_model.ensure_whisper(device)
def audio_to_sound_tokens(audio_path, target_bandwidth=1.5, device=device):
wav, sr = torchaudio.load(audio_path)
if sr != 16000:
wav = torchaudio.functional.resample(wav, sr, 16000)
with torch.no_grad():
codes = vq_model.encode_audio(wav.to(device))
codes = codes[0].cpu().tolist()
result = ''.join(f'<|sound_{num:04d}|>' for num in codes)
return f'<|sound_start|>{result}<|sound_end|>'
然後,可以像使用其他大語言模型一樣對該模型進行推理:
def setup_pipeline(model_path, use_4bit=False, use_8bit=False):
tokenizer = AutoTokenizer.from_pretrained(model_path)
model_kwargs = {"device_map": "auto"}
if use_4bit:
model_kwargs["quantization_config"] = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_compute_dtype=torch.bfloat16,
bnb_4bit_use_double_quant=True,
bnb_4bit_quant_type="nf4",
)
elif use_8bit:
model_kwargs["quantization_config"] = BitsAndBytesConfig(
load_in_8bit=True,
bnb_8bit_compute_dtype=torch.bfloat16,
bnb_8bit_use_double_quant=True,
)
else:
model_kwargs["torch_dtype"] = torch.bfloat16
model = AutoModelForCausalLM.from_pretrained(model_path, **model_kwargs)
return pipeline("text-generation", model=model, tokenizer=tokenizer)
def generate_text(pipe, messages, max_new_tokens=64, temperature=0.0, do_sample=False):
generation_args = {
"max_new_tokens": max_new_tokens,
"return_full_text": False,
"temperature": temperature,
"do_sample": do_sample,
}
output = pipe(messages, **generation_args)
return output[0]['generated_text']
# Usage
llm_path = "homebrewltd/llama3.1-s-instruct-v0.2"
pipe = setup_pipeline(llm_path, use_8bit=True)
✨ 主要特性
- 多模態輸入:原生支持音頻和文本輸入。
- 語義標記拓展:使用 WhisperVQ 作為音頻文件的標記器,拓展了語義標記實驗。
📚 詳細文檔
模型詳情
我們開發併發布了 Ichigo-llama3s 模型家族,該家族模型能夠原生理解音頻和文本輸入。
我們從 homebrewltd/mini-Ichigo-llama3.2-3B-s-base 開始,使用 Instruction Speech WhisperVQ v3 數據集中近 10 億個標記,將 WhisperVQ 作為音頻文件的標記器,拓展了語義標記實驗。
模型開發者:Homebrew Research。 輸入:文本和聲音。 輸出:文本。 模型架構:Llama - 3。 語言:英語。
預期用途
預期用例:該模型家族主要用於研究應用,此版本旨在進一步提升大語言模型的聲音理解能力。 禁止用途:嚴禁以任何違反適用法律法規的方式使用 llama3 - s。
訓練過程
訓練指標圖像
以下是訓練損失曲線的可視化快照:
MMLU 評估
模型 | MMLU 分數 |
---|---|
llama3.1 - instruct - 8b | 69.40 |
ichigo - llama3.1 - s - v0.3: phase 3 | 63.79 |
ichigo - llama3.1 - s - v0.3: phase 2 | 63.08 |
ichigo - llama3.1 - s - base - v0.3 | 42.11 |
mini - ichigo - llama3.2 - 3B - s - instruct | 58.60 |
mini - ichigo - llama3.2 - 3B - s - base | 59.61 |
llama3.1 - s - instruct - v0.2 | 50.27 |
AudioBench 評估
模型基準 | Open - hermes Instruction Audio (GPT - 4 - O judge 0:5) | Alpaca Instruction Audio (GPT - 4 - O judge 0:5) |
---|---|---|
[Llama3.1 - s - v2](https://huggingface.co/homebrewltd/llama3 - s - instruct - v0.2) | 3.45 | 3.53 |
[Ichigo - llama3.1 - s v0.3 - phase2 - cp7000](https://huggingface.co/homebrewltd/Ichigo - llama3.1 - s - instruct - v0.3 - phase - 2) | 3.42 | 3.62 |
[Ichigo - llama3.1 - s v0.3 - phase2 - cplast](https://huggingface.co/jan - hq/llama3 - s - instruct - v0.3 - checkpoint - last) | 3.31 | 3.6 |
[Ichigo - llama3.1 - s v0.3 - phase3](https://huggingface.co/homebrewltd/Ichigo - llama3.1 - s - instruct - v0.3 - phase - 3) | 3.64 | 3.68 |
[mini - Ichigo - llama3.2 - 3B - s - instruct](https://huggingface.co/homebrewltd/mini - Ichigo - llama3.2 - 3B - s - instruct) | 2.58 | 2.07 |
[Qwen2 - audio - 7B](https://huggingface.co/Qwen/Qwen2 - Audio - 7B) | 2.63 | 2.24 |
硬件
GPU 配置:10 個 NVIDIA A6000 - 48GB GPU 集群。 GPU 使用情況:
- 微調:12 小時。
訓練參數
我們使用 torchtune 庫實現最新的 FSDP2 訓練代碼。
參數 | 指令微調 |
---|---|
輪數 | 1 |
全局批量大小 | 360 |
學習率 | 7e - 5 |
學習率調度器 | 帶熱身的 LambdaLR |
優化器 | Adam torch fused |
熱身比例 | 0.01 |
權重衰減 | 0.005 |
最大序列長度 | 4096 |
示例
良好示例
點擊切換示例 1
點擊切換示例 2
誤解示例
點擊切換示例 3
偏離示例
點擊切換示例 4
引用信息
BibTeX:
@article{Llama3-S: Sound Instruction Language Model 2024,
title={Llama3-S},
author={Homebrew Research},
year=2024,
month=August,
url={https://huggingface.co/homebrewltd/llama3.1-s-2024-08-20}
致謝
- WhisperSpeech
- [Meta - Llama - 3.1 - 8B - Instruct ](https://huggingface.co/meta - llama/Meta - Llama - 3.1 - 8B - Instruct)
📄 許可證
本項目採用 apache - 2.0 許可證。
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