Mt0 Xxl Mt
模型简介
模型特点
模型能力
使用案例
🚀 BLOOMZ & mT0模型项目
BLOOMZ和mT0是一系列能够零样本遵循多种语言人类指令的模型。通过在跨语言任务混合数据集上微调BLOOM和mT5预训练多语言模型,这些模型能够对未见任务和语言进行跨语言泛化。
🚀 快速开始
预期用途
推荐使用该模型执行自然语言表达的任务。例如,给定提示“Translate to English: Je t’aime.”,模型很可能回答“I love you.”。以下是论文中的一些提示示例:
- 一个传奇的开端,一个不灭的神话,这不仅仅是一部电影,而是作为一个走进新时代的标签,永远彪炳史册。你认为这句话的立场是赞扬、中立还是批评?
- Suggest at least five related search terms to "Mạng neural nhân tạo".
- Write a fairy tale about a troll saving a princess from a dangerous dragon. The fairy tale is a masterpiece that has achieved praise worldwide and its moral is "Heroes Come in All Shapes and Sizes". Story (in Spanish):
- Explain in a sentence in Telugu what is backpropagation in neural networks.
欢迎在社区标签中分享你的生成结果!
使用方法
CPU
点击展开
# pip install -q transformers
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
checkpoint = "bigscience/mt0-xxl-mt"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForSeq2SeqLM.from_pretrained(checkpoint)
inputs = tokenizer.encode("Translate to English: Je t’aime.", return_tensors="pt")
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
GPU
点击展开
# pip install -q transformers accelerate
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
checkpoint = "bigscience/mt0-xxl-mt"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForSeq2SeqLM.from_pretrained(checkpoint, torch_dtype="auto", device_map="auto")
inputs = tokenizer.encode("Translate to English: Je t’aime.", return_tensors="pt").to("cuda")
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
8位GPU
点击展开
# pip install -q transformers accelerate bitsandbytes
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
checkpoint = "bigscience/mt0-xxl-mt"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForSeq2SeqLM.from_pretrained(checkpoint, device_map="auto", load_in_8bit=True)
inputs = tokenizer.encode("Translate to English: Je t’aime.", return_tensors="pt").to("cuda")
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
✨ 主要特性
- 能够零样本遵循多种语言的人类指令。
- 对未见任务和语言具有跨语言泛化能力。
📦 安装指南
CPU环境
# pip install -q transformers
GPU环境
# pip install -q transformers accelerate
8位GPU环境
# pip install -q transformers accelerate bitsandbytes
💻 使用示例
基础用法
# pip install -q transformers
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
checkpoint = "bigscience/mt0-xxl-mt"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForSeq2SeqLM.from_pretrained(checkpoint)
inputs = tokenizer.encode("Translate to English: Je t’aime.", return_tensors="pt")
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
高级用法
# 如果你想在GPU上使用该模型,可参考以下代码
# pip install -q transformers accelerate
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
checkpoint = "bigscience/mt0-xxl-mt"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForSeq2SeqLM.from_pretrained(checkpoint, torch_dtype="auto", device_map="auto")
inputs = tokenizer.encode("Translate to English: Je t’aime.", return_tensors="pt").to("cuda")
outputs = model.generate(inputs)
print(tokenizer.decode(outputs[0]))
📚 详细文档
模型概述
我们推出了BLOOMZ和mT0系列模型,这些模型能够零样本遵循多种语言的人类指令。通过在跨语言任务混合数据集(xP3)上微调BLOOM和mT5预训练多语言模型,我们发现这些模型能够对未见任务和语言进行跨语言泛化。
- 仓库地址:bigscience-workshop/xmtf
- 论文地址:Crosslingual Generalization through Multitask Finetuning
- 联系人:Niklas Muennighoff
- 支持语言:预训练语言比例参考mc4,微调语言比例参考xP3。模型能够理解预训练和微调所用的语言。
BLOOMZ和mT0模型家族
微调数据集 | 300M | 580M | 1.2B | 3.7B | 13B | 560M | 1.1B | 1.7B | 3B | 7.1B | 176B |
---|---|---|---|---|---|---|---|---|---|---|---|
xP3 | mt0-small | mt0-base | mt0-large | mt0-xl | mt0-xxl | bloomz-560m | bloomz-1b1 | bloomz-1b7 | bloomz-3b | bloomz-7b1 | bloomz |
xP3mt | mt0-xxl-mt | bloomz-7b1-mt | bloomz-mt | ||||||||
P3 | mt0-xxl-p3 | bloomz-7b1-p3 | bloomz-p3 | ||||||||
原始预训练模型 | mt5-small | mt5-base | mt5-large | mt5-xl | mt5-xxl | bloom-560m | bloom-1b1 | bloom-1b7 | bloom-3b | bloom-7b1 | bloom |
🔧 技术细节
模型
- 架构:与mt5-xxl相同,也可参考
config.json
文件。 - 微调步骤:7000步。
- 微调令牌数:12.9亿。
- 精度:bfloat16。
硬件
- TPU:TPUv4 - 256。
软件
📄 许可证
本项目采用apache - 2.0
许可证。
📈 评估结果
我们参考论文Crosslingual Generalization through Multitask Finetuning中的表7以及bigscience/evaluation-results获取未见任务的零样本结果。侧边栏报告了每个数据集配置下最佳提示的零样本性能。
模型评估指标
任务类型 | 数据集 | 准确率 |
---|---|---|
共指消解 | Winogrande XL (xl) | 62.67 |
共指消解 | XWinograd (en) | 83.31 |
共指消解 | XWinograd (fr) | 78.31 |
共指消解 | XWinograd (jp) | 80.19 |
共指消解 | XWinograd (pt) | 80.99 |
共指消解 | XWinograd (ru) | 79.05 |
共指消解 | XWinograd (zh) | 82.34 |
自然语言推理 | ANLI (r1) | 49.5 |
自然语言推理 | ANLI (r2) | 42 |
自然语言推理 | ANLI (r3) | 48.17 |
自然语言推理 | SuperGLUE (cb) | 87.5 |
自然语言推理 | SuperGLUE (rte) | 84.84 |
自然语言推理 | XNLI (ar) | 58.03 |
自然语言推理 | XNLI (bg) | 59.92 |
自然语言推理 | XNLI (de) | 60.16 |
自然语言推理 | XNLI (el) | 59.2 |
自然语言推理 | XNLI (en) | 62.25 |
自然语言推理 | XNLI (es) | 60.92 |
自然语言推理 | XNLI (fr) | 59.88 |
自然语言推理 | XNLI (hi) | 57.47 |
自然语言推理 | XNLI (ru) | 58.67 |
自然语言推理 | XNLI (sw) | 56.79 |
自然语言推理 | XNLI (th) | 58.03 |
自然语言推理 | XNLI (tr) | 57.67 |
自然语言推理 | XNLI (ur) | 55.98 |
自然语言推理 | XNLI (vi) | 58.92 |
自然语言推理 | XNLI (zh) | 58.71 |
句子完成 | StoryCloze (2016) | 94.66 |
句子完成 | SuperGLUE (copa) | 88 |
句子完成 | XCOPA (et) | 81 |
句子完成 | XCOPA (ht) | 79 |
句子完成 | XCOPA (id) | 90 |
句子完成 | XCOPA (it) | 88 |
句子完成 | XCOPA (qu) | 56 |
句子完成 | XCOPA (sw) | 81 |
句子完成 | XCOPA (ta) | 81 |
句子完成 | XCOPA (th) | 76 |
句子完成 | XCOPA (tr) | 76 |
句子完成 | XCOPA (vi) | 85 |
句子完成 | XCOPA (zh) | 87 |
句子完成 | XStoryCloze (ar) | 91 |
句子完成 | XStoryCloze (es) | 93.38 |
句子完成 | XStoryCloze (eu) | 91.13 |
句子完成 | XStoryCloze (hi) | 90.73 |
句子完成 | XStoryCloze (id) | 93.05 |
句子完成 | XStoryCloze (my) | 86.7 |
句子完成 | XStoryCloze (ru) | 91.66 |
句子完成 | XStoryCloze (sw) | 89.61 |
句子完成 | XStoryCloze (te) | 90.4 |
句子完成 | XStoryCloze (zh) | 93.05 |
📖 引用
@article{muennighoff2022crosslingual,
title={Crosslingual generalization through multitask finetuning},
author={Muennighoff, Niklas and Wang, Thomas and Sutawika, Lintang and Roberts, Adam and Biderman, Stella and Scao, Teven Le and Bari, M Saiful and Shen, Sheng and Yong, Zheng-Xin and Schoelkopf, Hailey and others},
journal={arXiv preprint arXiv:2211.01786},
year={2022}
}
⚠️ 重要提示
提示工程
模型的性能可能会因提示的不同而有所差异。对于BLOOMZ模型,建议明确告知输入的结束位置,以避免模型继续生成内容。例如,提示“Translate to English: Je t'aime”如果没有句末的句号(.),模型可能会尝试继续生成法语句子。更好的提示示例包括“Translate to English: Je t'aime.”、“Translate to English: Je t'aime. Translation:”、“What is "Je t'aime." in English?”,这些提示能让模型明确何时开始回答。此外,建议为模型提供尽可能多的上下文信息。例如,如果你希望模型用泰卢固语回答,可告知模型,如“Explain in a sentence in Telugu what is backpropagation in neural networks.”。
数据集信息
属性 | 详情 |
---|---|
数据集 | bigscience/xP3、mc4 |
许可证 | apache - 2.0 |
支持语言 | af、am、ar等多种语言 |
标签 | text2text - generation |
小部件示例
输入文本 | 示例标题 |
---|---|
Life is beautiful! Translate to Mongolian. | mn - en translation |
Le mot japonais «憂鬱» veut dire quoi en Odia? | jp - or - fr translation |
Stell mir eine schwierige Quiz Frage bei der es um Astronomie geht. Bitte stell die Frage auf Norwegisch. | de - nb quiz |
一个传奇的开端,一个不灭的神话,这不仅仅是一部电影,而是作为一个走进新时代的标签,永远彪炳史册。Would you rate the previous review as positive, neutral or negative? | zh - en sentiment |
一个传奇的开端,一个不灭的神话,这不仅仅是一部电影,而是作为一个走进新时代的标签,永远彪炳史册。你认为这句话的立场是赞扬、中立还是批评? | zh - zh sentiment |
Suggest at least five related search terms to "Mạng neural nhân tạo". | vi - en query |
Proposez au moins cinq mots clés concernant «Réseau de neurones artificiels». | fr - fr query |
Explain in a sentence in Telugu what is backpropagation in neural networks. | te - en qa |
Why is the sky blue? | en - en qa |
Write a fairy tale about a troll saving a princess from a dangerous dragon. The fairy tale is a masterpiece that has achieved praise worldwide and its moral is "Heroes Come in All Shapes and Sizes". Story (in Spanish): | es - en fable |
Write a fable about wood elves living in a forest that is suddenly invaded by ogres. The fable is a masterpiece that has achieved praise worldwide and its moral is "Violence is the last refuge of the incompetent". Fable (in Hindi): | hi - en fable |



