BLOOM

Материал из Systems analysis wiki
Перейти к навигации Перейти к поиску

BLOOM (BigScience Large Open-science Open-access Multilingual Language Model) — это крупная языковая модель (LLM) с открытым доступом, содержащая 176 миллиардов параметров. Она была разработана в 2022 году в рамках проекта BigScience — международного сотрудничества более 1000 исследователей из 70 стран под эгидой компании Hugging Face[1].

BLOOM является авторегрессионной моделью-трансформером, способной генерировать связный текст на 46 естественных языках и 13 языках программирования. Модель была обучена на суперкомпьютере Jean Zay во Франции и стала одной из первых по-настоящему открытых альтернатив закрытым моделям, таким как GPT-3 от OpenAI[2].

Предыстория и разработка

Инициатива BigScience была запущена в мае 2021 года с целью демократизации исследований в области ИИ путем совместного создания большой открытой языковой модели[1]. На тот момент передовые LLM, такие как GPT-3, разрабатывались закрыто в крупных компаниях, которые не раскрывали архитектуру, обучающие данные и исходный код. Проект BigScience объединил более тысячи добровольцев-исследователей со всего мира для создания конкурентоспособной и полностью открытой модели.

Проект получил грант на вычислительные ресурсы на французском суперкомпьютере Jean Zay (IDRIS/CNRS). Обучение модели проходило с 11 марта по 6 июля 2022 года[3]. Разработка велась максимально прозрачно: команда публиковала информацию о подборе данных, настройках обучения и проводила общественные обсуждения, следуя принятой этической хартии проекта.

Архитектура и обучение

Архитектура модели

BLOOM построен на архитектуре трансформера авторегрессионного типа (decoder-only), аналогичной модели GPT-3[2].

Архитектурные характеристики BLOOM[4]
Параметр Характеристика
Тип Декодер-только трансформер
Параметры 176 247 271 424
Слои (layers) 70
Головы внимания 112
Размер скрытого состояния 14 336
Длина последовательности 2048 токенов
Функция активации GeLU; позиционные кодировки ALiBi

Модель была реализована на базе фреймворков Megatron-LM и DeepSpeed, разработанных Nvidia и Microsoft соответственно, с рядом модификаций для эффективного распределенного обучения[5].

Обучающие данные

BLOOM была обучена на специально созданном корпусе текстовых данных ROOTS (The Responsible Open-science Open-collaboration Text Sources). Общий объем данных составил 1,6 терабайта очищенного и дедуплицированного текста (≈366 млрд токенов)[6].

Корпус включает тексты на 59 языках:

  • 46 естественных языков, включая английский (30% токенов), китайский, французский, испанский, арабский, а также множество языков с малым количеством ресурсов (например, Chi Tumbuka — 0,00002% токенов).
  • 13 языков программирования, включая Python, Java, JavaScript и C++.

Такой мультиязычный и мультидоменный датасет был собран намеренно, чтобы сделать модель пригодной для широкого круга языковых сообществ.

Производительность и применение

BLOOM демонстрирует конкурентоспособные результаты на разнообразных бенчмарках, сопоставимые с моделями аналогичного размера, такими как OPT-175B от Meta, несмотря на свою мультиязычность[2].

Модель способна выполнять широкий круг задач в режиме zero-shot (без дополнительного обучения), включая:

  • Генерацию текста в заданном стиле.
  • Суммаризацию документов.
  • Ответы на вопросы по контексту.
  • Перевод между языками.
  • Генерацию простого программного кода.

Для улучшения практической полезности команда BigScience позже провела дополнительное мультизадачное дообучение (fine-tuning) модели, создав версию BLOOMZ, которая более точно следует инструкциям пользователя.

Лицензирование и открытый доступ

Полная 176-миллиардная модель BLOOM, её исходный код и данные были опубликованы в июле 2022 года. Модель распространяется под специально разработанной лицензией RAIL (Responsible AI License) v1.0[7].

Эта лицензия разрешает бесплатное использование и модификацию модели, но налагает ряд ограничений на её применение в определённых областях. В частности, запрещено использовать BLOOM в целях, противоречащих этическим нормам BigScience, таких как:

  • Массовая слежка.
  • Алгоритмическая дискриминация.
  • Распространение дезинформации.
  • Управление летальными вооружениями.

BLOOM стала первой крупной моделью ИИ, выпущенной под лицензией с явными оговорками об ответственном использовании[8].

Литература

  • 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.

Примечания

  1. 1,0 1,1 «BLOOM». BigScience Blog. [1]
  2. 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]
  3. «Researchers open-source neural network with 176B parameters». SiliconANGLE. [3]
  4. «bigscience/bloom». Hugging Face. [4]
  5. «The Technology Behind BLOOM Training». Hugging Face Blog. [5]
  6. Biderman, S. et al. (2023). «The BigScience ROOTS Corpus: A 1.6 TB Composite Multilingual Dataset». arXiv:2303.03915. [6]
  7. «BigScience OpenRAIL-M». BigScience Blog. [7]
  8. Heikkilä, M. «BLOOM is the first AI model to be under a...». X. [8]