LINUX.ORG.RU
ФорумTalks

LLM на локальном железе

 ,


0

2

Недавно вышел ролик, как раз про тестирование LLM на локальном железе:

https://www.youtube.com/watch?v=mwNMjmICa04

Я написал развёрнутый комментарий и хочу поделиться так же с вами. Хочу узнать у кого какой ценный практический опыт и, может быть, подобрать лучшие модели для себя. Я запускал .gguf модели на RTX 3060 на офтопике, в llama.cpp

12:00 Да, могу подтвердить, llama-server.exe -m ../model/google_gemma-3-12b-it-Q4_K_M.gguf –context-shift –threads 16 -ngl 999 выдаёт на RTX 3060 12 GB 32 токена в секунду. Это воспринимается очень комфортно. Но проку от этой модели мало, только как переводчик. Если подключить проектор, mmproj, скорость упадёт до 14.. 20 токенов, что уже напрягает. llama-server.exe -m ../model/google_gemma-3-12b-it-Q5_K_M.gguf –mmproj ../model/mmproj-google_gemma-3-12b-it-f16.gguf –ctx-size 32768 –threads 16 -ngl 999 Гораздо лучше будет использовать аналогичную модель, с меньшим количеством слоёв: llama-server.exe -m ../model/google_gemma-3-4b-it-Q4_K_M.gguf –mmproj ../model/mmproj-google_gemma-3-4b-it-f16.gguf –context-shift –threads 12 –gpu-layers 999 Она будет прекрасно летать и даже на GTX 1650. Там будет неплохая скорость, порядка 20 токенов. Но распознавание будет не быстрым. Да, простой текст и даже от руки она будет хорошо распознавать. Но страницу A4 с двухколоночной вёрсткой нормально не распознает, начнёт глючить и перевирать текст.

14:20, для меня удивительно что CPU 9800X3D выдаёт «рабочие» 14 токенов в секунду с моделью 30B. С моделью 12B мой да, старый, да холодный, зеон на CPU выдаёт 3.3 токена в секунду. Если учесть DDR5, высокие частоты и современную топологию, современный CPU в тех же условиях выдал бы до 7 токенов. Но если повысить модель с 12B до 30B, я думаю производительность упала бы катастрофически даже у современного CPU, т. к. x86-64 архитектура плохо пригодна для запуска модели на llama.cpp. Ваш тест говорить что стоит присматриваться к современным CPU x86-64 и они могут что то выдать с довольно тяжёлыми моделями 32B. Я правда не знаю какая от них практическая польза и как они себя поведут с mmproj. Думаю производительность сильно упадёт и опять не будет проку от этого. Добавлю что Qwen 7B сильно проигрывает аналогичной и даже худшей gemma-3-4b-it-Q4_K_M, в задачах работы с языком, переводами. gemma-3-4b-it-Q4_K_M 0 - выдаёт хорошее качество и может даже решать школьные задачи. Может работать с распознаванием текста. Может помочь в системном администрировании. qwen2.5-coder-14b-instruct-q4_k_m.gguf, на моей RTX 3060 12 GB показала себя как достаточно адекватный помошник в кодинге. Конечно она проигрывает онлайн-решениям но выдавала адекватные результаты в приемлимые скроки. Если её подключить к IDE она будет толкова, на мой взгляд, в режиме copilot. Но у меня мало опыта в кодинге и онлайн решения дают быстрый и качественный результат, так что утверждать не моогу.

Добавлю что видел, модель 32B запускается на Mac M4 и выдаёт довольно приличные скорости, порядка 60 токенов, за счёт оптимизаций Metal, в LLM Studio.

Так же я пробовал собирать llama.cpp с Vulkan и там вижу падение производительности с Nvidia порядка 5.. 10%, к сожалению. Сборка, которую я использую - llama-b6341-bin-win-cuda-12.4-x64

codellama-7b.Q4_0.gguf, DeepSeek-R1-Distill-Llama-8B-Q5_K_L.gguf показали себя неудовлетворительно. Последний показал себя неожиданно, при запросе он какое то время думает и потом запускает стриминг. Это выглядит впечатлающе но результаты он выдавал малопригодные.

Теперь по сути. Вот тесты, которые я задавал:

