58同城孫啓明:生活服務垂類大模型怎麼搭?自研+開源兩手抓,火速微調上線Llama 3|GenAICon2024

智東西作者 GenAICon 2024

2024中國生成式AI大會於4月18-19日在北京舉行,在大會第二天的主會場AIGC應用專場上,58同城TEG-AI Lab大語言模型算法負責人孫啓明以《生活服務領域垂類大語言模型建設和應用》爲主題發表演講。

孫啓明詳細介紹了58同城搭建生活服務垂類大模型體系的思路和心得。據他分享,58同城正在進行整體改造與產業化升級,力圖實現整個服務鏈條中的信息流程在線化和數字化。爲了支持這一轉型,58同城AI Lab構建了模型領先、敏捷易用的AI平臺,以助力AI應用在其內部四大業務線的快速落地。

在孫啓明看來,通用大模型+提示不會代替一切,應用方需要結合自身業務場景,微調出自己的大模型。目前58同城每天都有大量的大模型訓練任務在進行,四大業務線都用大模型提升服務體驗,迄今其線上模型數量已經超過200個。

58同城搭建了一套支持大語言模型訓練、推理的平臺,基於該平臺推出垂類大語言模型靈犀大模型(ChatLing),相比官方開源大模型實現了更好效果。除了自研模型外,58同城還積極集成開源通用大模型,並能快速響應最新開源模型的發佈。

例如,4月18日晚間最新的Llama 3模型剛開源,第二天下午58同城就火速在自家AI平臺上線這款新開源模型。

以下爲孫啓明的演講實錄:

我將主要介紹我們是如何構建相關垂直領域的大模型平臺,並以此賦能58同城的線上業務產品,從而帶來了較爲可觀的線上收益。

首先,讓我做一個簡短的自我介紹。自從畢業後加入58同城,我的工作重點一直集中在推薦系統、NLP(自然語言處理)以及大模型技術等領域。目前,我負責58同城大語言模型的技術方向,並主導了公司內部大模型平臺從0到1的建設工作。

58同城作爲一個服務平臺,其主營業務涵蓋四個主要方向:生活服務、房產、招聘和汽車。

我們目前對業務增長的策略進行了“第一曲線”和“第二曲線”的劃分。“第一曲線”指的是我們傳統的流量模式,即潛在客戶通過購買58同城的會員服務,成爲我們的B端商家,這些商家在58同城平臺上發佈信息。而C端則瀏覽這些帖子,並與商家直接進行交互和後續溝通,這就是我們的流量生意模式。我們的每條業務線,包括維修、房產等,都有相應的案例展示。

通過這種方式,58同城不僅提供了一個信息發佈的平臺,還促進了B端商家和C端消費者之間的直接聯繫,從而實現了雙方的需求匹配。

一、服務平臺借力AI轉型,智能助手實現初步篩選和留資

大語言模型的建設和應用,將進一步優化流量生意模式的過程,提高用戶體驗,增強平臺的服務質量和效率。

58同城正在進行整體的改造和產業化升級,力圖通過第二曲線戰略實現業務模式的轉型。

我們的目標是將整個服務鏈條中的信息流程在線化和數字化,以此無縫連接上下游環節,提供一站式服務,讓客戶能夠在我們平臺上完成更多事務,而不僅僅是簡單的流量生意。比如用戶可以在58同城平臺上直接尋找保姆、月嫂,或者完成房產領域的相關工作。

爲了支持這一轉型,58同城AI Lab致力於建立一個領先、敏捷且易用的AI平臺,旨在促進AI應用在各個業務線中的快速實施和落地。

我們設計的流程圖從底層的AI算力開始,包括GPU、CPU、NPU等通用技術平臺資源。

在技術平臺層,我們進行整體的算法引擎設計,包括算力管理、大規模集羣調度,以及離線和在線性能加速。

在算法模型層面,我們的平臺涵蓋了圖像、語音、傳統NLP算法、3D建模,以及新興的大語言模型和多模態大模型。

在技術平臺層之上,我們構建了應用平臺層,提供了包括智能對話、客服服務、VR看房、AIGC圖片生成、數字人克隆互動等服務。此外,我們的Agent(智能體)包含工作流和知識庫插件,以適應不同領域的應用需求。

最終,基於整個AI應用平臺,我們進一步賦能公司內部的AI應用,包括銷售、客服以及線上產品、運營和辦公等各個方面。

