得物大模型平臺,業務效果提升實踐
一、背景
得物大模型訓練與推理平臺上線幾個月后,我們與公司內部超過 10 個業務領域展開了全面的合作。在一些關鍵業務指標方面,取得了顯著的成效,例如:
效率相關部門的合作,多維度打標總正確率取得 2 倍以上提升。利用大模型開辟了新的業務,提升了效率部門的人力產出。
某業務訂單 NPS 的識別準確率由 70% (PROMPT 方式)提升到 85% (平臺訓練大模型) 。
本文基于我們與業務合作的經驗,將分享如何在大模型平臺上實現業務效果指標提升。我們將以大模型平臺上從訓練到推理部署的全鏈路流程為基礎,提供優化思路,最終達成業務效果指標的提升。這些流程包括大模型選擇、數據準備、大模型訓練、效果評估和推理部署。
圖片
我們期望更多的業務方能與大模型平臺合作,以實現業務效果的提升。
二、大模型如何幫助業務提升效果
大模型應用場景
大語言模型是一種基于深度學習算法的人工智能技術,可以模擬人類的語言行為,并能夠從大量的文本數據中學習到語言的特征和規律。其應用場景非常廣泛,以下是一些主要的應用場景:
自然語言處理:例如文本分類、情感分析、機器翻譯等,這些應用可以幫助人們更好地理解和處理不同的語言文本,提高準確率。
文本生成和摘要:例如新聞報道、廣告文案、科技論文摘要等,這些應用可以通過對文本內容的分析和理解,自動生成符合語法和語義規則的文本內容。
智能問答系統:例如智能客服、在線教育等,這些應用可以通過對問題的理解和分析,自動回答用戶的問題。
社交媒體分析:例如情感分析、主題分類等,這些應用可以通過對社交媒體文本內容的分析和理解,提取出其中的情感、主題等信息,幫助企業了解用戶的反饋和情感傾向。
此外還有一些行業大模型的應用場景,比如,法律大模型可以提供專業的法務咨詢,醫療大模型可以提供醫療咨詢等場景,Code 大模型可以專業去做編碼等工作。
目前企業內在很多業務場景中都有對接,而且取得不錯的效果,比如:智能問答,商品評論信息分析,自動化編碼等場景。
接入大模型的方式
要接入大語言模型,主要有兩種方式:
1. 使用 PROMPT 工程:
通過設計具有引導性的輸入提示詞,可以調整大模型的狀態,使其能夠按照特定的方式響應新的輸入數據。比如在文本生成任務中,可以設計一些特定的提示詞,讓大模型生成符合要求的文本。
2. 微調訓練大模型:
這是一種使用特定任務的標簽數據來訓練大模型的方法。首先需要準備相應的數據集,然后將預訓練的大模型作為基礎模型進行訓練。完成訓練后,可以對模型進行評估,并根據評估結果進行優化或調整。最后,將微調后的模型部署到實際應用中。
大模型訓練與推理平臺主要提供微調訓練的方式接入大模型。經過微調訓練的大模型通常在效果指標上明顯優于直接使用 PROMPT 工程,這得到了我們與業務方的充分驗證支持。在之前使用 PROMPT 工程接入的業務中,轉向微調訓練后,效果顯著提升。例如,在某業務訂單 NPS 的識別準確率方面,之前基于 PROMPT 與各種工程優化,準確率最多 70%,轉由大模型微調訓練后,可以提升到 85%。
三、基礎大模型選型
基礎大模型指的是各組織已經進行預訓練的大模型,這些模型通常是在大規模文本數據上進行了通用性的預訓練,可以作為基礎模型供其他任務的微調和特定應用程序使用。
業界提供的基礎大模型有哪些
圖片
業界的大模型可以分為閉源系列大模型,開源系列大模型。閉源系列大模型通常通過 API 接口與聊天頁面等方式提供大模型服務,例如 OpenAI 的 GPT 系列、Anthropic 的 Claude 系列、百度的文心一言系列等。對于閉源大模型,通常建議使用 PROMPT 提示的方式來與模型進行交互。如果需要進行微調訓練以適應特定任務或領域,一般建議使用開源大模型。
開源系列的大模型是指開源了模型的參數和部分訓練數據,使用戶能夠下載模型并進行進一步的微調訓練。例如:
Llama2 系列,由 Meta 公司提供,開源了模型參數和訓練論文。
Llama2 生態系列,指的是各組織在 Llama2 的基礎上進行微調訓練,以獲得更好的效果,然后進一步將其開源。當前一些不錯的開源系列包括 Vicuna 系列、XinLM 系列、WizardLM 系列、UltraLM 系列等。
國內開源系列,國內一些廠商也會自己去訓練一些大模型開源,效果也不錯。比如:QianWen 系列,BaiChuan 系列等等。
行業大模型系列是指一些組織基于開源大模型進行領域特定的微調訓練,以在特定行業領域獲得良好的效果,然后將這些模型進行開源分享。這種做法可以滿足特定行業的需求,例如法律領域、金融領域、醫療領域等。這些行業大模型可以更好地適應特定領域的任務和語境,提供更準確的結果,因此在相關行業中非常有價值。
大模型的評測數據集主要有哪些
既然有這么多大模型可供選擇,我們如何確定哪些模型更為出色呢?這涉及對大模型性能進行評估。通俗來說,大模型的評估是指將各種不同場景的問題提供給模型進行回答,然后根據回答的質量來評分。
評測的題目又可以分為客觀題與主觀題,客觀題主要看回答的是否正確,主觀題則需要評測回答的質量等。
圖片
下面我們介紹下一些常用的大模型評測方式。
圖片
下面是最近 AlpacaEval 的大模型評分排行榜單。
圖片
如何做大模型的選型
圖片
預訓練的大模型的應用可以分為通用模型和行業模型。在選擇基礎大模型時,用戶應該根據他們的具體應用場景以及各大模型的評測得分來做決策。
在通用場景,例如情感分析、機器翻譯和文本摘要等,您可以選擇通用大模型。可以查看一些評分排行榜,如 AlpacaEval,或其他排行榜如 MMLU、CMMLU、CEVAL 等,以了解一些性能良好的大模型。一旦選擇了大模型,您也可以在大模型平臺上重新運行評分以便進行進一步驗證。
對于專業領域,如法務、醫療和編程等,您需要關注領域專用的大模型。例如,在編程領域,您可以查看大模型在 HuamEval 上的評分來作出選擇。這將有助于確保模型在特定行業場景中的性能和適用性。
四、數據準備
大模型訓練需要哪些數據
大模型的訓練過程通常包括預訓練、指令調優和偏好學習。在選擇了預訓練的大模型后,您通常只需要進行業務微調,即指令調優和偏好學習。實際上,在大多數情況下,只進行指令調優就足夠了。
以 Alpaca 格式為例,指令調優的數據通常具有以下格式:
{
"instruction": "簡單解釋人工智能的概念。",
"input": "",
"output": "人工智能(Artificial Intelligence,簡稱AI)是指用計算機程序來模擬人類智能的過程。它是一種能讓計算機或程序在執行任務時表現出類似人類智能的技術。人工智能包括了機器學習、自然語言處理、語音識別和計算機視覺等領埴。簡言之,人工智能就是賦予計算機類似人類的思維和行為能力。"
}
在這個示例中,"instruction"表示輸入的指令,"input"表示您的輸入,而"output"則是由大模型生成的答復。因此,進行大模型的訓練需要準備符合這種格式的指令調優數據,而這些數據應該與您的具體業務相關。
訓練數據如何準備
圖片
大模型的訓練數據通常分為兩類:通用數據和業務數據。通用數據,例如 GPT4-Cleaned 數據,主要用于提高大模型的泛化能力。另一類是業務數據,通常是業務方自己獨有的數據。在訓練過程中,通常會將這兩種類型的數據按照一定的比例混合在一起進行訓練。
此外,在數據準備過程中,強調一個非常重要的原則:數據質量將直接影響模型的效果。因此,確保數據的質量和準確性對于獲得良好的模型性能至關重要。
五、大模型訓練
大模型都有哪些訓練方式
圖片
上圖展示了一個完整的大模型訓練過程,從大模型選擇到應用于業務場景,通常包括三個階段:
- 預訓練:在這一階段,大模型利用大量語料庫進行自我學習,逐漸掌握自然語言處理的規律和技巧。這是為了建立一個通用的語言理解基礎。
- 指令調優:這個階段主要針對特定的業務場景進行訓練。通過提供大量指令和相應的反饋,大模型逐漸適應并解決特定問題。這個階段使模型更適應特定業務需求。
- 偏好學習:在大模型的訓練過程中,還要考慮偏好學習,使大模型的回答更加貼近人類的偏好,遵循人類的意圖。如語言風格和表達習慣等。
在前述步驟中,已經完成了基礎大模型的選擇,這些模型是經過預訓練的。因此,在大多數情況下,您確實無需再次進行預訓練。通常,您只需要準備好業務指令數據,然后進行指令調優即可,以使大模型適應和優化特定的業務場景和需求。這簡化了訓練流程,使其更加高效和針對性。
訓練的過程
1. 如何開啟訓練
圖片
在大模型平臺上,用戶可以按照以下步驟迅速啟動大模型訓練并進行自動部署:
- 選擇大模型。基于之前提到的大模型選擇原則,在大模型平臺上選擇您需要的大模型。
- 上傳訓練數據。按照上述數據準備方法,將您準備好的數據上傳到大模型平臺。
- 配置訓練參數。通常情況下,選擇默認配置參數,如 Lora 即可。這些參數通常經過優化以獲得最佳的訓練效果。
- 訓練。點擊相應按鈕,啟動訓練過程。大模型平臺將自動處理訓練任務,以便您專注于業務應用的開發和部署。
2. 訓練結果評估
圖片
在前面的大模型選型過程中,我們介紹了如何使用通用數據集進行大模型的通用評測。類似地,一旦業務方完成了微調訓練,他們需要設置業務相關的測試集,并進行與業務相關的指標評測,以確保模型在特定業務場景下的性能和效果。這個業務相關的評測是確保模型在實際應用中能夠滿足預期需求的關鍵步驟。
六、大模型部署
目前的推理加速方案有哪些
圖片
當前業界對大模型部署加速的技術如下:
- 量化:通過將模型參數量化為 8 位或 4 位,可以在保持模型效果的同時,加速推理過程,減少計算和內存開銷。一些常見的量化框架包括 AWQ 和 GPTQ。
- 顯存管理優化:大模型的運算通常會占用大量顯存,特別是 KV Cache。通過顯存管理優化,如 Page Attention 技術,可以減少顯存碎片,提高顯存利用率。
- Attention 運算優化:Attention 運算在計算時耗時較長,而且會導致大量的內存訪問。通過結合 GPU 硬件的特點,減少內存訪問和緩存,可以加速 Attention 運算。一些技術如 Flash Attention 和 Group Query Attention 可以改進 Attention 性能。
- 算子融合優化,通過合并大模型運算過程中的算子,可以減少計算和內存開銷,從而提高推理速度。
一些常見的優化框架,如 AWQ(用于量化)、GPTQ(用于量化)、VLLM(包括PageAttention)、TGI(包括PageAttention和FlashAttention)、Tensorrt-llm(用于算子融合和 PageAttention)等,可以幫助加速大模型的部署,并提高性能。這些技術和框架是業界在大模型部署方面的一些關鍵進展。
如何選擇推理加速方案
圖片
在大模型平臺上,您實際上無需擔心選擇加速方案。這是因為平臺會根據業界的技術進展和業務中所需的大模型場景進行評估,并自動為您選擇當前最優的推理方案。比如 VLLM,Tensorrt-llm 等。
七、總結與展望
我們在前面的內容中詳細分享了大模型的選擇、數據準備、訓練以及部署等方面的最新技術。未來,我們將進一步深入探討這些技術的細節。
目前,我們已經與超過 10 個業務領域合作,涵蓋了自然語言處理、文本生成、智能問答等領域,并取得了顯著的業務成果。我們鼓勵大家積極探索大模型平臺,以提高業務效果。
由于大模型社區持續發展,未來必定會涌現出更先進的微調訓練和量化部署技術。我們將密切關注這些進展,如果發現新方法在效果和性能方面優于目前支持的方法,我們將及時將其整合到平臺的框架中。