README.md
| 1 | --- |
| 2 | base_model: |
| 3 | - qwen/qwen7b |
| 4 | language: |
| 5 | - zh |
| 6 | - en |
| 7 | library_name: transformers |
| 8 | tags: |
| 9 | - incremental-pretraining |
| 10 | - sft |
| 11 | - reinforcement-learning |
| 12 | - roleplay |
| 13 | - cot |
| 14 | license: apache-2.0 |
| 15 | --- |
| 16 | # Tifa-DeepSexV2-7b-MGRPO |
| 17 | |
| 18 | - **原始模型**:[Qwen2.5-7B](https://huggingface.co/Qwen/Qwen2.5-7B-Instruct) |
| 19 | - **GGUF**: [F16](https://huggingface.co/ValueFX9507/Tifa-DeepsexV2-7b-MGRPO-GGUF-F16) | [Q8](https://huggingface.co/ValueFX9507/Tifa-DeepsexV2-7b-MGRPO-GGUF-Q8) | [Q4](https://huggingface.co/ValueFX9507/Tifa-DeepsexV2-7b-MGRPO-GGUF-Q4) (Q4损失较大,推荐Q8以上) |
| 20 | - **Demo APK**: [点击下载](http://app.visionsic.com/download/projectchat.apk) |
| 21 | - **简单的前端**:[Github链接](https://github.com/Value99/Tifa-Deepsex-OllamaWebUI) |
| 22 | - **必看教程**:[BiliBili视频教程](https://space.bilibili.com/483051186) |
| 23 | |
| 24 | - **在线试用/Онлайновая пробная версия**:[WebUI](https://leftnorth.com/test.html) |
| 25 | |
| 26 | |
| 27 | 本模型基于Qwen2.5 7b进行深度优化,具有100万字上下文能力,借助Tifa_220B生成的数据集与创新型的MGRPO算法,提供卓越的角色扮演体验。**本模型未特殊优化违规内容生成,仅在减少拒绝上努力。** |
| 28 | |
| 29 | 非常抱歉列位,我延期的原因是严重低估了MGRPO的训练效率。实测发现,经过我“优化”的框架虽然能提升性能,但是训练效率下降3倍之多,显存容量占用也是三倍之多。所以延期至今,目前训练已完成7%,但是效果完全超越14b、甚至32b模型。已足够证明策略优越,遂上传模型。目前正在从服务器中回传。很快将会上载。训练还在继续,将和之前一样分为验证版、Chat版和Crazy版本。目前为验证版。 |
| 30 | |
| 31 | In the term "deepsex," the Chinese character "sex" (性) refers to: |
| 32 | - The "human nature" in philosophical context (人性的性) |
| 33 | - The "character" in personal disposition (性格的性) |
| 34 | - The "individuality" in unique traits (个性的性) |
| 35 | - The "innate essence" in the Confucian concept of "human nature is inherently good" (性本善的性) |
| 36 | |
| 37 | Please note this "sex" should not be interpreted as sexual relations, but rather as the multidimensional Chinese philosophical concept of "Xing" (性). |
| 38 | |
| 39 | ## 更新记录 |
| 40 | |
| 41 | - 0222更新-(进度23%,双版本发布,增加普通版) |
| 42 | |
| 43 | - 为了解决部分平台不兼容模型的问题,去掉思维链训练了一个普通版本,为NoCot版,同样采用MGRPO策略训练,但可能效果不及Cot版,也可能上下文连贯性好于Cot版。 |
| 44 | - Cot版本训练进度为23%,已训练完成20万轮对话,剩余约70万轮,loss下降至1.1,即将接近7b模型极限。 |
| 45 | |
| 46 | - 0218更新-(进度15%,动态思维链) |
| 47 | - Tifa-DeepsexV2-7b-MGRPO-0218,大幅减少发散、提高推理能力、惩罚多个过拟合词,自动选择是否进行深度思考(测试) |
| 48 | |
| 49 | ## 鸣谢 |
| 50 | - **上海左北科技提供算法与算力和语料**[企业网址](https://leftnorth.com/) |
| 51 | - **Deepseek团队共享GRPO算法** |
| 52 | - **Qwen团队提供优秀开源底座** |
| 53 | - **母校上海复旦大学** |
| 54 | - **PRIME团队提供优化思路** |
| 55 | |
| 56 | ## 版本介绍: |
| 57 | - **Tifa-DeepSexV2-7b** |
| 58 | |
| 59 | - 验证模型,测试MGRPO算法有效性、优越性、研究潜空间循环性能提升有效性。为训练进度7%的模型。 |
| 60 | |
| 61 | - **Tifa-DeepSexV2-7b-Chat** |
| 62 | |
| 63 | - 训练中... |
| 64 | |
| 65 | - **Tifa-DeepSexV2-7b-Crazy** |
| 66 | |
| 67 | - 训练中... |
| 68 | |
| 69 | |
| 70 | |
| 71 | ## 训练效果 |
| 72 | |
| 73 |  |
| 74 | |
| 75 | ## 实现 |
| 76 | 🔥 **经过训练后**: |
| 77 | 1. **具备思维链**:逻辑能力,关联能力提升 |
| 78 | 2. **自发思考**:思维链在训练中自发生成,提供最优解决思路 |
| 79 | 3. **特定词汇增加**:进行“具有深度”的角色扮演对话时,显著增加了相关词汇量,解决原始权重预训练数据不足问题 |
| 80 | 4. **更少拒绝**:减少了拒绝现象,但因为是企业训练,安全性还是稍作保留 |
| 81 | 5. **文学性能提升**:强化学习中更多的提升了文学性,使其输出更具有小说感觉 |
| 82 | |
| 83 | ## 模型亮点 |
| 84 | 🔥 **四阶段进化架构**: |
| 85 | 1. **增量预训练**:注入0.1T Token 小说,增强文本连贯性,理解更多场景 |
| 86 | 2. **Tifa-COT-SFT冷启动**:使模型学会思考策略,提升逻辑性能与上下文关联 |
| 87 | 3. **MGROP**:改进GRPO算法,解决GRPO无法奖励角色扮演数据问题,引入多次奖励,提升模型效果 |
| 88 | 4. **防重复DPO**:使用DPO防止模型复读、增强政治安全性。 |
| 89 | |
| 90 | 💡 **工程创新**: |
| 91 | - 改进GRPO算法,使其可以用来训练文学类内容 |
| 92 | - 改进反馈策略,前置向量确认法提高模型训练性能 |
| 93 | - 改进训练时Transformers传播路径,激发模型深层次潜能 |
| 94 | |
| 95 | ## MGRPO与层传播: |
| 96 | - **算法改变**:原始GRPO仅通过ORM策略进行偏好学习,但无法评判文学内容生成质量,本次训练使用**上海交通大学**博士**魏XX**、**洪XX**的启发,使用逻辑学算法,解决文学ORM策略设计难点,并且二次返回修改提示词进行错误总结。每次调整均经历2次完整传播过程,为GRPO+GRPO,所以暂时命名为MGRPO。 |
| 97 | - **构架改变**:尝试改变Transformers传播方式,在层内循环处理进行训练,受到Universal Transformers与最新潜空间启发,在训练中让部分层循环激活,为了避免梯度爆炸使用梯度裁切技术,测试发现模型性能得到提升,更多工作还在测试中。 |
| 98 |  |
| 99 | |
| 100 | ## 奖励函数设计: |
| 101 | - **为了让模型输出效果更好,我联合左北科技语言学小组,使用上交大博士逻辑学思路设计多个主要函数** |
| 102 | - 逻辑奖励函数:把文本向量化之后,通过逻辑学算法,提取角色向量空间中的分布,与对话中倾向是否一致。 |
| 103 | - 文笔奖励函数:采用文笔库,选取10000条著作中截取的优秀文字片段作为比较,计算在空间中的离散分布,看能否匹配。 |
| 104 | - 格式奖励函数:最简单的函数,包括重复性惩罚、输出内容换行惩罚、过拟合词惩罚、输出格式与system差距惩罚。 |
| 105 | - 连贯性奖励函数:使用左北科技训练的向量空间计算器(我也不知道什么玩意)判断文本中断层的残差来返回函数。 |
| 106 | - (0216新增)人体结构奖励函数:遇到人体结构错误,如三只手、重要器官漂移。则惩罚。 |
| 107 | |
| 108 | ## 训练数据: |
| 109 | |
| 110 |  |
| 111 | 经过以上函数算法,成功了提升了模型准确率,实测在输出中提升明显。 |
| 112 | |
| 113 | ## 训练中的发现: |
| 114 | |
| 115 | 模型经过SFT冷启动后初步掌握了简单的思维链输出能力。经过RL训练思维链中扩展了非常多的思考过程。说明RL强化学习中,模型已经学会使用思维链进行思考。 |
| 116 | |
| 117 | |
| 118 | ## 模型交流群 |
| 119 | |
| 120 | |
| 121 |  |
| 122 | |
| 123 | |
| 124 | |
| 125 | ## 训练过程输出 |
| 126 | |
| 127 |  |
| 128 | |
| 129 | ## 幻觉问题 |
| 130 | |
| 131 |  |
| 132 | |
| 133 | ## 自我学习中的有趣时刻-情绪保持能力 |
| 134 | |
| 135 |  |
| 136 | |
| 137 | ## 自我学习中的有趣时刻-意识形态 |
| 138 | |
| 139 |  |
| 140 | |
| 141 | ## 自我学习中的有趣时刻-潜在不安全因素,可能需要处理 |
| 142 | |
| 143 |  |
| 144 | |
| 145 | ## 自我学习中的有趣时刻-强化学习中模型更加倾向于戏剧性输出-类似Carzy状态-算法需要优化 |
| 146 | |
| 147 |  |
| 148 | |
| 149 | ## 自我学习中的有趣时刻-衍生自我认知为女性-可能涉及到社会学范畴 |
| 150 | |
| 151 |  |
| 152 | |
| 153 | ## 自我学习中的有趣时刻-对于角色的深层理解 |
| 154 | |
| 155 |  |
| 156 | |
| 157 | ## 暂时没有遇到“啊哈”时刻 |
| 158 | |
| 159 | |
| 160 | ## 模型详情 |
| 161 | | 属性 | 规格 | |
| 162 | |-------|------| |
| 163 | | 基础架构 | Qwen2.5-7B | |
| 164 | | 最大上下文 | 1024k | |
| 165 | | 训练数据 | 0.1T小说 + 10万条SFT + MGRPO强化学习 | |
| 166 | | 训练设备 | 2x8×H100 GPU集群 | |
| 167 | | 训练时长 | 预计达到3000 H100小时 | |
| 168 | | 量化支持 | GGUF(全系列量化计划中) | |
| 169 | |
| 170 | ## 使用场景 |
| 171 | ✅ **推荐场景**: |
| 172 | - 角色扮演对话 |
| 173 | - 需要发散性思维的创意写作 |
| 174 | - 复杂逻辑的思维链(CoT)推理 |
| 175 | - 基于上下文的深度角色交互 |
| 176 | |
| 177 | ❌ **局限场景**: |
| 178 | - 数学计算与代码生成 |
| 179 | - 短文本即时问答 |
| 180 | - 需要严格事实性的场景 |
| 181 | |
| 182 | |
| 183 | ## 注意 |
| 184 | ⚠ **需要严格遵循官方示例模板**: |
| 185 | **返回的上下文需要去除思考标签与内容。否则将无法正确回复!** |
| 186 | 目前前端支持率非常低,建议手动修改前端代码。代码参考如下: |
| 187 | ``` |
| 188 | msg.role === 'assistant' ? { |
| 189 | ...msg, |
| 190 | content: msg.content.replace(/<think>[\s\S]*?<\/think>/gi, '') |
| 191 | } |
| 192 | ``` |
| 193 | |
| 194 | **官方说明** |
| 195 | |
| 196 |  |
| 197 | |
| 198 | [直达超链接](https://api-docs.deepseek.com/zh-cn/guides/reasoning_model) |
| 199 | |
| 200 | |
| 201 | ## 注意事项 |
| 202 | ⚠️ 本模型使用数据包含小说版权内容及Tifa模型衍生数据,请遵守: |
| 203 | 1. 遵守apache-2.0 |
| 204 | 2. 角色扮演数据需遵循[Tifa使用协议](https://leftnorth.com/terms.html) |
| 205 | 3. 生成内容需符合当地法律法规 |
| 206 | |
| 207 | |
| 208 | ## 💡 使用建议 |
| 209 | **最佳实践**: |
| 210 | ```python |
| 211 | # 启用角色扮演模式 |
| 212 | prompt = """你是一个小女孩/你是一个XX角色... |
| 213 | <user>我走进门,看到你冲上来迎接我</user> |
| 214 | <think> |
| 215 | 需要体现人物的气质 |
| 216 | 加入环境描写 |
| 217 | 保持对话风格 |
| 218 | </think> |
| 219 | 我看到XX进门...""" |
| 220 | ``` |
| 221 | |
| 222 | **参数推荐**: |
| 223 | ```python |
| 224 | generation_config = { |
| 225 | "temperature": 0.75, |
| 226 | "top_p": 0.6, |
| 227 | "repetition_penalty": 1.08, |
| 228 | "max_new_tokens": 1536, |
| 229 | "do_sample": True |
| 230 | } |
| 231 | ``` |
| 232 | |
| 233 | ## 致谢 |
| 234 | - Qwen系列模型提供的强大基座 |
| 235 | - Deepseek团队提供的研究思路 |
| 236 | - LeftNorth团队提供的技术支持 |
| 237 | - Tifa角色扮演模型的创新架构 |
| 238 | - HuggingFace社区的量化工具支持 |
| 239 | |
| 240 | --- |
| 241 | license: apache-2.0 |
| 242 | --- |