Мы используем Makefile думая, что нет альтернатив, что это стандарт и всё такое.
Но make это не запускалка команд, а система сборки. Мы фактически используем его не по назначению.
И на самом деле альтернатива есть! Некоторое время назад я открыл для себя прекрасный инструмент - just. Он решает все проблемы make.
just - это не система сборки как make, это именно исполнитель команд!
Больше никаких Phony Targets и табуляций, привет нормальный синтаксис и передача аргументов!!! 😎
⭐️Что умеет just:
✅ Автодокументирование команд
Не нужно делать отдельную команду с докой, просто добавь комментарий
# команда сборки
build:
...
$ just --list
Available recipes:
build # команда сборки
Команда с именем default запускается по умолчанию если не указано другое, так что я обычно делаю так:
default:
just --list
Теперь просто выполняем just и получаем доку из текущего файла.
✅ Удобная работа с переменными окружения
# загрузить из .env
set dotenv-load
# глобальная переменная
export PYTHONPATH := "./src"
# переменная для команды
test $TESTUNG="true":
pytest
✅ Передача аргументов
build target:
@echo 'Build {{target}}...'
команда запуска
$ just build dev
# Build dev...
✅ Выбор интерпретатора прямо в команде
Пример с инлайн-скриптом на python:
system:
#!/usr/bin/env python3
import platform
print(platform.system())
Эта же функция позволит выполнить скрипт как одну команду вместо перезапуска шела для каждой строки
foo:
#!/usr/bin/env sh
for file in ls .; do
echo $file
done
✅ Выполнение команды в определенной директории. Можно указать как релятивный путь так и абсолютный
[working-directory: 'backend']
build:
docker compose build
Также можно задать рабочую директорию глобально
Там еще много интересного:
- поддержка функций
- автокомплиты и интеграции
- экспрешены
- алиасы команд
- группировка команд
- альтернативы команды под разные ОС
- импорт других just-файлов
- цветной вывод
- ... и другие штуковины!
Так что вперёд - ➡️ читать доку!
Репозиторий: ➡️https://github.com/casey/just
Статья: ➡️https://www.chicks.net/reference/file_formats/just/
ЗЫ. Кажется, на Makefile я уже не вернусь)
#tools
🌟LinumV2: T2V модель, которую делали вдвоем
Интересная история, которая доказывает, что в индустрии ИИ не всегда нужны миллиарды долларов и сотни сотрудников.
Знакомьтесь - проект Linum.
Два брата, Сахила Чопра и Ману Чопра, сделали две text-to-video модели на 2 миллиарда параметров, которые генерируют клипы длиной от 2 до 5 секунд в разрешении до 720p.
Согласитесь, это редкое явление в мире, где большинство видео-генераторов закрыты за платными API.
Изначально братья совсем не планировали заниматься генерацией видео.
Сахил окончил Стэнфордский университет в 2019, где в соавторстве разработал курс по LLM и занимался исследованиями в области когнитивных наук на стыке ИИ и лингвистики.
Ману досрочно окончил Калифорнийский университет в Беркли в 2021 г.. До основания Linum занимался исследованиями ИИ в биоинженерии.
Стартовав осенью 2022 года и пройдя через YCombinator, они пилили ИИ-инструмент для раскадровки фильмов. Но, пообщавшись с режиссерами, поняли: рынок слишком узкий, а творческий процесс у всех разный.
🟡Первая попытка создания видео-модели
Linum v1, была, по их признанию, франкенштейном. Они взяли за основу SDXL, раздули U-NET, превратив 2D-свертки в 3D и добавили временные слои внимания.
Получился забавный бот для Discord, который делал гифки в разрешении 180p. Это работало, но было тупиковой ветвью эволюции.
Расширять модель, заточенную под картинки, для работы с видео - плохая идея в долгосроке. VAE, идущий в комплекте с имидж-моделью, просто не умеет нормально сжимать и разжимать видеопоток. Качество на выходе получается никакое.
К тому же распределения данных в картинках и видео слишком разные, да и переучивать модель стоит дорого.
🟡V2 решили пилить с нуля.
VAE взяли от Wan 2.1, успев попутно разработать свой собственный temporal VAE, но решили сэкономить на эмбеддингах, DIT и T5 на роль текстового энкодера.
Представьте объем работы: двое парней делали то, чем обычно занимаются отделы с десятками сотрудников.
Они сами собирали датасеты, настраивали VLM для фильтрации контента, писали пайплайны для аннотирования архива видео.
И, конечно, бенчмаркали провайдеров, пытаясь понять, почему H100 у одного хостера работает хуже, чем у другого.
🟡К чему они пришли за 2 года разработки?
Linum v2 — pretrained веса. Модель пока ошибается в физике и эстетике, а генерация 5-секундного клипа в 720p занимает около 15 минут на H100 при 50 шагах.
Но, главное, братья не останавливаются: есть планы по ускорению через CFG и timestep distillation, работа над звуком и масштабированием.
@ai_machinelearning_big_data
#AI#ML#T2V#Linum
🌟TurboDiffusion: ускорение генерации видео в 100+ раз.
Суровая реальность нашего времени: вы хотите сгенерировать 5-секундное видео на большой SOTA-модели. Вы запускаете промпт, идете пить кофе, возвращаетесь, а процесс все еще идет. И зачастую генерация может занимать больше часа.
Главные виновники - чудовищная вычислительная сложность механизма внимания в трансформерах, необходимость сотен шагов денойзинга и огромный объем памяти для весов в полной точности.
Авторы проекта TurboDiffusion из Цинхуа и Беркли решили собрать все эффективные методы сжатия и ускорения в один пайплайн. Их идея заключалась в том, что разреженность и квантование — это техники, которые не мешают друг другу.
🟡Архитектура держится на 3-х китах оптимизации:
🟢Заменили стандартное внимание на гибрид из SageAttention2++ и Sparse-Linear Attention (SLA), который превратил квадратичную сложность в линейную. чтобы модель фокусировалась только на важных токенах.
🟢Дистиллировали сэмплинг через rCM - вместо стандартных 50–100 шагов модель приходит к результату всего за 3-4 шага без потери сути изображения.
🟢Перевели и веса и активации линейных слоев в INT8 используя блочное квантование, чтобы не потерять точность.
В довершении ко всему смогли объединить после файнтюнинга под SLA и дистилляции rCM веса в единую модель, избежав конфликтов.
🟡Результаты бенчмарков выглядят как опечатка, но это не она.
На RTX 5090 время генерации для тяжелой модели Wan2.2-I2V 14B упало с 69 минут до 35.4 секунд. А для более легкой Wan 2.1-1.3B - с почти 3-х минут до 1.8 секунды.
Это ускорение больше чем в 100 раз.
При этом, судя по примерам, визуальное качество осталось практически неотличимым от оригинала.
📌Лицензирование: Apache 2.0 License.
🟡Набор моделей
🟡Техотчет
🖥GitHub
@ai_machinelearning_big_data
#AI#ML#I2V#T2V#TurboDiffusion
Ядерный апгрейд для WAN: FusionX — видео в два раза быстрее и краше! 🔥
Название модели: Wan2.1_14B_FusionX
Ссылка на модель: https://civitai.com/models/1651125?modelVersionId=1868891
Тип модели: #Checkpoint#Merge
Количество скачиваний: 8.8k+
Дата загрузки: 6 июня 2025
Базовая модель: Wan Video 14B t2v
Теги:#merge, #wan, #i2v, #t2v, #wan14b, #video, #cinematic, #animation, #speed
Описание модели | Комментарий разработчика:
Это мощный чекпоинт, созданный слиянием базовой модели WAN 2.1 14B и нескольких передовых моделей (CausVid, AccVideo, MoviiGen1.1). Результат — значительное улучшение качества движения, плавности сцены и детализации, сопоставимое с закрытыми коммерческими аналогами.
Главное преимущество — ускорение рендеринга до 50% по сравнению с базовой моделью, особенно при включении SageAttn. Модель отлично подходит для генерации как из текста, так и из изображения, и полностью совместима с VACE. Автор также выпустил LoRA-версию для тех, кто предпочитает гибкость и контроль.
Помимо основной Text2Video модели, на странице доступны и другие версии: отдельная для Image2Video, а также квантованные GGUF-варианты для экономии VRAM.
Идеальный выбор, чтобы быстро создавать качественные и выразительные кинематографичные ролики.
Важные настройки:
Модель не требует триггерных слов, но для качественного результата критически важны следующие параметры:
CGF должен быть установлен на 1.
Shift: Для разрешения 1024x576 начинайте с 1, для 1080x720 — с 2. Для большего реализма используйте низкие значения, для стилизации — более высокие (3-9).
Шаги: 8–10 шагов для оптимального качества.
🤖НЕЙРО-СКЛАД — всё, что нужно, для твоей нейронки!