Downloads · 30 days
135
5% of all-time downloads
LLiserginov/Luqwen3-4B
Luqwen3-4B is a text generation model from LLiserginov. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
Luqwen3-4B — русскоязычная текстовая модель, полученная дообучением Qwen3.5-4B-Base методом LoRA (QLoRA) на смешанном датасете из реальных диалогов с LLM, креативных текстов и специализированных инструкций. Модель соч…
Downloads · 30 days
135
5% of all-time downloads
All-time downloads
2.6K
Public
Repo size
19.6 GB
Likes
1
Public
Click a slice to open those files.
.gguf19.6 GB · 100%
From the Hugging Face model README
Luqwen3-4B — русскоязычная текстовая модель, полученная дообучением Qwen3.5-4B-Base методом LoRA (QLoRA) на смешанном датасете из реальных диалогов с LLM, креативных текстов и специализированных инструкций. Модель сочетает способность следовать инструкциям, вызывать инструменты, решать задачи по математике, физике, истории и аналитике, а также генерировать выразительные литературные тексты.
Базовая модель Qwen3.5-4B-Base использует гибридную архитектуру (Gated DeltaNet + Full Attention) с контекстом до 262k токенов, что обеспечивает эффективный инференс при сохранении качества генерации.
| Свойство | Значение |
|---|---|
| Архитектура | Qwen3.5 For Causal LM (гибрид Linear/Full Attention) |
| Параметров | 4B |
| Скрытая размерность | 1024 |
| Слоёв | 24 |
| Контекст | до 262 144 токенов |
| Вокабуляр | 248 320 (padding) |
| MTP | 1 слой |
Подробнее: Qwen3.5-4B-Base
Датасет для обучения состоит из трёх частей:
50% — Креативное письмо
Оригинальные тексты, написанные Claude Opus 4.6, затем переведённые на русский язык с помощью Gemma 4 26B. После перевода был сделан ещё один проход Gemma 4 26B для исправления ошибок перевода, а затем выполнена ручная доработка и редактура текстов.
25% — Реальные диалоги пользователя с LLM
Диалоги включают:
25% — Инструкционный датасет на русском языке
Примеры решения задач по категориям:
| Параметр | Значение |
|---|---|
| rank (r) | 16 |
| lora_alpha | 32 |
| lora_dropout | 0 |
| bias | none |
| Целевые модули | q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj, in_proj_qkv, in_proj_z, out_proj, in_proj_a, in_proj_b |
| Параметр | Значение |
|---|---|
| Оптимизатор | AdamW 8-bit |
| Precision | BF16 (mixed) |
| Batch size | 1 (8 gradient accumulation steps) |
| Learning rate | 2e-4 |
| Эпохи | 3 |
| Warmup steps | 20 |
| Max seq length | 4096 токенов |
| Обёртка | unsloth (4-bit QLoRA) |
После обучения LoRA-адаптер был слит с базовой моделью в 16-bit точность (метод merged_16bit через unsloth) для удобного использования без дополнительных зависимостей PEFT.
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "LLiserginov/Luqwen3-4B"
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto",
trust_remote_code=True,
)
messages = [
{"role": "user", "content": "Напиши рассказ о одиноком фонаре в осеннем парке."},
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=1024,
temperature=0.7,
top_p=0.9,
do_sample=True,
)
response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print(response)
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "LLiserginov/Luqwen3-4B"
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto",
trust_remote_code=True,
)
messages = [
{"role": "user", "content": "Узнай текущую погоду в Москве."},
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=256,
temperature=0.3,
top_p=0.9,
do_sample=True,
)
response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print(response)
from vllm import LLM, SamplingParams
llm = LLM(model="LLiserginov/Luqwen3-4B", trust_remote_code=True)
messages = [
{"role": "user", "content": "Объясни разницу между supervised и unsupervised learning."},
]
outputs = llm.chat(messages, sampling_params=SamplingParams(temperature=0.7, max_tokens=1024))
print(outputs[0].outputs[0].text)
GGUF-версию модели можно найти в файлах или сконвертировать самостоятельно:
git clone https://github.com/ggml-ai/llama.cpp
cd llama.cpp
python convert_hf_to_gguf.py /path/to/Luqwen3-4B --outfile Luqwen3-4B.Q4_K_M.gguf --outtype q4_K_M
Модель распространяется под лицензией Apache 2.0.
Базовая модель: Qwen3.5-4B-Base — Apache 2.0.