BLOOM (language model) (CS)
BLOOM (BigScience Large Open-science Open-access Multilingual Language Model) — je velký jazykový model (LLM) s otevřeným přístupem obsahující 176 miliard parametrů. Byl vyvinut v roce 2022 v rámci projektu BigScience — mezinárodní spolupráce více než 1000 výzkumníků ze 70 zemí pod záštitou společnosti Hugging Face[1].
BLOOM je autoregresivní model-transformer schopný generovat souvislý text v 46 přirozených jazycích a 13 programovacích jazycích. Model byl trénován na superpočítači Jean Zay ve Francii a stal se jednou z prvních skutečně otevřených alternativ k uzavřeným modelům, jako je GPT-3 od OpenAI[2].
Předhistorie a vývoj
Initiativa BigScience byla spuštěna v květnu 2021 s cílem demokratizovat výzkum v oblasti AI prostřednictvím společného vytvoření velkého otevřeného jazykového modelu[1]. V té době byly přední LLM, jako GPT-3, vyvíjeny uzavřeně ve velkých společnostech, které nezveřejňovaly architekturu, trénovací data ani zdrojový kód. Projekt BigScience spojil více než tisíc dobrovolných výzkumníků z celého světa za účelem vytvoření konkurenceschopného a plně otevřeného modelu.
Projekt získal grant na výpočetní zdroje na francouzském superpočítači Jean Zay (IDRIS/CNRS). Trénování modelu probíhalo od 11. března do 6. července 2022[3]. Vývoj byl veden maximálně transparentně: tým zveřejňoval informace o výběru dat, nastavení trénování a pořádal veřejné diskuse v souladu s přijatou etickou chartou projektu.
Architektura a trénování
Architektura modelu
BLOOM je postaven na architektuře transformeru autoregresivního typu (decoder-only), analogické modelu GPT-3[2].
| Parametr | Charakteristika |
|---|---|
| Typ | Transformer pouze s dekodérem |
| Parametry | 176 247 271 424 |
| Vrstvy (layers) | 70 |
| Hlavy pozornosti | 112 |
| Velikost skrytého stavu | 14 336 |
| Délka sekvence | 2048 tokenů |
| Aktivační funkce | GeLU; poziční kódování ALiBi |
Model byl implementován na základě frameworků Megatron-LM a DeepSpeed, vyvinutých společnostmi Nvidia a Microsoft, s řadou úprav pro efektivní distribuované trénování[5].
Trénovací data
BLOOM byl natrénován na speciálně vytvořeném korpusu textových dat ROOTS (The Responsible Open-science Open-collaboration Text Sources). Celkový objem dat činil 1,6 terabajtu vyčištěného a deduplikovaného textu (≈366 miliard tokenů)[6].
Korpus obsahuje texty v 59 jazycích:
- 46 přirozených jazyků, včetně angličtiny (30 % tokenů), čínštiny, francouzštiny, španělštiny, arabštiny a řady jazyků s malým množstvím zdrojů (například Chi Tumbuka — 0,00002 % tokenů).
- 13 programovacích jazyků, včetně Pythonu, Javy, JavaScriptu a C++.
Takový vícejazyčný a vícedoménový dataset byl sestaven záměrně, aby byl model vhodný pro široké spektrum jazykových komunit.
Výkonnost a využití
BLOOM vykazuje konkurenceschopné výsledky na různých benchmarcích, srovnatelné s modely podobné velikosti, jako je OPT-175B od Meta, a to navzdory své vícejazyčnosti[2].
Model je schopen plnit širokou škálu úloh v režimu zero-shot (bez dodatečného trénování), včetně:
- Generování textu v zadaném stylu.
- Sumarizace dokumentů.
- Odpovídání na otázky v kontextu.
- Překladu mezi jazyky.
- Generování jednoduchého programového kódu.
Pro zlepšení praktické využitelnosti tým BigScience později provedl dodatečné multitaskové doladění (fine-tuning) modelu a vytvořil verzi BLOOMZ, která přesněji sleduje pokyny uživatele.
Licencování a otevřený přístup
Úplný 176miliardový model BLOOM, jeho zdrojový kód a data byly zveřejněny v červenci 2022. Model je šířen pod speciálně vytvořenou licencí RAIL (Responsible AI License) v1.0[7].
Tato licence umožňuje bezplatné používání a úpravu modelu, ale ukládá řadu omezení na jeho využití v určitých oblastech. Konkrétně je zakázáno používat BLOOM k účelům, které jsou v rozporu s etickými normami BigScience, jako jsou:
- Hromadné sledování.
- Algoritmická diskriminace.
- Šíření dezinformací.
- Řízení smrtících zbraní.
BLOOM se stal prvním velkým modelem AI vydaným pod licencí s výslovnými podmínkami odpovědného využívání[8].
Literatura
- Hendrycks, D.; Gimpel, K. (2016). Gaussian Error Linear Units (GELUs). arXiv:1606.08415.
- Shoeybi, M.; et al. (2019). Megatron‑LM: Training Multi‑Billion Parameter Language Models Using Model Parallelism. arXiv:1909.08053.
- Rajbhandari, S.; et al. (2020). ZeRO: Memory Optimizations Toward Training Trillion Parameter Models. arXiv:1910.02054.
- Press, O.; et al. (2021). Train Short, Test Long: Attention with Linear Biases Enables Input Length Extrapolation. arXiv:2108.12409.
- Le Scao, T.; et al. (2022). BLOOM: A 176B‑Parameter Open‑Access Multilingual Language Model. arXiv:2211.05100.
- Muennighoff, N.; et al. (2022). BLOOMZ & mT0: A Cross‑Lingual Baseline for Instruction Finetuning. arXiv:2211.01786.
- BigScience Workshop (2022). BigScience OpenRAIL‑M License v1.0. Online specification.
- Akiki, C.; et al. (2022). BigScience: A Case Study in the Social Construction of a Multilingual Large Language Model. arXiv:2212.04960.
- Yong, Z.‑X.; et al. (2022). BLOOM+1: Adding Language Support to BLOOM for Zero‑Shot Prompting. arXiv:2212.09535.
- Biderman, S.; et al. (2023). The BigScience ROOTS Corpus: A 1.6 TB Composite Multilingual Dataset. arXiv:2303.03915.
Poznámky
- ↑ 1.0 1.1 «BLOOM». BigScience Blog. [1]
- ↑ 2.0 2.1 2.2 Le Scao, T., et al. (2022). «BLOOM: A 176B-Parameter Open-Access Multilingual Language Model». arXiv:2211.05100. [2]
- ↑ «Researchers open-source neural network with 176B parameters». SiliconANGLE. [3]
- ↑ «bigscience/bloom». Hugging Face. [4]
- ↑ «The Technology Behind BLOOM Training». Hugging Face Blog. [5]
- ↑ Biderman, S. et al. (2023). «The BigScience ROOTS Corpus: A 1.6 TB Composite Multilingual Dataset». arXiv:2303.03915. [6]
- ↑ «BigScience OpenRAIL-M». BigScience Blog. [7]
- ↑ Heikkilä, M. «BLOOM is the first AI model to be under a...». X. [8]