模型:

facebook/opt-iml-30b

英文

OPT-IML

模型说明

OPT-IML (OPT + Instruction Meta-Learning) 是一组针对 OPT 进行了指令调整的版本,在 OPT-IML Bench(一个收集了来自8个 NLP 基准测试的约2000个 NLP 任务的集合)上训练得到。

我们提供了两个模型版本:

  • OPT-IML 通过训练1500个任务并有一些任务保留用于下游评估。
  • OPT-IML-Max 在所有约2000个任务上进行了训练。

使用方法

对于像这样的大型 OPT 模型,不建议使用文本生成流程,因为我们应该在加载模型时使用半精度来加速生成并优化GPU上的内存消耗。推荐直接调用 generate 方法如下:

>>> from transformers import AutoModelForCausalLM, AutoTokenizer
>>> import torch

>>> model = AutoModelForCausalLM.from_pretrained("facebook/opt-iml-30b", torch_dtype=torch.float16).cuda()

>>> # the fast tokenizer currently does not work correctly
>>> tokenizer = AutoTokenizer.from_pretrained("facebook/opt-iml-30b", use_fast=False)

>>> prompt = "What is the color of a carrot?\nA:"

>>> input_ids = tokenizer(prompt, return_tensors="pt").input_ids.cuda()

>>> generated_ids = model.generate(input_ids)

>>> tokenizer.batch_decode(generated_ids, skip_special_tokens=True)

局限性和偏见

尽管 OPT-IML 模型在广泛的评估中优于基线 OPT,但它们仍然容易受到使用大型语言模型的各种风险的影响,包括事实正确性、生成有害语言和强化刻板印象。虽然我们发布 OPT-IML 模型以促进未来关于指令调整的工作,并提高可用的大型指令调整因果语言模型,但使用这些模型应遵循负责任的最佳实践。

训练数据

OPT-IML 模型是在 OPT-IML Bench 上训练的,该基准测试是针对指令元学习(IML)的一个大型基准测试,其中包含了来自8个现有基准测试的2000个 NLP 任务,包括 Super-NaturalInstructions、FLAN、PromptSource 等。

训练过程

文本使用GPT2字节级版本的字节对编码(BPE)进行标记化(针对Unicode字符),词汇表大小为50272。输入是连续2048个标记的序列。

30B 模型在64个40GB的A100 GPU上进行微调。在微调过程中,模型大约观察了20亿个标记,这只是 OPT 预训练预算的0.6%。

BibTeX入口和引用信息

@misc{iyer2022opt,
      title={OPT-IML: Scaling Language Model Instruction Meta Learning through the Lens of Generalization}, 
      author={Iyer, Srinivasan and Lin, Xi Victoria and Pasunuru, Ramakanth and Mihaylov, Todor and Simig, D{\'a}niel and Yu, Ping and Shuster, Kurt and Wang, Tianlu and Liu, Qing and Koura, Punit Singh and others},
      year={2022},
      eprint={2212.12017},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}