本發明涉及語音問答,具體是涉及一種基于檢索增強生成的語音問答方法、系統、介質及產品。
背景技術:
1、傳統的基于文本的問答(text-based?question?answering,text?qa)僅關注從干凈的文本輸入中理解和提取答案。語音問答(spoken?question?answering,sqa)旨在整合語音和文本模態,使模型能夠使用語音輸入,在更自然、更真實的場景中執行問答任務。相對于text?qa,sqa通過引入原始語音信號,可以更接近實際應用,提供更高的實用價值和研究意義。因此,sqa的發展有助于多模態信息處理系統的進步,提高了語音問答中的語音理解、推理和實時響應能力。
2、近年來,許多解決方案致力于提高sqa任務的表現。例如,speechbert聯合預訓練語音和文本表示,以減少自動語音識別(automatic?speech?recognition,asr)錯誤的影響;dual將語音離散化為單元序列,使得無需配對的語音和文本數據即可實現sqa,并完全繞過了asr;mrd-net引入了多模態殘差知識蒸餾,利用語音感知注意力機制學習穩健特征并減輕自動語音識別噪聲;ghostt5提出了一種低成本方法生成高效的隱藏表示,促進無文本的口語問答。speechdpr?構建了一個無監督的密集檢索器,在不轉錄的情況下執行語義級別的語音檢索。這些方法盡管取得了顯著進展,但均主要集中在建模語音內容,而忽視了現實世界sqa的一個關鍵方面:用戶問題往往不僅僅基于語音本身。在許多情況下,回答問題不僅需要理解口語內容,還需要整合外部知識,有些問題是時間敏感的,答案會動態變化。然而,現有方法嚴重依賴靜態數據集,強調對語音的淺層理解,缺乏動態融入外部或實時信息的機制。這限制了它們處理復雜、知識密集型和時間依賴性問題的能力。
3、例如,僅關于音頻內容的問題和一段音頻輸入到大語言模型(llm)中,大語言模型可以理解音頻內容并回答簡單的問題,從而得到目標答案,但是,如果問題是需要外部知識或時間敏感的問題,則大語言模型無法很好地回答。
4、現有的另一種方案是大語言模型驅動的開放域自然語言推理答系統,其公開了通過問題改寫模塊對用戶問題進行改寫得到改寫問題,將通過搜索引擎api得到的互聯網檢索文本和本地文本數據檢索結果合并,從而得到最終的查詢結果,該結果作為證據候選將直接輸入給下游的問答模型進行推理及答案生成。然而,該方案本技術不涉及音頻模態,且主要檢索方式仍依賴于人工構建知識庫并使用常用的傳統查詢方式(bm25、sql?查詢、知識圖譜等),信息仍是離線固化,并且要靠專家持續補錄、糾錯、消歧,其中使用了知識圖譜和sql模板部分工作量很大,其復雜性限制了領域的拓展。在得到檢索內容后,還要經過大量的清洗、重排序等,另外,盡管公開了使用api的web檢索方式,但仍舊與多種傳統檢索方式混合進行,整體檢索流程非常復雜且延遲高,難以追蹤到每種檢索方式每一步的具體檢索結果,以及原始檢索結果對答案的貢獻程度,且每種檢索方式基本都包括檢索器、生成器等訓練,并且在融合模塊也需要消耗大量的資源。
5、現有的再一種方案是面向多類型知識庫的多引擎智能問答系統,其公開了采用語音識別模型對特定語種的語音問題轉寫為中文自然語言描述。這種方案雖然引入了音頻模塊,但其音頻內容仍然是本體本身,不包含任何其他內容,從而不涉及額外的可能具有干擾的內容,而且問題的文本形式也和音頻一同輸入,所以其重點仍聚焦在對文本模態的處理,無法體現語音模態的必要性,難以用在sqa任務中。
6、此外,現有用于sqa任務的數據集也表現出不足,限制了在實際場景中的應用,其主要面臨兩個限制:(1)缺乏真實語義:許多廣泛使用的sqa數據集,依賴于由文本轉語音(text-to-speech,tts)系統生成的合成語音。盡管tts質量已顯著提高,但仍無法捕捉到語音的多樣性和復雜性。(2)問題復雜度有限:大多數現有問題可以直接從語音內容中回答,很少涉及實時或知識密集型推理。而現實世界的sqa通常需要常識推理、上下文理解和領域專業知識,這些元素在當前數據集中大多缺失。上述限制使得現有的sqa基準測試無法充分評估諸如知識增強和時間推理等關鍵現實能力。
技術實現思路
1、本發明的第一目的是提供一種基于檢索增強生成的語音問答方法。
2、本發明的第二目的是提供一種基于檢索增強生成的語音問答系統。
3、本發明的第三目的是提供一種實現上述基于檢索增強生成的語音問答方法的計算機可讀存儲介質。
4、本發明的第四目的是提供一種實現上述基于檢索增強生成的語音問答方法的計算機程序產品。
5、為了實現上述的第一目的,本發明提供的一種基于檢索增強生成的語音問答方法,其中,包括以下步驟:獲取待處理音頻和與待處理音頻對應的原始問題;與待處理音頻對應的原始問題為需依賴待處理音頻理解的問題;通過預先設置的asr模型轉錄待處理音頻,得到文本轉錄結果;將文本轉錄結果、待處理音頻對應的原始問題和第一預設提示詞輸入到第一大語言模型,得到第一大語言模型輸出的與待處理音頻對應的關鍵問題;第一預設提示詞用于提示第一大語言模型根據文本轉錄結果和待處理音頻對應的原始問題生成與待處理音頻對應的關鍵問題;與待處理音頻對應的關鍵問題為無需依賴待處理音頻理解的問題;基于檢索增強生成技術,將待處理音頻對應的關鍵問題通過訪問外部的搜索引擎進行搜索,得到語義相關的多個段落;將語義相關的多個段落、與待處理音頻對應的關鍵問題、第二預設提示詞輸入到第二大語言模型,得到第二大語言模型輸出的與待處理音頻對應的關鍵問題的目標答案。
6、由上述方案可見,本發明利用大型語言模型的語言理解和知識整合能力,在待處理音頻與待處理音頻對應的原始問題的基礎上生成對應的關鍵問題,并進一步引入檢索增強生成技術,通過使用推理得到的關鍵問題進行檢索,動態抓取最新網頁段落再推送給大語言模型處理,通過大語言模型整合生成最終答案。本發明可以回答更復雜和對事件敏感的問題,提高了語音問答任務的處理效果。此外,本發明維護和部署更加容易,可以不經過訓練便使用,且模塊中模型的替換也非常方便,可隨時更換為當前性能最好的模型。相對于現有方案,本發明的檢索更加輕量、快速、實時性高,檢索內容可推廣到任意領域,且檢索內容高度可視化,方便溯源。
7、進一步的方案是,第一大語言模型和第二大語言模型為同一個大語言模型。
8、進一步的方案是,asr模型為paraformer-zh模型。
9、進一步的方案是,第一大語言模型和第二大語言模型為glm-4-plus模型。
10、進一步的方案是,根據多個大語言模型在預先構建的語音問答數據集上的評價確定選用的第一大語言模型和第二大語言模型;語音問答數據集的構建過程包括:獲取各個類別的預設長度的語音片段;獲取每個語音片段對應的原始問題、關鍵問題、問題答案;其中,每個語音片段中,對應的原始問題和關鍵問題屬于實時型或非實時型,關鍵問題基于原始問題和語音片段得到;對于每個語音片段,將語音片段和語音片段對應的原始問題、關鍵問題、問題答案作為一個數據集樣本存儲,得到語音問答數據集。
11、進一步的方案是,語音片段通過截取在線網站的視頻得到,語音片段包括說話人的口音和背景噪聲。
12、由此可見,可以根據構建的語音問答數據集選擇出合適的大語言模型以及方便對sqa任務的處理效果進行評估。
13、進一步的方案是,語音問答數據集的預設比重的數據集樣本中,根據數據集樣本中的關鍵問題得到對應的問題答案時需要進行至少一次網絡搜索。
14、由此可見,可以確保語音問答數據集中大多數的數據集樣本,其關鍵問題得到問題答案的過程中都至少需要進行一次網絡搜索,提高語音問答數據集的評估效果。
15、為了實現上述的第二目的,本發明提供的一種基于檢索增強生成的語音問答系統,其中,包括:輸入獲取模塊、文本轉錄模塊、大語言模型模塊、檢索增強生成模塊;與待處理音頻對應的原始問題為需依賴待處理音頻理解的問題;輸入獲取模塊用于獲取待處理音頻和與待處理音頻對應的原始問題;文本轉錄模塊用于通過預先設置的asr模型轉錄待處理音頻,得到文本轉錄結果;大語言模型模塊用于將文本轉錄結果、原始問題和第一預設提示詞輸入到第一大語言模型,得到第一大語言模型輸出的與待處理音頻對應的關鍵問題;第一預設提示詞用于提示第一大語言模型根據文本轉錄結果和待處理音頻對應的原始問題生成與待處理音頻對應的關鍵問題;與待處理音頻對應的關鍵問題為無需依賴待處理音頻理解的問題;檢索增強生成模塊用于基于檢索增強生成技術,將待處理音頻對應的關鍵問題通過訪問外部的搜索引擎進行搜索,得到語義相關的多個段落;大語言模型模塊還用于將語義相關的多個段落、關鍵問題、第二預設提示詞輸入到第二大語言模型,得到第二大語言模型輸出與待處理音頻對應的關鍵問題的目標答案。
16、為了實現上述的第三目的,本發明提供的一種計算機可讀存儲介質,其上存儲有計算機程序,其中:計算機程序被處理器執行時實現上述的基于檢索增強生成的語音問答方法。
17、為了實現上述的第四目的,本發明提供的一種計算機程序產品,包括計算機指令,其中:計算機指令被處理器執行時實現上述的基于檢索增強生成的語音問答方法。