Зачем тащить AI к себе, если есть интернет?
Потому что каждый чих в облако — это деньги и утечка кода. RTX 5080 с 16 ГБ VRAM — идеальная лошадка, чтобы держать нейронку дома. Две модели: Qwen2.5-Coder-7B для молниеносного автокомплита и Qwen3.6-35B-A3B для агентного режима, когда нужно переписать половину проекта. Никаких $20 в месяц, никакой телеметрии — только тихий гул вентилятора.
Qwen3.6-35B-A3B — это MoE-архитектура: из 35 млрд параметров активны около 3 млрд на один токен. На RTX 5080 это даёт ~40 токен/с в Q4_K_M — быстрее, чем многие 7B модели.
Автокомплит: чтобы не тыкать по Tab как дурак
Стандартный GitHub Copilot хорош, но он видит ваш код. Для изолированной работы Qwen2.5-Coder-7B в квантизации Q6_K занимает всего 6 ГБ VRAM. Поднимаем через llama.cpp с флагом --fim и подключаем к Continue.dev (ссылка на статью о полной настройке).
1 Качаем модель
ollama pull qwen2.5-coder:7b-q6_K
ollama serve2 Тыкаем Continue.dev
В конфиге пишем:
{
"models": [{
"title": "Qwen Auto",
"provider": "ollama",
"model": "qwen2.5-coder:7b-q6_K",
"apiBase": "http://localhost:11434"
}],
"tabAutocompleteModel": {
"title": "Qwen Tabby",
"provider": "ollama",
"model": "qwen2.5-coder:7b-q6_K"
}
}Задержка между нажатием клавиш и подсказкой — 50-80 мс. Субъективно быстрее, чем Copilot, потому что не летает в Айову и обратно. Чемодан без ручки, но зато свой.
Агентный режим: когда нужно сделать всю работу
Qwen3.6-35B-A3B — зверь для сложных рефакторингов. Используем Aider с флагом --model ollama/qwen3.6-35b-a3b:q4_K_M. Но 35B даже в 4-бит не влезает в 16 ГБ целиком — включаем offloading в RAM. llama-server -m model.gguf -ngl 28 (28 слоёв на GPU, остальное на CPU). Потери скорости не критичны — получаем ~15 токен/с.
Не пытайтесь загнать non-MoE 34B модель в 16 ГБ целиком — будет своп на SSD и 2 токен/с. Только MoE или offloading.
Сравнение с альтернативами
| Модель | VRAM | Скорость (токен/с) | Тип |
|---|---|---|---|
| Qwen2.5-Coder-7B (Q6) | 6 ГБ | ~50 | FIM |
| Qwen3.6-35B-A3B (Q4) | ~12 + offload | ~15 | Агент |
| DeepSeek-Coder-V2-Lite (16B) | 10 ГБ | ~20 | Универсал |
| CodeGemma 7B (Q4) | 4 ГБ | ~60 | FIM |
Если VRAM в обрез — смотрите сводку по VRAM. А если у вас три 3090 — вот рецепт для стероидов.
Конфиг Aider для агентного режима
Лучше использовать llama.cpp как backend. Запускаем сервер:
llama-server -m Qwen3.6-35B-A3B-Q4_K_M.gguf -ngl 28 -c 4096 --port 8080Потом в терминале:
aider --model openai/qwen3.6-35b-a3b --openai-api-base http://localhost:8080/v1Aider сам возьмётся за редактирование файлов. С Qwen3.6 он неплохо понимает контекст, но без спеллчекера — иногда добавляет лишние пробелы. Мелочь.
Кстати, PocketCoder тоже работает, но требует больше ручной шаманской пляски с промптами.
Автокомплит vs агент: кто кого?
Не путайте тёплое с мягким. Автокомплит — это когда вы пишете arr.filter(item => и AI предлагает продолжение. Агент — когда вы говорите «перепиши этот модуль с использованием async/await вместо колбэков» и он делает это сам, открывая файлы. Qwen2.5-Coder-7B для первого, Qwen3.6-35B-A3B для второго. Держать обе на одной карте — уже перебор, но никто не мешает переключаться через Ollama.
Если вы фанат единого стека — логика выбора моделей уже расписана.
Пара слов о RAM offloading: на RTX 5080 с 32 ГБ системной памяти можно смело выгружать до 8-10 слоёв на CPU. Если система 16 ГБ — готовьтесь к подтормаживаниям, но жить можно. Главное — не используйте Windows без WSL, нативный llama.cpp под Windows пока сыроват для FIM.
Ладно, хватит теории. Идите настраивать. Если что-то пойдёт не так — дым из блока питания не считается ошибкой.