如果您希望以零代碼的方式在PAI上完成Llama2系列大語言模型的訓練和推理,您可以使用快速開始的一鍵部署,快速啟動Llama2系列模型的在線推理服務,并通過WebUI和API兩種方式調用,或者使用自己的數據集對預訓練模型進行微調訓練,實現定制化的場景和任務。
背景信息
Llama2是由Meta開源的、以英語為主的預訓練大語言模型,支持任意自然語言文本作為輸入,并產生文字形式的輸出。Llama2模型的參數范圍從70億到700億不等,包括7b、13b、70b三種規格,并在每個規格下都有專門適配對話場景的優化模型Llama2-chat。快速開始支持Llama2系列模型的在線推理,同時也可以作為上游模型訓練以達到更好的定制場景效果。
快速開始提供的llama-2-7b-chat模型來源于HuggingFace提供的Llama-2-7b-chat模型,它也是主要基于Transformer架構的大語言模型,使用多種混合的開源數據集進行訓練,因此適合用于大多數的英文通用領域場景。
本文以llama-2-7b-chat模型為例,為您介紹如何通過快速開始將模型部署到EAS,創建并調用推理服務。
使用限制
目前快速開始支持的地域包括華北2(北京)、華東2(上海)、華東1(杭州)、華南1(深圳)、華北6(烏蘭察布)。
如需開通華北6(烏蘭察布)地域,請聯系您的商務經理。
使用費用
使用OSS存儲會產生相關費用,計費詳情請參見OSS計費概述。
快速開始本身不收費,但使用快速開始進行模型部署和訓練時,會產生對應的模型部署(EAS)費用和任務訓練(DLC)費用,計費詳情請參見模型在線服務(EAS)計費說明、分布式訓練(DLC)計費說明。
前提條件
已開通PAI(EAS、DLC)并創建了默認的工作空間,操作詳情請參見開通PAI并創建默認工作空間。
- 說明
Bucket所屬地域與PAI的地域一致。Bucket一旦創建,則無法更改其所屬地域。
閱讀并承諾遵守Llama模型的自定義可商用開源協議。
說明如果無法訪問,您可能需要設置代理后再嘗試重新訪問。
操作步驟
llama-2-7b-chat模型適用于大多數非專業場景,如果直接部署模型后的預測結果不滿足您的業務需求,或者當您需要應用特定領域的專業知識時,您可以對模型進行微調訓練,幫助模型提高在自定義領域的能力,使其更符合您的實際業務需求。
大語言模型可以在對話過程中直接學習到比較簡單的知識,請您根據自己的需求選擇是否訓練。當前快速開始支持的訓練方式基于LoRA。LoRA訓練相較于其他訓練方式(如SFT等)會顯著降低訓練成本和時間。
直接部署模型
登錄PAI控制臺,在左側導航欄單擊快速開始。
選擇工作空間后,單擊進入快速開始。
在模型列表頁面的搜索框中輸入llama-2-7b-chat,然后單擊搜索。
說明您也可以根據實際業務選擇需求選擇其他模型,模型需要至少64 GiB內存和24 GiB及以上的顯存,請確保您選擇的計算資源滿足以上要求,否則可能導致部署失敗。
單擊llama-2-7b-chat模型卡片,進入模型詳情頁面,單擊模型部署。
在模型部署詳情頁面下方,單擊部署。
在彈出的計費提醒對話框中,單擊確定。
頁面自動跳轉到服務詳情頁面。當服務狀態變為運行中時,代表推理服務已部署成功。
服務部署成功后,您可以通過WebUI或API兩種方式調用服務。
在服務詳情頁面單擊查看WEB應用。
調用推理服務。
WebUI方式:在Chat頁簽中的對話框中輸入對話內容后,單擊Send,即可開始對話。
API方式:單擊WebUI頁面底部Use via API,查看API調用詳情。
微調訓練模型
登錄PAI控制臺,在左側導航欄單擊快速開始。
選擇工作空間后,單擊進入快速開始。
在模型列表頁面的搜索框中輸入llama-2-7b-chat,然后單擊搜索。
說明您也可以根據實際業務選擇需求選擇其他模型,模型需要至少64 GiB內存和24 GiB及以上的顯存,請確保您選擇的計算資源滿足以上要求,否則可能導致部署失敗。
單擊llama-2-7b-chat模型卡片,進入模型詳情頁面,單擊微調訓練。
配置模型訓練相關參數。
快速開始已經默認配置了計算資源配置和超參數配置,可以滿足大多數的使用場景,您也可以根據自己的實際業務進行修改。本實踐教程中需要配置的關鍵參數說明請參見下表。
參數
說明
訓練設置
輸出路徑
選擇OSS Bucket路徑,用來保存訓練生成的模型文件。
說明如果您在工作空間詳情頁面配置了工作空間存儲路徑,這里會默認填充該路徑,無需手動配置。如何配置工作空間存儲路徑,請參見管理工作空間。
數據集配置
訓練數據集
為方便您試用體驗Llama2模型,快速開始已提供了默認的訓練數據,您可以直接使用。如果您不使用默認數據集,需要按照模型文檔中的訓練數據格式準備好訓練數據,然后通過以下兩種方式上傳訓練數據:
訓練數據支持JSON格式輸入,每條數據由問題、答案和ID組成,分別用
instruction
、output
和id
字段表示,例如:[ { "instruction": "以下文本是否屬于世界主題?為什么美國人很少舉行閱兵?", "output": "是", "id": 0 }, { "instruction": "以下文本是否屬于世界主題?重磅!事業單位車改時間表已出!", "output": "不是", "id": 1 } ]
為了更好地驗證模型訓練的效果,除了PAI已提供的訓練數據集之外,也推薦您準備一份驗證數據集,該數據集將用于在訓練中評估模型訓練的效果,以及訓練的參數優化調整。
單擊訓練,提交訓練作業。
在彈出的計費提醒對話框中,單擊確定。
頁面自動跳轉到任務詳情頁面。當任務狀態變為成功時,代表模型已經訓練完成。
已經完成訓練的模型會被保存到OSS上,可在基本信息區域的輸出路徑中查看具體位置。
說明如果使用默認的數據集、超參數和計算資源配置,訓練大概耗時1小時30分鐘。如果使用自定義的訓練數據和配置項,訓練完成時間可能有所差異,通常應該會在數小時內完成。
部署微調模型。
部署以及調用微調模型的流程和直接部署模型相同,操作詳情請參見直接部署模型。
后續操作
您可以在快速開始頁面單擊任務管理,查看訓練任務和部署任務的詳情。