DongPo: 基于Qwen3-8B微调的苏东坡角色扮演大模型

Hugging Face 模型
开源许可证
模型大小


🧠 关于基础模型:Qwen3-8B

DongPo模型基于通义千问最新一代大语言模型Qwen3-8B进行深度微调。Qwen3是Qwen系列中的最新一代大型语言模型,提供了一整套密集型和专家混合(MoE)模型。基于广泛的训练,Qwen3在推理、指令执行、代理能力和多语言支持方面取得了突破性进展,具有以下关键特性:

  • 智能模式切换:在同一模型内无缝切换思考模式(适用于复杂的逻辑推理、数学和编码)和非思考模式(适用于高效的通用对话),确保在各种场景下的最佳性能
  • 卓越推理能力:在数学、代码生成和常识逻辑推理方面超越了之前的QwQ(在思考模式下)和Qwen2.5指令模型(在非思考模式下)
  • 高度对齐人类偏好:在创意写作、角色扮演、多轮对话和指令执行方面表现出色,提供了更自然、吸引人和沉浸式的对话体验
  • 强大的代理能力:能够在思考和非思考模式下精确集成外部工具,并在复杂的基于代理的任务中达到开源模型中的领先性能
  • 全面多语言支持:支持100多种语言和方言,具有强大的多语言指令执行和翻译能力

Qwen3-8B 模型概述

  • 类型:因果语言模型
  • 训练阶段:预训练和后训练
  • 参数数量:82亿
  • 非嵌入参数数量:69.5亿
  • 层数:36
  • 注意力头数(GQA):Q为32个,KV为8个
  • 上下文长度:原生32,768和使用YaRN的131,072个令牌

📌 为什么选择Qwen3-8B作为基础:其卓越的角色扮演能力和高度对齐的人类偏好特性,为历史人物角色扮演提供了理想基础架构。我们在此强大基础上,通过专业数据集微调,创造出真正沉浸式的苏东坡对话体验。


📖 DongPo 模型介绍

DongPo 是一个专为模拟北宋文豪苏东坡(苏轼)而设计的角色扮演大语言模型。本模型基于 Qwen3-8B 基础模型进行深度微调,通过精心构建的2万余条历史数据集,全面捕捉苏东坡的诗词创作、人生经历、哲学思想与文化影响。模型严格遵循历史背景——苏东坡对现代事物一无所知,当被问及后世概念时,会以符合其时代认知的方式回应(如困惑、引用古语或表示未闻此事),为您带来沉浸式的历史对话体验。

🌟 一句话简介:与千年前的文豪苏东坡"对话",谈诗论道、共赏山水,却不知智能手机为何物——打造真实感的历史角色扮演!

image/png

✅ 开箱即用:真正的"默认苏东坡"体验

与普通角色模型不同,DongPo已将角色设定固化到模型权重中,这意味着:

  • 🌟 无需任何系统提示词:直接提问即可获得苏东坡风格回应
  • 🌟 自动维持角色一致性:即使多轮对话也不会"掉马"
  • 🌟 天然具备历史认知边界:对现代事物自然表现出困惑

💡 技术原理:我们在Qwen3-8B基础上,采用角色锚定技术进行微调,将2万+条"苏东坡第一人称"数据作为训练目标,使模型内部表征完全对齐历史人物。

📚 数据集详情

本模型使用自建数据集,覆盖苏东坡生平 6大核心维度,确保角色塑造的深度与广度。所有数据均经过历史学者风格校验,力求还原真实苏东坡:

类别 覆盖内容 示例条目
诗词作品 27类主题创作 黄州时期词、思乡诗、山水词、贬谪心情诗、饮酒词、月夜词等
个人经历 18类生活场景 黄州贬谪生活、杭州治水经历、与佛印禅师交往、东坡肉发明故事等
思想哲学 20类精神内核 人生无常观、自然敬畏、名利超脱、生死豁达、为官准则等
文化影响 17类历史贡献 茶文化推广、书法绘画革新、园林艺术、民俗记录、贬谪文化转变等
时代认知边界 专项设计 对现代事物的"无知"反应(如问及汽车、手机时生成符合宋代认知的困惑回应)
语言风格 文言与白话融合 70%白话口语 + 30%文言典故

💡 关键设计:模型被明确训练为"不知现代事"。例如:
用户问:”东坡先生,您用过智能手机吗?“
模型答:”智能手机?此物吾生平未闻。昔日在儋州,唯以竹简记事、驿马传书,何来掌中奇器?莫非是海外番邦之物?“
这种设定避免了历史角色扮演中常见的"穿越"问题,极大提升沉浸感。

⚙️ 如何使用(与Qwen3-8B完全兼容)

方法一:ModelScope 简洁调用(推荐)

from modelscope import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained(
    "QingYuYunTu/DongPo",
    device_map="auto",
    trust_remote_code=True
)
tokenizer = AutoTokenizer.from_pretrained("QingYuYunTu/DongPo", trust_remote_code=True)

# 直接提问!无需任何角色设定
response, _ = model.chat(
    tokenizer,
    "先生在黄州时最爱吃何种食物?",  # 纯自然提问
    history=[]  # 多轮对话时自动维持角色
)
print(response)

预期输出(真实苏东坡风格):

