Finalize model card and Apache-2.0 license
Browse files
README.md
CHANGED
|
@@ -1,64 +1,98 @@
|
|
| 1 |
-
---
|
| 2 |
-
language:
|
| 3 |
-
- vi
|
| 4 |
-
pipeline_tag: text-generation
|
| 5 |
-
library_name: pytorch
|
| 6 |
-
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
##
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
language:
|
| 3 |
+
- vi
|
| 4 |
+
pipeline_tag: text-generation
|
| 5 |
+
library_name: pytorch
|
| 6 |
+
license: apache-2.0
|
| 7 |
+
tags:
|
| 8 |
+
- vietnamese
|
| 9 |
+
- causal-lm
|
| 10 |
+
- decoder-only
|
| 11 |
+
- from-scratch
|
| 12 |
+
---
|
| 13 |
+
|
| 14 |
+
# Luna Zero 110M
|
| 15 |
+
|
| 16 |
+
Luna Zero là mô hình ngôn ngữ decoder-only tiếng Việt khoảng 110M tham số, **train hoàn
|
| 17 |
+
toàn từ số 0**; không fine-tune và không nạp trọng số pretrained của mô hình khác.
|
| 18 |
+
|
| 19 |
+
Source code: https://github.com/plastma65/luna-zero-vi
|
| 20 |
+
|
| 21 |
+
## Kiến trúc
|
| 22 |
+
|
| 23 |
+
- 12 Transformer block, d_model 768, 12 attention head.
|
| 24 |
+
- Context tối đa 1024 token.
|
| 25 |
+
- Byte-level BPE 32.000 token, NFC ở data layer, không có UNK.
|
| 26 |
+
- Input embedding và LM head dùng chung trọng số.
|
| 27 |
+
- Kiến trúc custom PyTorch, không tương thích trực tiếp với `transformers.AutoModel`.
|
| 28 |
+
|
| 29 |
+
## Train
|
| 30 |
+
|
| 31 |
+
Mục tiêu train là 2.200.000.000 token. Bản phát hành này dùng checkpoint
|
| 32 |
+
step 33.569, được khóa trước final eval.
|
| 33 |
+
|
| 34 |
+
## Final eval
|
| 35 |
+
|
| 36 |
+
Human-authored held-out: 100 document / 17.580 token,
|
| 37 |
+
NLL **3.2195**, perplexity **25.016**.
|
| 38 |
+
|
| 39 |
+
Exact document overlap với raw train corpus bằng **0** sau khi quét
|
| 40 |
+
2.414.008 document.
|
| 41 |
+
|
| 42 |
+
Final generation: 30 mẫu, distinct-2 mean **0.948**,
|
| 43 |
+
distinct-4 mean **0.994**, 4-gram lặp tối đa **3**.
|
| 44 |
+
|
| 45 |
+
Các metric này mô tả repetition, **không phải** điểm factuality, coherence
|
| 46 |
+
hay chất lượng nội dung.
|
| 47 |
+
|
| 48 |
+
## Eval protocol
|
| 49 |
+
|
| 50 |
+
- Human final corpus được tạo sau khi train hoàn tất.
|
| 51 |
+
- Corpus được fingerprint và khóa trước khi tính NLL/PPL.
|
| 52 |
+
- Final generation prompt suite và sampling được khóa trước khi chạy.
|
| 53 |
+
- Output final không được dùng để tune lại sampling hoặc chọn checkpoint.
|
| 54 |
+
- Exact contamination guard không loại được near-duplicate hoặc paraphrase.
|
| 55 |
+
|
| 56 |
+
Xem `stage4_report.json`, `STAGE4_REPORT.md` và `generation_final.json` để có provenance
|
| 57 |
+
chi tiết.
|
| 58 |
+
|
| 59 |
+
## Giới hạn
|
| 60 |
+
|
| 61 |
+
Model ở quy mô này có thể viết tiếng Việt khá trôi nhưng thường bịa dữ kiện, mất mạch
|
| 62 |
+
ngữ nghĩa và không nên dùng như nguồn thông tin đáng tin cậy.
|
| 63 |
+
|
| 64 |
+
Model không được thiết kế cho toán học đáng tin cậy, instruction following phức tạp,
|
| 65 |
+
hay các tác vụ cần factuality cao.
|
| 66 |
+
|
| 67 |
+
## Sampling mặc định
|
| 68 |
+
|
| 69 |
+
```json
|
| 70 |
+
{
|
| 71 |
+
"so_token": 120,
|
| 72 |
+
"temperature": 0.9,
|
| 73 |
+
"top_k": null,
|
| 74 |
+
"top_p": 0.92,
|
| 75 |
+
"phat_lap": 1.05
|
| 76 |
+
}
|
| 77 |
+
```
|
| 78 |
+
|
| 79 |
+
## Load
|
| 80 |
+
|
| 81 |
+
Package chứa trọng số inference-only `model.safetensors`, tokenizer và config.
|
| 82 |
+
|
| 83 |
+
Đây không phải model `transformers.AutoModel` / `AutoModelForCausalLM`.
|
| 84 |
+
Dùng source code Luna Zero để dựng `LunaZeroGPT`, nạp `model.safetensors`,
|
| 85 |
+
và dùng tokenizer đi kèm.
|
| 86 |
+
|
| 87 |
+
Package phát hành đã được kiểm theo vòng:
|
| 88 |
+
|
| 89 |
+
```text
|
| 90 |
+
local export -> Hugging Face upload -> download sạch -> CPU load + forward PASS
|
| 91 |
+
```
|
| 92 |
+
|
| 93 |
+
## License
|
| 94 |
+
|
| 95 |
+
Luna Zero 110M được phát hành theo **Apache License 2.0**.
|
| 96 |
+
|
| 97 |
+
Giấy phép này áp dụng cho phần được phát hành bởi dự án Luna Zero; nó không thay thế
|
| 98 |
+
điều khoản hoặc giấy phép của các dataset nguồn được dùng trong quá trình huấn luyện.
|