Плоскость задана тремя точками: (0, 0, 2), (0, 2, 0) и (2, 0, 0). Найди z, соответствующие точкам (1, 1, z) и (0.35, 0.45, z), лежащим на данной плоскости. Ответы должны быть 0 и 1.2 для точек. google_gemma-3-4b-it-Q4_K_M.gguf уверенно проходит этот тест. Qwen2-VL-7B-Instruct-Q6_K_L.gguf и даже к сожалению qwen2.5-coder-14b-instruct-q4_k_m.gguf - не проходят.codellama-7b.Q4_0.gguf, DeepSeek-R1-Distill-Llama-8B-Q5_K_L.gguf - не проходят. Важно отметить так же вес модели на диске. google_gemma-3-4b-it-Q4_K_M.gguf - весит 4.5 гб и проходит уверенно данный тест. И я кстати не заметил особого улучшения качества ответов при повышении квантовки. Важно брать модели Q4_K_M и стараться подобрать наибольшее количество параметров, при котором, на вашем железе, модель всё ещё будет выдвать комфортные 20 токенов в секунду. Желательно что бы у этой модели был mmproj, что сильно расширяет ваш функционал, в части работы с изображениями.

Ещё раз, связка, которую могу рекомендовать к рассмотрению:

llama-server.exe -m ../model/google_gemma-3-4b-it-Q4_K_M.gguf –mmproj ../model/mmproj-google_gemma-3-4b-it-f16.gguf –context-shift –threads 12 –gpu-layers 999

Опишите, у кого какой опыт?

Мне бы хотелось подключить к модели:

  • поиск в интернет;
  • возможность работы в агентном режиме (был хороший опыт с warp, но он платный);
  • работу с офисными и прочими форматами (был хороший опыт с ollama WebUI, но я перешёл на llama.cpp, надо всё заново);
  • поиграть с LLoRa, RAG, JSON, что бы запоминать контекст и дообучать;
  • использовать улучшенный фронтэнд+бэкэнд, вместо llama-server.exe, с которым мало что можно сделать
  • может быть улучшить технологию сборки и перекатиться на сборку из github+vulkan
  • попытаться как то проработать ограничение с глубиной контекста, может быть разбивать данные на блоки, делать промежуточное резюме;
  • интегрироваться с AHK, прикладным софтом (приделать ручки);
  • добавить возможность работы со звуком, распознаванием речи (есть опыт с wisper, но пока костыли).
  • перейти на .safetensors модели, вместо .gguf, но самому делать квантовку

В общем хотелось бы эту технологию сделать практичнее для себя, для своих повседневных задач

★★★

Последнее исправление: baaba (всего исправлений: 2)

У меня 8 гигов карточка и модели 12b не влезают в нее. Гоняю codellama, qwen, gemma, deepseek-coder 4b на 3070, отвечают моментально, но довериям им особо нет.

Поэтому пользуюсь ChatGPT, он бог среди всего этого кустарного бесплатного LLM’a

masa ★★
()
Ответ на: комментарий от baaba

Ну с последнего моего захода на локлальные ЛЛМ пол года назад, новые как будто бы стали быстрее и чуть умнее. Есть даже мысли написать какого-то полезного агента на langchain. Но по существу мне мало что сказать. Пользуюсь Ollama, но на ней на самом деле дефолтные настройки какие-то не самые удачные, в сравнении с LLM Studio. Студийный qwen, например, гораздо меньше бредит, чем тот что в Ollama. Но уходить с олламы не хочу, слишком нравится простота настройки и отсуствите ГУЯ.

masa ★★
()
Ответ на: комментарий от masa

ChatGPT испортили же, много жалоб. 4-й был на порядки лучше чем нынешний 5-й. Сейчас на первом месте Deepseek, на втором Алиса Про. Ещё, говорят, Grok неплох, но я его не видел. Qwen только с графикой хорошо работает, а тексты выдаёт слишком тупые.

saahriktu ★★★★★
()
Ответ на: комментарий от saahriktu

Переход на 5 как будто не заметил. Дипсиком пробовал пользоваться, но он после ГПТ какой-то неживой чтоли, слишком сухой.

masa ★★
()
Ответ на: комментарий от masa

По моему опыту Deepseek, наоборот, склонен скатываться в вольную речь, вплоть до матов (замазанных звёздочками) и околоматерных слов. Алиса такого, вроде, себе не позволяет.

saahriktu ★★★★★
()
Ответ на: комментарий от saahriktu

Ну да, словоблудие тоже замечал.

Гпт по большей части я использую не для кодинга, а именно как языковую модель для изучения иностранных языков, пользы больше чем какого-нибудь гугл транслейтера.

Ну еще конфиги хорошо пишет, всякие ансиблы и системд юниты, что самому лень писать.

masa ★★
()
Ответ на: комментарий от masa

masa

