Instructions to use LLiserginov/Luqwen5-4B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use LLiserginov/Luqwen5-4B with PEFT:
Task type is invalid.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use LLiserginov/Luqwen5-4B with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf LLiserginov/Luqwen5-4B:F16 # Run inference directly in the terminal: llama cli -hf LLiserginov/Luqwen5-4B:F16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf LLiserginov/Luqwen5-4B:F16 # Run inference directly in the terminal: llama cli -hf LLiserginov/Luqwen5-4B:F16
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf LLiserginov/Luqwen5-4B:F16 # Run inference directly in the terminal: ./llama-cli -hf LLiserginov/Luqwen5-4B:F16
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf LLiserginov/Luqwen5-4B:F16 # Run inference directly in the terminal: ./build/bin/llama-cli -hf LLiserginov/Luqwen5-4B:F16
Use Docker
docker model run hf.co/LLiserginov/Luqwen5-4B:F16
- LM Studio
- Jan
- vLLM
How to use LLiserginov/Luqwen5-4B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "LLiserginov/Luqwen5-4B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "LLiserginov/Luqwen5-4B", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/LLiserginov/Luqwen5-4B:F16
- Ollama
How to use LLiserginov/Luqwen5-4B with Ollama:
ollama run hf.co/LLiserginov/Luqwen5-4B:F16
- Unsloth Desktop
- Pi
How to use LLiserginov/Luqwen5-4B with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf LLiserginov/Luqwen5-4B:F16
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "LLiserginov/Luqwen5-4B:F16" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use LLiserginov/Luqwen5-4B with Docker Model Runner:
docker model run hf.co/LLiserginov/Luqwen5-4B:F16
- Lemonade
How to use LLiserginov/Luqwen5-4B with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull LLiserginov/Luqwen5-4B:F16
Run and chat with the model
lemonade run user.Luqwen5-4B-F16
List all available models
lemonade list
- Hermes Agent
How to use LLiserginov/Luqwen5-4B with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf LLiserginov/Luqwen5-4B:F16
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default LLiserginov/Luqwen5-4B:F16
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use LLiserginov/Luqwen5-4B with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf LLiserginov/Luqwen5-4B:F16
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "LLiserginov/Luqwen5-4B:F16" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Luqwen5-4B
Luqwen5-4B — русскоязычная текстовая модель, полученная дообучением Qwen3.5-4B-Base методом LoRA (QLoRA), продолжающая линейку Luqwen-4B. В версии 5 увеличена доля русскоязычных текстов, добавлены задачи на логику.
Базовая модель Qwen3.5-4B-Base использует гибридную архитектуру (Gated DeltaNet + Full Attention) с контекстом до 262k токенов, что обеспечивает эффективный инференс при сохранении качества генерации.
Что нового в версии 5
- Продолжение рассказа по пересказу
- Логика с персонажами
- Компактный и вычищенный датасет
Base model
| Свойство | Значение |
|---|---|
| Архитектура | Qwen3.5 For Causal LM (гибридный Linear/Full Attention, full_attention_interval = 4) |
| Параметров | 4B |
| Скрытая размерность | 1024 |
| Слоёв | 24 |
| Контекст | до 262 144 токенов |
| Вокабуляр | 248 320 |
| MTP | 1 слой |
Подробнее: Qwen3.5-4B-Base
Training data
Датасет Luqwen5 — целиком пересобранный набор из 1 544 примеров в ChatML-формате, объединённых из 13 источников и перемешанных случайным образом. Распределение по группам:
| Группа | Примеров | Доля |
|---|---|---|
| Продолжение художественного рассказа | 432 | 28.0% |
| Креативное письмо, английский (Claude Opus) | 400 | 25.9% |
| Вызов инструментов (tool calling) | 166 | 10.8% |
| Код: веб (HTML/CSS/JS) | 165 | 10.7% |
| Инструкции: математика, физика, код, история, аналитика | 140 | 9.1% |
| Притчи | 110 | 7.1% |
| Логика и персонажи | 58 | 3.8% |
| Креативное письмо, русский | 53 | 3.4% |
Код: Windows-скрипты (.bat) |
20 | 1.3% |
| Итого | 1 544 | 100% |
Краткие пояснения к группам:
- Продолжение рассказа — пересказ предыдущей части → продолжение в том же стиле; отобрано по
rm_score - Креативное письмо — тексты по жанровым промптам (EN — оригиналы Opus, RU — переводы с ручной доработкой)
- Tool calling — диалоги с системным описанием функций в форматах
<tools>и<functions> - Код — генерация одностраничных веб-приложений и
.bat-скриптов для автоматизации - Инструкции — решение задач по математике, физике, истории, аналитике и программированию
- Притчи — библейские, суфийские, восточные и народные притчи с разбором смысла
- Логика и персонажи — дедукция по ограничениям и проверка правдивости утверждений по тексту диалога
Датасет разбит на обучающую и валидационную части в соотношении ~90/10, дедуплицирован и отфильтрован по длине (до 4096 токенов).
Training procedure
Параметры LoRA
| Параметр | Значение |
|---|---|
| rank (r) | 8 |
| lora_alpha | 16 |
| lora_dropout | 0 |
| bias | none |
| use_rslora / use_dora | false |
| Целевые модули | 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, линейный schedule |
| Warmup steps | 50 |
| Эпохи | 3 максимум |
| Max seq length | 4096 токенов |
| Обёртка | unsloth (4-bit QLoRA) |
| Маскирование | обучаются только токены ответа (prompt замаскирован) |
Валидация и ранняя остановка
| Параметр | Значение |
|---|---|
| Валидация | каждые 50 шагов (≈155 примеров) |
| Метрика | eval loss |
| Early stopping | patience 3 |
| Фактически пройдено | 350 из 522 шагов (2.01 эпохи из 3) |
| Лучший eval loss | 1.311 (step 350) |
| Финальный train loss | ≈1.14 |
Обучающий loss стабильно падал: 1.63 (step 10) → 1.39 (step 60) → 1.14 (step 350), без признаков переобучения — eval loss монотонно улучшался параллельно.
Рекомендуемые параметры семплинга
| Параметр | Значение |
|---|---|
| temperature | 0.7 |
| top_p | 0.8 |
| top_k | 20 |
| min_p | 0.0 |
| presence_penalty | 1.5 |
| repetition_penalty | 1.0 |
Повышенный presence_penalty (1.5) подобран против повторов и зацикливания на длинных генерациях.
Usage
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "LLiserginov/Luqwen5-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,
do_sample=True,
temperature=0.7,
top_p=0.8,
top_k=20,
min_p=0.0,
presence_penalty=1.5,
repetition_penalty=1.0,
)
response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print(response)
Загрузка LoRA-адаптера
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base_model_id = "Qwen/Qwen3.5-4B-Base"
adapter_id = "LLiserginov/Luqwen5-4B"
tokenizer = AutoTokenizer.from_pretrained(base_model_id, trust_remote_code=True)
base = AutoModelForCausalLM.from_pretrained(
base_model_id,
torch_dtype="auto",
device_map="auto",
trust_remote_code=True,
)
model = PeftModel.from_pretrained(base, adapter_id)
Вызов инструментов
outputs = model.generate(
**inputs,
max_new_tokens=256,
do_sample=True,
temperature=0.3,
top_p=0.8,
top_k=20,
presence_penalty=1.5,
repetition_penalty=1.0,
)
Генерация кода (web + batch)
outputs = model.generate(
**inputs,
max_new_tokens=2048,
do_sample=True,
temperature=0.4,
top_p=0.8,
top_k=20,
presence_penalty=1.5,
repetition_penalty=1.0,
)
Использование с vLLM
from vllm import LLM, SamplingParams
llm = LLM(model="LLiserginov/Luqwen5-4B", trust_remote_code=True)
messages = [
{"role": "user", "content": "Объясни разницу между supervised и unsupervised learning."},
]
sampling_params = SamplingParams(
temperature=0.7,
top_p=0.8,
top_k=20,
min_p=0.0,
presence_penalty=1.5,
repetition_penalty=1.0,
max_tokens=1024,
)
outputs = llm.chat(messages, sampling_params=sampling_params)
print(outputs[0].outputs[0].text)
GGUF (llama.cpp)
GGUF-версию модели можно найти в файлах или сконвертировать самостоятельно:
git clone https://github.com/ggml-ai/llama.cpp
cd llama.cpp
python convert_hf_to_gguf.py /path/to/Luqwen5-4B --outfile Luqwen5-4B.Q4_K_M.gguf --outtype q4_K_M
Запуск через llama.cpp:
llama-cli -m Luqwen5-4B.Q4_K_M.gguf \
--prompt "Продолжи рассказ: старый фонарь на краю осеннего парка горел последние тридцать лет и ни разу не погас — он ждал, когда кто-нибудь наконец подойдёт." \
--temp 0.7 --top-p 0.8 --top-k 20 \
--presence-penalty 1.5 --repeat-penalty 1.0
Мобильные устройства (PocketPal AI)
Для телефонов и планшетов используйте квант Q4_0 — на мобильных CPU/GPU он заметно быстрее Q4_K_M, хотя качество немного ниже. Это рекомендуемый вариант для PocketPal AI (iOS / Android, локальная генерация на устройстве).
Параметры семплинга в приложении:
| Параметр | Значение |
|---|---|
| Temperature | 0.7 |
| Top K | 20 |
| Top P | 0.8 |
| Min P | 0.0 |
| Repeat penalty | 1.0 |
| Presence penalty | 1.5 |
| Context size | 2048–4096 (зависит от свободной памяти) |
Limitations
- Часть креативного датасета состоит из англо- и русскоязычных примеров; русскоязычная часть переведена машинным способом (Gemma 4 26B) — возможны отдельные артефакты и буквализмы
- Инструкционный датасет ограничен по объёму — покрытие тем по математике, физике, истории и аналитике неполное
- Код (web + batch) охватывает ограниченный набор сценариев — генерация сложного или специфичного кода может быть неточной
- Модель не проходила RLHF/DPO-калибровку и может генерировать нежелательный или фактически неверный контент
- Не предназначена для использования в медицинских, юридических или других критических областях
License
Модель распространяется под лицензией Apache 2.0.
Базовая модель: Qwen3.5-4B-Base — Apache 2.0.
- Downloads last month
- 1,713
4-bit
6-bit
8-bit
16-bit
Model tree for LLiserginov/Luqwen5-4B
Base model
Qwen/Qwen3.5-4B-Base