Зачем кому-то создавать FatLlama-1.7T? Серьезно, в чем смысл?
Однажды вы просыпаетесь и думаете: "Знаете, что нам нужно? Такая огромная модель, чтобы даже облака занервничали". Это все равно что решить построить ракету только для того, чтобы сгонять в супермаркет.
Конечно, это впечатляет, но кто будет ее запускать? Скорее всего, не вы, если только ваш ПК не является нелегальным ядерным реактором.
И что же она умеет? Может быть, предсказывать ваши электронные письма еще до того, как вы подумаете их написать, или просто станет очень хорошо находить в сети видео с котами, кто ж знает...
Вопрос в том, создаем ли мы эти гигантские модели, потому что можем или потому что нам есть что показать Вселенной?
FatLlama-1.7T - это не столько ИИ, сколько "подержите мое пиво, я собираюсь запустить эту штуку".
И вот она, FatLlama-1.7T, которая займет ВСЕ место на вашем жестком диске. Забудьте о сохранении семейных фотографий или драгоценном архиве книг, которые вы никогда не прочитаете. Вам же не так уж и нужны были эти жалкие 3 ТБ свободного места, правда? Зато теперь у вас есть цифровой гигант.
Квантованные версии? Да не вопрос, удачи с запуском, держитесь там.
Даже если каким-то чудом вам удастся запустить FatLlama-1.7T, не спешите расслабляться, ведь вы знаете, что будет дальше, верно? FatLlama 3T.
К тому времени, когда вы выработаете максимум энергии и превратите свой дом в центр обработки данных, чтобы запустить свежую FatLlama 3T, я перейду к FatLlama 5.8T, для которой, вероятно, потребуется маленькая галактика в качестве источника энергии.
Вызов принят? 😁
@ai_machinelearning_big_data
#AI #ML #LLM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Shortcut models - метод обучения диффузионных моделей, который позволяет генерировать изображения высокого качества за один или несколько шагов.
В основе shortcut models - идея обучать сеть с учетом не только текущего уровня шума, но и желаемого размера шага. Это позволяет модели "перепрыгивать" через этапы генерации.
Ключевым преимуществом данного подхода является его простота: shortcut models обучаются за один этап, используя одну сеть, в отличие от других методов ускорения выборки, которые полагаются на сложные схемы обучения с несколькими фазами, сетями или точной настройкой шедулера.
В процессе обучения shortcut models используются два типа целей loss function:
Совместная оптимизация этих целей дает возможность модели научиться создавать изображения, сохраняя согласованность при любом размере шага, включая генерацию за один шаг.
Метод применим к flow-matching и transformer-based типам моделей и RNN/LSTM-сетям.
Эксперименты, проведенные с DiT на наборах данных CelebA-HQ и ImageNet-256, подтверждают эффективность метода.
Shortcut models превосходят методы "end-to-end" обучения одношаговых генеративных моделей и конкурируют с двухэтапными методами дистилляции.
Практическая реализация shortcut models написана на JAX. Для локального запуска следует установить зависимости conda из файлов environment.yml и requirements.txt репозитория.
⚠️ Код поддерживает
--model.sharding fsdp для полностью сегментированного параллелизма данных, если обучение проводится на multi-GPU или TPU.⚠️ Чекпоинты и FID для тестовых датасетов CelebA и Imagenet доступны на Google-диске.
python train.py --model.hidden_size 768 --model.patch_size 2 --model.depth 12 --model.num_heads 12 --model.mlp_ratio 4
--dataset_name celebahq256 --fid_stats data/celeba256_fidstats_ours.npz --model.cfg_scale 0 --model.class_dropout_prob 1 --model.num_classes 1 --batch_size 64 --max_steps 410_000 --model.train_type shortcut
@ai_machinelearning_big_data
#AI #ML #ShortcutModels #Training
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Machinelearning
Семейство Aya Expanse - это исследовательский релиз моделей с развитыми мультиязычными возможностями.
Aya Expanse - результат объединения семейства моделей Command с итогами годичных исследований Cohere For AI в области арбитража данных, обучения многоязычным предпочтениям, безопасности и техник мерджа моделей.
Модели обучены для инференса на 23 языках: арабский, китайский (упрощенный и традиционный), чешский, голландский, английский, французский, немецкий, греческий, иврит, хинди, индонезийский, итальянский, японский, корейский, персидский, польский, португальский, румынский, русский, испанский, турецкий, украинский и вьетнамский.
Aya Expanse - авторегрессионые языковые модели на оптимизированной архитектуре трансформеров и контекстом в 128 тыс. токенов у 32b и 8 тыс. токенов у 8В:
Квантованные версии в размерностях от 2-bit до 16-bit в формате GGUF:
Блокноты на Google Collab от сообщества Cohere For AI:
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "CohereForAI/aya-expanse-8b"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
# Format the message with the chat template
messages = [{"role": "user", "content": " %prompt% "}]
input_ids = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_tensors="pt")
## <BOS_TOKEN><|START_OF_TURN_TOKEN|><|USER_TOKEN|>%prompt%<|END_OF_TURN_TOKEN|><|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>
gen_tokens = model.generate(
input_ids,
max_new_tokens=100,
do_sample=True,
temperature=0.3,
)
gen_text = tokenizer.decode(gen_tokens[0])
print(gen_text)
@ai_machinelearning_big_data
#AI #ML #LLM #CohereForAI #AyaExpanse
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Семейство Aya Expanse - это исследовательский релиз моделей с развитыми мультиязычными возможностями.
Aya Expanse - результат объединения семейства моделей Command с итогами годичных исследований Cohere For AI в области арбитража данных, обучения многоязычным предпочтениям, безопасности и техник мерджа моделей.
Модели обучены для инференса на 23 языках: арабский, китайский (упрощенный и традиционный), чешский, голландский, английский, французский, немецкий, греческий, иврит, хинди, индонезийский, итальянский, японский, корейский, персидский, польский, португальский, румынский, русский, испанский, турецкий, украинский и вьетнамский.
Aya Expanse - авторегрессионые языковые модели на оптимизированной архитектуре трансформеров и контекстом в 128 тыс. токенов у 32b и 8 тыс. токенов у 8В:
Квантованные версии в размерностях от 2-bit до 16-bit в формате GGUF:
Блокноты на Google Collab от сообщества Cohere For AI:
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "CohereForAI/aya-expanse-8b"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
# Format the message with the chat template
messages = [{"role": "user", "content": " %prompt% "}]
input_ids = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_tensors="pt")
## <BOS_TOKEN><|START_OF_TURN_TOKEN|><|USER_TOKEN|>%prompt%<|END_OF_TURN_TOKEN|><|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>
gen_tokens = model.generate(
input_ids,
max_new_tokens=100,
do_sample=True,
temperature=0.3,
)
gen_text = tokenizer.decode(gen_tokens[0])
print(gen_text)
@ai_machinelearning_big_data
#AI #ML #LLM #CohereForAI #AyaExpanse
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
PocketPal AI - проект Ai-ассистента на базе SLM, которые запускаются локально на iOS и Android без необходимости подключения к Интернету:
Приложения на обеих платформах позволяет выбирать модели, настраивать параметры инференса (системный промпт, температура, шаблоны чата и BOS), следить за показателями производительности в реальном времени и имеют функцию автоматической выгрузки моделей из памяти устройства, когда приложение в фоновом режиме.
Список моделей в приложении (загружаются вручную из меню):
Помимо этих моделей, можно загрузить любую модель в формате GGUF через опцию "Add Local Model" в меню моделей приложения на устройстве.
В планах проекта расширение списка поддерживаемых моделей, улучшение функций пользовательского интерфейса и поддержка большего количества версий Android/
⚠️ Требования для локальная разработки проекта PocketPal:
# Clone repository
git clone https://github.com/a-ghorbani/pocketpal-ai
cd pocketpal-ai
# Install dependencies
yarn install
# Install dependencies iOS only
cd ios
pod install
cd ..
# Run App via iOS Simulator
yarn ios
# Run App via Android Simulator
yarn android
@ai_machinelearning_big_data
#AI #ML #SLM #iOS #Android
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
DuoAttention - метод, который решает проблему LLM при работе с длинными текстами. Эта неэффективность проявляется в большом потреблении памяти и замедлении работы модели. DuoAttention позволяет сократить использование памяти и ускорить обработку длинных текстов без ущерба для точности модели.
Он основан на разделении attention heads в LLM на два типа: «Retrieval Heads» и «Streaming Heads»:
DuoAttention использует эту дихотомию, применяя полный KV-кэш только к Retrieval Heads, а для Streaming Heads использует облегченный KV-кэш постоянной длины, который хранит только "точки притяжения" и последние токены.
Проведенные эксперименты показывают, что DuoAttention может снижать использование памяти до 2,55 раз для моделей MHA и 1,67 для моделей GQA, а также ускоряет декодирование в 2,18 раз для моделей MHA и 1,50 для моделей GQA.
В сочетании с квантованием DuoAttention позволяет модели Llama-3-8B декодировать текст с длиной контекста 3,3 млн. токенов на одном GPU A100, это примерно 6,4-кратное увеличение емкости по сравнению со стандартным развертыванием FP16 с полным вниманием.
conda create -yn duo_demo python=3.10
conda activate duo_demo
# Install DuoAttention
pip install -e .
conda install -y git
conda install -y nvidia/label/cuda-12.4.0::cuda-toolkit
conda install -y nvidia::cuda-cudart-dev
# Install QServe
git clone git@github.com:mit-han-lab/qserve.git
cd qserve
pip install -e .
pip install ninja packaging
pip install flash-attn==2.4.1 --no-build-isolation
cd kernels
python setup.py install
# Install FlashInfer
pip install flashinfer -i https://flashinfer.ai/whl/cu121/torch2.3/
pip install tensor_parallel
@ai_machinelearning_big_data
#AI #ML #LLM #DuoAttention #LongContext
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM