Lua Coder — Qwen 2.5 Coder 3B (GGUF)
Модель для написания, ревью и объяснения Lua-кода. Обучена на базе Qwen 2.5 Coder 3B Instruct с использованием QLoRA файнтюнинга.
Возможности
- Написание кода — генерация Lua-функций, модулей, структур данных
- Код-ревью — анализ кода с выявлением багов (SQL injection, утечки переменных, проблемы производительности)
- Агентское поведение — задаёт 1-2 уточняющих вопроса перед написанием, если задача неоднозначная
- Объяснение кода — разбор сложного Lua-кода с пояснениями
Примеры
Написание кода:
Запрос: Write a Lua event system with on, off, and emit methods.
Ответ:
local Event = {listeners = {}}
function Event:on(name, fn)
self.listeners[name] = self.listeners[name] or {}
table.insert(self.listeners[name], fn)
end
function Event:emit(name, ...)
for _, fn in ipairs(self.listeners[name] or {}) do fn(...) end
end
return Event
Код-ревью:
Запрос: Review this Lua code (SQL query with string concatenation)
Ответ: SQL Injection — используйте параметризованные запросы. Stale cache — очищайте кэш при ошибке.
Агентское поведение:
Запрос: I need a Lua save system for my game.
Ответ: Before I write the code, I have a couple questions:
1. Are you saving data to a file or a database?
2. Do you need to handle encryption for sensitive information?
Параметры обучения
| Параметр | Значение |
|---|---|
| Базовая модель | Qwen 2.5 Coder 3B Instruct |
| Метод | QLoRA (4-bit) |
| LoRA rank | 128 |
| LoRA alpha | 256 |
| Learning rate | 8e-5 |
| Эпох | 3 |
| Оптимизатор | AdamW 8-bit |
| Квантизация GGUF | Q8_0 |
Оптимизация
Гиперпараметры подобраны с помощью автоматизированного поиска (50 экспериментов). Лучшая конфигурация выбрана по минимальному val_loss.
Использование
Ollama
ollama run hf.co/kertpoli/lua-coder-qwen25-3b-gguf
llama.cpp
./llama-server -m lua-coder-q8_0.gguf -ngl 99 -c 1024 --port 8091
Python (llama-cpp-python)
from llama_cpp import Llama
llm = Llama(model_path="lua-coder-q8_0.gguf", n_gpu_layers=-1, n_ctx=1024)
result = llm.create_chat_completion(
messages=[{"role": "user", "content": "Write a Lua stack with push and pop"}],
max_tokens=200,
temperature=0.3,
)
print(result["choices"][0]["message"]["content"])
Темы обучения
Модель обучена на примерах из следующих областей:
- Структуры данных (стеки, очереди, деревья)
- Игровые механики (ECS, state machine, collision)
- Утилиты (event system, config loader, object pool)
- Love2D, Roblox, OpenResty, Neovim
- Metatables, coroutines, closures
Требования
| Формат | Размер | VRAM (GPU) | RAM (CPU) |
|---|---|---|---|
| Q8_0 | 3.1 ГБ | 4 ГБ | 4 ГБ |
Лицензия
Apache 2.0 (наследуется от Qwen 2.5 Coder)
- Downloads last month
- 32
Hardware compatibility
Log In to add your hardware
8-bit