---
title: Genshin_Irminsul_Dataset
canonical_url: "https://www.modelscope.cn/datasets/CharlinChen/Genshin_Irminsul_Dataset"
md_url: "https://www.modelscope.cn/datasets/CharlinChen/Genshin_Irminsul_Dataset.md"
repository: CharlinChen/Genshin_Irminsul_Dataset
chinese_name: "原神世界树数据集"
last_updated: 2026-06-14
license: mit
downloads: 55
stars: 1
---

# Genshin_Irminsul_Dataset

> Genshin_Irminsul_Dataset - CharlinChen 在 ModelScope 开源的数据集。截止与 月之四

CharlinChen/Genshin_Irminsul_Dataset 是 ModelScope 魔搭社区上的数据集，采用 mit 许可。

- **Repository**: CharlinChen/Genshin_Irminsul_Dataset
- **License**: mit
- **Downloads**: 55
- **Stars**: 1
- **Last updated**: 2026-06-14

Source: https://www.modelscope.cn/datasets/CharlinChen/Genshin_Irminsul_Dataset

---

# 《原神》世界树知识库（Genshin Irminsul Dataset）

- 数据来源于「月之四」版本互联网公开数据的整理与汇总（wiki/社区公开帖子等）。
- 数据主要由大模型进行结构化整理/总结，可能存在遗漏或事实性偏差；请以游戏内与官方信息为准。
- 可用于 **RAG 构建** 或 **继续预训练（DAPT/PT）** 等用途。

> 免责声明：本数据集为对互联网公开信息的二次整理与汇总，仅供学习与研究使用。如有侵权请联系我删除。

---

## 数据集在 Hugging Face 上的结构

- 本数据集已被 Hugging Face **自动解析**并可在 Dataset Viewer 中直接浏览。
- 当前为 **单一 split**：
  - `train`：约 26.4k rows
- 主要字段：
  - `messages`：`list`（每个元素为 `{role, content}`）

HF 会自动将 json 转换为 Parquet（Auto-converted to Parquet），因此可直接用 `datasets` 库加载与处理。

---

## 数据格式（ms-swift 标准格式）

本数据集使用 ms-swift 文档中的“标准数据集格式”。当前数据为 **预训练（PT）风格**：每条样本仅包含一段 `assistant` 文本，训练时对 `content` 全文进行 next-token prediction（更接近“纯文本继续预训练”，并非指令对话 SFT）。

### Schema

每行样本结构等价于：

- `messages`: `List[Message]`
  - `Message.role`: `assistant`（当前数据集中固定为 assistant）
  - `Message.content`: `string`，UTF-8 文本；可能包含 Markdown（标题、列表、表格、引用块等）

> 说明：ms-swift 也支持 `system/user` 以及 `loss/loss_scale` 等字段，但本数据集当前未使用。

---

## 文件说明（数据内容来源）

数据集中包含两类内容（上传后由 HF 合并展示为同一 `train` split）：

- `genshin_chara_knowledge.jsonl`
  - 使用 `deepseek-v4-flash` 对公开资料进行提炼得到的**角色关键知识**为主（条目式、高信息密度），包含角色信息与少量世界观设定信息。
  - 更适合：RAG 的“角色卡/摘要库”、或作为高密度语料进行继续预训练（DAPT/PT）。

- `pretrain_genshin.jsonl`
  - 使用 `qwen3.6-plus` 对互联网公开数据（包括 wiki、社区公开帖子等）进行**总结与改写**后整理为 Markdown 文档。
  - 更适合：文档型 RAG、或作为 Markdown 风格语料进行继续预训练（DAPT/PT）。

> 时效性说明：数据为某时间点快照，部分内容（版本、活动、卡池等）可能随时间变化而过期。

---

## 如何加载（datasets）

```python
from datasets import load_dataset

ds = load_dataset("charlin55/Genshin_Irminsul_Dataset")
train = ds["train"]

# 查看一条样本
print(train[0]["messages"])
print(train[0]["messages"][0]["role"])
print(train[0]["messages"][0]["content"][:200])
```

如果你希望将其作为“纯文本语料”使用，可以将 `messages[0].content` 抽取为 `text`：

```python
def to_text(example):
    # 该数据集每条样本通常只有一个 assistant message
    example["text"] = example["messages"][0]["content"]
    return example

train_text = train.map(to_text, remove_columns=["messages"])
print(train_text[0]["text"][:200])
```

---

## 用途建议

### RAG
- 建议对 `content` 做分块（chunking），例如按标题/段落切分或按 token 长度切分。

### 继续预训练（DAPT/PT）
- 本数据集是“预训练语料”风格（单段文本），适合做 continued pretraining / domain-adaptive pretraining。

---

## 预训练方法（ms-swift LoRA 继续预训练示例）

可以使用 ms-swift 进行 LoRA 继续预训练（DAPT/PT）：


```bash
NPROC_PER_NODE=1 CUDA_VISIBLE_DEVICES=1 MASTER_PORT=25900 MASTER_ADDR=127.0.0.1 swift pt \
  --model "path_to_model/Qwen3.5-4B-Base" \
  --model_type "qwen3_5" \
  --template "default" \
  --dataset "path_to_dataset/pretrain_genshin.jsonl" \
  --task_type "causal_lm" \
  --dtype "bfloat16" \
  --max_length 4096 \
  --lora_rank 128 \
  --lora_alpha 256 \
  --lora_target_modules "ALL" \
  --learning_rate 1e-6 \
  --per_device_train_batch_size 2 \
  --gradient_accumulation_steps 16 \
  --num_train_epochs 2 \
  --attn_impl flash_attn \
  --output_dir "path_to_output/genshin_irminsul" \
  --report_to "tensorboard" \
  --ignore_args_error true \
  --save_steps 100 \
  --save_total_limit 5 \
  --resume_only_model true \
  --ignore_data_skip true \
  --seed 114514
```

### 多卡训练提示
- 若使用单机多卡，将 `NPROC_PER_NODE` 设置为卡数，并设置 `CUDA_VISIBLE_DEVICES=0,1,2,3...`。
- `MASTER_ADDR/MASTER_PORT` 用于分布式通信；单机多卡通常使用 `127.0.0.1` 即可。

---

## 许可与引用

- 本仓库以 MIT License 标注发布（仅覆盖本仓库的整理与组织方式/脚本/数据结构等，不改变上游内容的权利归属）。
- 数据来自互联网公开信息的二次整理与汇总，仅供学习与研究使用；如有侵权请联系删除。
