ინტერნეტის არასტაბილურობამ შესაძლოა თქვენი სამუშაო პროცესი სრულად გააჩეროს, განსაკუთრებით მაშინ, როდესაც კოდირების აგენტზე ხართ დამოკიდებული. სწორედ ამ გამოწვევამ უბიძგა დეველოპერებს, შეექმნათ ადგილობრივი გადაწყვეტა, რომელიც ინტერნეტის გარეშე, Apple-ის მოწყობილობებზე სრულფასოვნად იმუშავებს.
Gemma 4-ის Multi-Token Prediction (MTP) განახლებამ შესაძლებელი გახადა მოდელის მუშაობის საგრძნობლად დაჩქარება. შედეგად, მივიღეთ სისტემა, რომელიც სწრაფია, იყენებს OpenAI-ის თავსებად API-ს და მხარს უჭერს ეკრანის ანაბეჭდების დამუშავებასაც კი.
| Setup | Prompt tok/s | Generation tok/s |
|---|---|---|
| Gemma 4 26B-A4B Q4, llama.cpp Metal | 298.0 | 58.2 |
ტექნიკური კონფიგურაცია
| Setup | Prompt tok/s | Generation tok/s | Speedup |
|---|---|---|---|
| Main model only | 298.0 | 58.2 | 1.00x |
| Main model + Q8 MTP draft | 295.6 | 72.2 | 1.24x |
| --spec-draft-n-max | Prompt tok/s | Generation tok/s |
|---|---|---|
| 1 | 295.5 | 68.4 |
| 2 | 299.1 | 72.0 |
| 3 | 295.6 | 72.2 |
| 4 | 297.3 | 70.7 |
| 5 | 297.9 | 63.7 |
| 6 | 296.3 | 61.2 |
| Runtime | Model | Generation tok/s |
|---|---|---|
| llama.cpp Metal + MTP | Unsloth GGUF Q4 + Q8 MTP | 72.2 |
| llama.cpp Metal | Unsloth GGUF Q4 | 58.2 |
| MLX-LM | Unsloth UD MLX 4-bit | 45.8 |
| MLX-LM | mlx-community 4-bit | 43.9 |
| MLX-LM | mlx-community OptiQ 4-bit | 38.1 |
აღნიშნული სისტემის ასაწყობად საჭიროა llama.cpp-ის აწყობა Metal-ის მხარდაჭერით, Gemma 4 26B-A4B მოდელი GGUF ფორმატში და მულტიმოდალური პროექტორი. ტესტირება ჩატარდა Apple M1 Max-ზე, 64 GB ოპერატიული მეხსიერებით.
| Setup | Projector | Prompt tok/s | Generation tok/s |
|---|---|---|---|
| llama.cpp Metal + MTP | none | 120.3 | 71.4 |
| llama.cpp Metal + MTP | mmproj-BF16.gguf | 297.4 | 72.2 |
თავდაპირველმა ტესტებმა llama.cpp-ის გამოყენებით აჩვენა 58 ტოკენი წამში, რაც მისაღებია, თუმცა კოდირების აგენტისთვის მეტი სისწრაფეა საჭირო. MTP (Multi-Token Prediction) დრაფტ-მოდელის დამატებამ ეს მაჩვენებელი 72.2 ტოკენამდე გაზარდა.
სისტემის ოპტიმიზაცია
MTP პარამეტრების რეგულირებისას აღმოჩნდა, რომ --spec-draft-n-max 3-ზე დაყენება საუკეთესო შედეგს იძლევა. 3-ზე მეტი მნიშვნელობის დაყენება მუშაობას პირიქით, ანელებს.
საინტერესოა, რომ შედარებისას llama.cpp-მ აჯობა MLX-ს. მიუხედავად იმისა, რომ MLX სპეციალურად Apple-ის ჩიპებისთვისაა ოპტიმიზებული, llama.cpp-ის მრავალწლიანმა განვითარებამ ის უფრო ეფექტური გახადა ამ კონკრეტული დავალებისთვის.
ვიზუალური მონაცემების მხარდაჭერა
იმისთვის, რომ აგენტმა შეძლოს ეკრანის ანაბეჭდების გაანალიზება, საჭიროა --mmproj პარამეტრის დამატება. ტესტებმა აჩვენა, რომ პროექტორის დამატება ტექსტის გენერირების სიჩქარეზე უარყოფითად არ აისახება.
ინსტალაციის პროცესი მოიცავს llama.cpp-ის კლონირებას, Python გარემოს შექმნას და სერვერის გაშვებას tmux-ის მეშვეობით, რაც უზრუნველყოფს სტაბილურ მუშაობას ფონურ რეჟიმში.
| Layer | Choice |
|---|---|
| Inference runtime | llama.cpp |
| macOS acceleration | Metal + Accelerate |
| Main model | gemma-4-26B-A4B-it-UD-Q4_K_XL.gguf |
| Draft model | gemma-4-26B-A4B-it-Q8_0-MTP.gguf |
| MTP setting | --spec-draft-n-max 3 |
| Multimodal projector | mmproj-BF16.gguf |
| Server | llama-server on 127.0.0.1:8080 |
| API | OpenAI-compatible /v1 |
| Coding agent | Pi |
| Pi model input | ["text", "image"] |
საბოლოო ჯამში, MTP-ის გამოყენება კოდირების აგენტისთვის ნამდვილად ღირებული ინვესტიციაა, რადგან ის ზრდის მუშაობის სისწრაფეს ისე, რომ არ ართულებს სისტემის არქიტექტურას.
მიუხედავად იმისა, რომ Qwen3.6 35B-A3B მოდელი კოდირების მხრივ უფრო ძლიერად ითვლება, მისი სისწრაფე (55 ტოკენი წამში) ჩამორჩება Gemma 4-ს, რაც ყოველდღიურ სამუშაო პროცესში შესამჩნევი დამაყოვნებაა.



დისკუსია
0 კომენტარი
ჯერ კომენტარი არ არის — იყავი პირველი.