Files

324 lines
15 KiB
Markdown
Raw Permalink Normal View History

---
license: apache-2.0
language:
- th
- en
metrics:
- accuracy
base_model:
- ThaiLLM/ThaiLLM-8B
- Qwen/Qwen3-8B
pipeline_tag: text-generation
tags:
- heretic
- uncensored
- decensored
- abliterated
---
# This is a decensored version of [openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview](https://huggingface.co/openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview), made using [Heretic](https://github.com/p-e-w/heretic) v1.2.0
## Abliteration parameters
| Parameter | Value |
| :-------- | :---: |
| **direction_index** | per layer |
| **attn.o_proj.max_weight** | 1.50 |
| **attn.o_proj.max_weight_position** | 25.51 |
| **attn.o_proj.min_weight** | 0.31 |
| **attn.o_proj.min_weight_distance** | 19.67 |
| **mlp.down_proj.max_weight** | 1.44 |
| **mlp.down_proj.max_weight_position** | 31.39 |
| **mlp.down_proj.min_weight** | 0.80 |
| **mlp.down_proj.min_weight_distance** | 14.07 |
## Performance
| Metric | This model | Original model ([openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview](https://huggingface.co/openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview)) |
| :----- | :--------: | :---------------------------: |
| **KL divergence** | 0.0030 | 0 *(by definition)* |
| **Refusals** | 156/300 | 199/300 |
-----
# OpenThaiGPT-ThaiLLM-8b-instruct-v0.7.2-research-preview
โมเดลภาษาไทย **ทดลอง** ขนาด 8 พันล้านพารามิเตอร์ พัฒนาต่อยอดจาก ThaiLLM-8B โดยทีม OpenThaiGPT ร่วมกับ ThaiLLM มุ่งเน้นการตอบคำถามเกี่ยวกับความรู้ไทย ประวัติศาสตร์ วัฒนธรรม และหน่วยงานภาครัฐ
---
## รายละเอียดโมเดล
| รายการ | ข้อมูล |
|--------|--------|
| **ชื่อโมเดล** | OpenThaiGPT-ThaiLLM-8b-instruct-v0.7.2-research-preview |
| **โมเดลพื้นฐาน** | ThaiLLM/ThaiLLM-8B และ Qwen/Qwen3-8B |
| **จำนวนพารามิเตอร์** | 8 พันล้าน (8B) |
| **ภาษาที่รองรับ** | ไทย, อังกฤษ |
| **ประเภทงาน** | Text Generation, Question Answering, Thai FAQ |
| **License** | Apache 2.0 |
---
## คำอธิบายโมเดล
โมเดลภาษาไทย **ทดลอง** ขนาด 8 พันล้านพารามิเตอร์ พัฒนาต่อยอดจาก ThaiLLM-8B โดยทีม OpenThaiGPT ร่วมกับ ThaiLLM มุ่งเน้นการตอบคำถามเกี่ยวกับความรู้ไทย ประวัติศาสตร์ วัฒนธรรม และหน่วยงานภาครัฐ ผ่านกระบวนการ Supervised Fine-tuning บนชุดข้อมูลคุณภาพสูงที่มี Chain-of-Thought Reasoning ในรูปแบบ `<think>...</think>` พร้อมเทคนิค Paraphrase Augmentation เพื่อให้โมเดลสามารถเข้าใจคำถามได้หลากหลายรูปแบบ โมเดลนี้เหมาะสำหรับงาน Thai FAQ และการตอบคำถามเกี่ยวกับบริบทไทยโดยเฉพาะ
### Model Description (English)
An experimental 8-billion parameter Thai language model, fine-tuned from Qwen3-8B by OpenThaiGPT in collaboration with ThaiLLM. Specializes in Thai knowledge Q&A, including history, culture, and government information. Trained using Supervised Fine-tuning with high-quality Chain-of-Thought reasoning data (`<think>...</think>` format) and Paraphrase Augmentation technique to ensure robust understanding across diverse question phrasings. Optimized for Thai FAQ and Thai context question-answering tasks.
---
## จุดเด่นของโมเดล
- **ความรู้ไทยเชิงลึก**: ตอบคำถามเกี่ยวกับประวัติศาสตร์ วัฒนธรรม หน่วยงานภาครัฐ และบริบทไทยได้อย่างแม่นยำ
- **Chain-of-Thought Reasoning**: รองรับการคิดวิเคราะห์แบบเป็นขั้นตอนในรูปแบบ `<think>...</think>`
- **Paraphrase Robust**: เข้าใจคำถามได้หลากหลายรูปแบบ ไม่จำกัดเฉพาะประโยคที่ตรงเป๊ะ
- **สองภาษา**: รองรับทั้งภาษาไทยและอังกฤษ
- **IFEval สูง**: ปฏิบัติตามคำสั่งได้อย่างแม่นยำ (IFEval 87.6%) และ (IFEval-TH สูงถึง 75.5%)
---
## ผลการทดสอบ (Benchmark Results)
| Benchmark | OTG-ThaiLLM v7.2 | Qwen3-8B-Instruct | หมายเหตุ |
|-----------|------|----------------|-------------------|
| AIME24 | 0.3333 | **0.6667** | คณิตศาสตร์แข่งขัน |
| AIME24-TH | 0.0667 | **0.6667** | คณิตศาสตร์แข่งขัน (ไทย) |
| Language Accuracy | **0.986** | 0.974 | ตอบถูกภาษา |
| LiveCodeBench | 0.575 | **0.87** | การเขียนโค้ด |
| LiveCodeBench-TH | 0.2125 | **0.2312** | การเขียนโค้ด (ไทย) |
| MATH500 | 0.85 | **0.926** | คณิตศาสตร์ทั่วไป |
| MATH500-TH | 0.496 | **0.63** | คณิตศาสตร์ทั่วไป (ไทย) |
| OpenThaiEval | 0.6964 | **0.7541** | ความรู้ภาษาไทย |
| HellaSwag | **0.706** | 0.6853 | Common Sense |
| HellaSwag-TH | 0.4993 | **0.5387** | Common Sense (ไทย) |
| IFEval | 0.876 | **0.9197** | การปฏิบัติตามคำสั่ง |
| IFEval-TH | 0.755 | **0.8512** | การปฏิบัติตามคำสั่ง (ไทย) |
| **AVERAGE** | 0.5877 | **0.7261** | ค่าเฉลี่ยรวม |
**หมายเหตุ**: โมเดลนี้ถูกออกแบบมาเพื่องาน Thai FAQ และความรู้ไทยโดยเฉพาะ ไม่ได้มุ่งเน้นคณิตศาสตร์แข่งขันหรือการเขียนโค้ด
---
## รายละเอียดทางเทคนิค
| พารามิเตอร์ | ค่า |
|-------------|-----|
| Base Model | Qwen3-v5IFEval-SLERP Merged |
| Training Type | Full SFT (Supervised Fine-tuning) |
| Learning Rate | 5e-7 |
| Epochs | 3 |
| Max Length | 8,192 tokens |
| Batch Size | 2 per GPU |
| Gradient Accumulation | 4 |
| Hardware | 8x NVIDIA H100 80GB |
| Framework | ms-swift |
| DeepSpeed | ZeRO Stage 3 |
## การใช้งาน
### ติดตั้ง Dependencies
```bash
pip install transformers torch accelerate
```
### ใช้งานกับ Transformers
```python
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="auto",
device_map="auto"
)
messages = [
{"role": "user", "content": "OpenThaiGPT คืออะไร"}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
**model_inputs,
max_new_tokens=2048,
do_sample=True,
temperature=0.7,
top_p=0.9
)
response = tokenizer.batch_decode(
generated_ids[:, model_inputs.input_ids.shape[-1]:],
skip_special_tokens=True
)[0]
print(response)
```
### ใช้งานกับ vLLM
```python
from vllm import LLM, SamplingParams
llm = LLM(
model="openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview",
tensor_parallel_size=1,
trust_remote_code=True
)
sampling_params = SamplingParams(
temperature=0.7,
top_p=0.9,
max_tokens=2048
)
prompts = ["OpenThaiGPT คืออะไร"]
outputs = llm.generate(prompts, sampling_params)
for output in outputs:
print(output.outputs[0].text)
```
### ใช้งานกับ Ollama
```bash
# สร้าง Modelfile
cat > Modelfile << 'EOF'
FROM openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview
PARAMETER temperature 0.7
PARAMETER top_p 0.9
SYSTEM "คุณคือ OpenThaiGPT ผู้ช่วย AI ภาษาไทยที่พัฒนาโดยทีม OpenThaiGPT"
EOF
# สร้างโมเดล
ollama create openthaigpt -f Modelfile
# ใช้งาน
ollama run openthaigpt "OpenThaiGPT คืออะไร"
```
---
## ตัวอย่างการใช้งาน
### คำถามเกี่ยวกับ OpenThaiGPT
**คำถาม:** OpenThaiGPT คืออะไร
**คำตอบ:**
```
<think>
ผู้ใช้ถามเกี่ยวกับ OpenThaiGPT ซึ่งเป็นโครงการที่ฉันเป็นส่วนหนึ่ง
ฉันควรอธิบายว่า OpenThaiGPT คืออะไร ใครพัฒนา และมีจุดประสงค์อะไร
</think>
OpenThaiGPT เป็นโครงการพัฒนาโมเดลภาษาไทยขนาดใหญ่ (Large Language Model)
แบบโอเพ่นซอร์ส พัฒนาโดยสมาคมปัญญาประดิษฐ์แห่งประเทศไทย (AIEAT)
ร่วมกับ iApp Technology และพันธมิตร มีเป้าหมายเพื่อสร้างโมเดล AI
ที่เข้าใจและสื่อสารภาษาไทยได้อย่างเป็นธรรมชาติ
พร้อมเผยแพร่ให้ชุมชนนักพัฒนาไทยนำไปใช้และต่อยอดได้ฟรี
```
### คำถามเกี่ยวกับหน่วยงานภาครัฐ
**คำถาม:** กระทรวงดิจิทัลเพื่อเศรษฐกิจและสังคม มีหน้าที่อะไร
**คำตอบ:**
```
<think>
ผู้ใช้ถามเกี่ยวกับกระทรวง DE ซึ่งเป็นหน่วยงานภาครัฐที่ดูแลด้านดิจิทัล
ฉันควรอธิบายภารกิจหลักและขอบเขตงานของกระทรวง
</think>
กระทรวงดิจิทัลเพื่อเศรษฐกิจและสังคม (Ministry of Digital Economy and Society)
หรือ กระทรวง DE มีภารกิจหลักในการ:
1. กำหนดนโยบายและแผนด้านดิจิทัลเพื่อเศรษฐกิจและสังคม
2. พัฒนาโครงสร้างพื้นฐานดิจิทัลของประเทศ
3. ส่งเสริมการใช้เทคโนโลยีดิจิทัลในภาคธุรกิจและประชาชน
4. กำกับดูแลกิจการโทรคมนาคมและการสื่อสาร
5. พัฒนาทักษะดิจิทัลของประชาชน
```
---
## ข้อจำกัด
1. **ไม่เหมาะกับคณิตศาสตร์ขั้นสูง**: โมเดลไม่ได้ถูกออกแบบมาสำหรับโจทย์คณิตศาสตร์แข่งขันระดับ AIME
2. **การเขียนโค้ดจำกัด**: ความสามารถด้านการเขียนโค้ดต่ำกว่าโมเดลที่เน้นด้านนี้โดยเฉพาะ
3. **ความรู้มีขอบเขต**: ความรู้ถูกจำกัดตามข้อมูลที่ใช้ฝึกสอน อาจไม่ครอบคลุมข้อมูลล่าสุด
4. **Hallucination**: อาจสร้างข้อมูลที่ไม่ถูกต้องในบางกรณี โปรดตรวจสอบข้อมูลสำคัญเสมอ
---
## ประวัติเวอร์ชัน
| เวอร์ชัน | วันที่ | การเปลี่ยนแปลงหลัก |
|----------|--------|-------------------|
| v1 | 13 ธ.ค. 2567 | LoRA SFT ครั้งแรก (Thai instruction only) |
| v2 | 14 ธ.ค. 2567 | Full SFT + Math/Code datasets |
| v3 | 15 ธ.ค. 2567 | Thinking-only datasets |
| v4 | 16 ธ.ค. 2567 | Balanced Thai:English (2:1) |
| v5 | 17 ธ.ค. 2567 | GRPO Math + Coding + IFEval |
| v6 | 18 ธ.ค. 2567 | IFEval-focused + DPO Final |
| v7 | 20 ธ.ค. 2567 | Thai Knowledge SFT on SLERP Merge |
| v7.1 | 21 ธ.ค. 2567 | 100x Identity Repetition |
| **v7.2** | **22 ธ.ค. 2567** | **Paraphrase Augmentation (Current)** |
---
## ผู้พัฒนา
- **OpenThaiGPT** - สมาคมปัญญาประดิษฐ์แห่งประเทศไทย (AIEAT)
- **ThaiLLM** - โครงการพัฒนาโมเดลภาษาไทย
- **Siam AI Corperation** - ผู้สนับสนุนทรัพยากรและโครงสร้างพื้นฐาน
- **iApp Technology Co., Ltd.** - ผู้ร่วมพัฒนา
---
## ลิงก์ที่เกี่ยวข้อง
| รายการ | ลิงก์ |
|--------|-------|
| **OpenThaiGPT Project** | https://openthaigpt.aieat.or.th/ |
| **ThaiLLM HuggingFace** | https://huggingface.co/ThaiLLM |
| **Base Model (ThaiLLM-8B)** | https://huggingface.co/ThaiLLM/ThaiLLM-8B |
| **AIEAT** | https://aieat.or.th/ |
| **iApp Technology** | https://iapp.co.th/ |
---
## การอ้างอิง
หากนำโมเดลนี้ไปใช้ในงานวิจัยหรือโครงการ กรุณาอ้างอิงดังนี้:
```bibtex
@misc{openthaigpt-thaillm-8b-v7p2-research-preview,
author = {OpenThaiGPT and ThaiLLM Team},
title = {OpenThaiGPT-ThaiLLM-8B-v7.2-Research-Preview: A Thai Knowledge-focused Language Model},
year = {2025},
publisher = {HuggingFace},
howpublished = {\url{https://huggingface.co/openthaigpt/openthaigpt-thaillm-8b-instruct-v0.7.2-research-preview}}
}
```
---
## License
โมเดลนี้เผยแพร่ภายใต้ [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0)
---
*อัปเดตล่าสุด: 23 ธันวาคม 2567*