天天看點

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

作者:智東西
58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

作者 | 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應用在各個業務線中的快速實施和落地。

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

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

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

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

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

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

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

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

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

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

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

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

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

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

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

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

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

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

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

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

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

是以,我們開始着手建構一個平台,旨在支援大語言模型的整個訓練和推理流程,并與各個行業中效果顯著的API進行內建。我們希望公司内部所有業務部門都能利用上目前最好的模型。

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

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

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

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

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

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

我們并沒有完全采用從零開始訓練的政策,因為這需要大量的高品質語料,而且目前的模型訓練通常需要處理至少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,供業務方直接接入。

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

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

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

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

應用三是我們較為常見的做法,包含一個專門的微調團隊,他們基于靈犀大模型為業務提供定制化的微調服務,進而實作平台對業務的賦能。

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

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

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

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

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

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

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

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

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

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

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

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

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

第一個子產品是意圖識别,它負責判斷使用者的目前意圖;第二個子產品是回答問題,它需要判斷使用者的問題是否可以回答,并生成相應的答案,這涉及到NLG和NLU的雙重任務;第三個子產品是反問生成,它根據使用者已提供的資訊,識别出缺失的部分,并生成問題以向使用者詢問;最後一個子產品是資訊抽取,它負責從使用者提供的資訊中抽取關鍵資料。

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

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

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

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

58同城孫啟明:生活服務垂類大模型怎麼搭?自研+開源兩手抓

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

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

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

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

以上是孫啟明演講内容的完整整理。

繼續閱讀