銀行如何構建大語言模型產品

0 評論 2598 瀏覽 23 收藏 29 分鐘

自從ChatGPT發布之后,大模型對知識整理、歸納、推理、總結方面強大的能力引起了大家的關注。而銀行領域的專業性和特殊性,更要求自己構建LLM產品。本文針對銀行使用大模型的場景、方式進行了詳細的分析,并給出了銀行做大模型的實踐樣例,供大家參考。

目前大語言模型(Large language mode,LLM),以下簡稱LLM,非?;鸨鞣N基于LLM的產品如雨后春筍般出現。以OpenAI推出的GPT4為代表的LLM產品,為大家展示了LLM在對知識整理、歸納、推理、總結方面強大的能力。

LLM借助于思維鏈(Chain Of Thought,CoT)技術,可以使LLM生成推理路徑,將復雜問題拆解為多個簡單步驟分別處理,從而模擬人類思考的過程。

OpenAI近期推出的Sora產品,同樣令人震撼,給出一些提示詞,Sora便可以根據文本生成一段生動的視頻,效果不亞于專業的視頻工作室耗費幾天做出來的視頻。

例如通過提示詞: 一段廣角視頻,一輛拉力車穿過紅杉林,出現在樹后,在急轉彎時向空中噴灑泥土,電影膠片拍攝于35毫米景深 。Sora會生成一段高清的10秒左右的視頻,非常逼真。大家有興趣可以使用Sora體驗一下。

由此可見LLM在人機對話、知識推理、歸納總結、圖片和視頻生成上功能確實非常強大,只要我們給定的提示詞足夠恰當,LLM便能給出我們想要的結果。

很多垂直領域,已經出現了許多LLM產品。本文收集整理了一些,大家有興趣的可以重點深入了解。一些關于金融領域的LLM產品主要基于金融知識與問答,金融機構可以作為增值服務提供給客戶,是一個非常不錯的應用場景。

一、銀行使用大模型的場景

對于銀行而言,LLM產品的應用場景有很多。任何工具的使用,其主要目標是提升客戶服務質量,節省企業運營成本,增加企業收益以及提升企業社會效益。概括下來,就是降本增效。

我們知道,銀行的主營業務主要是存款業務、貸款業務、外匯與國際業務,支付和結算、投資理財、托管、電子銀行以及銀行卡業務等。

除此之外,還有清算、繳費、代理發行金融債券、票據貼現、代收代付等業務。很多銀行也推出了銀行業務相關的信息平臺服務,例如招商銀行的CBS(Cross-bank Solution for Cash Management,跨銀行現金管理平臺)。

如果從銀行服務的視角來看,針對個人業務和企業業務的服務劃分,可以進行如下劃分。

個人業務:信用卡、私人銀行、個人貸款、儲蓄業務、居家生活、投資理財、跨境金融、個人手機與網上銀行等。

企業業務:國內業務、跨境金融、投資銀行、資產托管、同業金融、企業財富管理、融資租賃、企業手機與網上銀行等。

銀行利潤的主要來源是存貸利差。因此,如何能最大限度減少獲客成本,識別優質貸款客戶,提升放貸質量,減少銀行壞賬帶來的損失,是大模型產品具有應用價值的場景之一,通過對歷史客戶數據進行分析,給出相對恰當的授信結果,快速審批,全方位風險管理。

對于銀行客戶服務水平,也是提升客戶滿意度非常關鍵的指標,利用大模型真實地與客戶進行對話,并且非常精準地解答用戶提出的問題,可以極大降低銀行的客服人工成本。目前市面上已經有類型的產品,機器對話的仿真程度已經同真人對話效果相差無幾。

大模型也可以為銀行的管理者快速提供需要的信息,對經營數據進行分析,理解并快速繪制圖表。相比于通過人工以周報的形式向銀行管理層呈現數據圖表,往往需要大量人工操作數據分析平臺進行數據整理,大模型可以快速動態提供數據,為管理層提供決策依據,進而提升銀行的管理效率與管理水平。

