蔚來知識平臺的建設(shè)與應(yīng)用
一、背景介紹
在相當(dāng)長的一段時間里,蔚來公司內(nèi)部存在多個類似的知識庫系統(tǒng)。這些系統(tǒng)之間缺乏互通性,形成了一種數(shù)據(jù)孤島的狀態(tài),因此帶來了知識查找困難、使用不便等問題。用戶不知到去何處獲取知識,同時即便找到相關(guān)資料,也無法確認其完整性和準(zhǔn)確性。
在上述背景下,我們設(shè)立了一個知識項目,旨在構(gòu)建一個公司級別的知識平臺,以實現(xiàn)以下目標(biāo):
- 以公司級視角來指導(dǎo)與整合各業(yè)務(wù)方的知識資產(chǎn);
- 建設(shè)一個好用且具備足夠彈性的知識管理工具;
- 形成一套公司級的知識資產(chǎn)管理規(guī)范;
- 建立一套高效的知識應(yīng)用推廣方案;
- 支持大模型知識、語料。
二、整體架構(gòu)設(shè)計
第一部分如下圖所示,是知識平臺的整體架構(gòu)。整體架構(gòu)看似復(fù)雜,但分層理解后就很清晰了。
從最底層開始,我們稱之為“原始材料層”。這一層包括公司內(nèi)部各類知識庫系統(tǒng)所提供的原始語料。正如前文所述,這些知識庫系統(tǒng)在過去以數(shù)據(jù)孤島的形式存在,彼此之間缺乏互通性。它們作為知識平臺的基礎(chǔ)資料來源,涵蓋了生產(chǎn)、研發(fā)、質(zhì)量等領(lǐng)域的知識數(shù)據(jù)。
在這些原始資料的基礎(chǔ)上,我們建立了一套統(tǒng)一的知識生產(chǎn)運營工具,涵蓋知識接入、生產(chǎn)加工等功能。通過這套工具,各種原始材料(如飛書文檔、富文本文檔、PDF 和 Word 文件等)被整合并接入知識平臺。知識生產(chǎn)加工過程包含編輯、審核、加工和分析等一系列功能,旨在將分散的原始材料轉(zhuǎn)化為統(tǒng)一的知識資產(chǎn)。
根據(jù)知識的密級,我們將公司級知識資產(chǎn)劃分為兩大類:公開知識與企業(yè)內(nèi)部知識。公開知識進一步細分為結(jié)構(gòu)化和非結(jié)構(gòu)化兩類;而企業(yè)內(nèi)部知識則涉及培訓(xùn)、產(chǎn)品研發(fā)、銷售、質(zhì)量管理和生產(chǎn)制造等領(lǐng)域。
在此基礎(chǔ)上,我們搭建了一系列知識服務(wù),其中包括內(nèi)容服務(wù)和為大型模型提供的語料服務(wù)。具體內(nèi)容服務(wù)包括知識查找、查看以及相關(guān)交互功能。我們提供了多種知識查找方式,如全文檢索、內(nèi)容檢索、向量檢索、目錄索引和重點推送等,并支持富文本內(nèi)容查看和推薦內(nèi)容展示。此外,知識服務(wù)平臺還包括與用戶互動的部分,確保知識的有效傳遞和應(yīng)用。
經(jīng)過上述流程,最終形成成品知識庫,包括客服產(chǎn)品、銷售產(chǎn)品等成品知識庫,類型涵蓋問答庫、成品推文及操作手冊等。基于這些成品知識,我們可以構(gòu)建多樣化的知識應(yīng)用,例如知識門戶、知識管理后臺和 AI 應(yīng)用等。同時,整個知識平臺還支持全公司范圍內(nèi)智能化服務(wù)的建設(shè),如 NIO APP、Nomi 和客服系統(tǒng)等,由底層知識平臺提供支持,用于構(gòu)建與知識相關(guān)的智能化應(yīng)用。
此外,知識平臺也為大型模型提供服務(wù),通過提供語料支持其訓(xùn)練和微調(diào),在基座大模型上進行擴展,構(gòu)建成各領(lǐng)域的專業(yè)模型。這部分工作包括為企業(yè)內(nèi)外部的不同需求提供語料服務(wù),促進大模型的應(yīng)用和發(fā)展。
最后,我們設(shè)立了一條反饋鏈路,用以處理知識在應(yīng)用過程中發(fā)現(xiàn)的問題,如知識錯誤或過期等。這些問題將通過該鏈路反饋到原始生產(chǎn)環(huán)節(jié),進行二次生產(chǎn)和加工,以解決問題。同時,我們有一套完善的權(quán)限管理體系,包括用戶角色設(shè)定等安全措施,確保知識平臺的安全性和防止信息泄露。
第二部分是異構(gòu)知識的結(jié)構(gòu)化加工系統(tǒng)架構(gòu),知識的形式多種多樣,從各種非結(jié)構(gòu)化的信息到最終可直接應(yīng)用的知識,其間需經(jīng)歷一個復(fù)雜且鏈路較長的知識加工過程。
上圖中,縱向列出了整個知識加工的具體步驟,而橫向則展示了知識加工流程以及為此配套建設(shè)的知識工具。首先,從知識需求分析開始,明確所需的知識內(nèi)容,并據(jù)此建立需求地圖。隨后,進入知識生產(chǎn)運營階段,在此階段,平臺提供編輯、審核等一系列功能支持。為了實現(xiàn)這些功能,我們開發(fā)了相應(yīng)的生產(chǎn)運營工具。
經(jīng)過上述流程生產(chǎn)的知識及統(tǒng)一集成的知識將被整合入知識平臺。為了達成這一目標(biāo),我們采用多種集成方式,如通過 HTTP、MR、數(shù)倉等手段,將公司內(nèi)部各個知識孤島中的知識資源進行全面集成。知識的載體可以是 PDF 文檔、飛書文檔、代碼或網(wǎng)頁。形態(tài)包括文本、圖片、表格、視頻等形式。為了支持這一結(jié)構(gòu)化加工過程,我們開發(fā)了一套統(tǒng)一的結(jié)構(gòu)化加工工具。該工具能夠?qū)⒅R轉(zhuǎn)化為文字形式,并進行模塊化處理,隨后執(zhí)行切分和信息抽取等操作。具體而言,文本將根據(jù)一定規(guī)則被切分為多個片段,再進行標(biāo)注和摘要生成,最終統(tǒng)一錄入數(shù)據(jù)庫。其中會用到多種切分方法和信息抽取技術(shù)。
最終,我們的知識平臺實現(xiàn)了多方面的應(yīng)用消費功能,如知識搜索和知識問答,這些功能依據(jù)知識空間的不同分別實施問答和搜索能力。應(yīng)用消費環(huán)節(jié)產(chǎn)生的反饋信息將回流至知識需求模塊,更新需求地圖,從而形成一個完整的閉環(huán)。
第三部分是企業(yè)內(nèi)部知識智能檢索架構(gòu),即傳統(tǒng)意義上的 RAG(Retrieval-Augmented Generation)。
如上圖所示,蔚來汽車的知識平臺在實現(xiàn) RAG 時采用了以下方法:首先,對于每次知識文檔更新,系統(tǒng)會進行內(nèi)容抽取服務(wù),提取文檔中的文本部分。隨后,執(zhí)行知識切片服務(wù),并對切片后的內(nèi)容進行向量化處理,最終存儲至向量數(shù)據(jù)庫中。
進入在線服務(wù)階段,當(dāng)用戶提出問題時,系統(tǒng)首先會對查詢進行改寫,然后將改寫后的問題向量化,與向量數(shù)據(jù)庫中的知識切片進行匹配。匹配到的相關(guān)知識點會被重新排序,以確定最相關(guān)的信息。最后,通過大模型的提示詞工程,使用企業(yè)專屬的大模型生成最終答案,包括答案文本及其引用的知識點,形成完整的回答返回給用戶。
在整個知識語料加工過程中,除了向量數(shù)據(jù)庫的存儲外,這些資料還用于支持大模型的服務(wù),例如語料微調(diào)和評估,從而構(gòu)建出我們企業(yè)專屬的大模型。
傳統(tǒng)方式下,用戶輸入問題后需搜索并逐一查看相關(guān)知識文檔,以獲取所需信息;而采用 RAG 流程,用戶提問后直接獲得答案及相關(guān)的知識點,顯著節(jié)省了時間。這一時間節(jié)省主要歸因于大模型能夠提供高度滿足需求的回答,減少了用戶進一步查閱詳細知識的需求。因為用戶對初始答案不滿意并需要進一步搜索或點擊鏈接查看文檔的比例較少,整體計算下來可以大約可以節(jié)省 40% 的時間,明顯提升了用戶查找知識的效率。
三、挑戰(zhàn)與解決思路
在這一章節(jié)中,將介紹實際運行過程中遇到的問題、挑戰(zhàn)以及解決方案。
第一個挑戰(zhàn)是知識問答系統(tǒng)的準(zhǔn)確性。目前,我們的知識問答系統(tǒng)在公司內(nèi)部測試中已達到 90% 以上的準(zhǔn)確率。這一成就得益于我們將公司內(nèi)的知識問答劃分為三大類別:專業(yè)問題、敏感問題以及普通問題,針對不同類別的問題制定不同的策略,如下圖所示。
對于專業(yè)問題和敏感問題,我們采取關(guān)鍵詞檢索的方式來處理。由于 RAG(Retrieval-Augmented Generation)技術(shù)對專業(yè)術(shù)語的理解可能存在局限,會導(dǎo)致回答不夠精準(zhǔn)或答非所問的情況。因此,對于需要高度專業(yè)性的問題,直接通過關(guān)鍵詞檢索引導(dǎo)用戶至具體的知識點更為有效。同樣地,對于敏感問題,如銷售政策等容錯率為零的場景,也采用關(guān)鍵詞檢索方式,確保回答準(zhǔn)確。
除了上述兩類之外的所有問題被歸為普通問題,進一步細分為三種處理類型:當(dāng)向量檢索后發(fā)現(xiàn)知識庫中有充足的相關(guān)信息時,系統(tǒng)將正常生成答案;若在向量檢索過程中發(fā)現(xiàn)相關(guān)信息不足,即匹配度較低或得分值不高的情況下,系統(tǒng)會發(fā)出風(fēng)險提示,告知用戶該回答可能存在誤差,請謹慎判斷;對于完全無法從知識庫中檢索到相關(guān)信息的問題,系統(tǒng)將退化為使用大模型進行普通回答,并明確提示用戶,指出這是基于大模型的能力而非知識庫內(nèi)容生成的答案。
通過這種分類處理的方法,我們構(gòu)建了一套完整的知識問答體系,旨在提高回答的準(zhǔn)確性和用戶的滿意度,同時確保敏感信息的處理符合高標(biāo)準(zhǔn)要求。
第二個挑戰(zhàn)是知識點的訪問權(quán)限控制。企業(yè)內(nèi)部的知識問答與公開的大模型問答(如 chat-gpt)不同,企業(yè)內(nèi)的知識點訪問需要是受到嚴格的權(quán)限管理。這意味著,對于同樣的問題,公開的大模型可能會對 1000 個用戶給出相同或相似的答案;而在企業(yè)內(nèi)部環(huán)境中,因為每位員工的知識訪問權(quán)限可能各不相同,1000 名員工針對同一問題可能得到 1000 個不同的答案。
如上圖所示,為了應(yīng)對這一挑戰(zhàn),我們采用了基于角色的權(quán)限控制方案(Role-Based Access Control, RBAC)。我們建立了一個權(quán)限配置后臺,通過用戶角色和權(quán)限設(shè)置來管理訪問控制。每個用戶根據(jù)其職位和職責(zé)被賦予特定的角色,而每個角色則關(guān)聯(lián)一定的權(quán)限范圍。
在此基礎(chǔ)上,我們構(gòu)建了一套權(quán)限服務(wù)體系,該服務(wù)負責(zé)查詢用戶當(dāng)前的角色及其所擁有的權(quán)限。在知識搜索和問答場景中,系統(tǒng)會依據(jù)用戶的當(dāng)前角色,在向量數(shù)據(jù)庫中匹配其權(quán)限范圍內(nèi)允許訪問的知識內(nèi)容。僅使用這些有權(quán)限訪問的知識進行智能檢索和問答,確?;卮鸬膬?nèi)容嚴格限制在用戶有權(quán)訪問的知識范圍內(nèi),從而保證數(shù)據(jù)的安全性和保密性。
通過這種方式,我們的權(quán)限控制系統(tǒng)不僅支持個性化的知識訪問,還有效防止了敏感信息的泄露,保障了企業(yè)內(nèi)部信息的安全性。
第三個挑戰(zhàn)是多領(lǐng)域的智能問答服務(wù)。對于蔚來的公司級知識平臺而言,其核心任務(wù)是支持整個公司范圍內(nèi)的知識使用場景。每個知識使用場景,包括知識問答場景,都有其獨特的個性化需求。如何通過一個統(tǒng)一的智能問答系統(tǒng)來滿足全公司的幾乎所有場景的需求?我們采用了一種特定的鏈路來實現(xiàn)這一目標(biāo),下面以智能問答為例進行說明。
如上圖所示,在每個問題提出的過程中,提問者會在其特定場景下限定自己的知識庫范圍。正如前文所述,知識平臺上建立了多個獨立的知識庫,研發(fā)、生產(chǎn)、銷售等各個領(lǐng)域均擁有各自的獨立知識庫。例如,當(dāng)研發(fā)領(lǐng)域的智能助手提出問題時,檢索和回答僅限于研發(fā)知識庫內(nèi)進行,然后會進入全公司范圍內(nèi)統(tǒng)一的智能回答鏈路,最后在將答案提供給用戶之前,我們會根據(jù)特定領(lǐng)域的特性對回答風(fēng)格進行調(diào)整,確保其符合該場景的要求。以研發(fā)領(lǐng)域為例,我們會設(shè)定一種符合研發(fā)風(fēng)格的回答模式,使最終的回答既準(zhǔn)確又貼合實際需求。
通過限定知識庫范圍和定制化回答風(fēng)格,可以滿足不同領(lǐng)域的個性化要求。同時,利用統(tǒng)一的智能問答服務(wù),我們實現(xiàn)了廣泛的復(fù)用性,避免了重復(fù)建設(shè),從而提高了效率和資源利用率。
第四個挑戰(zhàn)是高并發(fā)問題。在智能問答場景中,顯卡資源消耗顯著,且因為計算量龐大,計算耗時較長,每個回答通常需要數(shù)秒時間,對于特別復(fù)雜的問題可能需要數(shù)十秒。這使得智能知識問答服務(wù)難以嵌入到生產(chǎn)、銷售等領(lǐng)域的關(guān)鍵系統(tǒng)中,大多數(shù)場景無法接受如此長的響應(yīng)時間。此外,在某些場景下,智能問答工具的訪問量非常大,這對本身已消耗大量資源的智能問答服務(wù)構(gòu)成了挑戰(zhàn)。
鑒于上述背景,我們增加了對高并發(fā)的處理,旨在使智能知識問答服務(wù)能夠覆蓋更多場景并支持更多用戶。如下圖所示:
首先,我們引入了一個知識生產(chǎn)流程,該流程包含知識變更的影響問題計算。當(dāng)知識點更新時,我們計算哪些問題的回答會受到影響,并對這些問題的答案進行統(tǒng)一更新。這一過程遵循傳統(tǒng)的 RAG(Retrieval-Augmented Generation)流程,確保答案的準(zhǔn)確性和一致性。更新后的智能問答服務(wù)結(jié)果會被存入知識問答緩存數(shù)據(jù)庫。此數(shù)據(jù)庫存儲問題及其對應(yīng)答案,一旦命中緩存中的問題,用戶可在極短時間內(nèi)獲得答案,無需再次計算。由于我們有實時更新的機制,緩存庫中的答案基本保持最新,延遲控制在秒級。
基于此知識問答緩存服務(wù),我們設(shè)計了三類智能問答機器人:No Cache、Only Cache 和 Cache First。
No Cache:這種模式下,智能問答服務(wù)直接提供正常答案。其特點是回答覆蓋面廣但速度較慢,不支持高并發(fā),因此應(yīng)用場景有限。
Only Cache:在這種模式下,提問時直接查詢緩存服務(wù)。如果找到答案,則立即返回;若未找到,則返回空值表示無法回答。這種方式的特點是速度快但問題覆蓋率低,適用于對響應(yīng)時間和性能要求極高的場景。
Cache First:這是我們的主要推薦模式,適用于絕大多數(shù)場景。提出問題后,首先查詢緩存。如果緩存中有答案,則立即返回;如果沒有,則進入正常的智能問答流程獲取正常答案。這種方式結(jié)合了快速響應(yīng)和廣泛覆蓋的優(yōu)點,平均吞吐量可增加 30% 以上,尤其在命中緩存的情況下,響應(yīng)時間幾乎可以忽略不計,顯著提升了系統(tǒng)的并發(fā)處理能力。
綜上所述,通過構(gòu)建知識緩存數(shù)據(jù)庫和支持不同模式的智能問答機器人,我們實現(xiàn)了對高并發(fā)的支持,既提高了系統(tǒng)的響應(yīng)速度和效率,又保證了廣泛的問答覆蓋范圍。
四、未來展望
最后是對未來工作的展望。在當(dāng)前平臺建設(shè)的基礎(chǔ)上,我們計劃推進以下幾個方面的工作。
1. AI 輔助知識理解
目前,我們在知識平臺中已經(jīng)引入了 RAG(Retrieval-Augmented Generation)流程,實現(xiàn)了智能知識檢索和問答服務(wù),使用戶能夠便捷地獲取所需信息。然而,當(dāng)直接的回答無法完全滿足用戶需求時,用戶仍需查閱詳細的正文內(nèi)容。為了改善這一情況,我們將增加 AI 輔助知識理解功能。具體而言,在用戶瀏覽知識詳情時,系統(tǒng)將利用AI能力自動生成文檔摘要,減少用戶的閱讀時間,并提供術(shù)語解釋服務(wù),幫助用戶理解文檔中的專業(yè)名詞。這種AI輔助理解功能旨在優(yōu)化知識瀏覽和消費體驗。
2. AI 輔助知識創(chuàng)作
在知識生產(chǎn)過程中,盡管目前仍以人工為主,但我們計劃引入 AI 輔助知識創(chuàng)作工具。這些工具可以幫助撰寫新文檔或在現(xiàn)有知識基礎(chǔ)上進行擴展和續(xù)寫,從而提高知識創(chuàng)作的速度和效率,擴大整個知識平臺的知識儲備量。
3. 多模態(tài)能力
除了傳統(tǒng)的文本形式,我們還計劃研究并開發(fā)多模態(tài)知識處理能力。雖然數(shù)據(jù)存儲方面已支持圖片、視頻等多種格式,但在智能問答領(lǐng)域,我們希望進一步拓展其功能,例如通過上傳圖片提問,并基于圖片內(nèi)容生成回答。此外,我們還將探索圖文混合等多模態(tài)交互方式,以增強系統(tǒng)的智能化水平。
4. 知識類型擴展
現(xiàn)有的知識類型涵蓋了 PDF、網(wǎng)頁等多種格式,但并未涵蓋所有可能的形式。未來,我們將考慮在此基礎(chǔ)上擴展支持更多種類的知識資源,確保任何類型的知識都能融入到我們的知識平臺中進行加工、治理和管理,從而進一步豐富平臺的知識儲備,提升其全面性和適用性。
綜上所述,通過引入 AI 輔助知識理解、AI輔助知識創(chuàng)作、多模態(tài)能力和知識類型擴展,我們將持續(xù)優(yōu)化和完善知識平臺的功能和服務(wù),以更好地滿足用戶需求并提升平臺的整體價值。
五、Q&A
A1:是的,對于專業(yè)問題和敏感問題,系統(tǒng)會退化為基于全文檢索。這類問題不適合通過語言模型進行推理處理,因此采用全文檢索以確保回答的準(zhǔn)確性和安全性。
A2:緩存庫中的答案之所以準(zhǔn)確,是因為其依賴于三個不變的因素:用戶提出的問題、知識庫的內(nèi)容以及背后的大模型。具體而言,在問答背后的大型模型和問題本身沒有變化時,唯一可能影響答案準(zhǔn)確性的是知識庫的更新。然而,在知識點發(fā)生變化的情況下,我們會及時更新緩存中的答案,以確保其準(zhǔn)確性。因此,無需每次依賴人工專家標(biāo)注,而是通過自動化機制保證緩存答案的正確性。