目前這套流程在公司內部運行得相當順暢,每天有大量的大模型訓練任務在進行,我們四大業務線基本上都能夠利用大模型來提升服務。以今天爲例,我們線上訓練的模型數量大約有200多個。

在應用方面,我們上線了一個B端商家智能聊天助手。這個助手主要應用於招聘場景,尤其是在58同城平臺上,我們發現有很多藍領崗位的招聘用到了這一助手。

招聘方可能沒有足夠的客服團隊來及時響應每一個投遞簡歷的商家,這時,我們的智能助手就會接管對話。它基於大模型和職位相關信息,能夠主動詢問投遞者是否具備一些基本的工作經驗,是否能夠滿足職位的基本要求。同時,如果用戶對公司的位置、職位的待遇等信息有疑問,智能助手也能夠基於大模型提供相關內容,進行簡單的溝通。

智能聊天助手的核心功能在於AI留資和初步篩選。對於求職者而言,AI需要與其進行有效溝通,獲取簡歷,並判斷其是否符合招聘方的基本需求。

在理想情況下,我們希望AI能夠做到更進一步,即爲招聘方直接提供已經通過面試的人選。甚至可能由AI完成整個面試過程,直接判斷求職者是否適合入職。

如果能夠實現這一點,相比傳統的僅提供流量的業務模式,使用大模型作爲聊天助手將是一個巨大的提升。後者的優勢在於它們能夠更好地理解和處理複雜的對話場景,提供更爲精準和個性化的交互體驗。

我們嘗試了兩種大模型應用方案。

首先,我們嘗試了一種端到端的方法,讓大模型全面接管並處理整個聊天過程,包括適時的回覆和溝通交流。然而,我們發現這種方法並不理想。隨後,我們轉向了傳統NLP方法的參考,這些方法包括自動回覆、文本分類、文本匹配和問答知識庫。

此外,還有主動引導策略,它基於狀態機進行回覆,例如,在解答了一個問題之後,系統會根據配置好的話術適時提出下一個問題。最後是槽位識別,它根據用戶提供的內容進行設計和回覆。但這些傳統NLP方法過於依賴知識庫,且維護成本較高,尤其是在信息快速變化的情況下,比如經濟趨勢變化或新興職位的出現,傳統知識庫的更新維護尤爲困難。

我們的團隊負責58同城線上衆多場景的知識庫服務,面對知識庫信息的不斷變化,我們嘗試採用自動化挖掘技術以減少手動更新的需求,但目前這些技術仍未能達到手動更新的效果,尤其是在多樣性方面存在不足。

我們對AI對話系統的評估非常嚴格,尤其是在對話的流暢度方面,我們通過設定正確標準來評估機器人在對話中的每一句話是否恰當,任何不符合標準的回覆都會導致對話流暢度的下降。我們的目標是使對話流暢度達到80%,這是衡量機器人能否替代人類工作的指標之一。

二、彙集自研和第三方模型,Llama 3已上線平臺

我們緊跟去年ChatGPT等通用大模型的發展趨勢,開始探索各類模型。

我們與業界的共識是,通用大模型結合提示工程並不能解決所有問題,尤其在實際應用中,我們不能僅依賴聊天能力來應對所有問題。儘管一些開源或閉源的商業模型在日常對話中表現良好,但在業務場景中,它們難以達到99.9%以上的準確率。

因此,我們開始着手構建一個平臺,旨在支持大語言模型的整個訓練和推理流程,並與各個行業中效果顯著的API進行集成。我們希望公司內部所有業務部門都能利用上當前最好的模型。

我們的平臺架構分爲幾個層次,首先是設施層,它提供了必要的硬件資源和計算平臺。在模型層,我們集成了多種開源序列模型,包括Llama、Qwen、Baichuan、Yi等。我們自建的“靈犀”平臺也訓練並集成了我們的模型ChatLing。

在工具層面,我們提供了當前性能優秀的推理加速框架,如vLLM、TGI、TensorRT-LLM、EnergonAI,以及訓練方面的微調工具,包括對齊方式和封裝了MoE建模方式的工具。

這樣的封裝設計使得我們的業務線研發人員,甚至是非技術背景的同事,可以不必深入瞭解複雜的技術細節。他們只需要準備好數據,通過平臺的簡單點擊操作和數據集配置,利用我們提供的優秀默認參數,或者使用我們的工具對這些參數進行微調,就能訓練出適合自己行業的大語言模型。