對于新產品創新,大模型可以通過其超強的計算能力與數據分析,能夠快速進行金融計算與建模,根據當前銀行的歷史產品銷售情況,并結合客戶畫像,結合利率計算、風險評估。給出最優的產品方案。

二、銀行構建大模型的方式

根據我們對銀行使用大在模型場景的梳理后發現,在大模型還沒有出現之前,其實銀行的業務已經存在,并且也已經通過數智化的方式對這些業務進行賦能。

例如基于大數據對信貸用戶的智能評分與授信,根據用戶的使用習慣和畫像進行個性化信息或是產品的推薦,客戶服務呼叫中心使用的NLP(Natural Language Processing,自然語言處理)、STT(Speech To Text,語言轉文本)以及TTS(Text To Speech,文本轉語言)。

大模型的出現,可以簡單理解為是原有銀行人工智能應用的升級,使計算機變得更聰明,產品效果更絲滑,用戶體驗更完善。

由于篇幅有限,本文主要以客戶服務NLP為場景,來講解銀行構建大模型的方式。實現為銀行的每位客戶建立7×24小時隨身專屬顧問,降低銀行人工客服與專屬顧問成本,提升銀行智能客戶服務水平,增加客戶粘性,提升用戶滿意度與忠誠度。

以消費貸款為例,很多用戶收到銀行的營銷信息時,會遇到這樣的問題,短信提醒告知用戶有獲得了一筆授信額度,利率非常優惠,但當用戶實際操作時,卻被告知沒有額度,或是利率非常高,這樣給用戶的體驗非常差,失去用戶信任,當下次用戶再收到這樣的營銷信息時,便很難被吸引,最終導致用戶流失。

構建銀行客服場景的NLP大模型產品,可以通過以下方式進行。

1. Embedding 初始化

Embedding基本的理念是用一個低維的向量表示一個物體,這個向量可以是一個詞,一個商品,或是一個執行的任務等。對于銀行智能客服,用戶輸入的一般是一段文本,如果使用大模型,Embedding的過程,也是Token化的過程。

Token是大模型中常見的交互與表示方式,也是一種計費方式。例如在GPT-4模型中,每1000個token的費用為0.03美元。

對于銀行客服產品的大模型而言,將內容Token化也便于從客觀的視角評價產品價值。最后可以通過計算實際同用戶互動的Token數,來評估銀行客戶大模型的產品為銀行實際帶來的價值。

如何將內容Token化,可以按字分隔,也可以按詞分隔。例如,用戶在向智能客服咨詢,“本期信用卡賬單應還款是多少?”。

如果按字Token化,則為:“本|期| 信|用|卡|賬|單|應|還|款|是|多|少|?”。

如果按詞Token化,則為:“本期 |信用卡|賬單|應|還款|是|多少|?”。

我們知道,其實句子有上下文,通過上下文的關聯,實現語義的表達。如果有足夠多的語料,也可以將句子作為Token。

2. Token 標注

將內容Token化之后,需要對Token進一步進行標注。標注的作用是為了增加計算機對于用戶語義甚至是情感的理解,提升機器回答用戶問題的精準度。

通過對用戶內容Token標注,我們可以對用戶內容進行實體抽取,用戶的情感分析,還可以根據標注的內容,同關系圖譜或知識圖譜進行關聯,發掘更多信息。

假設我們有一個標簽集合,集合的內容是 {scop,name,action,amount,type,…}。我們根據標簽的集合,以及字典信息,對用戶提問“本期信用卡賬單應還款是多少”的文本內容做如下標注。

其中,B代表Begin,意味著標注的開始,E代表標注的結束。如果一個詞比較長,中間有多個字,可以用多個大寫的I表示。橫線- 后面的內容是對內容的標注。例如,信用卡,我們認為是一個名稱,可以標注為 【name】;還款是一個動作,我們可以標注為【action】。

