/ Модель

Характеристики

Контекст
4 096 токенов
Параметры
16,9 млрд
Размер весов
14,5 ГБ
Лицензия
Apache 2.0
Архитектура
zamba · dense
Опубликована
22 мая 2024

Zamba-7B-v1-phase1

Генерация текстаТекст → текст3 профессии

Zamba-7B-v1-phase1 — базовая гибридная языковая модель Zyphra для генерации текста и кода и изучения влияния этапов предобучения.

381скачиваний за 30 дней5лайковвеса обновлены2 окт 2024

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Zamba-7B-v1-phase1 — базовая языковая модель Zyphra для генерации текста, включая текст и код. Это исследовательский предобученный чекпойнт, созданный для сравнения влияния этапа annealing в обучении; он обучен предсказанию следующего токена на 1 трлн токенов текстовых данных и кода из открытых веб-датасетов. Репозиторий использует архитектуру Zamba: основу из слоёв Mamba с общим трансформерным слоем внимания через каждые шесть блоков, а также токенизатор Mistral v0.1. В метаданных указано 16,9 млрд параметров и контекст 4096 токенов.

Модель ориентирована на продолжение текста и эксперименты с генерацией, а не на диалог с пользователем: она не дообучалась для чата и не имеет встроенного механизма модерации. Архитектура с пространственным состоянием рассчитана на эффективную генерацию с меньшими затратами памяти на KV-кэш; README предупреждает, что текущая реализация Hugging Face работает медленнее внутренней реализации Zyphra, а запуск без оптимизированных Mamba-ядер заметно увеличивает задержку. Лицензия — Apache-2.0.

Сценарии применения

  • продолжение текстового фрагмента
  • генерация кода по подсказке
  • эксперименты с предобученной языковой моделью
  • сравнение результатов дообучения и annealing

Ограничения

Модель не дообучалась для чата и не имеет встроенной модерации, поэтому качество диалоговых ответов не гарантируется. Реализация Hugging Face может работать медленнее внутренней реализации Zyphra, особенно без оптимизированных Mamba-ядер.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Model Card for Zamba

Zamba-7B-v1-phase1 is a hybrid model between Mamba, a state-space model, and transformers. It uses a mamba backbone with a shared transformer layer every 6 blocks. Zamba was trained using next-token prediction. It uses the Mistral v0.1 tokenizer. We came to this architecture after a series of ablations at small scales. Zamba-7B-v1-phase-1 was pre-trained on 1T tokens of text and code data sourced from open web-datasets. Unlike Zamba-v1, this model represents the checkpoint after pure prertaining only on web-datasets. We envision its use primarily as a comparison tool to explore the effects of our annealing process.

Note: the current Huggingface implementation of Zamba performs slower than our internal implementation. We are working to fix this with the Huggingface team.

Our technical report describing the training of Zamba is available here.

Quick start

Presequities

To download Zamba, clone Zyphra's fork of transformers:

  1. git clone https://github.com/Zyphra/transformers_zamba
  2. cd transformers_zamba
  3. Install the repository: pip install -e .

In order to run optimized Mamba implementations on a CUDA device, you need to install mamba-ssm and causal-conv1d:

pip install mamba-ssm causal-conv1d>=1.2.0

You can run the model without using the optimized Mamba kernels, but it is not recommended as it will result in significantly higher latency.

To run on CPU, please specify use_mamba_kernels=False when loading the model using AutoModelForCausalLM.from_pretrained.

Inference

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

tokenizer = AutoTokenizer.from_pretrained("Zyphra/Zamba-7B-v1-phase1")
model = AutoModelForCausalLM.from_pretrained("Zyphra/Zamba-7B-v1-phase1", device_map="auto", torch_dtype=torch.bfloat16)

input_text = "What factors contributed to the fall of the Roman Empire?"
input_ids = tokenizer(input_text, return_tensors="pt").to("cuda")

outputs = model.generate(**input_ids, max_new_tokens=100)
print(tokenizer.decode(outputs[0]))

To load a different checkpoint use, e.g., for iteration 2500,

model = AutoModelForCausalLM.from_pretrained("Zyphra/Zamba-7B-v1-phase1", device_map="auto", torch_dtype=torch.bfloat16, revision="iter2500")

The default iteration is the fully trained phase 1 model, corresponding to iteration 462070. This is the number of iterations performed by training the model starting from random initialization. See arXiv:2405.16712 for more details on training.

Model Details

Zamba utilizes a unique hybrid SSM architecture. This architecture consists of a backbone of Mamba layers interspersed with a shared attention layer. This attention has shared weights to minimize the parameter cost of the model. We find that concatenating the original model embeddings to the input to this attention block improves performance, likely due to better maintenance of information across depth.

Performance

We find that Zamba performs significantly better than existing open models (with open datasets and training details) at this scale. However, it performs slightly worse than the leading open-weight models at the 7B scale. Most of this difference derives from MMLU and reasoning evaluations. Zamba, however, is trained on significantly fewer tokens than these models and is the most sample efficient model in terms of performance per training tokens.

Due to its SSM architecture, Zamba is extremely efficient in inference, substantially outperforming comparable 7B and 8B models in inference latency as well as memory cost of generation due to its substantially diminished KV cache.

Citation

If you find Zamba useful in your work please cite it as:

@article{glorioso2024zamba,
  title={Zamba: A Compact 7B SSM Hybrid Model},
  author={Glorioso, Paolo and Anthony, Quentin and Tokpanov, Yury and Whittington, James and Pilault, Jonathan and Ibrahim, Adam and Millidge, Beren},
  journal={arXiv preprint arXiv:2405.16712},
  year={2024}
}

Notice

Zamba is a pretrained base model and therefore does not have any moderation mechanism. In addition, one should not expect good chat performance, as this model was not fine-tuned for chat.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
ZambaForCausalLM
Ревизия весов
cccdbbc

0 моделей