🚀 Qra大语言模型
Qra是一系列适配波兰语的大语言模型,由国家信息处理研究所(OPI)和格但斯克工业大学(PG)合作开发。这些模型在PG TASK计算中心的基础设施上,使用21张英伟达A100显卡进行训练。发布的Qra模型版本以英文Llama 2检查点的权重为初始值,然后在经过精心清理、过滤和去重的波兰语文本语料库上进一步训练,语料库总计约900亿个标记。原始语料库主要由网络数据组成,包括CommonCrawl转储数据和MADLAD - 400语料库。
⚠️ 重要提示:
Qra是基于因果语言建模目标在大型文本语料库上训练的基础语言模型。因此,它们并非用于对话或遵循指令的目的,若要用于此类任务,需要进一步微调。
✨ 主要特性
- 适配波兰语:专门针对波兰语进行训练,能更好地处理波兰语相关任务。
- 先进训练优化:训练过程中使用了多种现代优化技术,如
torch.compile
、adamw_apex_fused
优化器、Flash Attention 2
等。
- 多步骤预处理:对训练语料进行了全面的预处理,包括文本归一化、去除短文档、基于质量分类器过滤等。
📚 详细文档
预处理流程
预处理流程包含以下步骤:
- 文本归一化,去除URL。
- 去除长度小于500个字符的文档。
- 使用一组启发式规则清理文档中的句子。例如,去除主要由非字母字符组成的句子,以及非波兰语和英语的句子。
- 使用基于数千个手动标记为高质量或低质量的文档集训练的质量分类器过滤文档。分类器的输入是一组统计信息(“质量信号”),如波兰语单词的百分比、平均单词和句子长度、单词和字符重复次数、文本中不同字符类别的比例。
- 根据轻量级KenLM语言模型计算的困惑度值过滤文档。
- 使用训练好的分类器将文档分配到18个主题领域之一。
- 在每个主题领域内使用MinHash算法进行模糊去重。
文档按主题的最终分布如下所示:
模型细节
这些模型在4096个标记的序列上训练了一个周期。训练期间,使用了许多现代优化技术,例如:
以下是Qra - 1B模型的概要信息:
属性 |
详情 |
改编自 |
TinyLlama - 1.1B |
许可证 |
Apache 2.0 |
批量大小 |
1344 |
上下文长度 |
4096 |
学习率 |
2e - 5 |
学习率衰减 |
余弦 |
预热步骤 |
0 |
训练时间 |
2天 |
评估
在本节中,我们将Qra模型在波兰语文本上的困惑度与其他波兰语和英语大语言模型进行比较。
请注意,不同文本分割之间的困惑度值不可直接比较。因此,我们只能基于使用相同分词器的模型之间的比较得出结论,例如Qra和原始的Llama / TinyLLama。
PolEval - 2018
2018年,PolEval竞赛包含一个语言建模任务,为此提供了总计超过2000万条波兰语句子的训练集和测试集。我们使用测试集中的前10000条句子来评估现代神经语言模型。为了计算困惑度,我们使用了HuggingFace Evaluate库中的脚本。
模型 |
困惑度 |
英文模型 |
|
meta - llama/Llama - 2 - 7b - hf |
24.3 |
meta - llama/Llama - 2 - 13b - hf |
21.4 |
mistralai/Mistral - 7B - v0.1 |
21.4 |
TinyLlama/TinyLlama - 1.1B |
40.4 |
波兰语模型 |
|
sdadas/polish - gpt2 - small |
134.4 |
sdadas/polish - gpt2 - medium |
100.8 |
sdadas/polish - gpt2 - large |
93.2 |
sdadas/polish - gpt2 - xl |
94.1 |
Azurro/APT3 - 275M - Base |
129.8 |
Azurro/APT3 - 500M - Base |
153.1 |
Azurro/APT3 - 1B - Base |
106.8 |
eryk - mazus/polka - 1.1b |
18.1 |
szymonrucinski/Curie - 7B - v1 |
13.5 |
Qra模型 |
|
OPI - PG/Qra - 1b |
14.7 |
OPI - PG/Qra - 7b |
11.3 |
OPI - PG/Qra - 13b |
10.5 |
长文档(2024)
目前,大语言模型支持数千个标记的上下文。其实际应用通常也涉及处理长文档。因此,在基于句子的数据集(如PolEval - 2018)上评估困惑度可能没有意义。此外,PolEval语料库在过去几年中已在互联网上公开,这可能导致某些模型的训练集受到该数据的污染。因此,我们准备了一个新的语料库,由2024年独家发表的长论文组成,这将使我们能够更可靠地测试模型对训练时无法获取的新知识的困惑度。该语料库由5000篇文档组成,长度从几百个标记到约20000个标记不等。其中一半是2024年2月波兰新闻门户网站的新闻文本,另一半是自2024年1月以来发表的科学文章。大多数文档超过了评估模型的上下文大小。为了计算这些文档的困惑度,我们按照此示例将它们分割成大小等于模型上下文长度的块,步长为512个标记。
模型 |
上下文 |
困惑度 |
英文模型 |
|
|
meta - llama/Llama - 2 - 7b - hf |
4096 |
5.9 |
meta - llama/Llama - 2 - 13b - hf |
4096 |
5.3 |
mistralai/Mistral - 7B - v0.1 |
4096 |
4.9 |
TinyLlama/TinyLlama - 1.1B |
2048 |
9.6 |
波兰语模型 |
|
|
sdadas/polish - gpt2 - small |
2048 |
27.3 |
sdadas/polish - gpt2 - medium |
2048 |
20.3 |
sdadas/polish - gpt2 - large |
1536 |
18.0 |
sdadas/polish - gpt2 - xl |
1536 |
16.6 |
Azurro/APT3 - 275M - Base |
2048 |
77.0 |
Azurro/APT3 - 500M - Base |
2048 |
50.5 |
Azurro/APT3 - 1B - Base |
2048 |
19.1 |
eryk - mazus/polka - 1.1b |
2048 |
6.9 |
szymonrucinski/Curie - 7B - v1 |
4096 |
4.8 |
Qra模型 |
|
|
OPI - PG/Qra - 1b |
4096 |
6.1 |
OPI - PG/Qra - 7b |
4096 |
4.5 |
OPI - PG/Qra - 13b |
4096 |
4.2 |
📄 许可证
本项目采用Apache 2.0许可证。