MobileLLM — семейство авторегрессионных языковых моделей на оптимизированной архитектуре трансформера для использования на устройствах с ограниченными ресурсами.
В создании MobileLLM были использованы: функция активации SwiGLU, шэринг эмбединга и grouped-query attention. Модели обучались на датасете в 1 трлн. токенов
MobileLLM-125M/350M более точны на 2,7%/4,3% по сравнению с другими моделями SoTA 125M/350M в задачах zero-shot рассуждений.
В открытый доступ опубликованы 4 модели c контекстом 2 тыс. токенов:
@ai_machinelearning_big_data
#AI #ML #SLM #MobileLLM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤7🔥3🎉3
Hugging Face представила SmolLM2, новую серию SLM, оптимизированных для работы на устройствах c ограниченными ресурсами и предназначенных для выполнения задач генерации и обобщения текста на английском языке и вызова функций.
Модели SmolLM2 были обучены на миксе из наборов данных FineWeb-Edu, DCLM и Stack. Тестирование после обучения показало превосходство старшей модели SmolLM2-1.7B над Meta Llama 3.2 1B и Qwen2.5-1.5B.
Модели доступны в трёх конфигурациях: 135М, 360М и 1.7B параметров, каждая модель имеет свою Instruct-версию, а 1.7B и 360М еще и официальные квантованные версии GGUF:
from transformers import AutoModelForCausalLM, AutoTokenizer
checkpoint = "HuggingFaceTB/SmolLM2-1.7B"
device = "cuda" # for GPU usage or "cpu" for CPU usage
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device)
inputs = tokenizer.encode("Gravity is", return_tensors="pt").to(device)
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
@ai_machinelearning_big_data
#AI #ML #SLM #Huggingface #SmolLM2
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20🔥7❤3
Статья на HF из цикла Open-Source AI Cookbook c подробным пошаговым описанием и примерами кода процесса тонкой настройки VLM Qwen2-VL-7B в области ответов на вопросы по изображениям с использованием библиотеки Transformer Reinforcement Learning (TRL). В качестве целевого датасета используется ChartQA, который содержит диаграммы разных типов в паре с вопросами и ответами.
Для обучения модели демонстрируется методы Supervised Fine-Tuning (SFT) с использованием библиотеки TRL, QLoRA, которая квантует веса LoRA, обеспечивая более низкие требования к памяти и повышенную эффективность обучения.
Отдельным разделом выделен процесс подготовки данных к обучению с помощью функции
collate_fn, которая выполняет корректное извлечение и пакетную обработку данных и их форматирование для модели. Обучение модели осуществляется с помощью класса SFTTrainer.В результате модель научилась отвечать на вопросы в соответствии с используемым датасетом. Оценить готовый файнтюн можно в демо на HF Space.
Дополнительно, в качестве альтернативы тонкой настройке, рассматривается использование промтинга с добавлением системного сообщения для контекстуализации ввода для модели, чтобы улучшить точность ее ответов.
@ai_machinelearning_big_data
#AI #ML #VLM #HuggingFace #Tutorial
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22❤5🔥5🥰1😁1🙈1
SmolTalk - это синтетический датасет, разработанный HuggingFace для обучения SmolTalk: новый синтетический набор данных для обучения больших языковых моделей LLM с учителем. Он состоит из 2 млн. строк и был использован для создания семейства моделей SmolLM2-Instruct. SmolTalk включает в себя как новые, так и существующие наборы данных.
Новые наборы данных:
Существующие общедоступные наборы данных:
SmolTalk сравнили недавно выпущенным набором данных Orca AgentInstruct 1M, обучив SmolLM2 на обоих наборах данных с использованием одинаковой конфигурации обучения.
Результаты показали, что SmolTalk показал значительные улучшения в производительности модели, особенно в задачах математики, программирования и следованию системным промптам. Наблюдались также значительные улучшения в масштабе 7B при обучении Mistral-7B на SmolTalk, особенно по показателям IFEval, BBH, GS8Mk и MATH.
from datasets import load_dataset
ds = load_dataset("HuggingFaceTB/smoltalk", "all", split="train")
# to load the train split of a specific subset such as smol-magpie-ultra, you can do
ds = load_dataset("HuggingFaceTB/smoltalk", "smol-magpie-ultra", split="train")
@ai_machinelearning_big_data
#AI #ML #LLM #HuggingFace #Dataset
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤7🔥4
SmolVLM - серия компактных VLM с 2 млрд. параметров, отличающихся высокой эффективностью использования памяти и могут быть развернуты на локальных устройствах с ограниченными ресурсами.
Архитектура SmolVLM основана на Idefics3, с несколькими отличиями:
Модель кодирует каждый патч изображения 384x384 в 81 токен, что позволяет ей обрабатывать тестовые запросы и изображения с использованием всего 1.2 тыс. токенов, в то время как Qwen2-VL использует 16 тыс. токенов. Это преимущество приводит к значительно более высокой скорости предварительной обработки (в 3,3-4,5 раза) и генерации (в 7,5-16 раз) по сравнению с Qwen2-VL.
Для самостоятельной тонкой настройки SmolVLM можно использовать transformers и TRL. Разработчиками представлен блокнот для файнтюна на VQAv2 с использованием LoRA, QLoRA или полной тонкой настройки. SmolVLM интегрирован с TRL для DPO через CLI.
⚠️ При batch sizes=4 и 8-битной загрузке QLoRA файнтюн потребляет около ~16 GB VRAM
@ai_machinelearning_big_data
#AI #ML #SmallVLM #Huggingface
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤10🔥7
TGI v3 — новая версия архитектуры для обработки естественного языка, разработанная Hugging Face. TGI v3 демонстрирует значительный прирост производительности, особенно при работе с длинными запросами.
Улучшения v3:
Flashinfer и flashdecoding — новые ядра быстрой обработки текста. Оптимизированная структура кэширования позволяет быстро находить совпадения даже для очень длинных запросов.TGI v3 оценивалась в реалистичных сценариях на коротких и длинные запросах. Результаты тестов показали, что TGI v3 обрабатывает в 3 раза больше токенов, чем vLLM, а скорость обработки увеличилась в 13 раз для запросов длиной 200K+ токенов.
Хотя результаты работы TGI v3 впечатляют, следует учитывать некоторые ограничения:
⚠️ Если в среде не хватает места в kv-кэше, это может привести к конфликту. Чтобы избежать этого эффекта, следует установить ограничение
--max-total-tokens.⚠️ В сценариях, где несколько реплик находятся за одним эндпоинтом рекомендуется использовать балансировку нагрузки на зависимые сеансы, чтобы заставить каждого пользователя отправлять свои запросы на одну и ту же реплику.
@ai_machinelearning_big_data
#AI #ML #LLM #HuggingFace #TGI
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥7❤3
Познавательная статья Кристофера Флитвуда, ML-инженера HuggingFace об эволюции методов позиционного кодирования в моделях-трансформерах, начиная с простых подходов и заканчивая Rotary Positional Encoding (RoPE), используемым в современных моделях, таких как Llama 3.2.
Самовнимание, ключевой механизм трансформеров, требует обогащения позиционной информацией, поскольку оно является перестановочно инвариантным, то есть не учитывает порядок токенов в последовательности.
Без позиционной информации модели не могут различать одинаковые токены, находящиеся в разных позициях, что делает невозможным определение отношений между словами в предложении.
В статье описываются желательные свойства идеальной схемы позиционного кодирования: уникальность кодирования для каждой позиции, линейная зависимость между закодированными позициями, обобщение на более длинные последовательности, детерминированный процесс генерации и возможность расширения на множественные измерения.
Начальные методы, например, добавление целочисленного значения позиции к эмбеддингу токена, были признаны несостоятельными из-за проблем с диапазоном значений и низкой разделительной способностью. Альтернативой стало бинарное позиционное кодирование, которое, однако, не обеспечивало достаточной гладкости и непрерывности для оптимизации.
Синусоидальное позиционное кодирование, описанное в «Attention is all you need», стало важным шагом вперед.
Оно использует синусоидальные и косинусоидальные функции с разными частотами для кодирования позиции, позволяя модели изучать отношения между позициями.
RoPE кодирует относительные позиции, применяя матрицу вращения к парам компонентов векторов запросов (q) и ключей (k), что позволяет модели эффективно кодировать позиционную информацию без изменения нормы векторов. Это достигается путем умножения пар элементов векторов на матрицу вращения.
RoPE также может быть расширен для работы с многомерными данными, например, изображениями, путем независимого кодирования позиций в разных измерениях.
@ai_machinelearning_big_data
#AI #ML #LLM #RoPE #Huggingface #Blogpost
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27❤6🔥3🤔2
This media is not supported in your browser
VIEW IN TELEGRAM
🤗 Hugging Face не так давно выпустила собственную low-code библиотеку для просто создания ИИ- агентов ⚡️
Smolagents - это библиотека на 100% с открытым исходным кодом, которая позволяет запускать мощные агенты, используя всего три строки кода.
↳ Импортируйте необходимые модули.
↳ Выберите агента
↳ Укажите LLM и инструменты, к которым он должен получить доступ.
↳ Запустите агент!
Готово!
- Поддерживает более 40 LLM
- Предоставляет один общий доступ к инструментам HF Hub.
- CodeAgent, который создает код и документирует свои действия.
Установка:
Пример работы:
▪ GitHub
▪Подробнее
@ai_machinelearning_big_data
#codegen #llm #huggingface #ai #Smolagents
Smolagents - это библиотека на 100% с открытым исходным кодом, которая позволяет запускать мощные агенты, используя всего три строки кода.
↳ Импортируйте необходимые модули.
↳ Выберите агента
↳ Укажите LLM и инструменты, к которым он должен получить доступ.
↳ Запустите агент!
Готово!
- Поддерживает более 40 LLM
- Предоставляет один общий доступ к инструментам HF Hub.
- CodeAgent, который создает код и документирует свои действия.
Установка:
pip install smolagents
Пример работы:
from smolagents import CodeAgent, DuckDuckGoSearchTool, HfApiModel
agent = CodeAgent(tools=[DuckDuckGoSearchTool()], model=HfApiModel())
agent.run("How many seconds would it take for a leopard at full speed to run through Pont des Arts?")
▪ GitHub
▪Подробнее
@ai_machinelearning_big_data
#codegen #llm #huggingface #ai #Smolagents
👍82🔥22❤17
SmolVLM - серия компактных VLM отличающихся высокой эффективностью использования памяти и могут быть развернуты на локальных устройствах с ограниченными ресурсами.
Только что были выпущены SmolVLM (256M и 500M), которым требуются GPU <1GB для запуска.
Модели настолько маленькт, что могут работать 100% локально в вашем браузере на WebGPU!
🤗 Модели: https://huggingface.co/collections/HuggingFaceTB/smolvlm-256m-and-500m-6791fafc5bb0ab8acc960fb0
@ai_machinelearning_big_data
#AI #ML #SmallVLM #Huggingface
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥59👍26❤12🤗3
Разработчики с Hugging Face решили повторить полный цикл разработки DeepSeek - от сбора данных до обучения! 🔥
Цель этого репозитория - объяснить все части конвейера создания R1 таким образом, чтобы каждый мог повторить его или построить поверх него свой проект.
Из чего состоит проект:
- src/open_r1 содержит скрипты для обучения и оценки моделей, а также для генерации синтетических данных:
- grpo.py : обучение модели с помощью GRPO
- sft.py: простой SFT
- evaluate.py: оценка модели на основе тестов R1.
- generate.py: генерация синтетических данных с помощью Distilabel.
- Makefile содержит простую в выполнении команду для каждого шага конвейера R1.
▪ Github
@ai_machinelearning_big_data
#opensource #DeepSeekR1 #huggingface #OpenR1
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥109👍26❤14