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)
Ответ на: комментарий от baaba

DNS обманывает без VPN. VPN при этом не нужен.

Начните с малого - в браузере в DNS over HTTPS засуньте https://xbox-dns.ru/dns-query - там должно работать.

Если работает - в роутере аналогично прописываем DNS over HTTPS

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

Спасибо тебе добрый человек! Ты улучшил мою жизнь! Ну и DNS - отдельное спасибо!!!!

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

Начните с малого - в браузере в DNS over HTTPS засуньте https://xbox-dns.ru/dns-query - там должно работать.

One

Но мне кажется я рано радуюсь. Она у меня как то долго временами думает, даже слишком.

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

One

Что то я не разобрался как получить API key. Там кнопочка есть.

Пока настроил агента вот так:

interpreter -y -m openai/gemma –api_base http://127.0.0.1:8080/v1 –api_key not-needed

Вместе с:

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

Но мне что то не очень нравится.

Хотелось бы попробовать серьёзную модель. Кто-нибудь такое пробовал?

Может быть с Qwen возможно?

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

One

Внизу слева кнопка get api key

Нажал, а дальше - не понимаю. Он предлагает создать, но дальше ничего не выходит

Есть вариант - Gemini API quickstart

PS, получил ключь. Но теперь мне нужно установить gemini-cli:

$ npm install -g google/gemini-cli

npm error code 128

npm error An unknown git error occurred

npm error command git –no-replace-objects ls-remote ssh://git@github.com/google/gemini-cli.git

npm error git@github.com: Permission denied (publickey).

npm error fatal: Could not read from remote repository.

npm error

npm error Please make sure you have the correct access rights

npm error and the repository exists.

npm error A complete log of this run can be found in: C:

\Users\Jean\AppData\Local\npm-cache_logs\2025-10-01T17_51_20_766Z-debug-0.log exit status 128

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

Мой косяк был. Собачку забыл

Поставил. Авторизовался. API key задан в ОС. Outline (VPN в моём случае) включён (правда первый раз пробовал без него):

API Error: User location is not supported for the API use. (Status: FAILED_PRECONDITION

Надо с роутером разбираться? DNS over HTTPS я делал в моём Firefox.

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

Прикреплю к теме.

Достаточно неплохой опыт реализации локальной LLM (gpt-oss 120B mxfp4 и QWEN3 235B Q3_K_XL) на простом мини-пк (сейчас бюджет за машинку с 780m - 20..25к + модели памяти 2 x 48 ГБ)

https://www.reddit.com/r/LocalLLaMA/comments/1nxztlx/gptoss_120b_is_running_at_20ts_with_500_amd_m780/

Там же есть сравнение с Strix Halo, но цены пока увы у последнего неприличные.

One ★★★★★
()

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

А зачем? Чатгпт 5 дают бесплатно. Железо ещё не готово для домашнего использования. Ждём хотя бы 48 ГБ GDDR7 карточки от Intel по разумным ценам в 2027 году, тогда можно начинать заводить разговор.

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.