но уходить с олламы не хочу, слишком нравится простота настройки и отсуствите ГУЯ.

Не знаю, у меня были сложности с работой с буфером обмена. Второе - производительность и мне больше нравится скачивать модели единым .gguf. Я перешёл на llama.cpp и всё стало пободрее. Тут и GUI можно и терминал.

baaba ★★★
() автор топика
Ответ на: комментарий от baaba

Ну гуй у меня gptel в Emacs для кодинга и для общения простенькая самописная (написанная самой нейронкой) оболочка по типу Open WebUI. Но в локальных моделях я прям потенциала из коробки не вижу.

Вижу что можно создать заточенного агента, но его надо делать самому и тюнить под задачу, что мне лень, так что для решения реальных задач все равно возвращаюсь к ChatGPT, а локально, так, только поиграться.

А что а проблема буфером обмена? Он тебя прямо из буфера может брать текст? Как используешь?

masa ★★
()
Ответ на: комментарий от masa

Даже простые локальные модели могут заменить собой Гугл в его отсутствие и решать простые задачи. Но чем задача сложнее, тем, конечно, нужна и более мощная модель чтобы ответ был адекватен.

Но на простых задачах разницы между ответами каких-нибудь 7b/8b Q6 моделей и тем же ChatGPT не видно абсолютно.

Причём, даже косяки одинаковые.

saahriktu ★★★★★
()
Последнее исправление: saahriktu (всего исправлений: 1)

Прелесть llama.cpp в том, что не обязательно, чтобы вся модель влезала в RAM+VRAM целиком. Таким образом можно запустить погрызанную (IQ3_XXS) DeepSeek-R1 на машине с 128Гб RAM локально, но будет 0.2 токена в секунду (AMD 9800X3D + Radeon 7800XT). Тем не менее, это сносно для «творческих задач» (закинул промт и ушёл на несколько часов).

DarkAmateur ★★★★
()

для меня удивительно что CPU 9800X3D выдаёт «рабочие» 14 токенов в секунду с моделью 30B

У zen5 есть поддержка avx512 и avx512_vnni с поддержкой int8(причем заметно прокачанная по скорости по сравнению с zen4), а у старого ксеона этого набора инструкций вовсе нет. Хотя много каналов памяти должны бы бустить пропускную способность памяти. И про частоты ты правильно заметил

cobold ★★★★★
()

Так а что эта штука локально умеет без даты?

bryak ★★★★
()

Проверил множество локальных моделей на классической задаче: у Ани есть брат Петя и две сёстры. Сколько сестёр у Пети? Выжили далеко не все.

Самое плохое впечатление произвёл локальный Мистраль. Мало того что он туп как пробка, так ещё и упрям как осел.

Из моделей, которые прошли тест (Речь о моделях, которые встали в LMStudio).

  • gemma-3-27-it Q6_K - 22.17 Gb Лучший переводчик на русский и, что самое важное, с русского языка. Не влазит в видеопамять, поэтому очень медленный.

  • gemma-3-27b-it-qat Q4_0 - 16.43 Gb Умеет распознавать образы.

  • unsloth/qwen3-30b-a3b Q3_K5 - 13.29 Gb Любимая модель для поболтать. Быстрая. Путает римских императоров, но виду не подает.

  • qwen2.5-32b-instruct Q3_K5 - 14.39 Gb Неплохой быстрый кодировщик для несложных задач. Проверил для питона и js.

Локальный дипсик был настолько раздражающе болтлив, что я его со злости снес. Спрашиваю его: ты знаешь значение слова «многословный»? И он выдаёт мне определение на несколько страниц.

geometer
()
Последнее исправление: geometer (всего исправлений: 2)
Ответ на: комментарий от geometer

Логические задачи для нейросетей совсем не простые, если что. Тем более, что они могут тупо не распарсить о чём вопрос, если он слишком сложно составлен.

Популярные модели Deepseek'а сделаны так, что они отвечают как если бы в веб-интерфейсе обычного была нажата кнопка «Deepthink». Но есть и другие модели.

saahriktu ★★★★★
()
Ответ на: комментарий от DarkAmateur

Творческая задача, увы, предполагает постоянные корректировки идеи

One ★★★★★
()

Практично - 16 / 24 гб памяти.

Будущее за MoE моделями, все «полноценные» модели даже с Q4_K_M в десяток раз медленнее.

Но все равно 12гб очень мало. openai/gpt-oss-20b требуется от 16 гб, qwen3 30b от 24 гб.

