Разработчики из компании Mozilla представили первый выпуск утилиты llamafile, позволяющей создавать универсальные исполняемые файлы для запуска больших языковых моделей машинного обучения (LLM). При помощи llamafile можно взять файл с параметрами модели машинного обучения в формате GGUF и преобразовать его в исполняемый файл, который может запускаться в шести различных операционных системах на оборудовании с процессорами AMD64 и ARM64. Инструментарий написан на С/С++ и распространяется под лицензией Apache 2.0...Подробнее: https://www.opennet.me/opennews/art.shtml?num=60206
Чем бы Mozilla не тешилась, лиш бы браузер не пилила.
Так это попытка в диверсификацию.
На браузере на разработку не заработаешь - юзербейз нищуки, даже за копейку удавятся.
Доп.сервисы типа vpn или storage им не продашь, на платные интеграции вроде покета реагируют неадекватно.
Спасибо щедрости гугла - они еще на плаву. Но это не будет продолжаться вечно, вот они и ищут альтернативы.
Жаль, что в свое время FirefoxOS не взлетел.
>в диверсификациюМожно сказать, в diversity. Дармоедов альтернативных местоимений и одарённостей держать хочется, но им надо выдать задание. Плевать, что абсолютно бесполезное, главное - чтобы чем-то их занять, чтобы обосновать перед госрегулятором необходимость держать их в штате.
А причем тут гос. регулятор?! это альтернативно одаренные активисты за это, сейчас как раз на сколько я понял суды идут на эту тему и бабки с организаций выбивают за нарушение федерального закона запрещающего расизм и сексизм. https://www.youtube.com/watch?v=e7dNwYi8ZAM
Притом, что если держат чела в штате, который ничего не делает, то налоговая не оценит и компания не сможет доказать, что не верблюд, пришьют willful blindness как минимум. А так - вот есть работа и результаты в виде никому не нужной либы, зряплата - за неё. Diversity - check, рабочие места созданы, доходы человеком получены, налоги - заплачены, у налоговой - никаких претензий.
С третьего коммента озабоченные пошли. И ведь ничто не предвещало, просто слово похожее увидели.
А теперь вспомним недавний пост в блоге Мозиллы в котором они объявили AI своим главным интересов на ближайшие годы\десятилетия и сделаем выводы. ФФ теперь "старый" продукт, который все больше становится чемоданом без ручки.
Это хорошо.
2023:
https://opennet.ru/58845-mozilla
2022:
https://opennet.ru/58038-mozilla
2015:
https://opennet.ru/43510-openai
Мозилла обязана исключительно браузером заниматься. Именно анониму обязана.
Так вот чей зад надирал Winamp! )
Олдфаги в треде (╯°□°)╯
Разработчик gguf и llama.cpp, кстати, русский
Наши опять вперди планеты всей
Это он тебе сказал или сам выдумал?
А не Болгарин?
А Corvette разработали беларусы.
Как определили? По гаплогруппе, родному языку, вторичным признакам, архивным данным, личному убеждению?
Силой почувствовал
>в формате GGUFНапоминаю: единственным актуальным форматом моделей является ONNX. SafeTensors - это не формат моделей, это формат сериализации, сделанный из NIH-синдрома (numpy.npy в zip-архиве с нулевым сжатием и выравниванием (zipalign) был бы намного лучше).
> ONNXONNX рантайм достаточно жирный, и не имеет особого смысла для моделей вроде llama, для которых инференс можно написать на коленке без особых просадок по производительности.
Его преимущество в возможности компилироваться под произвольные архитектуры и ускорители, но если задача поддерживать лишь пару архитектур - то его JIT компиляция становится лишь минусом.
>ONNX рантайм достаточно жирныйЭто Micro$oft виновата - все либы слинкованы статически, включая протобуф. И перекомпилированны. Гугл покусал. Не смотря на то, что для сборки используется CMake, подход к зависимостям - как в Базеле. Если делать всё по уму, большая часть либ будет переиспользована системная. При этом onnxruntime умеет и в GPU, и в оптимизации, причём обгоняет хвалёный Apache TVM, который оптимизирует и компилирует ONNX-модели в Vulkan, OpenCL или оптимизированный машинный код для CPU, по производительности (да, onnxruntime на CPU обгоняет TVM на Vulkan). Формат ONNX позволяет лёгкую интеграцию моделей в свои программы, так как файл модели есть законченная программа, а не набор тензоров, который надо обвесить своим кодом. Также формат ONNX позволяет делать на моделях хирургию: я так резал одну модель (mobile-ViT от Apple) посередине с целью извлечения векторного представления.
>Его преимущество в возможности компилироваться под произвольные архитектуры и ускорители, но если задача поддерживать лишь пару архитектур - то его JIT компиляция становится лишь минусом.
Ну возможность инферить на GPU - это жирный плюс. Возможность легко интегрировать в свои программы на любом ЯП - это жирный плюс.
> Это Micro$oft виновата - все либы слинкованы статическиА я не в этом смысле жирный говорю. В ONNX есть огромная библиотека функций, все из которых нужно собирать себе в программу для подгрузки ONNX моделей, его не сделать менее жирным вынесением protobuf и прочего.
> Ну возможность инферить на GPU - это жирный плюс
Не везде это полезно, многие модели не влезут в consumer-grade GPU, а для остальных моделей инференс на процессоре зачастую быстрее, поскольку копирование данных CPU->GPU занимает больше времени чем сам инференс.
> Возможность легко интегрировать в свои программы на любом ЯП - это жирный плюс.
Ровно как и FFI. ONNX позволяет быстрее довести модель от прототипа до прода, но не всегда эффективнее. Для эффективности всё таки проще реализовать оптимизированную модель руками в коде, и грузить только веса.
>Для эффективности всё таки проще реализовать оптимизированную модель руками в коде, и грузить только веса.Не факт, что один человек может руками оптимизировать модель лучше, чем автоматический оптимизатор и JIT-компилятор, вылизанный командой специалистов ведущей ИИ-корпорации.
>В ONNX есть огромная библиотека функций, все из которых нужно собирать себе в программу для подгрузки ONNX моделей, его не сделать менее жирным вынесением protobuf и прочего.
Это всё части рантайма, который устанавливается один раз и используется ваеми программами совместно.
>для остальных моделей инференс на процессоре зачастую быстрее, поскольку копирование данных CPU->GPU занимает больше времени чем сам инференс.
Это явно не случай LLM. llama.cpp взлетела именно потому, что это маленькая программа, которая игрушка, которая сравнительно независима от железа, которая заведётся везде, где есть C++ и AVX/NEON. Но у меня инференс на CPU даже минимальной модели alpaca очень тормозит. Для трансформеров инференс на GPU должен дать значительное преимущество.
> Не факт, что один человек может руками оптимизировать модель лучше, чем автоматический оптимизатор и JIT-компилятор, вылизанный командой специалистов ведущей ИИ-корпорации.Как только модель готова - оптимизированная версия пишется достаточно просто
> Это всё части рантайма, который устанавливается один раз и используется ваеми программами совместно.
Очень редко на конечном компьютере из ONNX исполняется всё, обычно как раз используется с десяток функций из тысячи имеющихся)
> Это явно не случай LLM
Именно. Потому что LLM не остальные модели, LLM именно что тяжело вместить в память consumer-grade GPU.
Для подобных вещей однако можно вынести на GPU лишь часть вычислений, например с BLAS/compute шейдером, и по скорости получится как раз бесплатный ChatGPT.ONNX однако не очень способен исполнять модель гибридно.
> Напоминаю: единственным актуальным форматом моделей является ONNX.
> SafeTensors - это не формат моделей, это формат сериализации, сделанный
> из NIH-синдрома (numpy.npy в zip-архиве с нулевым сжатием и выравниванием (zipalign)
> был бы намного лучше).Эк питоняш штырит то. А таки это LLMное добро довольно популярно стало - на волне чатгопоты. И моделей в вон тех форматах - есть. А ONNX там никому и не уперся походу.
Да были конверторы на гитхабе.
GGUF
гуф умер, прекратите откапывать стюардессу!
> Инструментарий написан на С/С++Это точно мозилла и я не сплю? У них еще есть нормальные кодеры?
> и распространяется под лицензией Apache 2.0.А, наверное все же мозилла...
> Для выполнения моделей задействован фреймворк llama.cpp
> с реализацией модели LLaMA на C/C++,Ящерки перехватили управление мозиллой и поработили разум руководства и кодеров?
> который компилируется в
> универсальный исполняемый файл
> в формате APE (Actually Portable Executable)А давно мозилла в такие продвинутости научилась то? Ящерки, вы палитесь, мозилла такие системные навороты сама отродясь не умела!
Погляди историю коммитов, лол.llamafile пилит Justine (ex-Justin) Tunney — автор Cosmopolitan runtime, формата APE и сервера redbean2.
> У них еще есть нормальные кодеры?Они там и есть. Остальные либо пузырь надувают, либо троянством занимаются.
>Инструментарий написан на С/С++Даже создатели Rust его не продвигают)
Всё поняли и задвинули обратно.
А он типа Windows - экспортный товар. А для себя - самое лучшее.
а DragonflyBSD где?!??!