Перспективные большие языковые модели (LLM) с открытым исходным кодом
Изучая последние достижения в области ИИ, мы рассмотрим несколько перспективных проектов. От Web LLM, который позволяет использовать возможности NLP непосредственно в веб-окружении, до Secret Llama, чат-бота с открытым исходным кодом, работающего полностью в браузере, - эти проекты демонстрируют разнообразные приложения и достижения в данной области.
Мы рассмотрим Outlines, библиотеку для создания структурированного текста, DeepSeek-V2, эффективную языковую модель Mixture-of-Experts, и проект Consistency Large Language Models (CLLMs), направленный на уменьшение задержек вывода.
Каждый из проектов демонстрирует существенные достижения в области обеспечения более свободного доступа к искусственному интеллекту, его эффективности и интеграции с различными платформами.
Web LLM
Web LLM могут использоваться в различных приложениях, таких как чат-боты, языковой перевод, анализ настроения и т. д., непосредственно на веб-страницах. Как правило, они используют такие технологии, как WebAssembly (Wasm) и фреймворки JavaScript, чтобы обеспечить эффективное использование моделей машинного обучения в браузере. Такой подход также упрощает развертывание и масштабирование NLP-функций на различных платформах и устройствах, не требуя специализированной инфраструктуры.
Secret llama
Secret Llama — это полностью приватный чат-бот с открытым исходным кодом, который работает полностью в браузере, используя большие языковые модели, такие как Llama 3 и Mistral. Он не требует сервера и работает в автономном режиме, предоставляя удобный интерфейс, похожий на ChatGPT, но для LLM с открытым исходным кодом. Проект размещен на GitHub и ищет разработчиков для улучшения интерфейса, поддержки большего количества моделей и исправления ошибок.
Он поддерживает различные современные языковые модели с открытым исходным кодом, включая:
- Llama 3 (8B параметров)
- Mistral-7B
- TinyLlama-1.1B
- Phi-1.5
Одним словом, Secret Llama делает языковые модели с открытым исходным кодом доступными через приватный интерфейс на основе браузера, сочетая в себе возможности ChatGPT и безопасность данных при локальной обработке. Его цель - облегчить доступ к LLM, при этом отдавая приоритет конфиденциальности.
Outlines
Outlines — это библиотека с открытым исходным кодом на языке Python, предназначенная для генерации структурированного текста с использованием больших языковых моделей (LLM). Она предоставляет методы управления генерацией языковых моделей, делая выходные данные более предсказуемыми и структурированными с помощью вспомогательных подсказок, ограничений типов, динамической остановки и многого другого.
Outlines поддерживает интеграцию нескольких моделей, включая OpenAI, transformers, llama.cpp, exllama2 и mamba. Она использует шаблонизатор Jinja для создания подсказок и предлагает быструю генерацию с использованием regex-структур, генерацию JSON в соответствии со схемой JSON или моделью Pydantic, а также генерацию с использованием грамматической структуры.
Outlines разработана для ускорения вывода и повышения производительности базовых и тонко настроенных моделей и делает модели более эффективными. Она интегрируется с механизмом вывода vLLM для быстрого обслуживания и доступна в официальном образе Docker.
Библиотека обеспечивает соответствие результатов LLM ожидаемым форматам, таким как корректный JSON, и предоставляет широкий, оптимальный по времени выполнения подход к генерации с помощью regex, поддерживая также детерминированную генерацию с помощью CFG.
Deep seekv2
DeepSeek-V2 — это языковая модель Mixture-of-Experts (MoE) с открытым исходным кодом, известная своей производительностью, экономичностью и эффективностью. Она включает в себя 236 миллиардов параметров, из которых 21 миллиард активируется для каждой лексемы.
Модель и ее код доступны для загрузки на сайте Hugging Face по лицензии с открытым исходным кодом, причем предлагаются две версии: DeepSeek-V2 с длиной контекста 128k и DeepSeek-V2-Chat (RL) с длиной контекста 128k.
В настоящее время открытый код работает медленнее на графических процессорах с Hugging Face по сравнению с внутренней кодовой базой DeepSeek из-за ограничений Hugging Face. Чтобы решить эту проблему, DeepSeek предлагает специальное решение vLLM для оптимизации производительности.
Для локального запуска DeepSeek-V2 для выводов требуется 80 ГБ*8 GPU и модель в формате BF16, а инструкции по запуску с помощью Hugging Face Transformers или vLLM приведены в README на GitHub.
DeepSeek также предлагает лицензию с открытым исходным кодом для серии кодовых моделей DeepSeek-Coder, которая позволяет проводить исследования и неограниченна для коммерческого использования. Такая открытость контрастирует со многими моделями с закрытым исходным кодом.
Создание таких моделей, как DeepSeek-V2 и DeepSeek-Coder, с открытым исходным кодом позволяет проводить более широкие исследования и разработки, но также создает риски, поскольку LLM с открытым исходным кодом потенциально могут быть использованы в злонамеренных целях, например, для извлечения частной информации.
Consistency large language models
В репозитории GitHub проекта Consistency Large Language Models (CLLMs) из Hao AI Lab представлены эффективные параллельные декодеры, созданные на основе предварительно обученных больших языковых моделей (LLM).
Цель CLLM - сократить время ожидания вывода за счет параллельного декодирования, не требующего черновых моделей или архитектурных модификаций, обеспечивая простоту и гибкость по сравнению с другими методами быстрого декодирования.
Репозиторий включает веса моделей как для целевых предварительно обученных LLM, так и для соответствующих версий CLLM, охватывающих такие наборы данных и задачи, как ShareGPT (разговорный ИИ), GSM8K (математические задачи), Spider (преобразование текста в SQL) и Code-Search-Net Python (генерация кода).
Для вывода информации скрипт run_chat_cllm.sh
запускает чатбота с заданной CLLM-моделью, а аргумент cllm_type
выбирает подходящую модель для задачи (например, sharegpt
, gsm8k
, spider
, python
). Репозиторий также содержит код для обучения CLLM путем сбора траекторий Якоби и выполнения имитационного обучения, с подробными командами и гиперпараметрами.
Проект интегрирован в фреймворк FastChat для эффективного развертывания, а статья с более подробной информацией доступна на arXiv. Репозиторий Consistency_LLM GitHub предлагает открытую реализацию консистентных больших языковых моделей, позволяющую быстро выполнять параллельное декодирование для различных задач естественного языка без изменения базовой архитектуры LLM, чтобы сделать вывод LLM более эффективным и доступным.