Входной билет с CUDA - Rtx 5060 ti 16 gb за 41-42 тыс. рэ. При этом можно даже использовать и 120b MXFP4 со скоростью около 10-15 токенов в секунду, потыкав слои правильно

Можно купить и б/у intel arc A770 с 16гб за 20-22к поиграться с годик, пока потребность не стабилизируется, но не торт.

One ★★★★★
()
Последнее исправление: One (всего исправлений: 1)
Ответ на: комментарий от One

One

Будущее за MoE моделями, все «полноценные» модели даже с Q4_K_M в десяток раз медленнее.

Спасибо за информацию. Это что то новое. Я думаю попробовать Qwen3-MoE-A2.7B, что то такое что бы влезло на мою RTX 3060 12 GB. Новое железо покупать не хочу. Если она быстрее то и в текущей ситуации я увижу либо повышение скорости либо - подыму качетво ответов (количество параметров), сохраняя приемлимую скорость для себя.

baaba ★★★
() автор топика
Ответ на: комментарий от baaba

Не увидел сколько памяти на действующем железе Попробуй «взлететь» и на существующем.

https://habr.com/ru/companies/selectel/articles/934902/

тут полезно для себя когда-то открыл в комментариях текст, начиная с " Нужно выгрузить тензоры внимания со всех слоев в VRAM" …

Можно засунуть целые слои, чтобы заполнить те же 14гб. Для этого есть новый параметр –n-cpu-moe X, количество moe-слоев которые будут выгружена на CPU, остальное останется на GPU.

One ★★★★★
()
Последнее исправление: One (всего исправлений: 1)

Если оперативы 64 и больше, то попробуй gpt-oss-120b с квантизацией q6 или q4. По моему опыту это сейчас самая лучшая модель по скорости и качеству. На твоей карте с 12 гигами будет выдавать токенов 10. Если прикупишь ещё 12 гиг (или одну на 24), то будет гораздо резвее.

У меня playground на китайском зионе и двух CMP50HX по 10гиг выдаёт 12-14 токенов.

Puzan ★★★★★
()
Ответ на: комментарий от geometer

Фух, спасибо. Как раз на следующий месяц покупку старого 3090 запланировал. В основном для программирования и распознавания винных этикеток.

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)
Ответ на: комментарий от Puzan

64 и больше, то попробуй gpt-oss-120b с квантизацией q6 или q4.

Обычно не хватает 64 для OSS-120b с его полным контекстным окном (128k токенов) ( Сама модель на FP4 весит 62-63гб.

One ★★★★★
()
Последнее исправление: One (всего исправлений: 2)
Ответ на: комментарий от Shadow

Все таки давать такие советы - определённая ответственность. На всякий случай уточню - этой памяти хватит для перечисленных мной моделей.

geometer
()
Ответ на: комментарий от geometer

Ну тут вопрос - чтобы что-то вменяемое в автокомплите было. Всё, что менее 24 - точно не поместится.

Shadow ★★★★★
()

Я запускал .gguf модели на RTX 3060 на офтопике

llama-server.exe

Я не буду посылать на винфак, тема сама по себе кроccплатформенная. Но у меня есть сильное подозрение, что как минимум временнЫе характеристики в подобных экспериментах под виндой и линуксом могут отличаться.

hobbit ★★★★★
()
Ответ на: комментарий от One

Можно контекст поменьше сделать, да и в VRAM часть уходит.

Puzan ★★★★★
()
Ответ на: комментарий от saahriktu

4-й был на порядки лучше чем нынешний 5-й

на порядки

Пруфов, конечно же, не будет.

Сейчас на первом месте Deepseek, на втором Алиса Про.

У кого?

mamina_radost
()
Последнее исправление: mamina_radost (всего исправлений: 1)
Ответ на: комментарий от mamina_radost

У пассажиров веселого поезда, со стенами из шифера.

James_Holden ★★★★★
()
Ответ на: комментарий от saahriktu

Можете сравнить сами.

Про версия 5 превосходит 4, как и должна.

У тех, кто сравнивает нейросети.

Гражданин, на какие бенчмарки, тесты и людей конкртено вы ссылаетесь? На что именно проводились тесты? Вы представляете разницу в контекстном окне между DeepSeek и Gemini, или разницу в качестве ответа между claude и Алисой Про? Вы можете предоставить графики?

Я могу предоставить, но среди тех графиков не будет Алисы Про, ведь про неё никто не знает. Там будет qwen, который и брал яндекс для того чтобы слепить свою алису, но это уже совсем другая история.

mamina_radost
()
Последнее исправление: mamina_radost (всего исправлений: 1)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)