對于傳統的銀行智能客服機器人,其實這一步完成之后,基本就可以搭建起一個簡單的客服機器人,通過對內容配置相應的執行任務,結合相似度計算或是簡單的機器學習就可以回答用戶問題。

但是在大語言模型,我們還需要進一步對內容進行訓練,擴展客服機器人的服務邊界,讓用戶感覺更像是同真人在溝通。同時,在服務用戶的同時,還可以像真人客服一樣“順便”為用戶推薦些產品。

3. Attention機制

Attention機制,出現在2017年的一篇論文《Attention is All You Need》中,在這篇論文中提出了Transformer的模型架構,并針對機器翻譯這種場景做了實驗,獲得比較好的效果。

早些時候使用Seq2Seq模型,即序列到序列模型,可用于文本翻譯,主要原理是:接收的輸入是一個(單詞、字母、圖像特征)序列,輸出是另外一個序列。

但是Seq2Seq模型有個不足之處是僅是根據序列進行映射,不考慮上下文,語義,語法,模型效果不是很好。Transformer模型中提出了Self Attention的結構,取代了以往 NLP任務中的 RNN 網絡結構。

用戶輸入在Encoder(編碼器)的文本數據,首先會經過Self Attention 層,Self Attention層處理詞的時候,不僅會使用這個詞本身的信息,也會使用句子中其他詞的信息。

Attention機制解決了【Encoder(編碼器)-Decoder(解碼器)】結構存在的長輸入序列問題,其功能可以被描述為將查詢和一組鍵值對映射到輸出,其中查詢(Q)、鍵(K)、值(V)和輸出(O)都是向量,輸出可以通過對查詢的值加權來計算。

簡單理解,就是先用問題輸入Query,檢索Key- Value 的記錄,找到和問題相似的記錄中的Key值,計算相關性的分數,然后對Value Embedding進行加權求和,從而衍生出了Self Attention中的Q、K、V的表示。主要實現步驟如下圖所示:

4. 內容安全

銀行的大模型產品,在產品形態上,并不等同于閑聊機器人。因為閑聊機器人,為用戶提供的服務主要是解決用戶“無聊”的場景,而銀行客服機器人,在同用戶聊天互動的同時,要確?;卮鸾Y果的精準。

必須給出嚴謹的結果,否則寧愿不回答。因此對于內容的安全,需要格外關注。確保內容安全,主要可以通過三個方面進行內容安全控制。

用戶輸入內容進行控制:屬于事前控制的一種方式,利用關鍵詞識別,以及語義識別,對用戶輸入的內容進行安全校驗,判斷是否存在內容安全風險。如果存在風險,則給出相應的提示,用戶的內容不會作為大模型語料庫的輸入信息。

大模型自身內容處理:屬于事中控制的一種方式,用戶輸入的內容已經進入銀行智能客服大模型的引擎當中,大模型可以根據用戶輸入內容是否屬于歷史模型構建范圍內的知識進行判斷,如果無法處理,則明確返回用戶無法理解用戶內容,需要后續學習改進。

大模型輸出結果控制:屬于事后控制的一種方式,這時大模型已經根據用戶的提問內容給出相應的答案,即將輸出給用戶,但發現內容存在安全風險。則需要對結果進行過濾,或者重新觸發大模型的處理機制,告知大模型這個答案存在內容安全風險,需要重新生成新的結果。

總之,在銀行智能客服產品使用大模型時,可以引入CGT(Controlable Text Generation,可控文本生成)來確保內容質量,降低內容安全風險。

5. 效果評測

在作者之前出版的《產品經理知識棧》這本書中,我們給出了對于人工智能效果評價的機制。對于軟件工程通用的系統穩定效果,可以通過壓力測試獲得相應的評測結論。