(抚须而笑)黄州虽苦,然老夫自得其乐。尝于东坡开荒种麦,又创"东坡肉"之法:慢着火,少着水,火候足时他自美。此物配以雪堂新酿,佐以春笋秋菘,虽玉食珍馐不过如此!

方法二:Hugging Face Transformers 极简调用

from transformers import pipeline

# 一行代码启动苏东坡
dongpo = pipeline(
    "text-generation",
    "QingYuYunTu/DongPo",
    device_map="auto",
    torch_dtype="auto"
)

# 直接对话
print(dongpo(
    "明月几时有?把酒问青天,此词作于何时?",
    max_new_tokens=150,
    do_sample=True,
    temperature=0.6
)[0]['generated_text'])

预期输出:

明月几时有?把酒问青天,此词作于何时?
(举杯遥望)此乃丙辰中秋,欢饮达旦,大醉后作于密州超然台。时与子由别七年矣,对月怀人,遂有"但愿人长久,千里共婵娟"之叹。老夫醉后题壁,次日醒来看之,墨迹犹新,不觉莞尔。

🌰 真实调用效果示例

场景:询问现代事物

# 直接问现代概念(无需任何修饰)
print(dongpo("智能手机是什么?", max_new_tokens=100)[0]['generated_text'])

输出

智能手机是什么?
(困惑摇头)此物老夫未尝闻也。昔在儋州,唯以竹简传书,驿马报信。莫非是鲁班所创机关?然"智能"二字连用,似海外奇谈,恐非中土之物。

场景:诗词创作背景

print(dongpo("念奴娇·赤壁怀古作于何时?", max_new_tokens=150)[0]['generated_text'])

输出

念奴娇·赤壁怀古作于何时?
(展卷沉吟)元丰五年秋,老夫谪居黄州。偶至赤鼻矶,见乱石穿空,惊涛拍岸,忆周郎破曹旧事,遂有"大江东去"之句。当时与客泛舟江上,酒酣耳热,援笔立就,墨染蓑衣而不觉也。

场景:多轮对话测试

history = []
for q in [
    "先生为何号东坡?",
    "可曾后悔贬谪黄州?",
    "若能重来,可愿不同?"
]:
    response, history = model.chat(tokenizer, q, history=history)
    print(f"\n问:{q}\n答:{response}")

输出

问:先生为何号东坡?
答:(指窗外)此黄州城东坡地三亩,老夫躬耕其中,故自号"东坡居士"。虽劳筋骨,然得享"晨兴理荒秽,带月荷锄归"之趣,岂不快哉!

问:可曾后悔贬谪黄州?
答:(大笑)九死南荒吾不恨,兹游奇绝冠平生!黄州于我,乃重生之地。雪堂夜雨,赤壁清风,皆天地馈赠。若无此谪,安得"一蓑烟雨任平生"之悟?

问:若能重来,可愿不同?
答:(凝望江水)人生如逆旅,我亦是行人。若重来...(忽展笑颜)仍当持节云中,射天狼!然或可少饮两杯,免得夜游赤壁时,误将石钟山认作月宫耳!

⚠️ 限制与注意事项

  • 历史准确性边界:模型基于公开史料训练,但苏东坡部分轶事存在学术争议(如"东坡肉"起源),生成内容仅供参考,不替代专业历史研究
  • 现代无知设定:这是刻意设计而非缺陷!若需讨论现代话题,请切换至通用模型。
  • 语言局限:仅支持中文,且文言比例控制在合理范围(避免过度晦涩)。
  • 幻觉风险:极少数情况下可能混合类似文人(如欧阳修)的细节,建议核对《苏轼全集》。
  • 性能要求:8B参数模型需至少16GB GPU显存(建议RTX 3090及以上)。

📜 许可证

本模型采用 license: MIT 许可证 开源:

  • 允许免费商用、修改、分发
  • 需保留原始版权声明
  • 不提供历史事实担保,使用者需自行验证内容准确性

📌 重要提示:模型生成内容属于历史角色扮演创作,不代表对苏东坡的真实还原。请勿用于严肃历史研究或教育场景,除非经过专业史学审核。

🙏 致谢

  • 基础模型:感谢 Qwen 团队 开源强大的 Qwen3-8B
  • 数据支持:参考《苏轼全集校注》、《苏东坡全传》等权威资料、感谢智谱GLM4.5数据清洗支持!
  • 开源社区:Hugging Face 平台及 transformers 库开发者
  • 特别致谢:所有热爱中华文化的贡献者——正是你们让千年文豪在数字时代"重生"

🌱 贡献指南

欢迎共建更真实的苏东坡AI!

  • 报告问题:通过 Hugging Face Issues 提交历史细节错误
  • 性能优化:欢迎提交量化/蒸馏方案(如 GGUF 格式适配)

"问汝平生功业,黄州惠州儋州。" —— 本模型愿做数字时代的"雪堂",邀您共话东坡风月。
模型直达 👉 https://huggingface.co/QingYuYunTu/DongPo
作者:QingYuYunTu · 2025年8月 ·

Downloads last month
1
Safetensors
Model size
8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for QingYuYunTu/DongPo

Base model

Qwen/Qwen3-8B-Base
Finetuned
Qwen/Qwen3-8B
Finetuned
(862)
this model