自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

AI涌現(xiàn)人類情感!希臘「樂之神」Orpheus開源,單卡可跑語音流式推理

人工智能 新聞
開源語音模型Orpheus 讓LLM涌現(xiàn)出人類情感!在A100 40GB顯卡上,30億參數(shù)模型的流式推理速度甚至超過了音頻播放速度。甚至可以zero-shot克隆聲音。

大語言模型(LLM)還能涌現(xiàn)什么能力?

這次開源模型Orpheus,直接讓LLM涌現(xiàn)人類情感!

對此,Canopy Labs的開源開發(fā)者Elias表示Orpheus就像人類一樣,已經(jīng)擁有共情能力,能從文本中產(chǎn)生潛在的線索,比如嘆息、歡笑和嗤笑。

圖片

作為開源的文本轉(zhuǎn)語音(Text to Speech,TTS)模型,Orpheus性能超越了包括ElevenLabs和OpenAI在內(nèi)的所有開源/閉源模型!

Orpheus成功證明了LLM在語音合成領(lǐng)域的涌現(xiàn)能力。

Orpheus表現(xiàn)出了共情能力,情智媲美人類,甚至可以從文字本身中生成嘆息、笑聲、輕笑等潛在的音調(diào)。

一直以來,開源TTS模型都無法與閉源模型競爭,而今天,這一局面開始發(fā)生改變,Ophueus顛覆語音界!

圖片

新開源的Orpheus有4大特點:

  • 擬人化語音:具備自然的語調(diào)、情感和節(jié)奏,效果優(yōu)于當前最先進(SOTA)的閉源模型。
  • 零樣本語音克?。簾o需額外微調(diào)即可克隆聲音。
  • 可控情感與語調(diào):使用簡單的標簽即可調(diào)整語音的情感和特征。
  • 低延遲:流式推理延遲約200ms,結(jié)合輸入流式處理可降低至100ms,適用于實時應(yīng)用。

流式推理可在音頻生成過程中逐步輸出結(jié)果,使延遲極低,適用于實時應(yīng)用。

在A100 40GB顯卡上,30億參數(shù)模型的流式推理速度,甚至快于音頻播放速度。

圖片

項目地址:https://github.com/canopyai/Orpheus-TTS

模型地址:https://huggingface.co/collections/canopylabs/orpheus-tts-67d9ea3f6c05a941c06ad9d2

4大模型

Orpheus是由多個預(yù)訓(xùn)練和微調(diào)模型組成的系列,擁有30億參數(shù)。

在未來幾天內(nèi),開發(fā)者將發(fā)布更小規(guī)模的模型,包括10億、5億和1.5億參數(shù)版本。

基于Llama架構(gòu),開源開發(fā)者還將發(fā)布預(yù)訓(xùn)練和微調(diào)模型,提供四種不同規(guī)模:

Medium – 30 億參數(shù)

Small – 10 億參數(shù)

Tiny – 4 億參數(shù)

Nano – 1.5 億參數(shù)

即使在極小的模型規(guī)模下,依然能實現(xiàn)極高質(zhì)量、富有美感的語音生成。

微調(diào)模型適用于對話場景,而預(yù)訓(xùn)練模型可以用于多種下游任務(wù),例如語音克隆或語音分類。

模型架構(gòu)和設(shè)計

預(yù)訓(xùn)練模型采用Llama-3B作為基礎(chǔ)架構(gòu),并在超過10萬小時的英語語音數(shù)據(jù)和數(shù)十億個文本token上進行了訓(xùn)練。

圖片

通過訓(xùn)練文本token,顯著提升了模型在TTS任務(wù)上的表現(xiàn),使其具備更強的語言理解能力。

由于采用了LLM架構(gòu),模型具備高精度、強表現(xiàn)力和高度可定制性。

新模型支持實時語音輸出流式推理,延遲低至約200毫秒,適用于對話類應(yīng)用。

如果希望進一步降低延遲,可以將文本流式輸入到模型的KV緩存中,從而將延遲降低至約25-50毫秒。

在實時語音的設(shè)計上,采用了兩種突破傳統(tǒng)的方法:基于CNN的tokenizer

圖片

使用Snac采樣不同頻率的token,并將其展平

每幀生成7個token,并作為單個展平序列解碼,而非使用7個LM頭進行解碼。

這樣,模型需要生成的步數(shù)增加,但在A100或H100 GPU上,使用vLLM實現(xiàn)后,模型的token生成速度仍然快于實時播放,因此即使是較長的語音序列,也能保持實時生成。

Orpheus采用了非流式(基于CNN)的tokenizer。

其他使用SNAC作為解碼器的語音LLM,在去token化時,會出現(xiàn)幀之間的「彈跳(popping)」現(xiàn)象。

Orpheus通過滑動窗口改進了去token化的實現(xiàn),使其支持流式推理,同時完全消除popping問題。

使用教程

本次發(fā)布包含三款模型。

此外,還提供了數(shù)據(jù)處理腳本和示例數(shù)據(jù)集,方便用戶輕松進行自定義微調(diào)。

目前,共有兩款模型:

Finetuned Prod:針對日常TTS應(yīng)用微調(diào)的高質(zhì)量模型,適用于日常TTS應(yīng)用的微調(diào)模型。

