[金融科技] 如何用AI撰寫高品質的文章(3) —
使用LangGraph打造素材選擇與審稿的流程

在撰寫文章時,除了撰寫內容本身之外,準備素材和審稿也是非常重要的步驟,使用大型語言模型和LangGraph,可以提高這兩個步驟的效率和準確度。

這系列皆為技術相關的文章,需具有語言模型、embedding等基礎觀念,並非入門文章。此系列共有三篇:
1. 基礎概念與品質指標
2. 使用MongoDB結合向量資料庫與全文搜尋
3. 使用LangGraph打造素材選擇與審稿的流程 (本文)

LangGraph

這是LangChain中控制生成流程的套件,不同的AI應用時,例如在撰寫投資分析報告、撰寫徵信報告、醫學報告、客服系統等,流程皆不相同,這時候LangGraph用來控制流程就十分好用了。

LangGraph (資料來源: https://langchain-ai.github.io/langgraph/)

LangGraph其實就是流程圖的概念,例如聊天機器人需要Google搜尋外部工具等,如下圖所示。跟LangChain中的Agent相比,流程上可以有Feedback機制,可以更有彈性,完整詳細介紹可見LangGraph官方網站。這邊會介紹兩種使用LangGraph的實用流程,Adaptive RAG以及Self-RAG

聊天機器人需要Google搜尋外部工具 (資料來源: https://langchain-ai.github.io/langgraph/tutorials/introduction/)

Adaptive RAG 強化素材準備

撰寫一份分析報告,某一段落需要股價資訊、某一段落需要財報資訊。某一段落需要量化財務分析、某一段落需要質化的產業分析,資料來源各有不同,因此可以透過Adaptive RAG的架構,將問題先做Query Analysis(如下圖紅色部分)進行分析,根據問題判斷需要哪種類型的資訊,然後透過API、或資料庫檢索相關資料,甚至加入Metadata的過濾,可以提高搜尋結果的準確性。

Adaptive RAG (資料來源: https://langchain-ai.github.io/langgraph/tutorials/rag/langgraph_adaptive_rag/)

例如,詢問台積電的近期股價走勢,Adaptive RAG中的Query Analysis先判斷出需要台積電歷史股價的API,取得歷史資料提供給後續的語言模型做生成;詢問台積電近一季的EPS時,Adaptive RAG中的Query Analysis可以先判斷出需要台積電的財報資料等,再從資料庫中檢索出資料提供給後續的語言模型做生成,依照詢問內容給予正確的資料來源。Adaptive RAG細節和實作,可見LangGraph提供的Adaptive RAG文件

Self-RAG規劃審稿流程

撰寫文章時,收集到素材之後,可以再重新檢視一次,透過AI也可做到類似的流程,使用Self-RAG的架構 (如下圖),把檢索到的文件,重新使用語言模型檢視一次是否符合需求,符合需求留下,不符合需求丟棄,這樣可以再一次檢視文件的可用程度。例如想檢索台積電的新聞,但如果檢索到台積電的2023年財報資料,就可以透過這個步驟捨棄這份文件,提高後續生成的準確度。

Self-RAG (資料來源: https://langchain-ai.github.io/langgraph/tutorials/rag/langgraph_self_rag/)

文字生成後,還可以再審稿,Self-RAG中提供兩個步驟的審稿:

(1) 檢視是否有幻覺(Hallucinations)的情況: 即用語言模型比對生成的結果與檢索到的文件,是否有兩者不符合的地方,確認生成答案階段語言模型是否有瞎掰的情況。

(2) 檢視答案是否有回答問題: 我演講時, QA時間回答問題後常問說,有沒有回答到你的問題,也可以用AI確認這一步。將語言模型生成的答案,與一開始的問題,再一次透過語言模型做比對,檢視答案是否有回答問題。

Self-RAG提供語言模型的審稿機制,再最後階段判斷文章是否正確,提升生成文章的準確度。更多Self-RAG細節和實作,可詳見LangGraph提供的文件

結論

當我第一次看到Self-RAG和Adaptive RAG的論文時,起初對於語言模型的可靠性持保留態度,並質疑審核機制的可行性。但經過深思,就如同人類也無法做到百分之百準確,只要語言模型的準確度達到一定水準,透過多重關卡的審核,便可逐步提升文章的品質。在出版書籍、工廠生產等領域均存在類似的品質把關機制,實際運用後也發現效果良好。LangGraph擁有廣泛的應用場景和靈活性,能夠賦予語言模型完成更加複雜多樣的任務。相關課程可查看DeepLearning.AI提供的LangGraph課程

然而,Self-RAG和Adaptive RAG在檢視過程中,仍需執行語言模型,會耗費更多時間。對於撰寫高品質文章而言,時間通常不是主要考量因素。但若應用於客服等對話系統,則必須考慮回應時間的影響。

這系列文章我們綜合了評估指標MongoDB向量資料庫與全文搜尋、以及LangGraph素材選擇與審稿的流程,並整合量化和質化等不同類型的數據,產生金融相關報告,已申請金融科技多項相關專利。目前,該系統正處於實驗階段,希望系統最終能夠具備撰寫個股研究報告等功能,系統現階段提供台積電研究報告聯發科研究報告中信金研究報告玉山金研究報告以及投資幫手對話機器人等實驗,也會進一步優化系統。綜合以上方法,雖然目前的方法尚無法百分之百正確,但已大幅減少了AI系統產生幻覺(hallucination)的問題。未來我們將擴展應用範疇,包括徵信報告撰寫、理財機器人等,並進一步整合保險、稅務等領域的知識,以期為用戶提供更完整且智能化的金融科技服務。

— — — — — — — — — — — — — — — -

作者: 王淳恆 (Andrew Wang)
奇享智能創辦人兼執行長
FindBillion.com創辦人
Kaggle(Google旗下資料科學與人工智慧競賽平台)競賽Expert等級

曾任:
台灣人工智慧學校 經理人班/醫療專班 講師
沐恩生醫 技術長
台灣生醫人工智慧研究發展協會 秘書長
聯發科技 人工智慧智能技術群 技術副理

學歷:
交通大學 電信工程研究所 碩士

金融證照:
證券商高級業務員

專長領域:
人工智慧與財務分析 (2010~至今)
人工智慧與影像分析 (2015~至今)
人工智慧與醫療分析 (2018~至今)
10年以上人工智慧研發經驗
20年以上通訊與影像的晶片設計、訊號處理與演算法相關工作經驗

經歷:
Kaggle(Google旗下資料科學與人工智慧競賽平台)三銀二銅
Kaggle史上最高獎金的競賽銀牌
2018 RSNA肺炎偵測競賽銀牌
2017年人工智慧年會 講者
政治大學/成功大學/台科大/高雄科大/東海大學/世新大學業界講師
9項台灣專利/3項美國專利/3項日本專利
與醫師合作 6篇醫學AI期刊論文/多篇會議論文

--

--