Spaces:
Configuration error
Configuration error
Create report.md
#5
by
liujiaxiang
- opened
report.md
ADDED
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
📊 LLM 对比实验报告
|
2 |
+
|
3 |
+
模型及类别选择 本实验选择了两种主流的中文语言生成模型:
|
4 |
+
Model A:Wenzhong-GPT2(由清华 IDEA-CCNL 团队发布,是 GPT2 的中文版本)
|
5 |
+
|
6 |
+
Model B:GPT2-Chinese(由 UER 团队发布,基于 GPT2 的中文语料微调模型)
|
7 |
+
|
8 |
+
模型用途对比简述 模型名称 发布团队 用途方向 模型体积 相对性能 Wenzhong-GPT2 IDEA-CCNL 通用中文生成 中等 较高 GPT2-Chinese UER 通用中文生成 较小 中等
|
9 |
+
|
10 |
+
选取标准与异同点分析 选取标准:能直接用于中文生成、兼容 transformers.pipeline、体积适中、部署稳定。
|
11 |
+
|
12 |
+
异同点:
|
13 |
+
|
14 |
+
相同点:二者均为 GPT2 架构,使用中文大语料进行预训练,支持自然语言生成任务。
|
15 |
+
|
16 |
+
不同点:Wenzhong 语料更丰富、语言结构更自然;UER 模型体积更小,部署速度更快。
|
17 |
+
|
18 |
+
系统实现细节 Gradio 交互界面截图
|
19 |
+
image/png
|
20 |
+
|
21 |
+
输入与输出流程图 mermaid 复制 编辑 graph TD 用户输入Prompt --> Gradio前端 Gradio前端 --> 模型A Gradio前端 --> 模型B 模型A --> 输出A 模型B --> 输出B 输出A & 输出B --> 页面展示 模型集成方式说明 每个模型被封装成单独模块(model_a.py / model_b.py),使用 Hugging Face pipeline("text-generation") 接口集成。在主程序中通过统一函数 run_all_models(prompt) 并行调用两个模型,避免重复逻辑,便于后期扩展和维护。
|
22 |
+
|
23 |
+
GRACE 评估维度定义 实验采用了 GRACE 框架中的四个维度:
|
24 |
+
维度名 中文定义 选择理由 Generalization 泛化能力,对多样输入适配性 衡量模型对开放式 prompt 的适应力 Relevance 输出与输入主题的相关性 判断生成是否贴合语义中心 Artistry 表达的自然性、文采与流畅性 用于生成类任务(如写诗、讲故事) Efficiency 推理响应速度与资源使用率 测试部署性能及运行负担
|
25 |
+
|
26 |
+
评分结果由人工打分 + 示例对比,结构如下: scores = { "Model A": [4.2, 4.5, 4.3, 3.8], "Model B": [3.9, 4.0, 4.0, 4.5] } 使用 evaluate.visualization.radar_plot 可生成雷达图。
|
27 |
+
|
28 |
+
结果与分析 输入样例及模型输出(节选) 输入 Prompt Model A 输出 Model B 输出 写一首关于春天的诗 春风轻拂柳枝绿,百花争艳报春晖…… 春天到了,阳光温柔,小草钻出泥土……
|
29 |
+
GRACE 雷达图(系统生成)
|
30 |
+
|
31 |
+
image/png
|
32 |
+
|
33 |
+
模型优劣分析 Model A(Wenzhong-GPT2):更具表达力与文采,适合对语言流畅性有要求的生成任务;
|
34 |
+
|
35 |
+
Model B(GPT2-Chinese):响应速度更快、运行开销小,适合部署场景或高频交互任务;
|
36 |
+
|
37 |
+
合作与反思
|
38 |
+
👤 同学 A 负责内容
|
39 |
+
集成 Model A(model_a.py):使用清华团队的中文 GPT 模型 IDEA-CCNL/Wenzhong-GPT2-110M,用于支持中文 prompt 的自然语言生成,显著提升模型在中文场景(如诗歌创作)中的表现。
|
40 |
+
实现 Gradio 主界面结构(app.py):构建了多选项卡布局,包括:
|
41 |
+
LLM Benchmark:生成 GRACE 雷达图(调用 evaluate.visualization.radar_plot)。
|
42 |
+
Arena:输入统一 prompt,驱动两个模型输出,进行横向对比。
|
43 |
+
Report:读取 report.md,展示完整实验文档。
|
44 |
+
设计统一接口调用逻辑:使用 pipeline 封装模型,确保运行效率与模块可维护性;使用 run_all_models(prompt) 函数将两个模型统一绑定按钮操作。
|
45 |
+
学到的内容:
|
46 |
+
|
47 |
+
掌握 Hugging Face Transformers 的 pipeline 快速集成方法;
|
48 |
+
理解中文生成模型与英文模型在 tokenizer 与输出上的显著差异;
|
49 |
+
熟悉 Gradio 的多页签界面设计、组件响应链设置方法。
|
50 |
+
遇到的困难:
|
51 |
+
|
52 |
+
中文 prompt 使用原 GPT-2 模型出现乱码,需更换为支持中文预训练的模型;
|
53 |
+
在部署到 Hugging Face Spaces 时,首次加载大型中文模型存在等待延迟问题;
|
54 |
+
evaluate.visualization.radar_plot 在某些环境需手动配置依赖与图形后端。
|
55 |
+
👤 同学 B 负责内容 集成 DistilGPT2 模型 (model_b.py)
|
56 |
+
|
57 |
+
实现 Arena 输入驱动模块(prompt + 输出框)
|
58 |
+
|
59 |
+
撰写维度说明、样例输出及最终分析内容同学 B 承担了多项关键任务:首先,完成了 Model B(DistilGPT2)的封装工作,通过使用 transformers 库中的 pipeline 函数,将 distilgpt2 模型加载为用于文本生成的管道对象,并定义了 run_model_b 函数,实现根据输入提示词生成文本,同时设定生成文本的最大长度为 100 且不采用采样策略,确保了模型在项目中的稳定运行与有效调用。
|
60 |
+
|
61 |
+
其次,主导了 Arena 模块的开发,凭借其精湛的技术能力和巧妙的架构设计思维,为模型的交互与性能测试搭建了坚实可靠的平台,使得模型在不同场景下的表现能够得到准确的测试与评估。
|
62 |
+
|
63 |
+
此外,同学 B 还负责本实验报告的撰写。在撰写过程中,以清晰的逻辑、专业的语言,对实验的目标、环境、所涉及的模型介绍、采用的评估方法、详细的实验结果、深入的结果��析以及全面的总结等内容进行了详实且准确的阐述,为整个实验过程和成果提供了清晰且完整的记录。
|
64 |
+
|
65 |
+
学到的内容:
|
66 |
+
|
67 |
+
掌握文本生成模型的输出特性差异
|
68 |
+
|
69 |
+
使用 Mermaid 绘制流程图,改进报告表达力
|
70 |
+
|
71 |
+
遇到的困难:
|
72 |
+
|
73 |
+
模型输出的稳定性不一,需调试 do_sample 与 max_length 参数
|