我們構建了名爲ChatLing的靈犀大語言模型,這一過程得益於我們之前提到的大語言平臺,使得預訓練、SST、領域微調和強化學習對齊這三個階段的流程能夠順利執行。

我們並沒有完全採用從零開始訓練的策略,因爲這需要大量的高質量語料,而且當前的模型訓練通常需要處理至少1.5T到2T的Tokens。

爲了高效利用資源並快速迭代,我們選擇了基於已有的、國內外表現良好的開源模型作爲基礎,即所謂的“基座”。在這些基座之上,我們結合58同城的業務數據,使用經過清洗的、規模達幾百億的高質量語料進行增量預訓練,隨後執行微調和強化學習,以進一步提升模型的性能。

通過在開源通用基座上完成這三個階段的訓練,我們得到了靈犀大模型,該模型隨後被用於賦能58同城的業務應用。

這個流程的靈活性體現在,一旦有新的開源模型發佈,我們的團隊能夠迅速響應。4月18日晚上Llama 3剛開源,4月19日下午我們已經完成了基於該模型的微調訓練和強化學習,並且已經上線了新模型。這意味着4月19日晚上我們的業務部門就可以開始使用基於Llama 3微調的模型。

我們致力於開發和採用多種技術來優化大語言模型的推理資源使用,這些技術目前正被積極地應用於我們的業務中。

其中一項技術是MoE,我們創建了一套自動化流程來構建MoE模型。這一流程允許不同模型根據自身需求,選擇多種實現方式,包括類似Databricks的方法、傳統的Mistral方式,或TM2等,來生成其基座MoE模型。此外,我們完成了基於MoE模型的微調和訓練工作,使得模型能夠更加精準地服務於特定的業務場景。

我們還採用了S-LoRA技術,這是一種廣泛使用的微調方法,儘管有人質疑其與BERT直接微調的差異性,但我們通過集成LoRA的方式,允許一個基座模型兼容多達上千個LoRA模型,實現每個場景的個性化定製。這種方法可以根據線上流量的多樣性進行批次拼接,與基座模型結合進行推理,極大程度地節約了資源。

在大模型的訓練和推理加速方面,我們採用了包括Unsloth在內的傳統方案,以及在Flamer上實現的微調技術和增量預訓練中的Flash Attention技術。此外,我們利用基於HQQ的推理加速技術。儘管存在一定的硬件資源上限,例如使用兩張4090顯卡來支持千問72B模型的推理和微調,但這已是我們目前的極限。

三、大語言模型支持多種合作模式,靈活應對不同業務方

我們的平臺建設支持多種合作模式。

對於內部沒有算法團隊的應用方,我們提供了Agent平臺,類似於智譜和千問提供的能力。這個內部Agent平臺允許用戶通過低代碼甚至零代碼的方式快速創建機器人,並通過拖拽的方式構建大模型的工作流。

例如,創建一個查詢天氣的機器人或調用內部接口的服務,用戶只需拖拽相應的流程模塊,比如大模型處理流程、知識庫流程、接口調用流程,以及讓大模型自檢工作流正確性的流程。完成後,用戶一點發布即可生成API,供業務方直接接入。

這種簡便的使用方式,提高了大家的使用滿意度,並在公司內部得到了廣泛應用。

對於應用四,我們直接提供API接口,但不包括Agent平臺。這種方法適合於那些認爲無需微調模型即可直接使用的場景。我們接入了多種商用模型,如文心一言、智譜AI(的GLM)、通義千問等,並結合我們自己的ChatLing模型,以便快速部署。

針對需要微調的場景,我們提供了三種不同的支持方案。

應用三是我們較爲常見的做法,包含一個專門的微調團隊,他們基於靈犀大模型爲業務提供定製化的微調服務,從而實現平臺對業務的賦能。

對於應用二,業務方擁有自己的算法團隊,因此不需要ChatLing大模型團隊的直接參與。在這種情況下,算法團隊可以直接在我們的大模型平臺上進行深入的定製化微調和相關操作。

對於那些算法能力特別強的業務方(應用一),他們可能不需要基於靈犀大模型或經過Instruct調整的模型進行微調。對於這樣的情況,我們同樣提供支持,包括必要的參數配置以及後續的Prompt優化服務,幫助業務方對微調數據進行思維鏈式的優化和重現。

