大語言模型(LLM)具有令人印象深刻的自然語言理解和生成能力, 2022年11月底OpenAI發布了ChatGPT,一躍成為人工智能AI領域的現象級應用。但由于LLM的訓練數據集主要來源于互聯網數據,企業私域信息并未被LLM所訓練,當客戶查詢關于企業的業務信息的時候,LLM會出現幻覺,無法進行正確回應。因此,企業界(尤其是中小型企業)具有強烈的愿望能夠打通企業數據和LLM的互聯網數據,構建企業專屬GPT,利用LLM的能力服務企業目標客戶。
在企業中,GPT 構造器的角色通常面向以下幾個方面職責。
數據收集與處理:負責收集和整理大量的文本數據,這些數據將用于訓練 GPT 模型。本文中主要的數據來自于FAQ,文檔和網頁。
模型訓練:使用收集到的數據對 GPT 模型進行訓練,這可能涉及到選擇合適的模型架構、超參數調整、訓練過程的監控和優化等。在使用向量表示的時候,會對文檔通過數據工程進行分塊,并進行向量化。
模型評估與優化:在模型訓練完成后,需要評估模型的準確定和性能,并根據評估結果對模型進行優化和調整,并進行RLHF。
應用集成:將訓練好的 GPT 模型集成到企業的產品或服務中,例如用于構建聊天機器人、消息通道、文本生成工具、語言理解系統等。
模型迭代:隨著技術的發展和業務需求的變化,負責對 GPT 模型進行迭代更新,以保持其在企業應用中的有效性和競爭力,同時會對其問答知識進行訓練,確保業務的持續更新。
知識管理:負責管理 GPT 模型訓練和使用過程中產生的知識,確保知識的合規性和安全性。
企業GPT構造器的具體角色和職責可能會根據企業的規模、業務需求和資源配備而有所不同。在一些企業中,這些任務可能由專門的AI團隊承擔,而在其他企業中,可能由數據科學家或軟件工程師負責。在這當中,企業GPT構造器的IT基礎形態各異。本文介紹一款基于多租戶架構的企業GPT構造器,其總體設計思路如下圖所示。
企業租戶管理員作為信息生產者,負責企業GPT的喂養工作。企業業務部門如銷售部、市場部等作為信息消費者,使用企業GPT服務為客戶提供服務。系統主要分為企業GPT的喂養和服務兩部分,接下來以這兩點結合筆者的實戰進行介紹。
在企業GPT喂養工作中,租戶管理員負責輸入企業官網及其他相關網站,系統通過抓取技術進行文本采集;支持上傳對應的文檔,通過表單識別進行文本采集;并支持問題/答案的直接輸入。這些喂養的網頁和文檔將進行分塊和向量化處理,以向量的方式存儲于向量數據庫中。
官網作為租戶(尤其是中小型企業)最重要的權威信息發布渠道,跟企業業務緊密結合。因此企業GPT構建器采用網站抓取技術,能夠提取官網多級目錄,并列出目錄由租戶決定喂養哪些URL的信息。
雖然企業官網網頁數據結構化不強,但是對于中小型企業來說不需要進行手動處理即可作為喂養素材,整體上是一種比較經濟的處理方式。
企業官網抓取
企業文檔包括了行業規范、洞見及趨勢,企業產品/服務功能描述、非功能描述、特性和優勢、操作手冊、交付方式、商業合作模式、應用范圍、主要應用案例等,這些企業文檔能夠幫助客戶了解企業相關業務。
系統支持word、pdf、ppt、markdown及txt等文件。文檔相對網頁更加結構化,更加能夠聚合信息,對于規模稍大的企業來說文檔資源也比較豐富,應該算比網頁更加優質的素材。為了提升喂養文檔質量,文檔盡量做到主題明確、描述清晰,內聚地表達業務內容。盡量避免在一些多級標題的場景下,小標題會被切分成單獨的chunk,與正文分割開。
企業文檔喂養
企業問題/答復(FAQ)對可以進行輸入,并作為單獨的向量存放在向量數據庫中。
作為最優質的企業信息,問題/答復對向量將更加容易被向量檢索到,能夠在答復客戶時作為第一優先級答案。
基于中小型企業的特點,企業GPT構造器喂養流程分為:
// 預處理:針對企業文檔,對于部分圖片方式的文檔,需要使用 OCR 功能進行預先識別,并對文檔進行邊界框中文本的位置、文本內容、表、選擇標記(也稱為復選框或單選按鈕)和文檔結構分析。
// 格式化:經過預處理的文本將進行格式化,格式化的步驟如下:
檢索時額外檢索同一標題樹下的chunk,隨后做拼接。如果一次構建的知識塊過長,則將此知識塊文本按照400-500個token長度,并在其后根據標點符號和換行符等來切分段落來切分。
// 向量化:通過大數據模型(LLM)的向量化(Embedding)接口,對經過格式化的文本分塊進行處理,以OpenAI的Embedding接口為例,其對格式化后的文本進行向量化,本文案例選擇的是text-embedding-ada-002模型。
// 向量存儲:將向量化后的企業知識存入到向量數據庫中,包含了來源ID、類型、分塊向量、原始文本內容等,并進行多租戶數據隔離。
企業GPT喂養流程
企業通過使用 GPT模型來獲得多種自然語言處理(NLP)服務,這些服務可以幫助企業提高效率、改善客戶體驗、提供7*24小時服務等。以下簡要介紹企業可以通過 GPT 獲得的部分服務。
在企業信息向量化存儲之后,還需要對企業交互式消息公眾號進行設計,我們可以配置chatbot的頭像logo,名稱,服務介紹,服務電話,主頁,服務郵箱等信息。
同時我們需要對企業GPT機器人做角色定義。設置AI創造力因子(Temperature)來確定AI答復的確定性或者創造性。并應用提示工程對其角色進行清晰明確的描述,以便AI模型理解我們的需求,提示工程通常有三個主要元素組成:任務、指令、角色,可以通過調整Temperature參數來控制生成文本的多樣性,較高值會導致更加隨機和多樣化的文本生成,而較低值則會導致更加保守和確定性的文本生成。并通過少樣本示例實現企業希望扮演的角色目標,下圖是一個Prompt的設計例子。
企業GPT Prompt設置
通過交互式消息,企業GPT可以對外提供消息服務,其提供服務的流程如下圖所示。
企業GPT通過交互式消息為客戶提供服務
企業的目標客戶通過交互式消息或者Web插件,訪問企業GPT,步驟如下:
Step1:根據設定的業務場景(預配置交互流程)及企業角色(提示工程),如市場營銷、客戶服務、辦公助手等,企業客戶訪問企業GPT。
Step2:企業GPT通過構造LLM對客戶問題文本進行向量化。
Step3:使用向量搜索,在向量數據庫中搜索離客戶問題向量最相似的Top K(K可以設置)文本內容并返回,判斷的標準為問題向量和喂養分塊向量之間的距離(向量之間的歐氏距離或者余弦距離)。
Step4:企業GPT判斷Top K向量同客戶問題向量的相似度。
Step5:將匹配度得分>N分(N可以配置)的相關設置的Prompt、文本內容、當前及會話歷史問答,統一送到會話LLM,會話LLM根據這些信息進行組織推理。在某些場景下需要做上下文回溯,雖然能夠準確地檢索內容,但是這部分內容并不全,檢索時額外檢索最相關chunk的相鄰chunk,隨后做拼接。
Step6:組裝好的答案和參考文檔信息通過交互式消息返回客戶端。
系統本身支持多種交互式消息,下圖是多種交互式消息的展示例子。
在實際項目執行過程中,部分面向客戶的答復需要嚴謹,因此對機器人的答復進行訓練和增強。
多種交互式消息通道的企業GPT展示
用戶問題與回復的答案將會自動被填入文本框內??梢赃M行編輯,并以“Q&A”的格式訓練至知識庫內??梢赃x擇訓練至一個已有的“Q&A”知識文檔內,也可以創建一個新的“Q&A”知識文檔來儲存本次訓練的知識。
企業GPT在構造之后,可以通過交互式消息通道或者Web插件為企業的各個部門客戶提供服務,且不限于下列場景例子。
Scene1. 品牌營銷
配合交互式消息的主動觸達功能,可以向客戶發送促銷信息,通過企業GPT,能夠為客戶解答促銷信息的內容,也可以自動答復企業官網/社媒賬號,引導客戶直接訪問購買,也可以為客戶提供政策咨詢服務。
品牌營銷場景
Scene2. 客戶服務
可以通過交互式消息發送客戶物流信息,待客戶接收商品之后,在喂養相關商品的產品使用手冊周,客戶可以通過企業GPT,客戶可以咨詢企業人工座席工作時間,企業GPT能夠告訴客戶如何使用商品,幫助客戶排除商品的使用故障等。
客戶服務場景
Scene3. 助手服務
在喂養了企業的財務、人事等相關政策文檔后,企業員工可以不用閱讀繁瑣的各類文檔,通過企業GPT,以對話的方式咨詢財務系統發票問題,人事政策問題等內容,大大提升新員工培訓效率及員工獲得感。
企業助手場景
助手服務還可以廣泛應用于企業業務支撐,如對銷售人員的專業知識支持,運維人員的設備知識支持等。
浩鯨科技企業GPT構造器能夠快速地幫助企業構建自己的GPT,目前已成功實戰了HETU產品線hetuGPT、NuriGPT、MRGPT以及wctGPT。
其中,印尼N電商是一家通過互利聯盟營銷社區為品牌所有者、經銷商、有影響力者和消費者提供創新和全新在線購物體驗的技術公司。作為一家電商,其經營的電子產品種類繁多,客服人員無法對所有電子產品的參數、操作方式了如指掌,因而常常在答復客戶詢問產品的時候,需要打開大量的文檔進行查詢, NuriGPT有效地解決了這個痛點,N電商客服團隊負責人Arnold說:
“HETU 企業GPT幫助N電商構建了企業級NuriGPT來支持電商業務,知識喂養的方式很方便,只需要上傳文檔,客服人員就可以快速的從各種電子產品文檔中檢索出產品參數、操作方式、常見故障解決方法,其ChatGPT的自然語言交互體驗非常好,并自動支持多語言的轉換,幫助客服人員快速解決客戶的問題,大大降低客服人員的工作負載?!?/p>