Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Následující verze | Předchozí verze | ||
| ai:hardware:lokalni-llm-na-gpu [03.05.2026 20:33] – Nový článek: Lokální LLM na GPU – GPU přehled, llama.cpp, agentic coding (z videa Srigi) Petr Nosek | ai:hardware:lokalni-llm-na-gpu [04.05.2026 04:52] (aktuální) – Rozšíření: rychlost tokenů z videa, kategorie modelů, chat template, tool support, JosefFeed kontext 50k, oprava ctx-size 25000→19000 Petr Nosek | ||
|---|---|---|---|
| Řádek 20: | Řádek 20: | ||
| | **MacBook Air/Pro** | Různá | Velmi nízká | Apple Silicon zaostává v propustnosti za dedikovanými GPU | | | **MacBook Air/Pro** | Různá | Velmi nízká | Apple Silicon zaostává v propustnosti za dedikovanými GPU | | ||
| | **Mac Studio** | Až 128+ GB | ~1 TB/s | Dosahuje rychlosti RTX 4090, ale za výrazně vyšší cenu (okolo 10 000 $) | | | **Mac Studio** | Až 128+ GB | ~1 TB/s | Dosahuje rychlosti RTX 4090, ale za výrazně vyšší cenu (okolo 10 000 $) | | ||
| + | |||
| + | {{.: | ||
| + | |||
| + | {{.: | ||
| + | |||
| + | ==== Rychlost generování tokenů ==== | ||
| + | |||
| + | RTX 4090 dosahuje při spuštění **32B modelu** (Qwen 2.5 Coder, kvantizace Q4_K_M, ctx 19 000) rychlosti **47 tokenů za sekundu**. Karta přitom během generování odebírá přibližně **400 W** – to je hlavní důvod, proč je undervolting při takovéto zátěži důležitý. | ||
| + | |||
| + | Orientační hranice použitelnosti pro agentic coding: | ||
| + | |||
| + | * **40+ tokenů/s** – pohodlná práce, plynulý vibing | ||
| + | * **~20 tokenů/s** – prakticky nepoužitelné, | ||
| ===== Konkrétní zařízení ===== | ===== Konkrétní zařízení ===== | ||
| Řádek 31: | Řádek 44: | ||
| ===== Instalace llama.cpp na Windows ===== | ===== Instalace llama.cpp na Windows ===== | ||
| - | Autor důrazně varuje před používáním [[https:// | + | Autor důrazně varuje před používáním [[https:// |
| ==== Krok za krokem ==== | ==== Krok za krokem ==== | ||
| Řádek 54: | Řádek 67: | ||
| <code bash> | <code bash> | ||
| - | llama-server.exe --model [cesta_k_modelu] --n-gpu-layers 99 --ctx-size | + | llama-server.exe --model [cesta_k_modelu] --n-gpu-layers 99 --ctx-size |
| </ | </ | ||
| - | Parametr '' | + | Parametr '' |
| ===== Výběr modelu: doporučení a kvantizace ===== | ===== Výběr modelu: doporučení a kvantizace ===== | ||
| - | ==== Doporučené modely pro kódování ==== | + | Výběr správného modelu je nejkritičtější a zároveň nejobtížnější krok – autor ho označuje za „hotovou alchymii" |
| + | |||
| + | ==== Kategorie modelů ==== | ||
| + | |||
| + | Autor rozlišuje tři typy modelů podle způsobu uvažování: | ||
| + | |||
| + | ^ Kategorie ^ Charakteristika ^ Kdy použít ^ | ||
| + | | **Dumb (Hloupý)** | Styl GPT-3.5, žádná fáze přemýšlení, | ||
| + | | **Thinking (Přemýšlející)** | Explicitní fáze přemýšlení, | ||
| + | | **Reasoning (Uvažující)** | Zlatá střední cesta – model uvažuje inline, bez dlouhé oddělené fáze | Běžný agentic coding; rychlejší než Thinking, kvalitnější než Dumb | | ||
| + | |||
| + | Pro agentic coding v IDE (Cursor, Roo Code) je nejlepší typ **Reasoning** – dává dobré výsledky a nebrzdí práci nadměrným přemýšlením. Thinking modely rychle vyčerpávají kontext, což je problém. | ||
| + | |||
| + | ==== Co dělá model schopným kódovat ==== | ||
| + | |||
| + | Ne každý model LLM umí pracovat s editorem kódu. Rozdíl spočívá ve dvou věcech: | ||
| + | |||
| + | * **Chat Template** – sada speciálních značek (např. ''< | ||
| + | * **Tool Support** – modely pro kódování mají složitější chat template s pojmy jako '' | ||
| + | |||
| + | Modely bez tool support nepochopí instrukce z editoru a nelze je pro agentic coding použít. | ||
| + | |||
| + | ==== Původ modelů (Lineage) ==== | ||
| + | |||
| + | Modely mají hierarchii: **Base model** (např. Qwen 2.5) → **Coder** (fine-tuning na programování) → **Instruct** (schopnost následovat instrukce). Existují i **Merge modely** – spojení několika sítí specializovaných na různé oblasti (SQL, TypeScript, obecné kódování). | ||
| + | |||
| + | ==== Konkrétní doporučené modely | ||
| + | |||
| + | === Qwen 2.5 Coder Instruct (32B) === | ||
| + | |||
| + | Špičkový model pro kódování | ||
| + | |||
| + | * RTX 4090: **47 tokenů/s** při ctx 19 000 a kvantizaci Q4_K_M | ||
| + | * Na 24GB kartě se vejde „na těsno" | ||
| + | * V SafeTensors formátu má 32B model ~70 GB (14 souborů × 5 GB) – na 24GB kartu se bez kvantizace nevejde | ||
| + | |||
| + | === DeepSeek Coder (14B) === | ||
| + | |||
| + | Jeden z mála 14B modelů, který skutečně „thinkuje" | ||
| + | |||
| + | * Vejde se do VRAM s velkou rezervou → lze nastavit větší kontext | ||
| + | * Nevýhoda: jako Thinking model rychle vyčerpává kontext budget při složitějších úlohách | ||
| + | |||
| + | === JosefFeed (14B) === | ||
| + | |||
| + | Aktuálně velmi úspěšný model pro programování. Klíčová výhoda: umožňuje nastavit kontext až **50 000 tokenů**, což je zásadní pro pochopení celých větších souborů. | ||
| + | |||
| + | === O1 (Merge) | ||
| - | * **Qwen 2.5 Coder (Instruct)** – Špičkový model od Alibaby, fine-tuningovaný pro programování a práci s nástroji (tool calling s podporou chat template). | + | Velmi schopný model vzniklý sloučením specializovaných sítí. Těžko dohledatelný pod názvem |
| - | * **DeepSeek Coder (14B)** – Výborný | + | |
| - | * **Josef Feed (14B)** – Aktuálně doporučovaný model, který zvládá pomoc s kódem i při menší velikosti. | + | |
| ==== Kvantizace a výběr souboru na Hugging Face ==== | ==== Kvantizace a výběr souboru na Hugging Face ==== | ||
| - | Modely ve formátu GGUF jsou k dispozici | + | Modely ve formátu GGUF jsou k dispozici v repozitáři [[https:// |
| - | Doporučená nastavení: | + | **Jak číst název souboru:** |
| - | * **I1 (Imatrix / Weighted quants)** – Vždy preferovat tyto verze. Jsou přesnější díky multiprechodové optimalizaci | + | * **I1** – označení pro i-matrix kvantizaci. |
| - | * **Q4_K_M | + | * **Q4_K_M** – doporučená volba: |
| + | * **IQ4_XS** – pozor: autor má s touto variantou zkušenost s halucinacemi. Preferovat Q4_K_M. | ||
| + | * Označení velikosti: **XS, S, M, L** – analogie k oděvním velikostem. M je zpravidla dobrý výchozí bod. | ||
| ===== Agentic coding v praxi ===== | ===== Agentic coding v praxi ===== | ||
| Řádek 83: | Řádek 143: | ||
| * **Nástroj: | * **Nástroj: | ||
| - | * **Kontextové okno:** Kritický parametr. Pro RTX 4090 a 32B model je bezpečné | + | * **Kontextové okno:** Kritický parametr. Pro RTX 4090 a 32B model je bezpečné |
| ==== Přetečení kontextu ==== | ==== Přetečení kontextu ==== | ||
| - | Pokud kontext přeteče kapacitu VRAM, model začne halucinovat – například generuje nekonečné řady '' | + | Pokud kontext přeteče kapacitu VRAM, model začne halucinovat – například generuje nekonečné řady '' |
| - Okamžitě ukončit generování | - Okamžitě ukončit generování | ||
| - | - Snížit hodnotu '' | + | - Snížit hodnotu '' |
| - | - Případně přejít na menší model | + | - Ponechat ~500 MB VRAM volné jako rezervu |
| + | - Případně přejít na menší model (14B), který dává více prostoru pro kontext | ||
| ==== Promptování ==== | ==== Promptování ==== | ||
| - | Lepší výsledky přináší připravit modelu plán před samotnou úlohou. Příklad: „Nejdříve vyextrahuj kód do nového souboru, pak ho importuj, až pak smaž původní soubor." | + | Lepší výsledky přináší připravit modelu plán před samotnou úlohou |
| ===== Akční body ===== | ===== Akční body ===== | ||
| - **Zkontrolovat VRAM** stávající grafické karty (minimum 14 GB pro první pokusy, 24 GB pro praxi) | - **Zkontrolovat VRAM** stávající grafické karty (minimum 14 GB pro první pokusy, 24 GB pro praxi) | ||
| - | - **Nastavit MSI Afterburner** – undervolting pro ochranu karty při dlouhodobé 100% zátěži | + | - **Nastavit MSI Afterburner** – undervolting pro ochranu karty při dlouhodobé 100% zátěži |
| - **Stáhnout llama-server** – aktuální release llama.cpp z GitHubu (verze pro CUDA 12) | - **Stáhnout llama-server** – aktuální release llama.cpp z GitHubu (verze pro CUDA 12) | ||
| - | - **Otestovat Qwen 2.5 Coder** (14B nebo 32B) ve verzi I1 Q4_K_M z Hugging Face | + | - **Otestovat Qwen 2.5 Coder** (32B) ve verzi I1 Q4_K_M z repozitáře mradermacher na Hugging Face; nastavit ctx-size 19 000 |
| - **Propojit s IDE** – nainstalovat Roo Code do VS Code a nakonfigurovat lokální endpoint | - **Propojit s IDE** – nainstalovat Roo Code do VS Code a nakonfigurovat lokální endpoint | ||