Bloom 350m
BigScience大型開放科學多語言語言模型,支持46種自然語言和12種編程語言,由國際協作項目開發
下載量 43
發布時間 : 7/26/2022
模型概述
BLOOM是一個基於Transformer架構的多語言大語言模型,旨在促進大型語言模型的公共研究。它支持文本生成任務,並可作為特定任務微調的基礎模型。
模型特點
多語言支持
支持46種自然語言和12種編程語言,特別關注資源較少的語言
開放科學
由國際志願者團隊開發,採用開放科學模式,促進公共研究
高效訓練
使用法國超級計算機Jean Zay進行訓練,採用核能供電並回收熱量
負責任AI
包含詳細的使用限制和風險說明,強調負責任使用
模型能力
多語言文本生成
編程代碼生成
文本完形填空
反事實生成
文本重構
信息抽取
問答系統
文本摘要
使用案例
學術研究
語言模型研究
探索多語言語言模型的行為和特徵
NLP任務基準測試
作為多語言NLP任務的基準模型
教育應用
語言學習輔助
幫助學習多種語言的文本生成和交互
社區應用
低資源語言支持
為資源較少的語言社區提供AI支持
🚀 BLOOM LM
大科學開放科學、開放訪問的多語言大語言模型,助力公共研究探索語言生成新可能
🚀 快速開始
此部分文檔未提供快速開始的相關內容,但你可以按照以下指引進一步瞭解和使用該模型:
- 閱讀模型詳情,瞭解模型的基本信息、技術規格、環境影響等。
- 查看使用說明,明確模型的預期用途、誤用和超出範圍的使用情況。
- 參考訓練數據,瞭解模型訓練所使用的數據。
- 關注風險和侷限性,知悉模型可能存在的問題。
- 查看評估結果,瞭解模型的性能指標。
- 遵循使用建議,確保正確、安全地使用模型。
✨ 主要特性
- 多語言支持:支持多種自然語言和編程語言,包括但不限於英語、法語、中文、日語、韓語等,以及Java、Python、C++等編程語言。
- 開放科學與開放訪問:由BigScience團隊開發,所有協作者均為志願者或與僱主達成協議,旨在推動大語言模型的公共研究。
- 基於Transformer架構:採用基於Transformer的語言模型架構,具有強大的語言理解和生成能力。
- 靈活應用:可用於文本生成、探索語言模型生成語言的特徵,也可作為預訓練基礎模型,進一步微調用於特定任務,如信息提取、問答、摘要等。
📚 詳細文檔
模型詳情
基礎信息
- 開發團隊:BigScience(官網)
- 模型類型:基於Transformer的語言模型
- 版本:1.0.0
- 支持語言:多種;詳見訓練數據
- 許可證:RAIL許可證v1.0(鏈接)
- 預計發佈日期:2022年7月11日(週一)
- 諮詢郵箱:bigscience-contact@googlegroups.com
- 引用方式:BigScience, BigScience Language Open-science Open-access Multilingual (BLOOM) Language Model. International, May 2021 - May 2022
- 資助方:
- 法國政府
- Hugging Face(官網)
- 貢獻者所在組織(各組織詳情待補充)
技術規格
請參考BLOOM訓練README以獲取訓練復現的完整細節。
- 模型架構:基於Megatron - LM GPT2修改(詳見論文,BLOOM Megatron代碼):
- 目標函數:交叉熵損失(詳見API文檔)
- 計算基礎設施:由法國政府提供的Jean Zay公共超級計算機(詳見公告):
- 硬件:384個A100 80GB GPU(48個節點):
- 額外32個A100 80GB GPU(4個節點)作為備用
- 每個節點8個GPU,使用NVLink 4 GPU間連接,4條OmniPath鏈路
- CPU:AMD
- 每個節點CPU內存:512GB
- 每個節點GPU內存:640GB
- 節點間連接:Omni - Path架構(OPA)
- NCCL通信網絡:專用子網
- 磁盤IO網絡:與其他類型節點共享網絡
- 軟件:
- 硬件:384個A100 80GB GPU(48個節點):
訓練信息
- 訓練日誌:Tensorboard鏈接
- 檢查點大小:
- Bf16權重:329GB
- 包含優化器狀態的完整檢查點:2.3TB
- 訓練吞吐量:約每個GPU每秒150 TFLOP
- 訓練輪數:1(當前目標)
- 訓練時間:
- 開始時間:2022年3月11日上午11:42(太平洋標準時間)
- 預計結束時間:2022年7月5日
- 預計訓練成本:相當於200 - 500萬美元的雲計算費用(包括初步實驗)
- 服務器訓練地點:法國法蘭西島
分詞器
BLOOM分詞器(鏈接)是一個學習型子詞分詞器,使用以下方法訓練:
- 字節級字節對編碼(BPE)算法
- 簡單的預分詞規則,無歸一化
- 詞彙表大小為250,680 它在語料庫的一個初步版本的子集上使用每種語言的alpha加權進行訓練。
環境影響
訓練用超級計算機Jean Zay(官網)主要使用核能,其產生的熱量用於校園住房供暖。
- 預計碳排放:(訓練完成後提供)
- 預計用電量:(訓練完成後提供)
使用說明
預期用途
本模型旨在推動大語言模型(LLM)的公共研究。LLM可用於語言生成,或作為預訓練基礎模型,進一步微調用於特定任務。以下使用案例並非詳盡無遺。
- 直接使用:
- 文本生成
- 探索語言模型生成語言的特徵,例如完形填空測試、反事實情況、重新構建的生成
- 下游使用:
- 利用語言模型的任務包括:信息提取、問答、摘要
誤用和超出範圍的使用
請參閱BLOOM許可證附件A以獲取詳細的使用限制。以下列表並非詳盡無遺,但列出了一些容易預見的有問題的使用案例。
- 超出範圍的使用:
- 誤用:
- 故意使用模型造成傷害、違反人權或進行其他惡意活動,均屬於對本模型的誤用。這包括:
- 垃圾郵件生成
- 虛假信息和影響操作
- 詆譭和誹謗
- 騷擾和虐待
- 欺騙
- 未經同意的模仿和假冒
- 未經同意的監視
- 未按照RAIL許可證使用限制對模型進行歸因的內容生成
- 故意使用模型造成傷害、違反人權或進行其他惡意活動,均屬於對本模型的誤用。這包括:
預期用戶
- 直接用戶:
- 普通公眾
- 研究人員
- 學生
- 教育工作者
- 工程師/開發者
- 非商業實體
- 社區倡導者,包括人權和公民權利組織
- 間接用戶:
- 使用直接用戶創建的衍生產品的用戶,例如使用具有預期用途的軟件的用戶
- 使用許可證中描述的模型衍生產品的用戶
- 其他受影響方:
- 大語言模型提及的個人和群體
- 接觸大語言模型輸出內容或基於其決策的個人和群體
- 其原創作品被納入大語言模型的個人和群體
訓練數據
每個數據集的詳細信息請參閱各個數據卡片。
- 訓練數據包括:
- 45種自然語言
- 12種編程語言
- 1.5TB預處理文本,轉換為3500億個唯一標記(詳見分詞器部分)
屬性 | 詳情 |
---|---|
模型類型 | 基於Transformer的語言模型 |
訓練數據 | 45種自然語言和12種編程語言的1.5TB預處理文本,轉換為3500億個唯一標記 |
自然語言分佈
以下表格展示了訓練數據中尼日爾 - 剛果語系和印度語系語言的進一步分佈情況:
尼日爾 - 剛果語系 | 百分比 | 印度語系 | 百分比 |
---|---|---|---|
奇通布卡語 | 0.00002 | 阿薩姆語 | 0.01 |
基庫尤語 | 0.00004 | 奧里亞語 | 0.04 |
班巴拉語 | 0.00004 | 古吉拉特語 | 0.04 |
阿坎語 | 0.00007 | 馬拉地語 | 0.05 |
聰加語 | 0.00007 | 旁遮普語 | 0.05 |
塞索托語 | 0.00007 | 卡納達語 | 0.06 |
奇切瓦語 | 0.0001 | 尼泊爾語 | 0.07 |
茨瓦納語 | 0.0002 | 泰盧固語 | 0.09 |
北索托語 | 0.0002 | 馬拉雅拉姆語 | 0.10 |
豐語 | 0.0002 | 烏爾都語 | 0.10 |
基隆迪語 | 0.0003 | 泰米爾語 | 0.20 |
沃洛夫語 | 0.0004 | 孟加拉語 | 0.50 |
幹達語 | 0.0004 | 印地語 | 0.70 |
奇紹納語 | 0.001 | ||
祖魯語 | 0.001 | ||
伊博語 | 0.001 | ||
科薩語 | 0.001 | ||
盧旺達語 | 0.003 | ||
約魯巴語 | 0.006 | ||
斯瓦希里語 | 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 | 678,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 |
風險和侷限性
模型可能存在以下問題:
- 過度代表某些觀點,而對其他觀點代表不足
- 包含刻板印象
- 包含個人信息
- 生成:
- 仇恨、辱罵或暴力語言
- 歧視性或偏見性語言
- 可能不適用於所有場景的內容,包括色情內容
- 出現錯誤,包括輸出看似事實但不正確的信息
- 生成無關或重複的輸出
評估
評估指標
指標 | 選擇原因 |
---|---|
困惑度 | 量化模型訓練過程中改進的標準指標 |
交叉熵損失 | 語言模型的標準目標 |
針對特定任務還有多種不同的指標。(評估協議完成後將提供更多評估指標。)
影響因素
- 語言,例如英語或約魯巴語
- 領域,例如新聞專線或故事
- 人口統計學特徵,例如性別或國籍
評估結果
訓練時評估:截至2022年5月25日15:00(太平洋標準時間):
- 訓練損失:2.0
- 驗證損失:2.2
- 困惑度:8.9
(模型訓練結束後將提供更多評估分數。)
使用建議
- 間接用戶在處理由大語言模型生成的內容時應被告知。
- 用戶應瞭解風險和侷限性,並根據需要包含適當的年齡聲明或屏蔽界面。
- 使用大語言模型預訓練的模型應包含更新的模型卡片。
- 模型用戶應提供受影響者反饋的機制,例如用於評論的電子郵件地址。
術語表和計算方法
- 損失:計算模型學習內容與數據顯示內容(“真實情況”)之間的差異。損失越低越好。訓練過程旨在最小化損失。
- 困惑度:基於模型對新數據概率的估計。困惑度越低越好。如果模型在預測下一個標記時100%正確,則困惑度為1。數學上通過熵計算。
- 高風險環境:例如歐盟提議的人工智能(AI)法案中確定的“高風險AI系統”和“不可接受風險AI系統”。
- 關鍵決策:例如美國提議的算法問責法案中定義的決策。
- 人權:包括世界人權宣言中定義的權利。
- 個人數據和個人信息:個人數據和信息在多個數據保護法規中定義,例如歐盟通用數據保護條例中的“個人數據”;南非共和國個人信息保護法中的“個人信息”;中華人民共和國個人信息保護法。
- 欺騙:故意誤導個人相信虛假內容,例如在社交媒體上創建偽裝成真人的殭屍機器人或聊天機器人,或在未讓消費者知曉文本是機器生成的情況下生成文本文檔。
更多信息
- 數據集創建:詳細介紹數據集創建過程中設計選擇的博客文章: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/tree/master/train/tr11-176B-ml
📄 許可證
本模型使用RAIL許可證v1.0,詳情請見鏈接。
Phi 2 GGUF
其他
Phi-2是微軟開發的一個小型但強大的語言模型,具有27億參數,專注於高效推理和高質量文本生成。
大型語言模型 支持多種語言
P
TheBloke
41.5M
205
Roberta Large
MIT
基於掩碼語言建模目標預訓練的大型英語語言模型,採用改進的BERT訓練方法
大型語言模型 英語
R
FacebookAI
19.4M
212
Distilbert Base Uncased
Apache-2.0
DistilBERT是BERT基礎模型的蒸餾版本,在保持相近性能的同時更輕量高效,適用於序列分類、標記分類等自然語言處理任務。
大型語言模型 英語
D
distilbert
11.1M
669
Llama 3.1 8B Instruct GGUF
Meta Llama 3.1 8B Instruct 是一個多語言大語言模型,針對多語言對話用例進行了優化,在常見的行業基準測試中表現優異。
大型語言模型 英語
L
modularai
9.7M
4
Xlm Roberta Base
MIT
XLM-RoBERTa是基於100種語言的2.5TB過濾CommonCrawl數據預訓練的多語言模型,採用掩碼語言建模目標進行訓練。
大型語言模型 支持多種語言
X
FacebookAI
9.6M
664
Roberta Base
MIT
基於Transformer架構的英語預訓練模型,通過掩碼語言建模目標在海量文本上訓練,支持文本特徵提取和下游任務微調
大型語言模型 英語
R
FacebookAI
9.3M
488
Opt 125m
其他
OPT是由Meta AI發佈的開放預訓練Transformer語言模型套件,參數量從1.25億到1750億,旨在對標GPT-3系列性能,同時促進大規模語言模型的開放研究。
大型語言模型 英語
O
facebook
6.3M
198
1
基於transformers庫的預訓練模型,適用於多種NLP任務
大型語言模型
Transformers

1
unslothai
6.2M
1
Llama 3.1 8B Instruct
Llama 3.1是Meta推出的多語言大語言模型系列,包含8B、70B和405B參數規模,支持8種語言和代碼生成,優化了多語言對話場景。
大型語言模型
Transformers 支持多種語言

L
meta-llama
5.7M
3,898
T5 Base
Apache-2.0
T5基礎版是由Google開發的文本到文本轉換Transformer模型,參數規模2.2億,支持多語言NLP任務。
大型語言模型 支持多種語言
T
google-t5
5.4M
702
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98