Downloads · 30 days
0
danghuyhoang/qwen3-30b-vietnamese-instruct
qwen3-30b-vietnamese-instruct is a text generation model from danghuyhoang. 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.
Fine-tuned Qwen3-30B-A3B for Vietnamese instruction-following
Downloads · 30 days
0
Access
Public
Updated Nov 8, 2025
Repo size
13.5 GB
Likes
0
Public
Click a slice to open those files.
.safetensors13.5 GB · 100%
From the Hugging Face model README
Fine-tuned Qwen3-30B-A3B for Vietnamese instruction-following
This model is a Vietnamese-optimized version of Qwen3-30B-A3B, fine-tuned on 327K high-quality Vietnamese instruction samples using LoRA (Low-Rank Adaptation).
This model is designed for Vietnamese natural language processing tasks, including:
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained(
"danghuyhoang/qwen3-30b-vietnamese-instruct",
torch_dtype="auto",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained("danghuyhoang/qwen3-30b-vietnamese-instruct")
messages = [
{"role": "system", "content": "Bạn là trợ lý AI thông minh và hữu ích."},
{"role": "user", "content": "Giải thích khái niệm machine learning bằng tiếng Việt."}
]
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=512,
temperature=0.7,
top_p=0.9,
do_sample=True
)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(response)
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
model_name="danghuyhoang/qwen3-30b-vietnamese-instruct",
max_seq_length=2048,
dtype=None,
load_in_4bit=True,
)
FastLanguageModel.for_inference(model) # Enable inference mode
messages = [
{"role": "user", "content": "Việt Nam có bao nhiêu tỉnh thành?"}
]
inputs = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt"
).to("cuda")
outputs = model.generate(input_ids=inputs, max_new_tokens=128)
print(tokenizer.decode(outputs[0]))
The model was fine-tuned on a diverse collection of Vietnamese instruction datasets:
| Dataset | Samples | Source | License |
|---|---|---|---|
| OpenOrca-Viet | 121,178 | 5CD-AI | Apache 2.0 |
| VILM Instruction | Subset | VILM Project | Open |
| Vietnamese UltraChat | Subset | 5CD-AI | MIT |
| Bactrian-X Vietnamese | Subset | MBZUAI | CC BY-NC 4.0 |
| Vietnamese MATH | 40,000 | 5CD-AI | Apache 2.0 |
| Multi-turn Chat | 12,697 | 5CD-AI | Apache 2.0 |
Total: 320,570 training samples + 6,543 validation samples
Training loss decreased steadily from ~1.5 to ~0.8 over 8,905 steps, indicating successful learning.
The model is evaluated on VMLU, a comprehensive Vietnamese benchmark with 744 questions across multiple subjects.
Evaluation Method: Logit-based scoring (industry standard, same as MMLU)
| Metric | Score |
|---|---|
| Overall Accuracy | Coming Soon |
| STEM | Coming Soon |
| Humanities | Coming Soon |
| Social Sciences | Coming Soon |
Note: To reproduce evaluation, use the evaluation script from the GitHub repository.
| Model | VMLU Accuracy |
|---|---|
| Qwen3-30B-A3B (Base) | Baseline |
| Qwen3-30B-Vietnamese (This model) | Coming Soon |
Minimum:
Recommended:
If you use this model, please cite:
@software{qwen3_vietnamese_2025,
title = {Qwen3-30B Vietnamese Instruct},
author = {Vietnamese LLM Project},
year = {2025},
url = {https://huggingface.co/danghuyhoang/qwen3-30b-vietnamese-instruct},
license = {Apache-2.0}
}
Also cite the base Qwen3 model:
@article{qwen3_2024,
title={Qwen3 Technical Report},
author={Qwen Team},
journal={arXiv preprint},
year={2024}
}
This model was created using:
For questions or issues:
License: Apache 2.0
Last Updated: 2025-11-08