🚀 開源澳大利亞法律大語言模型⚖️
開源澳大利亞法律大語言模型是基於澳大利亞法律訓練的最大的開源語言模型。該模型擁有超15億參數,訓練數據豐富優質,涵蓋來自澳大利亞開放法律語料庫的約70,000條澳大利亞六個司法管轄區的法律、法規和判決,非常適合在澳大利亞法律領域的各種下游自然語言處理任務(包括文本生成、文本補全和問答)上進行微調。為確保儘可能多的人能夠使用該模型,它採用Apache許可證2.0發佈。
🚀 快速開始
✨ 主要特性
- 基於澳大利亞法律訓練,適用於澳大利亞法律領域的自然語言處理任務。
- 超15億參數,訓練數據豐富優質。
- 採用Apache許可證2.0發佈,易於訪問和使用。
📦 安裝指南
文檔未提及安裝步驟,此處跳過。
💻 使用示例
基礎用法
>>> from transformers import pipeline, set_seed
>>> set_seed(42)
>>> generator = pipeline('text-generation', model='umarbutler/open-australian-legal-llm')
>>> response = generator('Section 51 of the Constitution provides', max_length=55)
>>> print(response[0]['generated_text'])
📚 詳細文檔
模型信息
屬性 |
詳情 |
模型類型 |
基於GPT2-XL的文本生成模型 |
訓練數據 |
umarbutler/open-australian-legal-corpus |
評估指標
任務 |
數據集 |
指標 |
值 |
文本生成 |
umarbutler/open-australian-legal-qa(訓練集) |
困惑度 |
8.015031389864035 |
🔧 技術細節
數據預處理
對澳大利亞開放法律語料庫4.2.0版本中的218,340條法律、法規和判決進行了以下清理操作:
- 將不間斷空格替換為常規空格。
- 將回車換行符替換為換行符。
- 移除全為空白字符的行。
- 移除文本末尾的換行符和空白字符。
- 移除文本開頭的換行符和空白字符。
- 移除行末尾的空格和製表符。
清理後,移除了少於128個字符的文本和具有重複XXH3 128位哈希值的文本,剩餘218,207個文檔。使用這些文檔預訓練了一個類似GPT2的分詞器,然後將它們分割成512個標記長的塊,使用分詞器的序列結束標記 ('<|endoftext|>') 作為分隔符,並填充最後一個塊的末尾。對用作填充的序列結束標記應用了注意力掩碼,但第一個這樣的標記除外。將得到的塊隨機打亂,分割成包含1,966,867個塊的訓練數據集和包含218,541個塊的驗證數據集。
模型訓練
- 基礎模型:使用GPT2-XL作為基礎模型。保留了在語料庫上訓練的詞彙表和GPT2詞彙表中共享的標記的輸入嵌入,但將它們移動到新的位置。將唯一標記的嵌入設置為平均嵌入權重。
- 超參數設置:
-
前100,290步:
| 超參數 | 值 |
| --- | --- |
| 序列長度 | 512 |
| 輪數 | 1 |
| 優化器 | AdamW |
| 學習率 | 1e-4 |
| 學習率調度器 | 帶熱身的線性調度器 |
| 批次大小 | 6 |
| 權重衰減 | 0.01 |
| 熱身比例 | 0.06 |
-
後續訓練:在兩個RTX A6000上訓練約120,050步(91小時)後,託管模型的vast.ai實例崩潰。幸運的是,在第100,290步(約一個輪次的60%)保存了一個檢查點,但優化器的狀態未正確下載。隨後將模型轉移到一個新實例,在L40上繼續訓練133,711步(約一個輪次的40%),超參數如下(變化部分加粗顯示):
| 超參數 | 值 |
| --- | --- |
| 序列長度 | 512 |
| 輪數 | 1 |
| 優化器 | AdamW |
| 學習率 | 4.255e-5 |
| 學習率調度器 | 線性調度器 |
| 批次大小 | 3 |
| 權重衰減 | 0.01 |
| 熱身比例 | 0.00 |
完成一個輪次的訓練後,模型的驗證損失達到2.04。
📊 基準測試
在澳大利亞開放法律問答數據集2.0.0版本上進行測試,該模型的困惑度為8.01,優於所有已知的澳大利亞法律語言模型。
🚧 侷限性
- 雖然未對模型進行偏差測試,但預計它會表現出與GPT2-XL類似(甚至全部)的偏差。
- 模型可能會對法律、法規和判決中使用的語言類型以及聯邦和新南威爾士州法律存在偏差(在模型創建時,這是澳大利亞開放法律語料庫中最大的文檔來源)。
- 由於許可限制,訓練數據中未包含維多利亞州、北領地和澳大利亞首都領地的法律,因此模型可能缺乏對這些地區法律的瞭解。
📄 許可證
為確保儘可能多的人能夠使用該模型,它採用Apache許可證2.0發佈。
🔖 引用
如果您在工作中使用了該模型,請引用:
@misc{butler-2023-open-australian-legal-llm,
author = {Butler, Umar},
year = {2023},
title = {Open Australian Legal LLM},
publisher = {Hugging Face},
version = {1.0.0},
url = {https://huggingface.co/datasets/umarbutler/open-australian-legal-llm}
}
🙏 致謝
本著和解的精神,作者向澳大利亞各地的傳統土地守護者及其與土地、海洋和社區的聯繫表示敬意。他向過去和現在的長者表示敬意,並將這種敬意延伸到今天所有的澳大利亞原住民和託雷斯海峽島民。
作者感謝澳大利亞開放法律語料庫的數據源以開放許可證的形式提供數據。
作者還感謝在模型訓練中使用的許多Python庫的開發者,以及GPT2的開發者,該模型是基於GPT2構建的。
最後,作者永遠感激他的妻子給予的無盡支持,以及她願意忍受許多個深夜編寫代碼和修復錯誤的時光。