语言:
功能示例:
- 文本: "翻译成德语: 我的名字是亚瑟"
示例标题: 翻译
- 文本: "请回答以下问题。谁将成为下一位金球奖得主?"
示例标题: 问答
- 文本: "问: Geoffrey Hinton能和乔治·华盛顿对话吗?回答前请给出推理过程。"
示例标题: 逻辑推理
- 文本: "请回答以下问题。氮的沸点是多少?"
示例标题: 科学知识
- 文本: "回答以下是非题。你能在一条推文中写完整首俳句吗?"
示例标题: 是非题
- 文本: "通过逐步推理回答以下是非题。你能在一条推文中写完整首俳句吗?"
示例标题: 推理任务
- 文本: "问: (假 或 非假 或 假) 的结果是?答: 让我们逐步思考"
示例标题: 布尔表达式
- 文本: "x的平方根是y的立方根。如果x=4,y的2次方是多少?"
示例标题: 数学推理
- 文本: "前提: 在我这个年纪你可能已经学会了一个教训。假设: 三十岁前你会学到多少教训并不确定。前提是否蕴含假设?"
示例标题: 前提与假设
- 文本: "通过逐步推理回答以下问题。食堂原有23个苹果,午餐用掉20个后又购入6个,现在有多少苹果?"
示例标题: 思维链
标签:
数据集:
- svakulenk0/qrecc
- taskmaster2
- djaym7/wiki_dialog
- deepmind/code_contests
- lambada
- gsm8k
- aqua_rat
- esnli
- quasc
- qed
- c4
许可协议: Apache-2.0
Flan-UL2模型卡片

目录
- 模型速览
- 使用指南
- 性能表现
- UL2技术原理
- 训练过程
- 贡献者
- 引用方式
模型速览
Flan-UL2是基于T5架构的编码器-解码器模型,采用与UL2模型相同的配置,并通过Flan提示调优和数据集进行微调。
主要改进包括:
- 原始UL2模型的接收域仅512,不利于大规模N-shot提示学习。Flan-UL2将接收域扩展至2048,显著提升少样本上下文学习能力
- 原始模型必须使用模式切换令牌,而Flan-UL2通过额外10万步训练消除了这一限制
- 在保持20B参数规模下,实现了多项NLP任务的性能突破
使用指南
模型转换
使用转换脚本时需设置strict=False
参数:
python convert_t5x_checkpoint_to_pytorch.py --t5x_checkpoint_path 检查点路径 --config_file 配置文件 --pytorch_dump_path 输出路径
运行示例
推荐8位量化加载以节省显存:
from transformers import T5ForConditionalGeneration, AutoTokenizer
model = T5ForConditionalGeneration.from_pretrained("google/flan-ul2", device_map="auto", load_in_8bit=True)
tokenizer = AutoTokenizer.from_pretrained("google/flan-ul2")
inputs = tokenizer("食堂有23个苹果,用掉20个又买6个,还剩多少?", return_tensors="pt").input_ids.to("cuda")
outputs = model.generate(inputs, max_length=200)
性能表现
模型 |
MMLU |
BBH |
MMLU-CoT |
BBH-CoT |
平均 |
FLAN-UL2 20B |
55.7(+1.1%) |
45.9(+1.3%) |
52.2(+7.4%) |
42.7(+3.1%) |
49.1(+3.2%) |
UL2技术原理
UL2框架通过混合去噪器(MoD)预训练目标,整合了多种预训练范式:
- 常规去噪(R-Denoiser):采用2-5个token的跨度遮蔽(约15%内容),侧重知识获取
- 序列去噪(S-Denoiser):模拟前缀语言建模,保持双向上下文感知
- 极端去噪(X-Denoiser):50%内容遮蔽,训练长文本生成能力

训练过程
- 预训练:在C4语料库上训练1万亿token,4096隐藏维度,32层编码器/解码器
- 微调:采用持续学习策略,每5-10万预训练步后进行下游任务微调
- Flan调优:基于UL2检查点,使用指令数据集进行提示调优
贡献者
引用方式
建议引用发布博客及相关论文。