Свежая выжимка ml и AI статей - каждый день
В мире, где технологии становятся всё более интегрированными в нашу повседневную жизнь, мобильные устройства превратились в мощные инструменты, способные выполнять сложные задачи, которые раньше требовали работы на мощных серверах. Одним из таких направлений является разработка и использование малых языковых моделей (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).
Для разработки и развертывания эффективной модели для документальной помощи на мобильных устройствах мы предлагаем трехступенчатый подход:
Найти оптимальный баланс между размером модели, длиной контекста и временем вывода является ключевым моментом, поскольку более крупные модели могут требовать больше времени для обработки и памяти, что ограничивает их способность обрабатывать длинные контексты. Аналогично, меньшие модели могут быстрее обрабатывать длинные контексты, но их производительность может ухудшаться.
Мы выбираем ряд передовых моделей, от 125M до 8B параметров, поскольку модели более чем с 8B параметрами очень сложно развертывать даже после квантования. Для квантования и развертывания используется фреймворк MLC-LLM, который поддерживает широкий спектр моделей и использование GPU на мобильных устройствах. Все модели квантуются в 4-битном формате с использованием метода группового квантования с размером группы 32.
Поскольку задачи документальной помощи требуют обработки длинных контекстов, мы проводим эксперименты с различными длинами контекста до 1000 токенов, измеряя эффективность моделей по таким параметрам, как количество входных токенов в секунду (ITPS), количество выходных токенов в секунду (OTPS), время до первого токена (TTFT) и общее время выполнения в секундах.
Меньшие модели предлагают более быструю скорость вывода, но часто имеют ограниченные возможности обработки документов. Для решения этой проблемы мы разработали DocAssist, специализированный набор данных, предназначенный для тонкой настройки моделей для улучшения их способности обрабатывать и помогать с более длинными документами.
Мы используем наши собственные инструменты для сбора разнообразной коллекции из 82,850 публично доступных документов, включая иллюстрации, презентации и таблицы, а также машинно-генерированные документы для обеспечения всеобъемлющего представления различных типов документов.
Документы токенизируются с помощью Tiktoken в сочетании с GPT-3.5-turbo, каждый документ разделяется на 5 частей, каждая из которых содержит не более 200 токенов, что обеспечивает максимальное количество токенов на документ после предобработки в 1000.
Мы предложили новый подход к аннотации документов с использованием GPT-4o-mini для создания всесторонних аннотаций для трех ключевых задач в DocAssist: SUMM, QS и QA. Для каждого документа наш метод генерирует пять различных примеров: один обзор, три предложенных вопроса и три пары вопрос-ответ.
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, открывая путь для широкого развертывания эффективных, работающих на устройстве языковых моделей для улучшения конфиденциальности пользователей и снижения серверных затрат.