陳將來自于 Zilliz,現任 Towhee 開源項目負責人。擁有多年的大數據基礎架構和數據安全開發(fā)經歷,曾先后在谷歌云服務和搜索架構部門擔任技術負責人和產品經理,期間帶領團隊開發(fā)了數據索引倉庫應用于低延遲、高吞吐的短視頻搜索等場景。對處理海量非結構化數據和多媒體內容檢索有著豐富的行業(yè)經驗。陳將擁有密西根大學計算機科學碩士學位。
視頻回放:https://juejin.cn/live/jpowermeetup24
一、大語言模型的局限性
大語言模型例如 ChatGPT 在通用能力上表現強勁,但也暴露了一定的局限性:
● 缺乏專業(yè)領域知識:對通識知識了解廣泛,但無法回答專業(yè)領域的問題,如怎樣修復特定機械設備。這是由于訓練數據沒有覆蓋這些專業(yè)領域。
● 容易產生幻覺:可能給出錯誤或虛假的回答,但無法輕易判斷真?zhèn)巍T趪烂C場景下可能產生嚴重后果。
● 信息過時:訓練數據是某一固定時間的快照,無法獲取更新后的信息。且無法頻繁重新訓練。
● 預訓練數據不可變:訓練結束后很難刪除或糾正無效信息。
二、用知識庫改進大模型
針對上述問題,主要的改進思路有:
● 使用數據庫承載專業(yè)領域知識,如向量數據庫構建知識庫。
● 做微調(Fine-tuning),使用少量標注數據增強特定領域能力。
● 做提示工程(Prompt Engineering),添加提示詞避免生成虛假信息。
● 使用外部數據庫存儲最新信息,實時更新大模型的外部記憶。
相比微調,使用知識庫的優(yōu)點是:
● 易于知識管理,可以細化操作知識片段。
● 準確度高,只要檢索相關度高就可提升回答質量。
● 各種優(yōu)化手段靈活,可不斷迭代。
● 信息模糊匹配能力好,不需要嚴格匹配關鍵詞。
微調的優(yōu)點是可積累信息,逐步提升模型在某領域的能力,但也面臨其他領域能力下降、管理難度大、訓練成本高等問題。
三、CVP技術棧詳解
CVP表示大語言模型(C)、向量數據庫(V)和提示詞工程(P)的結合。主要流程是:
離線索引:
● 對文檔分段;
● 用 embedding 模型生成向量;
● 將向量導入向量數據庫。
可以做各種優(yōu)化,如選擇不同的 embedding 模型等。
在線問答:
● 從數據庫檢索相關知識片段;
● 組裝提示詞,將知識片段插入提示詞中;
● 將提示詞發(fā)送給大語言模型,生成回答。
也可以做各種優(yōu)化,如多輪檢索、排序等。
四、動手搭建知識庫增強問答
使用開源工具 Milvus(向量數據庫)、 Akcio(實現CVP邏輯)可以快速搭建一個示例:
● 導入文檔,切分生成文檔段;
● 用戶提問時,從 Milvus 檢索相關文檔段;
● Akcio 組裝提示詞,插入檢索結果,詢問大語言模型;
● 大模型組織知識片段內容,生成高質量回答。
相比直接詢問大模型,引入外部知識庫可以顯著提升回答的相關性。這展示了向量檢索構建知識庫在拓展大語言模型認知邊界方面的潛力。
五、展望
向量檢索構建知識庫還面臨如何高效管理知識變更等工程難題,需要持續(xù)的研究和開源社區(qū)努力。與智能體結合也值得期待,或許會帶來管理記憶的全新模式。
結語
通過陳將老師的分享,我們可以看到,在大語言模型風靡的今天,識別和改進其缺陷尤為關鍵。這場分享系統(tǒng)地剖析了大語言模型的局限性,并分析了現有的解決方案。文檔檢索增強 (Retrieval Augmented Generation) 作為一種提升大預言模型能力的手段,被業(yè)內普遍看好。本次分享中的 CVP 技術棧提供了一種簡單可行的思路,也為我們進一步深入研究提供了參考。當然,要落地應用仍需要處理好知識表示、持續(xù)迭代等問題。
相信在不斷升級的工具和算法支持下,知識庫必將發(fā)揮越來越大的作用,甚至有望真正解決大語言模型“無知”的問題。讓我們拭目以待吧!
掘力計劃
掘力計劃由稀土掘金技術社區(qū)發(fā)起,致力于打造一個高品質的技術分享和交流的系列品牌。聚集國內外頂尖的技術專家、開發(fā)者和實踐者,通過線下沙龍、閉門會、公開課等多種形式分享最前沿的技術動態(tài)。