嚴(yán) 通
(南寧師范大學(xué) 美術(shù)與設(shè)計(jì)學(xué)院,廣西 南寧 530100)
虛擬數(shù)字人的誕生,最早可追溯至2016年12月1日,日本虛擬主播“絆愛”在YouTube的“A.I”頻道發(fā)布了第一個(gè)視頻。直至2018年2月23日,該頻道訂閱人數(shù)達(dá)到了100萬。由“絆愛”等虛擬主播帶頭,虛擬主播行業(yè)迎來了快速發(fā)展的時(shí)代[1]。盡管虛擬數(shù)字人具有巨大潛力,但現(xiàn)有的虛擬數(shù)字人交互應(yīng)用仍存在一些限制,比如互動(dòng)簡(jiǎn)單、內(nèi)容單一及實(shí)時(shí)性不足等技術(shù)問題。為了提高虛擬數(shù)字人的交互效果和用戶體驗(yàn),本文立足于當(dāng)前研究現(xiàn)狀,旨在進(jìn)一步研究和改進(jìn)語音交互技術(shù)。本文采用虛幻引擎作為虛擬數(shù)字人交互的開發(fā)平臺(tái),通過設(shè)計(jì)和實(shí)施基于ChatGPT語言模型的實(shí)時(shí)語音交互程序來解決實(shí)時(shí)性語音交互應(yīng)用問題,進(jìn)而實(shí)現(xiàn)更自然、流暢和智能的交互體驗(yàn)。這種交互形式基于ChatGPT語言模型,將虛擬數(shù)字人與現(xiàn)實(shí)世界連接,能夠?yàn)橛脩籼峁┴S富多樣且自然的對(duì)話體驗(yàn)。
ChatGPT (Chat Generative Pre-Training Transformer)是由OpenAI實(shí)驗(yàn)室開發(fā)的大語言模型(Large Language Model,LLM)。在其之前,OpenAI基于Transformer開發(fā)了一系列LLM,包括GPT、GPT-2、GPT-3以及GPT-3.5[2]。在GPT-3.5的基礎(chǔ)上,OpenAI實(shí)驗(yàn)室加入優(yōu)化后的預(yù)訓(xùn)練、生成對(duì)抗技術(shù)以及基于人工反饋的強(qiáng)化學(xué)習(xí)技術(shù)。Transformer架構(gòu)在處理自然語言序列數(shù)據(jù)時(shí)表現(xiàn)出色,通過使用自注意力機(jī)制,有效地提高了對(duì)上下文的理解能力。模型需要經(jīng)過大量預(yù)訓(xùn)練,以學(xué)習(xí)語言結(jié)構(gòu)、語法規(guī)則和從文本中提取信息的技巧。作為一種生成型語言模型,GPT能根據(jù)給定的上下文,使用概率生成預(yù)測(cè)文本串。為了使模型在特定任務(wù)上更加精確,微調(diào)是必要的,它可以提高模型在某些領(lǐng)域的專業(yè)知識(shí)。此外,可以通過調(diào)整溫度參數(shù)來影響模型生成文本的隨機(jī)性,從而在創(chuàng)造力和保守性之間取得恰當(dāng)?shù)钠胶狻?/p>
虛擬數(shù)字人的思想起源于賽博格(Cyborg)。1985年,哈拉維在其賽博格宣言中將賽博格定義為無機(jī)物機(jī)器與生物體的結(jié)合體,如安裝了假牙、假肢、心臟起搏器等的身體。這些身體模糊了人類與動(dòng)物、有機(jī)體與機(jī)器、物質(zhì)與非物質(zhì)的界限[3]。虛擬數(shù)字人的語音交互涵蓋了許多技術(shù)和組件,使得人類可以與虛擬角色或數(shù)字人進(jìn)行自然、流暢的語音交流。語音交互的主要元素包括自然語言處理(Natural Language Processing,NLP)、自動(dòng)語音識(shí)別(Automatic Speech Recognition,ASR)和語音合成(Text to Speech,TTS)等多種交互技術(shù)。
在多樣化的交流形式中,人機(jī)語音交互將極大地便利人們的日常生活和工作。隨著技術(shù)的不斷進(jìn)步,虛擬數(shù)字人在這個(gè)階段實(shí)現(xiàn)了更高程度的真實(shí)感。但是,以簡(jiǎn)單的二維動(dòng)畫或三維模型出現(xiàn)的虛擬數(shù)字人還不是十分智能化,只能將提前設(shè)計(jì)的內(nèi)容進(jìn)行循環(huán)播報(bào),沒有任何的互動(dòng)和交流,其主要原因如下。
(1)在沒有像ChatGPT這樣的預(yù)訓(xùn)練語言模型的情況下,虛擬數(shù)字人將無法有效地根據(jù)用戶給出的內(nèi)容進(jìn)行智能處理和回應(yīng)。若只依賴于觸發(fā)關(guān)鍵詞的方式,很難滿足用戶對(duì)于真實(shí)、自然對(duì)話的需求。
(2)傳統(tǒng)三維數(shù)字人往往無法實(shí)現(xiàn)實(shí)時(shí)表情動(dòng)畫驅(qū)動(dòng),這導(dǎo)致語音與嘴型的不匹配現(xiàn)象,進(jìn)而使得聲音表現(xiàn)與面部表情難以協(xié)調(diào)一致,從而降低了人物的真實(shí)效果和沉浸感。
(3)虛擬數(shù)字人在文本輸入的模式下使用范圍相對(duì)較窄,受限于操作臺(tái)。若采用語音輸入方式,用戶可以擺脫操作界面的限制,在較廣泛的范圍內(nèi)與虛擬數(shù)字人展開便捷、自然的交流互動(dòng)。
虛幻引擎5(Unreal Engine 5),是由Epic Games公司開發(fā)的一款游戲引擎,以其優(yōu)越的性能在游戲和影視行業(yè)中越發(fā)受歡迎。虛幻引擎提供了一套全面且易于使用的工具和技術(shù),涵蓋圖形渲染高峰、精密的物理模擬、強(qiáng)大的人工智能能力、高品質(zhì)音頻支持、穩(wěn)定的網(wǎng)絡(luò)編程框架和高度可定制的游戲邏輯編輯器。
基于虛幻引擎的語音交互技術(shù),指的是將現(xiàn)代先進(jìn)的語音識(shí)別、語音合成和自然語言處理技術(shù)融入虛幻引擎,創(chuàng)建契合時(shí)代需求的用戶交互體驗(yàn)。這一技術(shù)實(shí)現(xiàn)的核心方式主要有集成第三方庫(kù)和開發(fā)自定義插件兩種。通過這兩種方式,虛幻引擎可以無縫地識(shí)別用戶的語音輸入,并針對(duì)輸入內(nèi)容做出相應(yīng)的響應(yīng),最終呈現(xiàn)給用戶一種高度互動(dòng)與沉浸式的語音交流體驗(yàn)。這種結(jié)合虛幻引擎和語音交互技術(shù)的應(yīng)用可以廣泛用于各類場(chǎng)景,如游戲開發(fā)、虛擬現(xiàn)實(shí)、影視制作等,賦予角色更富有生命力的對(duì)話和反饋,從而顯著提高用戶的參與度和沉浸感。同時(shí),基于虛幻引擎的語音交互技術(shù)也為行業(yè)創(chuàng)新帶來了巨大的潛力,通過打破界限、拓展創(chuàng)意、提升體驗(yàn),引領(lǐng)未來教育、商業(yè)、娛樂等多個(gè)領(lǐng)域的發(fā)展方向。
虛擬數(shù)字人語音交互應(yīng)用程序使用虛幻引擎并整合了ChatGPT作為核心組件,以提供高質(zhì)量的自然語言處理能力。通過將多個(gè)功能模塊和技術(shù)相結(jié)合,本文創(chuàng)建了一個(gè)實(shí)現(xiàn)高效、自然語音交互的應(yīng)用程序。其中包含以下幾個(gè)關(guān)鍵環(huán)節(jié),如圖1所示,以下將以步驟形式詳細(xì)說明實(shí)現(xiàn)過程。
圖1 設(shè)計(jì)流程圖
(1)輸入設(shè)備監(jiān)聽。應(yīng)用程序設(shè)計(jì)的第一步是獲取用戶錄音設(shè)備(如麥克風(fēng))的輸入。在虛幻引擎中,可以利用內(nèi)置的聲音輸入模塊或引入外部第三方插件來實(shí)現(xiàn)此功能。模塊在UI界面啟動(dòng)時(shí)、用戶發(fā)出聲音時(shí)自動(dòng)激活,捕捉到音頻數(shù)據(jù)并進(jìn)行下一步處理。
(2)語音識(shí)別。語音識(shí)別是實(shí)現(xiàn)虛擬數(shù)字人語音交互應(yīng)用程序的關(guān)鍵環(huán)節(jié)之一。應(yīng)用程序接收到用戶的語音輸入后,需要將音頻數(shù)據(jù)轉(zhuǎn)換為可供chatGPT理解的文本數(shù)據(jù)。為實(shí)現(xiàn)這一目的,可以調(diào)用語音識(shí)別服務(wù),通過云服務(wù)方式實(shí)現(xiàn)。
(3)與ChatGPT交互。將用戶的語音成功轉(zhuǎn)換為文本后,需要將這些數(shù)據(jù)發(fā)送給ChatGPT模型以生成相應(yīng)文本回應(yīng)。借助OpenAI提供的應(yīng)用程序編程接口(Application Programming Interface,API),可以方便地實(shí)現(xiàn)與ChatGPT的通信。在虛幻引擎中,可以使用Set Open AiApi Key藍(lán)圖系統(tǒng)編寫網(wǎng)絡(luò)請(qǐng)求和數(shù)據(jù)處理功能。
(4)文本轉(zhuǎn)語音。當(dāng)應(yīng)用收到ChatGPT所生成的文本回應(yīng)時(shí),需要將這些文字轉(zhuǎn)換為實(shí)際的語音輸出。這一步驟可借助文本轉(zhuǎn)語音(TTS)引擎實(shí)現(xiàn),其中,微軟的TTS是一種可選方案。處理生成的音頻數(shù)據(jù)后,需要將其轉(zhuǎn)換為虛擬引擎支持的格式,以便應(yīng)用程序調(diào)用。
(5)驅(qū)動(dòng)虛擬數(shù)字人動(dòng)畫。成功獲取音頻數(shù)據(jù)后,需要將聲音與虛擬數(shù)字人的面部動(dòng)畫融合,以產(chǎn)生協(xié)調(diào)一致的效果。根據(jù)音頻信號(hào),應(yīng)用程序可自動(dòng)生成虛擬數(shù)字人的嘴型、表情等動(dòng)畫效果,使模型更具真實(shí)感。
(6)動(dòng)畫與聲音同步播放。為提供緊密協(xié)調(diào)的用戶體驗(yàn),需要同步播放聲音和對(duì)應(yīng)的嘴型動(dòng)畫。虛幻引擎提供了MetahumanSDKATL插件和動(dòng)畫藍(lán)圖(Animation Blueprints)這兩個(gè)模塊,可用于實(shí)現(xiàn)聲音和動(dòng)畫的同步播放。
通過上述描述,在虛幻引擎中實(shí)現(xiàn)虛擬數(shù)字人語音交互應(yīng)用,涉及多個(gè)重要環(huán)節(jié)和相關(guān)技術(shù)。這些關(guān)鍵模塊需要高度協(xié)同,確保應(yīng)用程序連接無縫、運(yùn)行效果極佳。本文從輸入設(shè)備的監(jiān)聽、音頻數(shù)據(jù)傳輸?shù)缴苫貞?yīng),再到最后的動(dòng)畫和聲音相互搭配,打造出一款自然、引人入勝的數(shù)字人語音交互系統(tǒng)。
虛擬數(shù)字人語音交互在虛幻引擎中的實(shí)現(xiàn),是將前面階段中的程序設(shè)計(jì)轉(zhuǎn)化為可執(zhí)行的藍(lán)圖和配置。實(shí)現(xiàn)過程中需要用到多個(gè)技術(shù)模塊和數(shù)字資源。以下是更詳細(xì)的步驟。
準(zhǔn)備虛擬數(shù)字人模型。需要一個(gè)3D模型來作為虛擬數(shù)字人的形象,確保模型包含面部動(dòng)畫(如骨骼、混合形),以支持語音同步產(chǎn)生的嘴型動(dòng)畫。將3D模型導(dǎo)入虛幻引擎項(xiàng)目中,設(shè)置骨骼與模型的綁定,使用虛擬數(shù)字人來設(shè)置起始場(chǎng)景。使用相應(yīng)的動(dòng)畫藍(lán)圖,確保虛擬數(shù)字人能完成所需的基本動(dòng)作,如圖2所示。
圖2 虛擬數(shù)字人模型綁定
配置用戶麥克風(fēng)輸入,實(shí)現(xiàn)語音識(shí)別。通過第三方插件AzSpeech-Voice and Text插件來實(shí)時(shí)獲取用戶的麥克風(fēng)輸入數(shù)據(jù)。將插件模塊添加到藍(lán)圖,添加Speech to Text with Default Options庫(kù),對(duì)接收到的音頻數(shù)據(jù)進(jìn)行識(shí)別,將識(shí)別結(jié)果保存為字符串變量,傳輸至ChatGPT API交互階段。
連接ChatGPT API。在虛幻引擎中安裝并啟用OpenAI API插件,以支持與ChatGPT 語言模型的交互功能。在藍(lán)圖中創(chuàng)建一個(gè)新事件來與ChatGPT API進(jìn)行交互。使用插件提供的“Set OpenAI API key”功能來設(shè)置并獲取API密鑰,從而實(shí)現(xiàn)與ChatGPT服務(wù)器的連通。配置API密鑰,即可在虛擬數(shù)字人項(xiàng)目中搭建起與ChatGPT API通信的渠道。請(qǐng)求節(jié)點(diǎn)成功后,分析返回的JSON數(shù)據(jù),以提取ChatGPT返回的文本內(nèi)容,為接下來的文字轉(zhuǎn)語音和嘴型動(dòng)畫環(huán)節(jié)提供數(shù)據(jù)。
實(shí)現(xiàn)文字轉(zhuǎn)語音服務(wù)。通過文字轉(zhuǎn)語音(TTS)服務(wù)將ChatGPT API返回的文本內(nèi)容轉(zhuǎn)換為音頻。本案例采用微軟云服務(wù),以AzSpeech-Voice and Text插件作為語音轉(zhuǎn)換模塊。將Text To Sound Wave with Default Options庫(kù)添加到項(xiàng)目,編寫自定義函數(shù)以接收文本數(shù)據(jù)并調(diào)用TTS服務(wù)。音頻文件可以被保存為WAV或者M(jìn)P3格式,并傳輸至虛擬數(shù)字人音頻播放階段。
設(shè)置音頻播放和嘴型同步動(dòng)畫。需要將虛擬數(shù)字人的面部動(dòng)畫(骨骼、混合形)聯(lián)系起來,實(shí)現(xiàn)聲音與嘴型動(dòng)畫的同步。在虛擬數(shù)字人的藍(lán)圖中,配置ATLMapping info映射信息。在Pose Asset中選擇mh_arkit_mapping_pose映射姿勢(shì),實(shí)現(xiàn)數(shù)字人嘴型的綁定,如圖3所示。同時(shí),使用MetaHumanSDKAPIManager獲取為引擎子系統(tǒng),把ATL Audio to Lipsync庫(kù)獲取音頻播放長(zhǎng)度創(chuàng)建動(dòng)畫節(jié)點(diǎn),同步對(duì)齊嘴型,保持實(shí)時(shí)音頻同步狀態(tài)。根據(jù)語音的長(zhǎng)度控制嘴型動(dòng)畫,在音頻完成播放后,虛擬數(shù)字人嘴型回到初始閉合狀態(tài),等待新的語音播放,如圖4所示。
圖3 虛擬數(shù)字人表情綁定
圖4 關(guān)鍵實(shí)現(xiàn)藍(lán)圖
虛擬數(shù)字人在娛樂領(lǐng)域的應(yīng)用得益于語音交互技術(shù)的發(fā)展和研究。語音合成指將以文字為主的媒體內(nèi)容轉(zhuǎn)化為人類語音輸出。和語音識(shí)別一樣,語音合成也是智能語音技術(shù)的重要組成部分。借助這一技術(shù),虛擬數(shù)字人能更好地為用戶服務(wù),定制個(gè)性化的互動(dòng)方案。用戶能夠與虛擬數(shù)字人進(jìn)行自然且愉快的語音對(duì)話,來分享內(nèi)心的想法和感受。每個(gè)虛擬數(shù)字人根據(jù)用戶的問題進(jìn)行智能的回復(fù),這樣設(shè)計(jì)的目的在于滿足用戶在娛樂方面的多樣化和個(gè)性化需求??傮w上說,虛擬數(shù)字人和語音交互技術(shù)的結(jié)合,確保了用戶在使用過程中能夠獲得流暢、清晰且富有邏輯性的互動(dòng)體驗(yàn)。
基于ChatGPT語言模型開發(fā)的虛擬數(shù)字人在教育領(lǐng)域得到了廣泛關(guān)注。教育數(shù)字人具備高度的擬人化特征,其外觀和性格特征均可與真實(shí)人類媲美。無論是在微表情、發(fā)質(zhì)還是膚質(zhì)等方面,教育數(shù)字人都能夠還原真實(shí)人類的模樣,并且能夠在不同的光影條件下進(jìn)行對(duì)應(yīng)的渲染和模擬,呈現(xiàn)出與真實(shí)教育從業(yè)者極為相似的虛擬形象[4]??傊?,教育數(shù)字人的高度擬人化特點(diǎn),使其在教育領(lǐng)域的應(yīng)用價(jià)值日益凸顯。虛擬數(shù)字人通過創(chuàng)新的互動(dòng)方式與學(xué)生溝通,激發(fā)學(xué)生的學(xué)習(xí)好奇心與興趣,從而提高他們的學(xué)習(xí)積極性?;贑hatGPT語言模型的虛擬數(shù)字人被賦予了與學(xué)生進(jìn)行語言交流的能力,可以根據(jù)學(xué)生的問題提供針對(duì)性的解答和指導(dǎo)。
虛擬引擎在影視制作中發(fā)揮著重要作用。它打破了嚴(yán)格的制作流程,使模型和貼圖處理能夠同時(shí)進(jìn)行,特效制作也可以提前進(jìn)行。虛擬引擎支持動(dòng)作捕捉設(shè)備,拓展性和容錯(cuò)度更好,給創(chuàng)作團(tuán)隊(duì)帶來了更大的靈活性和便利性[5]。虛擬數(shù)字人可以在影視作品中擔(dān)任虛擬角色。在基于ChatGPT語言模型的虛擬數(shù)字人語音交互應(yīng)用中,虛擬數(shù)字人與實(shí)際人物或其他虛擬角色展開自然的對(duì)話與互動(dòng),從而極大地豐富觀眾的觀影體驗(yàn)。得益于ChatGPT強(qiáng)大的語言處理能力,借助虛擬數(shù)字人這一寶貴素材,導(dǎo)演和編劇既能節(jié)省角色創(chuàng)作成本,又能豐富劇情表現(xiàn),全面提升作品藝術(shù)價(jià)值,從而使觀眾流連忘返于獨(dú)特的視聽盛宴。
隨著人工智能技術(shù)的飛速發(fā)展,虛擬數(shù)字人作為一種新興交互形式受到了廣泛關(guān)注。虛擬數(shù)字人能實(shí)現(xiàn)精準(zhǔn)、高效的語音交互體驗(yàn),已走進(jìn)人們的視野。虛擬數(shù)字人打破了傳統(tǒng)界限,為跨領(lǐng)域合作提供了空間,推動(dòng)了娛樂、教育、影視、數(shù)字媒體等多規(guī)模產(chǎn)業(yè)的革新與發(fā)展?;贑hatGPT語言模型的語音交互技術(shù),將逐漸成為推動(dòng)虛擬數(shù)字人普及應(yīng)用的重要驅(qū)動(dòng)力。