Pretrained:預(yù)訓(xùn)練基礎(chǔ)模型,基于10萬+小時的英語語音數(shù)據(jù)訓(xùn)練而成,預(yù)設(shè)為條件生成模式,可擴展至更多任務(wù)。

流式推理

1.克隆倉庫

git clone https://github.com/canopyai/Orpheus-TTS.git

2.安裝依賴

cd Orpheus-TTS && pip install orpheus-speech # uses vllm under the hood for fast inference
pip install vllm==0.7.3

3.運行流式推理示例

from orpheus_tts import OrpheusModel
import wave
import time


model = OrpheusModel(model_name ="canopylabs/orpheus-tts-0.1-finetune-prod")
prompt = '''Man, the way social media has, um, completely changed how we interact is just wild, right? Like, we're all connected 24/7 but somehow people feel more alone than ever. And don't even get me started on how it's messing with kids' self-esteem and mental health and whatnot.'''


start_time = time.monotonic()
syn_tokens = model.generate_speech(
   prompt=prompt,
   voice="tara",
   )


with wave.open("output.wav", "wb") as wf:
   wf.setnchannels(1)
   wf.setsampwidth(2)
   wf.setframerate(24000)


   total_frames = 0
   chunk_counter = 0
   for audio_chunk in syn_tokens: # output streaming
      chunk_counter += 1
      frame_count = len(audio_chunk) // (wf.getsampwidth() * wf.getnchannels())
      total_frames += frame_count
      wf.writeframes(audio_chunk)
   duration = total_frames / wf.getframerate()


   end_time = time.monotonic()
   print(f"It took {end_time - start_time} seconds to generate {duration:.2f} seconds of audio")

提示格式

1. 微調(diào)模型

主要的文本提示格式為:

{name}: I went to the ...

可選的姓名(按對話自然度排序,主觀評估):「tara」, 「leah」, 「jess」, 「leo」, 「dan」, 「mia」, 「zac」, 「zoe」。

可添加情感標簽:

<laugh>, <chuckle>, <sigh>, <cough>, <sniffle>, <groan>, <yawn>, <gasp>

Python包orpheus-speech和Notebook會自動格式化提示,無需手動調(diào)整。

2. 預(yù)訓(xùn)練模型

適用于僅基于文本生成語音,或基于一個或多個已有的文本-語音對生成語音。

零樣本語音克隆:此模型未經(jīng)過專門訓(xùn)練,因此輸入的文本-語音對越多,生成目標聲音的效果越穩(wěn)定。

下列參數(shù)調(diào)整,適用于所有模型:

常規(guī)LLM生成參數(shù):支持temperature、top_p等。

避免重復(fù):repetition_penalty >= 1.1可提高穩(wěn)定性。

語速調(diào)整:提高repetition_penalty和temperature會讓語速變快。

模型微調(diào)

以下是關(guān)于如何對任何文本和語音進行模型微調(diào)的概述。

這個過程非常簡單,類似于使用Trainer和Transformers來調(diào)整LLM(大語言模型)。

在大約50個樣本后,應(yīng)該開始看到高質(zhì)量的結(jié)果,但為了達到最佳效果,建議每人提供300個樣本。

第一步:數(shù)據(jù)集應(yīng)該是一個Hugging Face數(shù)據(jù)集,格式如下:

圖片

第二步:使用Colab Notebook來準備數(shù)據(jù)。

這會將一個中間數(shù)據(jù)集推送到Hugging Face,然可以將它輸入到finetune/train.py中的訓(xùn)練腳本中。

預(yù)處理估計每千行數(shù)據(jù)花費不到1分鐘的時間。

第三步:修改finetune/config.yaml文件,包含新的數(shù)據(jù)集和訓(xùn)練屬性,然后運行訓(xùn)練腳本。

還可以運行任何與Hugging Face兼容的進程,比如Lora,來進一步調(diào)整模型。

pip install transformers datasets wandb trl flash_attn torch
 huggingface-cli login <enter your HF token>
 wandb login <wandb token>
 accelerate launch train.py

這只是Canopy Labs打造的眾多技術(shù)之一。

他們相信未來,每一個AI應(yīng)用都將化身為可以與人互動的「數(shù)字人」。

責任編輯:張燕妮 來源: 新智元
相關(guān)推薦

2025-02-12 12:45:59

2025-02-18 11:09:27

2025-02-20 12:37:57

2025-02-24 10:07:04

2023-11-07 14:07:51

GPT-4大語言模型

2022-05-09 11:23:43

人工智能機器學(xué)習(xí)推理

2024-08-26 15:58:35

2021-03-02 10:22:30

AI 數(shù)據(jù)人工智能

2025-02-12 11:36:27

2022-04-08 14:58:22

AI語音智能

2022-11-24 15:06:48

AI情感AI

2023-10-11 14:13:45

AI 翻譯

2014-06-06 10:26:45

樂跑工匠情懷

2014-03-27 10:49:17

樂跑智能手環(huán)運動健康

2025-01-27 09:51:24

AI模型開源

2023-07-05 15:26:30

2024-05-11 08:24:16

OpenAIAI語音助手人工智能

2022-06-01 16:47:53

AI模型開源

2016-04-07 14:18:33

阿里云人工智能小Ai
點贊
收藏

51CTO技術(shù)棧公眾號