说明文档
基于原始模型
https://huggingface.co/bigscience/bloom-560m
- *在此复制用于测试/训练目的
- *感谢
额外微调数据集
**2025.03.15 : MisterAI/SimpleSmallFrenchQA Dataset02_20L_QR_256_Francais.jsonl
bigscience/bloom-560m 原始模型卡片
<h1 style='text-align: center '>BLOOM LM</h1> <h2 style='text-align: center '><em>BigScience 大型开放科学开放访问多语言语言模型</em> </h2> <h3 style='text-align: center '>模型卡片</h3> <img src="https://s3.amazonaws.com/moonup/production/uploads/1657124309515-5f17f0a0925b9863e28ad517.png" alt="BigScience Logo" width="800" style="margin-left:'auto' margin-right:'auto' display:'block'"/>
版本 1.0 / 2022年5月26日
Bloom-560m 模型卡片
<!-- 提供模型是什么/做什么的快速摘要。-->
目录
模型详情
模型描述
本节为任何想了解该模型的人提供信息。
-
开发者: BigScience (网站)
- 所有协作者要么是志愿者,要么与其雇主达成了协议。(参与者的进一步细分类别 forthcoming。)
-
模型类型: 基于 Transformer 的语言模型
-
版本: 1.0.0
-
语言: 多种;请参阅训练数据
-
许可证: RAIL License v1.0 (链接)
-
发布日期预估: 2022年7月11日,星期一
-
资助方:
-
法国政府。
-
Hugging Face (网站)。
-
贡献者的组织。(组织的进一步细分类别 forthcoming。)
-
用途
本节讨论模型的预期使用方式、可预见的用户(包括受模型影响的人),并描述超出范围或滥用模型的情况。它为任何考虑使用该模型或受该模型影响的人提供信息。
预期用途
创建此模型是为了支持对大型语言模型(LLM)的公共研究。LLM 预期用于语言生成,或作为可进一步针对特定任务进行微调的预训练基础模型。以下用例并非详尽无遗。
直接使用
-
文本生成
-
探索语言模型生成的语言特征
- 示例:完形填空测试、反事实、重构生成
下游使用
- 利用语言模型的任务包括:信息抽取、问答、摘要
滥用和超出范围的使用
本节讨论用户不应使用该模型做什么。
请参阅 BLOOM 许可证 附件 A,了解详细的使用限制。以下列表并非详尽无遗,但列出了一些容易预见的问题用例。
超出范围的使用
在高风险环境中使用该模型超出了该模型的范围。该模型并非为关键决策设计,也不用于对个人生计或福祉产生任何实质性后果的用途。该模型输出的内容看起来像是事实,但不正确。
超出范围的使用包括:
-
在生物医学领域、政治和法律领域或金融领域中使用
-
用于评估或对个人进行评分,例如用于就业、教育或信用评估
-
将模型应用于关键自动决策、生成事实内容、创建可靠摘要或生成必须正确的预测
滥用
故意使用该模型造成伤害、侵犯人权或其他类型的恶意活动是对该模型的滥用。这包括:
-
垃圾邮件生成
-
虚假信息和影响行动
-
诽谤和中伤
-
骚扰和虐待
-
未经同意的冒充和模仿
-
未经同意的监视
-
生成内容时不按 RAIL 许可证使用限制中的规定注明模型来源
预期用户
直接用户
-
公众
-
研究人员
-
学生
-
教育工作者
-
工程师/开发者
-
非商业实体
-
社区倡导者,包括人权和民权组织
间接用户
-
使用直接用户创建的衍生作品的用户,例如使用具有预期用途的软件的用户
-
使用许可证中描述的模型衍生作品的用户
其他受影响方(利益相关者)
-
被 LLM 提及的人员和群体
-
接触 LLM 输出或基于 LLM 做出决策的人员和群体
-
原始作品被包含在 LLM 中的人员和群体
偏见、风险和局限性
本节识别可预见的伤害和误解。
模型可能:
-
过度代表某些观点,而代表不足其他观点
-
包含刻板印象
-
包含个人信息
-
生成:
-
仇恨、辱骂或暴力语言
-
歧视性或偏见性语言
-
可能不适合所有环境的内容,包括性内容
-
-
犯错,包括产生看似事实的不正确信息
-
生成不相关或重复的输出
建议
本节提供关于警告和潜在缓解措施的信息。
-
间接用户在接触由 LLM 创建的内容时应被告知。
-
用户应了解风险和局限性,并在必要时包含适当的年龄免责声明或阻止界面。
-
使用 LLM 预训练的模型应包含更新的模型卡片。
-
模型用户应为受影响方提供反馈机制,例如用于评论的电子邮件地址。
训练数据
本节提供训练数据的高级概述。它适用于任何想了解模型学习内容基础的人。
每个数据集的详细信息在单独的数据卡片中提供。
训练数据包括:
-
45 种自然语言
-
12 种编程语言
-
1.5TB 的预处理文本,转换为 3500 亿个唯一 token(更多内容请参阅 tokenizer 部分。)
语言
饼图显示训练数据中语言的分布。
下表显示训练数据中尼日尔-刚果语系和印度语系语言的进一步分布。
| 尼日尔-刚果语系 | 百分比 | 印度语系 | 百分比 | |
|---|---|---|---|---|
| Chi Tumbuka | 0.00002 | 阿萨姆语 | 0.01 | |
| Kikuyu | 0.00004 | 奥里亚语 | 0.04 | |
| Bambara | 0.00004 | 古吉拉特语 | 0.04 | |
| Akan | 0.00007 | 马拉地语 | 0.05 | |
| Xitsonga | 0.00007 | 旁遮普语 | 0.05 | |
| Sesotho | 0.00007 | 卡纳达语 | 0.06 | |
| Chi Chewa | 0.0001 | 尼泊尔语 | 0.07 | |
| Setswana | 0.0002 | 泰卢固语 | 0.09 | |
| Northern Sotho | 0.0002 | 马拉雅拉姆语 | 0.10 | |
| Fon | 0.0002 | 乌尔都语 | 0.10 | |
| Kirundi | 0.0003 | 泰米尔语 | 0.20 | |
| Wolof | 0.0004 | 孟加拉语 | 0.50 | |
| Kuganda | 0.0004 | 印地语 | 0.70 | |
| Chi Shona | 0.001 | |||
| Isi Zulu | 0.001 | |||
| Igbo | 0.001 | |||
| Xhosa | 0.001 | |||
| Kinyarwanda | 0.003 | |||
| Yoruba | 0.006 | |||
| Swahili | 0.02 |
下表显示编程语言的分布。
| 扩展名 | 语言 | 文件数量 |
|---|---|---|
| java | Java | 5,407,724 |
| php | PHP | 4,942,186 |
| cpp | C++ | 2,503,930 |
| py | Python | 2,435,072 |
| js | JavaScript | 1,905,518 |
| cs | C# | 1,577,347 |
| rb | Ruby | 6,78,413 |
| cc | C++ | 443,054 |
| hpp | C++ | 391,048 |
| lua | Lua | 352,317 |
| go | GO | 227,763 |
| ts | TypeScript | 195,254 |
| C | C | 134,537 |
| scala | Scala | 92,052 |
| hh | C++ | 67,161 |
| H | C++ | 55,899 |
| tsx | TypeScript | 33,107 |
| rs | Rust | 29,693 |
| phpt | PHP | 9,702 |
| c++ | C++ | 1,342 |
| h++ | C++ | 791 |
| php3 | PHP | 540 |
| phps | PHP | 270 |
| php5 | PHP | 166 |
| php4 | PHP | 29 |
评估
本节描述评估协议并提供结果。
指标
本节描述计算性能的不同方式及其原因。
包括:
| 指标 | 选择原因 |
|---|---|
| 困惑度 | 训练期间量化模型改进的标准指标 |
| 交叉熵 损失 | 语言模型的标准目标函数。 |
以及用于特定任务的多种不同指标。(更多评估指标将在评估协议完成后提供。)
因素
本节列出 BLOOM 建模的一些不同方面。其重点是那些可能导致模型行为高方差的因素。
-
语言,如英语或约鲁巴语
-
领域,如新闻专线或故事
-
人口统计特征,如性别或国籍
结果
训练时评估:
截至 2022年5月25日,太平洋标准时间 15:00:
-
训练损失:2.0
-
验证损失:2.2
-
困惑度:8.9
(更多评估分数将在模型训练结束后提供。)
环境影响
训练超级计算机 Jean Zay (网站) 主要使用核能。它产生的热量被重新用于校园住房供暖。
预估碳排放: (训练完成后提供。)
预估电力使用: (训练完成后提供。)
技术规格
本节为从事模型开发的人员提供信息。
请参阅 BLOOM 训练 README 获取复制训练的完整详情。
模型架构: 基于 Megatron-LM GPT2 修改(请参阅论文、BLOOM Megatron 代码):
-
仅解码器架构
-
ALiBi 位置编码(请参阅论文),使用 GeLU 激活函数
-
559,214,592 个参数:
-
256,901,120 个嵌入参数
-
24 层,16 个注意力头
-
隐藏层维度为 1024
-
序列长度为 2048 个 token(请参阅 BLOOM tokenizer、tokenizer 描述)
-
目标函数: 带均值归约的交叉熵(请参阅 API 文档)。
计算基础设施: Jean Zay 公共超级计算机,由法国政府提供(请参阅公告)。
-
硬件:384 个 A100 80GB GPU(48 个节点):
-
额外 32 个 A100 80GB GPU(4 个节点)作为备用
-
每个节点 8 个 GPU,使用 NVLink 4 互联,4 条 OmniPath 链路
-
CPU:AMD
-
CPU 内存:每个节点 512GB
-
GPU 内存:每个节点 640GB
-
节点间连接:Omni-Path 架构 (OPA)
-
NCCL 通信网络:完全专用的子网
-
磁盘 IO 网络:与其他类型节点共享的网络
-
-
软件:
训练
训练日志:Tensorboard 链接
-
训练吞吐量:约 150 TFLOPs/GPU
-
训练轮数:1(当前目标)
-
日期:
-
开始 2022年3月11日 太平洋标准时间 上午 11:42
-
结束 2022年7月5日
-
-
训练预估成本:相当于 200-500 万美元的云计算(包括初步实验和其他模型尺寸)
-
服务器训练位置:法国法兰西岛
分词
BLOOM tokenizer (链接) 是一个使用以下方法训练的学习型子词 tokenizer:
-
字节级字节对编码 (BPE) 算法
-
简单的预分词规则,无归一化
-
词汇表大小为 250,680
它在语料库初步版本的子集上使用每种语言的 alpha 加权进行训练。
引用
引用为: BigScience, BigScience Language Open-science Open-access Multilingual (BLOOM) Language Model. 国际合作,2021年5月-2022年5月
术语表和计算
本节定义常用术语以及指标的计算方式。
-
<a name="loss">损失:</a> 计算模型学习的内容与数据显示的内容("真实值")之间的差异。损失越低越好。训练过程旨在最小化损失。
-
<a name="perplexity">困惑度:</a> 基于模型对新数据概率的估计。困惑度越低越好。如果模型在预测下一个 token 时 100% 正确,则困惑度为 1。数学上使用熵计算。
-
<a name="high-stakes">高风险环境:</a> 例如欧盟拟议的 人工智能法案 中被认定为"高风险 AI 系统"和"不可接受风险 AI 系统"的环境。
-
<a name="critical-decisions">关键决策:</a> 例如美国拟议的 算法问责法案 中定义的决策。
-
<a name="human-rights">人权:</a> 包括世界人权宣言中定义的权利。
-
<a name="personal-data-and-information">个人数据和个人信息:</a> 个人数据和信息在多个数据保护法规中定义,例如欧盟通用数据保护条例中的"个人数据";南非共和国的个人信息保护法,中华人民共和国的个人信息保护法。
-
<a name="sensitive-characteristics">敏感特征:</a> 包括人权中特别保护的类别(请参阅 UHDR 第2条)和个人信息法规(请参阅 GDPR 第9条;个人信息保护法第1章)
-
<a name="deception">欺骗:</a> 故意做某事来误导个人相信虚假的事情,例如在社交媒体上创建死亡机器人或聊天机器人冒充真人,或生成文本文档而不让消费者知道该文本是机器生成的。
更多信息
数据集创建
详细介绍数据集创建过程中设计选择的博客文章:https://bigscience.huggingface.co/blog/building-a-tb-scale-multilingual-dataset-for-language-modeling
技术规格
总结架构、大小、形状和预训练时长如何选择的博客文章:https://bigscience.huggingface.co/blog/what-language-model-to-train-if-you-have-two-million-gpu-hours
关于架构/优化器的更多详情:https://github.com/bigscience-workshop/bigscience/tree/master/train/tr11-176B-ml
关于硬件/工程方面的博客文章:https://bigscience.huggingface.co/blog/which-hardware-to-train-a-176b-parameters-model
训练使用的分布式设置详情:https://github.com/bigscience-workshop/bigscience/tree/master/train/tr11-176B-ml
训练期间更新的 Tensorboard:https://huggingface.co/bigscience/tr11-176B-ml-logs/tensorboard#scalars&tagFilter=loss
关于如何进行训练的见解、负面结果:https://github.com/bigscience-workshop/bigscience/blob/master/train/lessons-learned.md
关于工程方面准备过程中克服的障碍的详情(不稳定性、训练吞吐量优化、许多技术技巧和问题):https://github.com/bigscience-workshop/bigscience/blob/master/train/tr11-176B-ml/chronicles.md
初步结果
使用临时检查点的初步提示实验:https://huggingface.co/spaces/bigscience/bloom-book
模型卡片作者
大致按时间顺序和花费时间排序。
Margaret Mitchell, Giada Pistilli, Yacine Jernite, Ezinwanne Ozoani, Marissa Gerchick, Nazneen Rajani, Sasha Luccioni, Irene Solaiman, Maraim Masoud, Somaieh Nikpoor, Carlos Muñoz Ferrandis, Stas Bekman, Christopher Akiki, Danish Contractor, David Lansky, Angelina McMillan-Major, Tristan Thrush, Suzana Ilić, Gérard Dupont, Shayne Longpre, Manan Dey, Stella Biderman, Douwe Kiela, Emi Baylor, Teven Le Scao, Aaron Gokaslan, Julien Launay, Niklas Muennighoff
模型卡片联系方式
发送问题至: bigscience-contact@googlegroups.com
MisterAI/MAI01_bigscience_bloom-560m
作者 MisterAI
创建时间: 2025-03-15 20:01:51+00:00
更新时间: 2025-03-15 20:05:15+00:00
在 Hugging Face 上查看