248 lines
7.3 KiB
Markdown
248 lines
7.3 KiB
Markdown
```markdown
|
||
# qwen2.5-7b-instruct-LiHuowang
|
||
|
||
> 基于 Qwen-2.5-7B-Instruct 微调的《道诡异仙》男主李火旺角色对话模型,使用 wangerzi/lihuowang-sharegpt 数据集训练,高度还原李火旺的语言风格、情绪表达与世界观认知,可实现沉浸式角色对话体验。
|
||
|
||
------
|
||
|
||
## 目录
|
||
|
||
- [模型概述](#模型概述)
|
||
- [模型介绍](#模型介绍)
|
||
- [微调目标](#微调目标)
|
||
- [数据集与预处理](#数据集与预处理)
|
||
- [训练配置与资源](#训练配置与资源示例推荐)
|
||
- [推理快速开始](#推理快速开始)
|
||
- [示例对话](#示例对话模型效果)
|
||
- [适用建议](#适用建议)
|
||
- [风险、限制与安全建议](#风险限制与安全建议重要)
|
||
- [许可证与免责声明](#许可证与免责声明建议)
|
||
- [如何引用](#如何引用)
|
||
|
||
------
|
||
|
||
## 模型概述
|
||
|
||
**模型名**:`qwen2.5-7b-instruct-LiHuowang`
|
||
**定位**:面向《道诡异仙》男主李火旺的角色对话模型,专注还原其警觉、多疑、情绪波动大、世界观认知异常等语言特质,适合小说衍生创作、角色扮演与对话实验场景。
|
||
|
||
------
|
||
|
||
## 模型介绍
|
||
|
||
- **基模型**:Qwen-2.5-7B-Instruct
|
||
- **微调数据**:wangerzi/lihuowang-sharegpt(用于训练李火旺的角色设定、语言风格与世界观认知)
|
||
- **微调方法**:QLoRA(LoRA 注入 + 4-bit NF4 量化 via bitsandbytes),支持在单卡或低显存环境下完成微调与推理
|
||
|
||
------
|
||
|
||
## 微调目标
|
||
|
||
1. **角色特质学习**:
|
||
- 掌握李火旺特有的警觉性与多疑表达
|
||
- 模仿其情绪波动大、易受刺激的语言风格
|
||
- 再现其对异常世界的认知与反应方式
|
||
|
||
2. **对话风格适配**:
|
||
- 对异常事件的敏感回应
|
||
- 对他人动机的怀疑与追问
|
||
- 对自身处境的困惑与挣扎
|
||
|
||
3. **人设一致性**:
|
||
- 确保回应符合李火旺角色设定
|
||
- 保持其特有的认知偏差与情绪反应
|
||
- 避免性格冲突内容
|
||
|
||
4. **氛围营造**:
|
||
- 优先输出符合小说氛围的对话
|
||
- 保持紧张、悬疑的情绪基调
|
||
|
||
------
|
||
|
||
## 数据集与预处理
|
||
|
||
### 主数据集
|
||
`wangerzi/lihuowang-sharegpt`(构造李火旺与各类角色的互动对话、情绪反应样例)
|
||
|
||
### 预处理要点
|
||
1. **格式转换**:
|
||
- 转为 system/user/assistant 三段式 ChatML 或 `qwen` 模板
|
||
- 明确角色身份标签(`[李火旺]` `[对话者]`)
|
||
|
||
2. **风格强化**:
|
||
- 统一李火旺特有的疑问、警觉表达方式
|
||
- 添加情绪波动关键词库
|
||
- 增强其对异常事件的反应模式
|
||
|
||
3. **数据优化**:
|
||
- 移除与角色性格冲突的样本,删除部分重复回答可能会影响微调结果的对话数据
|
||
- 过滤过于平淡的表达
|
||
- 增强对异常事件反应的样本权重
|
||
- 添加多疑、追问类对话模板
|
||
|
||
------
|
||
|
||
## 训练配置与资源(示例/推荐)
|
||
|
||
> 单卡 RTX 4060(8GB 显存)配置方案,训练时长约90分钟
|
||
|
||
```json
|
||
{
|
||
"model_name_or_path": "./Qwen-2.5-7B-Instruct",
|
||
"template": "qwen",
|
||
"default_system": "请你扮演小说《道诡异仙》中的男主角李火旺,不要说自己是人工智能",
|
||
"finetuning_type": "lora",
|
||
"quantization_bit": 4,
|
||
"quantization_type": "nf4",
|
||
"double_quantization": true,
|
||
"quantization_method": "bitsandbytes",
|
||
|
||
"train_sft_args": {
|
||
"dataset_dir": "./sft",
|
||
"use_fast_tokenizer": true,
|
||
"lora_target": "q_proj,v_proj",
|
||
"lora_rank": 4,
|
||
"lora_dropout": 0.2,
|
||
"weight_decay": 0.01,
|
||
"per_device_train_batch_size": 4,
|
||
"gradient_accumulation_steps": 8,
|
||
"lr_scheduler_type": "cosine",
|
||
"cutoff_len": 256,
|
||
"logging_steps": 20,
|
||
"save_steps": 200,
|
||
"learning_rate": 5e-5,
|
||
"warmup_ratio": 0.05,
|
||
"num_train_epochs": 16,
|
||
"fp16": true,
|
||
"flash_attn": "fa2"
|
||
}
|
||
}
|
||
```
|
||
|
||
### 训练优化要点
|
||
1. 在prompt中强化角色设定(李火旺/多疑自称)
|
||
2. 对异常事件反应类样本增加权重
|
||
3. 提供f16和q8_0两种精度的gguf格式导出,以下示例输出结果为使用较低精度q8_0测试
|
||
|
||
---
|
||
|
||
## 推理快速开始
|
||
|
||
### GGUF / LmStudio / llama.cpp
|
||
|
||
可直接将gguf文件注入使用,也可使用命令行
|
||
|
||
```bash
|
||
./main -m model.gguf -p "李师兄,白师妹的人在做什么,你都知道吗?" -n 200 --temp 0.7
|
||
```
|
||
|
||
### 示例对话(模型效果)
|
||
|
||
> System Prompt:*"请你扮演《道诡异仙》中的男主李火旺"*
|
||
|
||
### 示例 A
|
||
**输入**:`啊!一声女人的惊恐尖叫,引得所有人看去。只见在溶洞的一旁,一位兔唇的胖少年脸上露出猥琐的笑容,企图把一位白化病少女拉进自己的怀里。`
|
||
**输出**:
|
||
> 什么?这不可能,那少年是何方神圣?
|
||
|
||
### 示例 B
|
||
**输入**:`就是出来走走透透气,没必要这么多护卫吧?`
|
||
**输出**:
|
||
> 是的,我们也是为了防止有意外发生。
|
||
|
||
### 示例 C
|
||
**输入**:`你还好吧`
|
||
**输出**:
|
||
> 没事了,只是受了一点惊吓而已。
|
||
|
||
### 示例 D
|
||
**输入**:`李师兄,白师妹的人在做什么,你都知道吗?`
|
||
**输出**:
|
||
> 知道什么啊!她到底是谁?为什么你们会派这么多人护卫她?
|
||
|
||
> *注:实际输出可能因生成参数调整而略有不同*
|
||
|
||
---
|
||
|
||
## 适用建议
|
||
|
||
### 推荐使用场景 ✅
|
||
- 小说衍生创作与对话生成
|
||
- 角色扮演与互动实验
|
||
- 文学研究与语言风格分析
|
||
- 创意写作辅助
|
||
|
||
### 不推荐场景 ❌
|
||
- 专业知识咨询
|
||
- 日常对话助手
|
||
- 事实性信息查询
|
||
- 心理疏导场景
|
||
|
||
---
|
||
|
||
## 风险、限制与安全建议(重要)
|
||
|
||
### 核心限制
|
||
1. **内容特异性**:输出包含小说特有的认知偏差与情绪反应
|
||
2. **表达局限性**:可能偶现过度多疑或情绪化表达
|
||
3. **知识边界**:知识库限于训练数据范围
|
||
|
||
### 安全部署建议
|
||
```mermaid
|
||
graph TD
|
||
A[用户输入] --> B{内容过滤模块}
|
||
B -->|通过| C[模型推理]
|
||
B -->|拦截| D[返回安全提示]
|
||
C --> E{人设一致性检测}
|
||
E -->|符合| F[输出响应]
|
||
E -->|偏离| G[触发角色修正]
|
||
F --> H[添加虚构免责声明]
|
||
```
|
||
|
||
### 必须包含的安全措施
|
||
1. **前端标注**:显目标注"虚构角色互动,内容源自小说创作"
|
||
2. **关键词过滤**:实时检测并拦截:
|
||
- 极端情绪诱导
|
||
- 危险行为引导
|
||
- 现实伤害性内容
|
||
3. **人设守护机制**:
|
||
- 当输出偏离角色设定时自动修正
|
||
- 建立情绪稳定性检测
|
||
|
||
### 伦理使用规范
|
||
- 禁止传播不实信息
|
||
- 禁止诱导现实伤害行为
|
||
- 禁止用于欺骗性交互
|
||
- 商业使用需额外授权
|
||
|
||
---
|
||
|
||
## 许可证与免责声明
|
||
|
||
### 授权信息
|
||
1. **代码授权**:Apache License 2.0
|
||
2. **模型权重**:CC BY-NC 4.0
|
||
|
||
### 免责声明
|
||
> 本模型按"原样"(AS IS)提供,仅用于娱乐与研究目的。使用者应知悉:
|
||
> 1. 输出内容含小说创作元素,无现实指导意义
|
||
> 2. 禁止用于心理干预、医疗建议等专业领域
|
||
> 3. 发布者不对角色扮演引发的任何误解承担责任
|
||
|
||
---
|
||
|
||
## 如何引用
|
||
|
||
```bibtex
|
||
@misc{qwen2.5-7b-instruct-LiHuowang,
|
||
title={qwen2.5-7b-instruct-LiHuowang},
|
||
author={jzyking},
|
||
year={2025},
|
||
note={基于Qwen-2.5-7B-Instruct微调的李火旺角色对话模型}
|
||
}
|
||
```
|
||
|
||
**文本引用格式**:
|
||
qwen2.5-7b-instruct-LiHuowang. 基于Qwen-2.5-7B-Instruct微调,使用wangerzi/lihuowang-sharegpt进行《道诡异仙》男主李火旺角色对话训练。发布者: jzyking。
|
||
```
|