Статьи
Статьи на различную тематику о современных технологиях, инновационных проектах, ремонте аппаратуры, настройке системы и программ
Как преобразовать нейросетевую модель в другой формат в llama.cpp
Конвертация ИИ-моделей в экосистеме llama.cpp выполняется в два этапа: Пример команды для конвертации модели в формат FP16: python convert_hf_to_gguf.py /path/to/hf/model/ —outtype f16 —outfile model_f16.gguf На втором этапе полученный тяжелый файл GGUF сжимается (квантуется) до нужного уровня битности с помощью инструмента llama-quantize из каталога с собранными файлами llama.cpp (по умолчанию это папка llama.cpp/build/bin). Пример команды для создания кванта Q4_K_M: ./llama-quantize model_f16.gguf model_q4_km.gguf q4_k_m Такой двухэтапный процесс позволяет сначала получить точную копию модели в едином контейнере GGUF, а затем быстро нарезать её на кванты любой нужной битности под конкретные ограничения видеопамяти. Практический пример: конвертация и оптимизация модели Qwen3.8-27B под старое железо Qwen3.8-27B — современная плотная (Dense) vision-language модель на 27 млрд. параметров…
О квантовании AI-моделей для локального инференса
Оригинальные AI-модели от разработчиков обычно публикуются в весах FP16 или BF16. При этом модели имеют довольно большой объем, например, Qwen2.5-VL-72B-Instruct весит примерно 147 ГБ. Конвертация AI-моделей в сжатый формат (квантование), например, в GGUF позволяет запустить эту модель локально на обычном потребительском оборудовании. Правильно подобранный формат модели значительно снижает требования к VRAM и оперативной памяти, помогает оптимизировать процесс вычислений под конкретные аппаратные инструкции. Например, квантованная до 4 бит версия Qwen2.5-VL-72B-Instruct уменьшается в размере до 40-50 ГБ, позволяя запустить её на более доступном железе, в том числе в небольшой домашней сети под управлением llama.cpp. Учитывая большое количество существующих форматов сжатия ИИ-моделей, иногда сложно разобраться, какой из них следует выбрать под свое оборудование.…
Запуск llama.cpp на Nvidia Tesla K40 на CUDA
Эта статья является продолжением руководства «Локальный ИИ на Nvidia Tesla K40: сборка и настройка компьютера», в котором описывается настройка операционной системы ubuntu-server 26.04 для работы с патченными драйверами Nvidia 470-й версии. В ней изложена последовательность действий, необходимых для: В конце статьи приведены примеры работы видеокарты Nvidia Tesla K40 с языковыми AI-моделями локально и в составе небольшого кластера с подключением по 2.5Gbit каналу. Развертывание Cuda Toolkit 11.8 в ubuntu 26.04 Установка Cuda Toolkit 11.8 и необходимых для ее работы служебных файлов: wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.runsudo sh cuda_11.8.0_520.61.05_linux.run --extract=$HOME/cuda_extractedsudo mkdir -p /usr/local/cuda-11.8/binsudo mkdir -p /usr/local/cuda-11.8/lib64sudo mkdir -p /usr/local/cuda-11.8/includecd $HOME/cuda_extracted Запускаем скрипт, который находит исполняемые файлы инсталляторов внутри папок и распаковывает их в /usr/local/cuda-11.8: for…
Локальный ИИ на Nvidia Tesla K40: сборка и настройка компьютера
Высокие цены на видеокарты и память ограничивают возможности многих желающих локально запускать средние и большие модели ИИ. В связи с этим, при ограниченном бюджете, вызывает интерес возможность использования старых серверных видеокарт.В данной статье рассматриваются возможности инференса и генерации изображений на старой видеокарте Nvidia Tesla K40M с 12GB VRAM, которая у автора около 10 лет провалялась в дальнем ящике… Для этого использовалась материнская плата ASRock H81 Pro BTC R2.0 с BIOS P1.40 (опция Above 4G Decoding активирована по умолчанию, PCIE1 Link Speed выставлен на максимум для этой платы — в Gen2) + CPU Intel i5-4570R (4C/4T), 16 ГБ RAM DDR3 1600MHz, HDD 500GB и сетевая плата Realtek RTL8125B (2.5GBit). Установка последней…
Криптовалюта PePePow, майнинг PEPEW на алгоритме hoohash-pepew
Материал носит информационный характер и не является инвестиционной рекомендацией PePePow (тикер PEPEW) — одна из немногих PoW-монет мем-сегмента, которая не остановилась в развитии после хайпа 2023 года, а продолжает жить: обновляет кошельки, проводит голосования сообщества и даже меняет алгоритм майнинга. Эта криптовалюта появилась в конце мая 2023 года, после чего проект пережилнесколько изменений алгоритма хеширования (подробнее в статьях О майнинге монет PEPEW на алгоритме xelisv2-pepew иО майнинге монет PEPEW на алгоритме xelisv2-pepew). Сейчас проект использует вычисления на алгоритме hoohash-pepew. В данной статье коротко рассматриваются особенности этой монеты, кто её развивает, как обстоят дела с курсом и капитализацией, и как устроен текущий алгоритм майнинга. Основные особенности PePePow: Кто создал PePePow? Как…
Распределение веса модели в памяти двух видеокарт в stable-diffusion.cpp
Современные диффузионные модели генерации изображений класса DiT (Diffusion Transformers), например, FLUX, для комфортной работы требуют больших массивов видеопамяти (десятки ГБ VRAM). Поэтому их локальный запуск на видеокартах прошлых поколений подчастую является невозможным или трудно реализуемым. Попытка запустить мало-мальски приличную по размеру и возможностям модель на одной карте с объемом 6 ГБ приводят либо к критической ошибке нехватки памяти (Out of Memory, OOM), либо к катастрофическому падению скорости из-за постоянной откачки слоев в системную оперативную память (SysMEM fallback) по относительно медленной шине PCI-Express. В статьях «stable-diffusion.cpp — отличная альтернатива ComfyUI» и «Генерация картинок в zimage-turbo на 6GB видеокарте» были рассмотрены некоторые возможности инференс-движка stable-diffusion.cpp по генерации изображений. При дальнейшем, более глубоком…
Генерация картинок в zimage-turbo на 6GB видеокарте
В предыдущей статье «stable-diffusion.cpp — отличная альтернатива ComfyUI» подробно рассматривались особенности компиляции, тонкой настройки и развёртывания проекта sd.cpp в среде Linux на примере дистиллированной DiT-модели Z-Image-Turbo и гибридной связки из серверного ускорителя Nvidia Tesla V100 и бытовой видеокарты GeForce GTX 1660 Ti. Настоящий материал развивает эту тему и призван ответить на практический вопрос: насколько эффективно современный инференс-движок на базе библиотеки GGML справляется с генерацией изображений на аппаратных конфигурациях начального уровня, лишённых специализированных тензорных ядер (Tensor Cores). В качестве основного вычислительного узла в статье рассматривается та же Nvidia GeForce GTX 1660 Ti с 6GB VRAM (архитектура Turing). Физический объём её видеопамяти накладывает жёсткие ограничения: в него способны уместиться лишь легковесные квантованные…
stable-diffusion.cpp — отличная альтернатива ComfyUI
При использовании нейросетей для работы с картинками, видео и музыкой часто используется окружение ComfyUI. Это заслуживающий доверия инструмент, позволяющий работать со сложными многоузловыми пайплайнами, ControlNet-цепочками, используя кастомные ноды сообщества и визуальный дебаг. Благодаря этому ComfyUI фактически не имеет сравнимой по функционалу альтернативы. Если пользователю не нужен столь богатый набор опций, доступный в ComfyUI, но нужно по максимуму «выжать соки» из своего оборудования, можно задействовать программу stable-diffusion.cpp от разработчика, известного на github под ником leejet: stable-diffusion.cpp — это движок инференса без визуального конструктора пайплайнов, схожий с llama.cpp, прекрасно подходящий для локальной AI-генерации и обработки изображений/видео и подобных задач, но менее требовательный к VRAM и подходящий для серверного inference. Основные отличия stable-diffusion.cpp…
Настройка AI-воркера распределенной сети llama.cpp на видеокартах AMD с Vulkan
На компьютере с видеокартами AMD с Vulkan (например, Radeon RX570 8GB) можно не обращать внимание на совместимость gcc с CUDA Runtime, задействуя самую новую версию компилятора. Собираем llama.cpp на воркере (под управлением gentoo linux): git clone https://github.com/ggml-org/llama.cpp && cd llama.cpp cmake -B build -DGGML_VULKAN=ON -DCMAKE_BUILD_TYPE=Release -DGGML_RPC=ON -DCMAKE_C_FLAGS="-O3 -march=native -pipe" -DCMAKE_CXX_FLAGS="-O3 -march=native -pipe" && cmake --build build --config Release -j$(nproc) -- The CXX compiler identification is GNU 15.3.0 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done CMAKE_BUILD_TYPE=Release -- Found Git: /usr/bin/git (found version "2.54.0")…
Запуск llama.cpp в распределенном режиме по локальной сети
Запуск llama.cpp в распределенном режиме по локальной сети позволяет без лишних затрат увеличить доступный для запуска AI-моделей объем памяти, объединив вычислительные мощности (CPU и/или GPU) нескольких компьютеров для инференса одной модели. При инференсе можно будет задействовать видеокарты разных архитектур и производителей, на компьютерах-воркерах могут быть установлены любые операционные системы. Преимуществом такого способа является сохранение полной пропускной способности шины PCI-E, которая урезается до минимума в multi-GPU системах. Для распределенных вычислений на воркерах сети запускается ggml-rpc-server, создаваемый по умолчанию при сборке llama.cpp (подробнее в статьях Компиляция и работа с llama.cpp для GPU Nvidia в linux и Запуск AI-моделей в llama.cpp на AMD Radeon RX470 8GB с Vulkan в gentoo). Во время работы…




























