Ай Дайджест

Свежая выжимка ml и AI статей - каждый день

SlimLM: Эффективная Малая Языковая Модель для Документальной Помощи на Мобильных Устройствах

В мире, где технологии становятся всё более интегрированными в нашу повседневную жизнь, мобильные устройства превратились в мощные инструменты, способные выполнять сложные задачи, которые раньше требовали работы на мощных серверах. Одним из таких направлений является разработка и использование малых языковых моделей (SLM), которые могут работать непосредственно на устройствах, предлагая пользователям удобство, конфиденциальность и экономию ресурсов. В этом контексте, SlimLM представляет собой значительный шаг вперёд, предлагая серию оптимизированных моделей для документальной помощи на мобильных устройствах.

Развитие языковых моделей идет по двум основным направлениям: большие языковые модели (LLM), которые стремятся к достижению искусственного общего интеллекта и требуют огромных вычислительных мощностей, и малые языковые модели (SLM), разработанные для эффективного развертывания на устройствах с ограниченными ресурсами, таких как смартфоны. Пока LLM привлекают значительное внимание, реальное применение и производительность SLM на мобильных устройствах остаются недостаточно изученными, несмотря на их растущую важность в потребительской технологии.

Недавние разработки, такие как Qwen-2 от Alibaba, SmolLM от HuggingFace, Gemini Nano от Google, Apple Intelligence и LLaMA-3.2 от Meta, подчеркивают возрастающую значимость SLM в мобильных приложениях. Однако всеобъемлющее понимание того, как эти модели работают на современных смартфонах, отсутствует. Наша работа направлена на заполнение этого пробела, представляя подробное исследование разработки и развертывания SLM на Samsung Galaxy S24, с акцентом на три ключевые задачи документальной помощи: суммаризация (SUMM), предложение вопросов (QS) и ответы на вопросы (QA).

Подход

Для разработки и развертывания эффективной модели для документальной помощи на мобильных устройствах мы предлагаем трехступенчатый подход:

  1. Определение оптимального размера модели: Мы определяем идеальный размер модели, который может обрабатывать достаточно длинный контекст за разумное время.
  2. Создание специализированного набора данных: Мы создаем набор данных DocAssist для тонкой настройки моделей, чтобы улучшить их способность к документальной помощи.
  3. Обучение и тонкая настройка SlimLM: Мы обучаем и тонко настраиваем серию моделей SlimLM с нуля, чтобы выполнять задачи документальной помощи, при этом обеспечивая эффективную работу на мобильных устройствах.

Определение Оптимального Размера Модели

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

Выбор и Развертывание Модели

Мы выбираем ряд передовых моделей, от 125M до 8B параметров, поскольку модели более чем с 8B параметрами очень сложно развертывать даже после квантования. Для квантования и развертывания используется фреймворк MLC-LLM, который поддерживает широкий спектр моделей и использование GPU на мобильных устройствах. Все модели квантуются в 4-битном формате с использованием метода группового квантования с размером группы 32.

Выбор Длины Контекста

Поскольку задачи документальной помощи требуют обработки длинных контекстов, мы проводим эксперименты с различными длинами контекста до 1000 токенов, измеряя эффективность моделей по таким параметрам, как количество входных токенов в секунду (ITPS), количество выходных токенов в секунду (OTPS), время до первого токена (TTFT) и общее время выполнения в секундах.

Создание Набора Данных DocAssist

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

Сбор Данных

Мы используем наши собственные инструменты для сбора разнообразной коллекции из 82,850 публично доступных документов, включая иллюстрации, презентации и таблицы, а также машинно-генерированные документы для обеспечения всеобъемлющего представления различных типов документов.

Предобработка

Документы токенизируются с помощью Tiktoken в сочетании с GPT-3.5-turbo, каждый документ разделяется на 5 частей, каждая из которых содержит не более 200 токенов, что обеспечивает максимальное количество токенов на документ после предобработки в 1000.

Аннотация Данных

Мы предложили новый подход к аннотации документов с использованием GPT-4o-mini для создания всесторонних аннотаций для трех ключевых задач в DocAssist: SUMM, QS и QA. Для каждого документа наш метод генерирует пять различных примеров: один обзор, три предложенных вопроса и три пары вопрос-ответ.

Slim Language Model (SlimLM)

SlimLM основан на архитектуре MPT (Mosaic Pre-trained Transformer) с модификациями для оптимизации под задачи документальной помощи. В отличие от оригинального MPT, SlimLM включает смещения в своих слоях для повышения гибкости модели в захвате и представлении нюансов документов.

Предобучение

Мы предобучили SlimLM на наборе данных SlimPajama, содержащем 627 миллиардов токенов. Цель предобучения следует стандартному подходу к моделированию языка, где модель учится предсказывать следующий токен в последовательности.

Тонкая Настройка

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

Эксперименты и Результаты

Настройка Эксперимента

Мы предобучили SlimLM с нуля на наборе данных SlimPajama, используя 128-256 GPU A100/H100 с оптимизатором Lion, различными скоростями обучения, глобальным размером пакета и количеством обученных токенов. Все модели тонко настраивались на DocAssist с использованием 8 GPU A100 и оптимизатора AdamW.

Базовые Модели

Наш выбор базовых моделей основан на результатах, демонстрирующих четкий компромисс между размером модели, скоростью и длиной контекста. Мы сравниваем с моделями, такими как SmolLM-135M-Instruct, SmolLM-360M-Instruct, Qwen2-0.5B-Instruct и Qwen2-1.5B-Instruct, которые представляют передовые результаты в своих категориях.

Метрики Оценки

Для оценки производительности моделей по задачам DocAssist мы используем разнообразный набор метрик, включая точность для определения намерений, BLEU, ROUGE и Semantic Textual Similarity (STS) для оценки качества, перекрытия и семантического сходства сгенерированных выходных данных с эталонными значениями, а также GEval для комплексной оценки качества с человеческой оценкой.

Результаты

До тонкой настройки модели не могли выполнять задачи документальной помощи или распознавать намерения пользователей. После тонкой настройки большинство моделей достигли идеальной точности, с самым низким результатом в 99.86% от SmolLM-360M-Instruct. SlimLM модели постоянно превосходили или соответствовали производительности аналогичных по размеру моделей, указывая на эффективность нашей архитектуры.

Практическое Применение

SlimLM может быть интегрирована в мобильные приложения, такие как Adobe Acrobat, для локальной обработки документов. Это устраняет необходимость в вызовах внешних API, значительно снижая операционные затраты и повышая конфиденциальность пользователей, сохраняя содержимое документов на устройстве.

Заключение

В этой работе мы представили SlimLM, серию моделей, оптимизированных для задач документальной помощи. Мы определили оптимальный баланс между размером модели, временем вывода и максимальной длиной контекста для эффективной обработки на реальных мобильных устройствах. Наш специализированный набор данных DocAssist, созданный на основе примерно 83 тысяч документов, позволил тонко настроить SlimLM для трех критически важных задач документальной помощи. Модели SlimLM, от 125M до 1B параметров, демонстрируют сопоставимую или превосходящую производительность по сравнению с существующими SLM аналогичного размера по стандартным метрикам, при этом эффективно обрабатывая до 800 контекстных токенов. Для демонстрации реального применения мы разработали Android-приложение, демонстрирующее возможности документальной помощи SlimLM, открывая путь для широкого развертывания эффективных, работающих на устройстве языковых моделей для улучшения конфиденциальности пользователей и снижения серверных затрат.