對于銀行智能客服大模型的運行效果,我們可以準備測試數據集,來進行驗證,一般而言,測試數據集占整個數據集的20%相對最為合適。通過準確率、精準率與召回率進行評價。

  • 準確率(Accuracy Ratio):預測【正確的結果】占【總樣本】的百分比。即:AR =(TP+TN)÷(TP+FN+FP+TN)
  • 精準率(Precision Ratio):也稱為查準率,針對【預測結果】對所有被預測為正的樣本中實際為正的樣本的概率。即:PR = TP÷(TP+FP)
  • 召回率(Recall Ratio):也稱為查全率,針對【原樣本】在實際為正的樣本中被預測為正樣本的概率。即:RR = TP ÷(TP+FN)

從公式中我們可以看出,精準率和召回率的分子者為TP,但是分母不同,在實際操作中,想要更高的召回率,精準率就會降低。

為了平衡精準率與召回率的關系,我們使用F1分數來作為指標。即:

F1 = (2×精準率×召回率)÷(精準率+召回率)

三、銀行大模型產品實踐樣例

1. 總體架構

我們可以通過一個簡單的架構,實現銀行大模型產品的MVP(Minimum Viable Product,最小可行)版本。在銀行大模型產品MVP版本中,我們通過銀行小程序、銀行App或是網上銀行的服務,為用戶提供智能文本對話服務。

小程序、App和Web作為承載銀行大模型智能客服的渠道,通過統一的應用API(Application Programming Interface,應用程序編程接口)完成功能接入,實現客服功能。

內容安全模塊,作為接收用戶輸入內容的第一道安全防線,將一些用戶輸入的敏感內容或是與銀行客服無關的內容進行過濾;后續對大模型的內容輸出進行再次識別,防止不當或是敏感內容傳遞給客戶。

銀行客服引擎,是用戶與銀行客服產品的紐帶,負責識別客戶,連通用戶體系,根據用戶畫像,對用戶提問進行提煉,結合用戶歷史服務數據,生成恰當的Prompt給到大模型,甚至可以利用客服引擎歷史積累的數據,作為大模型的學習樣本,對大模型進行“蒸餾”以降低部署成本。

用戶體系承載著用戶基本信息,對用戶進行身份認證,根據用戶歷史的數據,生成用戶畫像,基于用戶和賬戶體系,建立同銀行核心數據的交互。

任務執行則是根據某些場景建立相應的規則和策略,執行相應的任務。例如,用戶在智能客服對話框中輸入“本期信用卡賬單應還款是多少?”,大模型識別為用戶意圖是查詢本期信用卡的賬單,則結構化相應的執行參數給到任務執行模塊,由任務執行模塊到銀行核心中,執行相應信息的獲取,并將相關內容返回給大模型,由大模型加工處理后,呈現給用戶。

2. 案例實踐

接下來我們著重對大模型的構建作為產品實踐樣例。同樣以用戶同客服咨詢“本期信用卡賬單”內容為例,我們的基本目標是通過對用戶針對詢問“本期信用卡賬單”不同的提問內容,通過大模型學習,智能客服均可以識別用戶意圖,給出本期信用卡賬單金額的回答結果。

(1)構建學習語料

我們根據用戶歷史的銀行客服問答數據作為大模型的語料輸入,在本案例中,我們僅選取了三條數據作為實驗數據。

以下源代碼給出了如何將用戶輸入的內容建立同索引的映射關系,并給出了輸出結果樣例。在實際操作中,語料庫的內容非常龐大,打印語料庫的功能需要注釋掉。

由于本文實驗數據非常少,我們選擇將語料的內容進行顯示輸出,便于直觀查看,也有利于后期的模型調試。

(2)模型訓練

為了簡化計算,我們根據收集的主料庫中隨機選取一條語料進行模型訓練。同樣我們將機器隨機挑選的語料,張量的形狀,也進行了打印輸出,方便觀測運行過程。

(3)定義編碼器和解碼器

由于本案例實踐使用的是非?;A的Seq2Seq模型,編碼器和解碼器也相對比較簡單。包含了嵌入層和RNN(Recurrent Neural Network,循環神經網絡)層。

