语言:
- 英语
许可证: Apache-2.0
库名称: transformers
基础模型: gpt2-xl
标签:
- 法律
- 法律领域
- 澳大利亚
- 训练生成
数据集:
- umarbutler/open-australian-legal-corpus
小部件:
- 文本: '根据《刑法》'
- 文本: '贸易限制是指'
- 文本: '宪法第51条规定'
- 文本: "'不专业行为包括'"
指标:
- 困惑度
模型索引:
- 名称: open-australian-legal-llm
结果:
- 任务:
类型: 文本生成
名称: 文本生成
数据集:
类型: umarbutler/open-australian-legal-qa
名称: 开放澳大利亚法律问答
分割: 训练集
版本: b53a24f8edf5eb33d033a53b5b53d0a4a220d4ae
指标:
- 类型: 困惑度
值: 8.015031389864035
名称: 困惑度
来源:
名称: lmppl
网址: https://github.com/asahi417/lmppl
开放澳大利亚法律大语言模型 ⚖️
开放澳大利亚法律大语言模型是基于澳大利亚法律训练的最大开源语言模型。
该模型拥有超过15亿参数,其规模及训练数据的丰富性和质量——包含来自开放澳大利亚法律语料库的约7万条澳大利亚六个辖区的法律、法规和判决——使其非常适合针对澳大利亚法律领域各种下游自然语言处理任务进行微调,包括文本生成、文本补全和问答。
为确保尽可能广泛的受众可访问性,该模型根据Apache许可证2.0发布。
使用方式 👩💻
以下代码片段展示了访问该模型的众多方式之一:
>>> from transformers import pipeline, set_seed
>>> set_seed(42)
>>> generator = pipeline('text-generation', model='umarbutler/open-australian-legal-llm')
>>> response = generator('宪法第51条规定', max_length=55)
>>> print(response[0]['generated_text'])
创建过程 🧪
对开放澳大利亚法律语料库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步(约一个epoch的60%)保存了检查点,但优化器状态未能成功下载。随后模型迁移至新实例,在L40上继续训练133,711步(约一个epoch的40%),使用以下超参数(变更部分已强调):
超参数 |
值 |
序列长度 |
512 |
训练轮数 |
1 |
优化器 |
AdamW |
学习率 |
4.255e-5 |
学习率调度器 |
线性 |
批次大小 |
3 |
权重衰减 |
0.01 |
热身比例 |
0.00 |
由于丢失了优化器状态,模型学习率下降速度较之前缓慢。尽管如此,完成一个epoch训练后,模型验证损失达到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 = {开放澳大利亚法律大语言模型},
publisher = {Hugging Face},
version = {1.0.0},
url = {https://huggingface.co/datasets/umarbutler/open-australian-legal-llm}
}
致谢 🙏
本着和解精神,作者承认澳大利亚各地传统土地监护人与土地、海洋和社区的联系。他向过去和现在的长者致敬,并将这份尊重延伸至当今所有原住民和托雷斯海峡岛民。
作者感谢开放澳大利亚法律语料库的数据来源方以开放许可提供数据。
作者还感谢模型训练依赖的众多Python库开发者,以及模型所基于的GPT2的创造者。
最后,作者永远感激妻子无尽的支持,以及她对他熬夜编写代码和调试的包容。