開源端到端語音大模型:直接從原始音頻輸入,生成語音輸出
目前,大模型LLMs能勝任知識(shí)問答、代碼輔助等多種任務(wù),但傳統(tǒng)模型大多只能輸出文本,無法直接生成自然語音,這讓人機(jī)音頻交互不夠順暢。
要知道,人類交流和感知環(huán)境可不只是靠文字,語音里藏著音色、情感、語調(diào)等豐富信息,其他音頻也包含著現(xiàn)實(shí)場景的關(guān)鍵信息。所以,能根據(jù)語音或音頻輸入直接回應(yīng)的音頻語言模型就很重要,也是邁向AGI的關(guān)鍵一步。
所以,Step-Audio團(tuán)隊(duì)開源了一個(gè)端到端的語音大模型Step-Audio-AQAA,不需要先把語音轉(zhuǎn)成文字再生成回答,而是直接聽懂音頻問題后,就能合成自然流暢的語音回答,像跟人聊天一樣直接。
開源地址:https://huggingface.co/stepfun-ai/Step-Audio-AQAA
Step-Audio-AQAA的架構(gòu)采用了一種完全端到端的音頻語言建模,由雙碼本音頻標(biāo)記器、骨干LLM和神經(jīng)聲碼器三個(gè)核心模塊組成。
雙碼本音頻標(biāo)記器是 Step-Audio-AQAA 的前端模塊,其作用是將輸入的音頻信號(hào)轉(zhuǎn)換為結(jié)構(gòu)化的標(biāo)記序列。該模塊的設(shè)計(jì)靈感來源于語音信號(hào)中豐富的語言和語義信息。為了更好地捕捉這些信息,Step-Audio-AQAA 引入了兩個(gè)不同的標(biāo)記器:語言標(biāo)記器和語義標(biāo)記器。語言標(biāo)記器專注于提取語音的結(jié)構(gòu)化、高層次特征,例如音素和語言屬性,這些特征對(duì)于理解語音的語義內(nèi)容至關(guān)重要。
它利用 Paraformer 編碼器的輸出,以 16.7 赫茲的速率將語音信號(hào)量化為離散的標(biāo)記,碼本大小為 1024。這種高頻率的量化能夠確保語音的細(xì)節(jié)得以保留,同時(shí)為后續(xù)的處理提供豐富的語言信息。
與此同時(shí),語義標(biāo)記器則側(cè)重于捕捉語音的粗粒度聲學(xué)特征。這些特征雖然不像語言標(biāo)記那樣直接關(guān)聯(lián)到具體的語言內(nèi)容,但它們能夠提供語音的情感、語調(diào)等副語言信息,這對(duì)于生成自然、富有表現(xiàn)力的語音輸出至關(guān)重要。語義標(biāo)記器的設(shè)計(jì)參考了 CosyVoice 1.0,它以 25 赫茲的速率運(yùn)行,碼本大小為 4096。這種較高的采樣率和較大的碼本使得語義標(biāo)記器能夠捕捉到更細(xì)微的聲學(xué)細(xì)節(jié),從而為模型提供更豐富的上下文信息。
這兩個(gè)標(biāo)記器生成的標(biāo)記并非獨(dú)立存在,而是相互參照的。研究團(tuán)隊(duì)發(fā)現(xiàn),當(dāng)使用雙碼本進(jìn)行訓(xùn)練時(shí),語義標(biāo)記和語言標(biāo)記的下一個(gè)標(biāo)記預(yù)測困惑度相比單碼本訓(xùn)練時(shí)有所降低。這表明雙碼本的設(shè)計(jì)能夠更好地捕捉語音信號(hào)中的復(fù)雜信息,并且能夠提高模型對(duì)語音的理解能力。
在雙碼本音頻標(biāo)記器將音頻信號(hào)轉(zhuǎn)換為標(biāo)記序列之后,這些標(biāo)記序列會(huì)被送入骨LLM。Step-Audio-AQAA 的骨干LLM是一個(gè)預(yù)訓(xùn)練的 1300 億參數(shù)多模態(tài) LLM,名為 Step-Omni。Step-Omni的預(yù)訓(xùn)練數(shù)據(jù)涵蓋了文本、語音和圖像三種模態(tài),這種多模態(tài)的預(yù)訓(xùn)練方式使得模型能夠同時(shí)處理多種類型的數(shù)據(jù),并且能夠?qū)W習(xí)到不同模態(tài)之間的關(guān)聯(lián)。在 Step-Audio-AQAA 的架構(gòu)中,Step-Omni 的文本和語音能力被充分利用,而圖像能力則未被涉及。
Step-Omni采用了僅解碼器架構(gòu),這種架構(gòu)的設(shè)計(jì)使得模型能夠高效地處理序列數(shù)據(jù)。在處理來自雙碼本音頻標(biāo)記器的標(biāo)記序列時(shí),Step-Omni 首先將雙碼本音頻標(biāo)記使用合并詞匯表進(jìn)行嵌入。這種嵌入方式能夠?qū)⒄Z言標(biāo)記和語義標(biāo)記融合到一個(gè)統(tǒng)一的向量空間中,從而使得模型能夠同時(shí)處理這兩種標(biāo)記。
隨后,嵌入后的標(biāo)記序列會(huì)經(jīng)過多個(gè) Transformer 塊進(jìn)行進(jìn)一步的處理。每個(gè) Transformer 塊都包含一個(gè)輸入 RMSNorm 層、一個(gè)分組查詢注意力模塊、一個(gè)后注意力 RMSNorm 層和一個(gè)前饋層。這些模塊共同協(xié)作,能夠?qū)斎氲臉?biāo)記序列進(jìn)行深度的語義理解和特征提取。
最后,由骨干 LLM 生成的音頻標(biāo)記序列會(huì)被送入神經(jīng)聲碼器模塊。神經(jīng)聲碼器的作用是將這些離散的音頻標(biāo)記合成為自然、高質(zhì)量的語音波形。該聲碼器的設(shè)計(jì)靈感來源于 CosyVoice 1.0 中引入的最優(yōu)傳輸條件流匹配模型,它采用了 U-Net 架構(gòu),這種架構(gòu)在圖像處理領(lǐng)域已經(jīng)被證明是非常有效的。在神經(jīng)聲碼器中,U-Net 架構(gòu)的基本模塊集成了 ResNet-1D 層和 Transformer 塊,這些模塊能夠高效地提取音頻標(biāo)記中的特征,并將其轉(zhuǎn)換為連續(xù)的語音波形。