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

Общее введение

Bonsai - это языковая модель с открытым исходным кодом, разработанная deepgrove-ai, с размером параметров 500 миллионов, использующая тернарные веса. Она основана на архитектуре Llama и Мистраль Классификатор построен на основе линейного слоя, адаптированного для поддержки трехзначных весов. Для обучения модели использовались наборы данных DCLM-Pro и Fineweb-Edu общим объемом менее 5 миллиардов лексем. Несмотря на небольшой объем обучающих данных, Bonsai демонстрирует хорошие результаты и является одной из первых легких трехзначных моделей, достигших конкурентоспособного уровня. Пользователи могут вызывать ее через библиотеку Huggingface Transformers. Код проекта находится в открытом доступе на GitHub для разработчиков, изучающих эффективные модели ИИ.

Bonsai:适合边缘设备运行的三值权重语言模型

 

Список функций

  • Легкий вес и эффективная работа: Используется метод трехзначного взвешивания, а сама модель является небольшой, быстрой и подходит для устройств с низким ресурсом.
  • создание естественного языка: Поддержка создания беглого текста, который можно использовать для диалога, вопросов и ответов и других заданий.
  • открытый доступ: Полный код доступен на GitHub, что позволяет пользователям загружать, изменять и оптимизировать его.
  • Совместимость с обнимающимся лицом: Бесшовная интеграция в библиотеку Transformers для легкой загрузки и развертывания.
  • отличная производительность: Производительность, сопоставимая с аналогичными моделями при небольшом объеме обучающих данных.

 

Использование помощи

Процесс установки

Чтобы использовать Bonsai, необходимо сначала настроить среду выполнения. Ниже приведены подробные шаги:

  1. Проверка окружения Python
    Убедитесь, что на вашем компьютере установлен Python 3.8 или выше. Введите в терминале:
python --version

Если у вас нет этой программы, вы можете загрузить ее с сайта Python.

  1. Установка библиотеки трансформеров
    Bonsai опирается на библиотеку Transformers от Huggingface. Запустите ее в терминале:
pip install transformers

После установки используйте pip show transformers Подтвердите версию.

  1. Скачать модели бонсай
    Модели размещены на сайте Huggingface. Рекомендуется загружать их автоматически с помощью кода (см. ниже), или их можно загрузить вручную.
  2. Установите дополнительные зависимости
    Если требуется тонкая настройка или ускорение, установите torch ответить пением datasets::
pip install torch datasets

Как использовать

Бонсай вызывается с помощью скрипта Python. Вот основные шаги:

Загрузочные модели и разделители

Выполните следующий код в Python:

from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("deepgrove/Bonsai", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("deepgrove/Bonsai", trust_remote_code=True)

Создать текст

Введите текст и получите результаты:

text = "中国的首都是哪里?"
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_length=100)
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(result)

Вывод может быть таким: "Столица Китая - Пекин". .

Параметры настройки

Параметры генерации могут быть изменены, например:

outputs = model.generate(**inputs, max_length=50, temperature=0.7)
  • max_length: Установите длину выходного сигнала.
  • temperature: Управляет случайностью вывода, чем меньше значение, тем стабильнее.

Функциональное управление

эффективная работа

Благодаря трехзначному взвешиванию Bonsai хорошо работает с 16-битной точностью. При наличии графического процессора он может быть ускорен автоматически:

import torch
print(torch.cuda.is_available())  # 返回 True 表示 GPU 可用

GPU значительно увеличит производительность, но процессор будет работать просто отлично.

Оценка производительности

Bonsai демонстрирует отличные результаты в нескольких бенчмарках. Вот официальные данные:

моделированиеARC-cARC-eHS.OBQAPiQAВино.MMLUсредний балл
MobiLlama 0.5B26.6246.6851.6630.0071.6554.5028.6144.25
Квен 2 0.5B28.8450.2949.1233.0069.2656.9931.7845.61
MobileLLM 600M29.0156.6555.3534.0071.6559.7531.4048.13
Квен 2.5 0.5B32.2558.2952.1835.4069.9156.1233.4048.22
Бонсай33.3657.9548.0434.0070.2454.8530.2846.96
Эти тесты, включающие ARC, OBQA, MMLU и другие, показывают, что Bonsai входит в число лучших легких моделей.

Тонкая настройка модели

Bonsai не настраивается для задач генерации общего назначения. Он может быть доработан, если его нужно оптимизировать для конкретных задач (например, викторины):

  1. Подготовьте данные: используйте текстовый файл или datasets Загрузка библиотеки.
  2. Параметры конфигурации: с TrainingArguments Установка.
  3. Модели обучения:
from transformers import Trainer, TrainingArguments
training_args = TrainingArguments(
output_dir="./bonsai_finetuned",
num_train_epochs=3,
per_device_train_batch_size=4
)
trainer = Trainer(model=model, args=training_args, train_dataset=your_dataset)
trainer.train()

Подробнее см. Документация по обнимающимся лицам.

предостережение

  • Пределы точности: В настоящее время поддерживаются операции только с 16-битной точностью, и команда разрабатывает поддержку смешанной точности.
  • Необязательный тюнинг: Модель по умолчанию не подходит для непосредственного использования в сложных командных задачах и нуждается в тонкой настройке.
  • требования к оборудованию: Обычные процессоры могут запустить его, GPU не требуется, но рекомендуется.

 

сценарий применения

  1. Учебные пособия
    Бонсай может ответить на такие базовые вопросы, как "Какая столица Франции?". . Ответы генерируются быстро после ввода текста и подходят для обучения.
  2. Приложения для краевых устройств
    Модель легкая и подходит для установки на мобильные телефоны или встроенные устройства для локализованной обработки языка.
  3. Моделирование исследований
    Исследователи могут использовать его для проверки потенциала методов взвешивания трех значений и изучения эффективного дизайна моделей ИИ.

 

QA

  1. В чем заключаются основные преимущества Bonsai?
    Он использует метод трехзначных весов для достижения легкого веса и высокой эффективности, с меньшим количеством обучающих данных, но высокой производительностью, подходящей для сценариев с ограниченными ресурсами.
  2. Нужен графический процессор?
    Для его запуска не требуется процессор, но GPU ускорит его.
  3. Можно ли использовать его непосредственно для диалога?
    Модель по умолчанию не требует настройки, поэтому перед использованием ее для конкретной задачи рекомендуется провести тонкую настройку.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...