Text Generation
PEFT
Safetensors
Chinese
qwen3
lora
narrative-parsing
novel-analysis
chinese-novels
conversational
Instructions to use mikuhhn1239/qwen3-8b-narrative-parsing-lora with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use mikuhhn1239/qwen3-8b-narrative-parsing-lora with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("mikuhhn1239/qwen3-8b-novel-base-sft") model = PeftModel.from_pretrained(base_model, "mikuhhn1239/qwen3-8b-narrative-parsing-lora") - Notebooks
- Google Colab
- Kaggle
v3.2: 引号修复 + 数据扩标 + max_tokens→1024
Browse files- README.md +23 -20
- adapter_config.json +47 -47
- adapter_model.safetensors +1 -1
README.md
CHANGED
|
@@ -7,13 +7,13 @@ tags: [qwen3, lora, narrative-parsing, novel-analysis, chinese-novels]
|
|
| 7 |
base_model: mikuhhn1239/qwen3-8b-novel-base-sft
|
| 8 |
---
|
| 9 |
|
| 10 |
-
# Qwen3-8B Narrative Type Classification LoRA
|
| 11 |
|
| 12 |
**All Novel Can Be Galgame** — Agent 1: 叙事单元类型分类
|
| 13 |
|
| 14 |
输入已切分的叙事单元,为每个 unit_id 标注类型。
|
| 15 |
|
| 16 |
-
> 历史版本 v3 可通过 `revision="v3"` 加载。
|
| 17 |
|
| 18 |
基座: Qwen3-8B-Novel-Base-SFT | 方法: LoRA r=64 α=128 | 硬件: A800 80GB
|
| 19 |
|
|
@@ -22,13 +22,16 @@ base_model: mikuhhn1239/qwen3-8b-novel-base-sft
|
|
| 22 |
## 任务
|
| 23 |
- 输入: 编号叙事单元 `[1] "..." [2] "..." ...`
|
| 24 |
- 输出: `{"labels": [{"unit_id": "N", "type": "dialogue|narration|thought|action|scene_description"}]}`
|
|
|
|
| 25 |
|
| 26 |
### 五种类型
|
| 27 |
-
|
| 28 |
-
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
|
|
|
|
|
|
| 32 |
|
| 33 |
### 示例
|
| 34 |
```
|
|
@@ -55,7 +58,7 @@ base = AutoModelForCausalLM.from_pretrained(
|
|
| 55 |
torch_dtype="auto", device_map="auto",
|
| 56 |
)
|
| 57 |
model = PeftModel.from_pretrained(
|
| 58 |
-
base, "mikuhhn1239/qwen3-8b-narrative-
|
| 59 |
)
|
| 60 |
```
|
| 61 |
|
|
@@ -63,24 +66,24 @@ model = PeftModel.from_pretrained(
|
|
| 63 |
```
|
| 64 |
基座: Qwen3-8B-Novel-Base-SFT (Stage1 全参 SFT, 72K 小说续写数据)
|
| 65 |
方法: LoRA (r=64, α=128, dropout=0.05)
|
| 66 |
-
数据:
|
| 67 |
框架: transformers Trainer + PEFT
|
| 68 |
优化器: AdamW (adamw_torch_fused), cosine schedule, warmup=5%
|
| 69 |
epoch: 5 | LR: 1e-4 | batch: 1×16(accum) | bf16 | max_length: 4096
|
| 70 |
```
|
| 71 |
|
| 72 |
### 版本历史
|
| 73 |
-
|
| 74 |
-
|
|
| 75 |
-
|
|
| 76 |
-
|
|
| 77 |
-
|
|
| 78 |
-
|
|
| 79 |
-
|
|
| 80 |
-
| v3
|
| 81 |
-
| **v3.1 (LoRA)** | **310** | **5** | **1e-4** | **2.6%** | **acc 63.6%** |
|
| 82 |
|
| 83 |
### 结论
|
| 84 |
|
| 85 |
-
- **零基座 / +Stage1 全 0%**:不做 Agent SFT 就不会叙事
|
| 86 |
-
- **
|
|
|
|
|
|
| 7 |
base_model: mikuhhn1239/qwen3-8b-novel-base-sft
|
| 8 |
---
|
| 9 |
|
| 10 |
+
# Qwen3-8B Narrative Type Classification LoRA (v3.2) ⭐
|
| 11 |
|
| 12 |
**All Novel Can Be Galgame** — Agent 1: 叙事单元类型分类
|
| 13 |
|
| 14 |
输入已切分的叙事单元,为每个 unit_id 标注类型。
|
| 15 |
|
| 16 |
+
> 历史版本 v3 / v3.1 可通过 `revision="v3"` 和 `revision="v3.1"` 加载。
|
| 17 |
|
| 18 |
基座: Qwen3-8B-Novel-Base-SFT | 方法: LoRA r=64 α=128 | 硬件: A800 80GB
|
| 19 |
|
|
|
|
| 22 |
## 任务
|
| 23 |
- 输入: 编号叙事单元 `[1] "..." [2] "..." ...`
|
| 24 |
- 输出: `{"labels": [{"unit_id": "N", "type": "dialogue|narration|thought|action|scene_description"}]}`
|
| 25 |
+
- 测试集: 39 条
|
| 26 |
|
| 27 |
### 五种类型
|
| 28 |
+
| 类型 | 含义 |
|
| 29 |
+
|------|------|
|
| 30 |
+
| `dialogue` | 对话 |
|
| 31 |
+
| `narration` | 叙述 |
|
| 32 |
+
| `thought` | 心理 |
|
| 33 |
+
| `action` | 动作 |
|
| 34 |
+
| `scene_description` | 场景描写 |
|
| 35 |
|
| 36 |
### 示例
|
| 37 |
```
|
|
|
|
| 58 |
torch_dtype="auto", device_map="auto",
|
| 59 |
)
|
| 60 |
model = PeftModel.from_pretrained(
|
| 61 |
+
base, "mikuhhn1239/qwen3-8b-narrative-parsing-lora"
|
| 62 |
)
|
| 63 |
```
|
| 64 |
|
|
|
|
| 66 |
```
|
| 67 |
基座: Qwen3-8B-Novel-Base-SFT (Stage1 全参 SFT, 72K 小说续写数据)
|
| 68 |
方法: LoRA (r=64, α=128, dropout=0.05)
|
| 69 |
+
数据: 616 条 (577 train / 39 val / 39 test)
|
| 70 |
框架: transformers Trainer + PEFT
|
| 71 |
优化器: AdamW (adamw_torch_fused), cosine schedule, warmup=5%
|
| 72 |
epoch: 5 | LR: 1e-4 | batch: 1×16(accum) | bf16 | max_length: 4096
|
| 73 |
```
|
| 74 |
|
| 75 |
### 版本历史
|
| 76 |
+
| 版本 | 数据量 | epochs | LR | JSON解析 | 类型准确率 | 说明 |
|
| 77 |
+
|------|:---:|:---:|:---:|:---:|:---:|------|
|
| 78 |
+
| 零基座 | — | — | — | 0% | 0% | Qwen3-8B 原始完全不会 |
|
| 79 |
+
| +Stage1 | — | — | — | 0% | 0% | 读完 669 本也不会 |
|
| 80 |
+
| v1 | 56 | 3 | 2e-4 | 57.1% | 25.0% | 端到端(切分+分类) |
|
| 81 |
+
| v2 | 310 | 3 | 2e-4 | 2.6% | 63.6% | 只分类,引号冲突 |
|
| 82 |
+
| v3.1 | 310 | 5 | 1e-4 | 2.6% | 63.6% | max_new_tokens=256 截断 JSON |
|
| 83 |
+
| **v3.2** ⭐ | **577** | **5** | **1e-4** | **100%** | **69.5%** | **引号修复 + 扩标 + tokens→1024** |
|
|
|
|
| 84 |
|
| 85 |
### 结论
|
| 86 |
|
| 87 |
+
- **零基座 / +Stage1 全 0%**:不做 Agent SFT 就不会叙事分类 ✅
|
| 88 |
+
- **v3.2 突破**:JSON 解析 2.6%→100%,类型准确率 63.6%→69.5%(+5.9pp)
|
| 89 |
+
- **关键修复**: 输入引号 `""`→`「」` + max_new_tokens 256→1024
|
adapter_config.json
CHANGED
|
@@ -1,48 +1,48 @@
|
|
| 1 |
-
{
|
| 2 |
-
"alora_invocation_tokens": null,
|
| 3 |
-
"alpha_pattern": {},
|
| 4 |
-
"arrow_config": null,
|
| 5 |
-
"auto_mapping": null,
|
| 6 |
-
"base_model_name_or_path": "
|
| 7 |
-
"bias": "none",
|
| 8 |
-
"corda_config": null,
|
| 9 |
-
"ensure_weight_tying": false,
|
| 10 |
-
"eva_config": null,
|
| 11 |
-
"exclude_modules": null,
|
| 12 |
-
"fan_in_fan_out": false,
|
| 13 |
-
"inference_mode": true,
|
| 14 |
-
"init_lora_weights": true,
|
| 15 |
-
"layer_replication": null,
|
| 16 |
-
"layers_pattern": null,
|
| 17 |
-
"layers_to_transform": null,
|
| 18 |
-
"loftq_config": {},
|
| 19 |
-
"lora_alpha": 128,
|
| 20 |
-
"lora_bias": false,
|
| 21 |
-
"lora_dropout": 0.05,
|
| 22 |
-
"lora_ga_config": null,
|
| 23 |
-
"megatron_config": null,
|
| 24 |
-
"megatron_core": "megatron.core",
|
| 25 |
-
"modules_to_save": null,
|
| 26 |
-
"peft_type": "LORA",
|
| 27 |
-
"peft_version": "0.19.1",
|
| 28 |
-
"qalora_group_size": 16,
|
| 29 |
-
"r": 64,
|
| 30 |
-
"rank_pattern": {},
|
| 31 |
-
"revision": null,
|
| 32 |
-
"target_modules": [
|
| 33 |
-
"
|
| 34 |
-
"
|
| 35 |
-
"
|
| 36 |
-
"
|
| 37 |
-
"
|
| 38 |
-
"
|
| 39 |
-
"
|
| 40 |
-
],
|
| 41 |
-
"target_parameters": null,
|
| 42 |
-
"task_type": "CAUSAL_LM",
|
| 43 |
-
"trainable_token_indices": null,
|
| 44 |
-
"use_bdlora": null,
|
| 45 |
-
"use_dora": false,
|
| 46 |
-
"use_qalora": false,
|
| 47 |
-
"use_rslora": false
|
| 48 |
}
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"alora_invocation_tokens": null,
|
| 3 |
+
"alpha_pattern": {},
|
| 4 |
+
"arrow_config": null,
|
| 5 |
+
"auto_mapping": null,
|
| 6 |
+
"base_model_name_or_path": "mikuhhn1239/qwen3-8b-novel-base-sft",
|
| 7 |
+
"bias": "none",
|
| 8 |
+
"corda_config": null,
|
| 9 |
+
"ensure_weight_tying": false,
|
| 10 |
+
"eva_config": null,
|
| 11 |
+
"exclude_modules": null,
|
| 12 |
+
"fan_in_fan_out": false,
|
| 13 |
+
"inference_mode": true,
|
| 14 |
+
"init_lora_weights": true,
|
| 15 |
+
"layer_replication": null,
|
| 16 |
+
"layers_pattern": null,
|
| 17 |
+
"layers_to_transform": null,
|
| 18 |
+
"loftq_config": {},
|
| 19 |
+
"lora_alpha": 128,
|
| 20 |
+
"lora_bias": false,
|
| 21 |
+
"lora_dropout": 0.05,
|
| 22 |
+
"lora_ga_config": null,
|
| 23 |
+
"megatron_config": null,
|
| 24 |
+
"megatron_core": "megatron.core",
|
| 25 |
+
"modules_to_save": null,
|
| 26 |
+
"peft_type": "LORA",
|
| 27 |
+
"peft_version": "0.19.1",
|
| 28 |
+
"qalora_group_size": 16,
|
| 29 |
+
"r": 64,
|
| 30 |
+
"rank_pattern": {},
|
| 31 |
+
"revision": null,
|
| 32 |
+
"target_modules": [
|
| 33 |
+
"up_proj",
|
| 34 |
+
"v_proj",
|
| 35 |
+
"o_proj",
|
| 36 |
+
"k_proj",
|
| 37 |
+
"q_proj",
|
| 38 |
+
"gate_proj",
|
| 39 |
+
"down_proj"
|
| 40 |
+
],
|
| 41 |
+
"target_parameters": null,
|
| 42 |
+
"task_type": "CAUSAL_LM",
|
| 43 |
+
"trainable_token_indices": null,
|
| 44 |
+
"use_bdlora": null,
|
| 45 |
+
"use_dora": false,
|
| 46 |
+
"use_qalora": false,
|
| 47 |
+
"use_rslora": false
|
| 48 |
}
|
adapter_model.safetensors
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 698419728
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:721979bc610ec0d5fb207cc553c4156e91b6714fd82b5e74237a37f5058fdca1
|
| 3 |
size 698419728
|