四、靈犀模型更能理解生活服務,在線推理速度超閉源2.6倍

在靈犀大模型的效果評測方面,我們基於不同尺寸的開源大模型訓練並落地了多版本的靈犀大模型,包括MoE架構的實現。

我們在OpenCompass、MT-bench等公開評估平臺上對模型能力進行了測試,並提供了Turbo、Plus等四個版本的模型。相比其他開源模型,我們的模型在MMU、C-Eval等指標上展現出了一定的性能優勢。

除了在開源數據集上的評測,我們還使用內部數據對模型進行了評估。在NLP和NLU任務上,我們經過微調的開源模型相比直接使用官方開源大模型的效果更爲顯著。

這一改進主要得益於我們在ChatLing的開發過程中融入了大量行業數據,構建了具有行業特性的大模型,這使得我們的模型在理解生活服務和招聘領域方面更爲精準和強大。

我們進行了一項實驗,購買了市場上排名前一、二大廠的服務,並與我們的ChatLing進行了對比測試。

我們使用的是擁有約百億級別參數量的ChatLing Turbo,與商用大廠基於千億參數的大模型進行了同期微調對比。在這次對比中,我們確保了除了模型本身,其他使用的數據和條件儘可能保持一致。

結果顯示,在百億參數規模下,我們的ChatLing模型在微調後的表現超過了商用大廠的千億參數模型。這一發現極大地增強了我們對小尺度模型在特定行業數據上應用可行性的信心。

我們將大模型的能力進行了分解,並設計了一套包含四個獨立模塊的方案。這四個模塊都是獨立的大模型,通過S-LoRA技術部署到一個基座模型上。

第一個模塊是意圖識別,它負責判斷用戶的當前意圖;第二個模塊是回答問題,它需要判斷用戶的問題是否可以回答,並生成相應的答案,這涉及到NLG和NLU的雙重任務;第三個模塊是反問生成,它根據用戶已提供的信息,識別出缺失的部分,並生成問題以向用戶詢問;最後一個模塊是信息抽取,它負責從用戶提供的信息中抽取關鍵數據。

在這四個能力中,意圖識別、信息抽取以及回答問題模塊的一部分可以被視爲較爲直接的NLG任務,大模型在這些任務上表現出了很高的準確性。而回答問題和反問生成模塊則涉及到更復雜的NLU任務,我們通過結合NLG和NLU的技術,優化了模型,減少了模型產生幻覺的概率。

我們通過實施基於AI中控或Agent的案例,對不同的大模型應用策略進行了深入的比較和分析。我們特別關注了將大模型拆分爲四個獨立能力的方法,並與閉源千億參數大模型的微調效果以及GPT-4 Turbo直接管理對話的效果進行了對比。

通過這些對比,我們得出了一些有價值的結論。

相比於商用的閉源大模型,當我們將大模型拆分爲意圖識別、回答問題、反問生成和信息抽取這四個獨立能力時,每個獨立能力的表現都優於閉源模型。這表明,針對特定行業領域的大模型在該場景下的訓練是非常成功的。

其次,在會話流暢度方面,如果要求對話的每一輪都必須流暢準確,傳統NLP的水平雖然較高,但GPT-4端到端的方案並未達到這一水平。無論是使用閉源大模型還是我們的靈犀大模型,按照四個能力拆分後的方案都比傳統NLP有顯著提升。

在推理速度上,我們的百億級模型在尺寸上比商用模型小很多,但通過推理加速技術,我們的在線推理速度是商用閉源大模型最高檔位速度的2.6倍。

綜上所述,垂直領域的大模型相比於開源的通用大模型具有明顯的性能優勢。無論是在開源數據還是閉源數據上,垂直領域大模型都能達到或超過開源模型的傳統評估標準,同時在內部的特定場景下展現出更優的性能指標。即使與經過微調的商用千億參數通用大模型相比,垂直領域的百億參數大模型在性能上也不遜色。

大模型的民主化趨勢愈發明顯,即使使用較小規模的大模型,如Llama 3這樣的開源8B模型,只要結合了特定垂直領域的語料進行訓練,其在特定場景下的表現甚至可能超越直接使用商用千億通用大模型或基於其微調的結果。這是我們通過實踐積累的寶貴經驗。

以上是孫啓明演講內容的完整整理。