如果語料數據特別龐大,我們可以調整input_size和output_size參數,以適應不同的數據量。另外也可以調整RNN的相關參數,增加模型復雜度和容易,不過這樣機器運算的代價也會同步增加。

(4)整合編輯器和解碼器

大模型中包含了編輯器和解碼器,因此我們需要將兩者進行整合,形成一個總模塊,便于處理用戶輸入的序列,并給出相應的結果輸出。

(5)定義訓練函數

在這個訓練模型中,每一個Epoch都會隨機選擇一個語料進行訓練。本文中由于語料稀少,訓練模型的訓練輪次設置的也不是很多。

實際銀行部署過程中,銀行的AI服務器非常強大,可以結合海量數據進行訓練,從而提升結果的精準度。

(6)結果輸出

由于語料數據非常少,因此模型的準確度是并不是很高,在輸入一些類似的其他問題,可能會導致回答不準確。

我們的目標是希望用戶在輸入信用卡賬單或是理解推薦之類的問題時,銀行智能客服的大模型能給出相應的結果。

在本文實踐案例中,我們結合上文的“本期 信用卡 賬單 應 還款 是 多少”,作為輸入,銀行客服大模型會給去【執行賬單應還款額查詢】策略,從而觸發相應的任務機制,從銀行核心系統提取用戶本期信用卡賬單的還款金額數據。

當用戶輸入是咨詢“有什么理財產品”相關,則銀行智能客服會去【執行理財產品推薦】,調用銀行產品推薦系統,獲得相應的理財產品推薦數據返回給用戶。

四、總結與展望

本文從當下最流行的大模型應用出發,結合對銀行使用大模型場景的方式,給出了基礎的銀行構建大模型的方式。通過最后銀行大模型產品實踐樣例的搭建,完成了銀行大語言模型產品MVP版本的構建。

當然,本文也有不足之處,由于大模型涉及的內容非常多,受于篇幅所限,不能面面俱到。大模型的發展日新月異,本文的內容僅基于已的理論的應用,比較陳舊。

另外,在本文的實踐案例中,僅使用了基礎的Seq2Seq模型,沒有使用到Transformer,也沒有用到Attention機制,語料的規模也不夠,還不足以稱為“大模型”。后期我們會專門針對Transformer進行詳細講解。

由于大模型目前涉及的場景非常多,各種開源的大模型,各種垂直細分領域的大模型產品如雨后春筍般出現。很顯然,在銀行領域,大模型會成為銀行經營新的賦能工具。

大模型在圖表理解和金融計算方面能力非常強大,能夠解析和解釋各類金融圖表,包括識別圖表類型、理解數據含義、分析趨勢和模式;能夠進行金融計算和建模,包括利率計算、投資組合優化、風險評估等。

大模型可以對傳統銀行風險管理、反欺詐、個性化推薦、貸款審批、經營決策等現有的功能進行重構,使這些傳統功能煥發新的生機,降低銀行經營成本,提升銀行運營效率,將會帶來質的飛躍,成為銀行新的發展動能。

參考文獻

[1]王佳亮.產品經理知識棧[M].出版地:人民郵電出版社,2023

[2]黃佳.GPT圖解 大模型是怎樣構建的[M].出版地:人民郵電出版社,2024

[3]蝸牛海膽. (2021). NLP入門系列1:attention和transformer [EB/OL]. https://blog.csdn.net/ahdaizhixu/article/details/119749361

[4]潘小小. (2023). 【經典精讀】萬字長文解讀Transformer模型和Attention機制:attention和transformer [EB/OL]. https://zhuanlan.zhihu.com/p/104393915

專欄作家

王佳亮,微信公眾號:佳佳原創。人人都是產品經理專欄作家,年度優秀作者。《產品經理知識?!纷髡摺V袊嬎銠C學會高級會員(CCF Senior Member)。專注于互聯網產品、金融產品、人工智能產品的設計理念分享。

本文原創發布于人人都是產品經理,未經許可,禁止轉載。

題圖來自Unsplash,基于CC0協議。

該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發揮!