英文

? ? Flan-Alpaca: 人类和机器的指令调整

? 我们通过在Flan集合上对Vicuna-13B进行微调开发了Flacuna。Flacuna在解决问题方面比Vicuna更好。在这里访问模型 https://huggingface.co/declare-lab/flacuna-13b-v1.0

? 想要了解 ? ? Flan-Alpaca 在大规模LLM评估基准InstructEval上的性能吗?阅读我们的论文 https://arxiv.org/pdf/2306.04757.pdf 。我们评估了超过10个开源的指令调整LLM,包括Pythia、LLaMA、T5、UL2、OPT和Mosaic。代码和数据集: https://github.com/declare-lab/instruct-eval

? FLAN-T5 在文本到音频生成方面也很有用。如果你有兴趣,可以在这里找到我们的工作 https://github.com/declare-lab/tango

我们的 repository 包含了将合成指令调整扩展到现有的指令调整模型(如 Flan-T5 )的代码。我们要感谢 Joao Gante !我们还在 declare-lab/flan-eval 对许多指令调整模型进行基准测试。我们的预训练模型在HuggingFace ?上完全可用:

Model Parameters Instruction Data Training GPUs
12311321 220M 12312321 , 12313321 1x A6000
12314321 770M 12312321 , 12313321 1x A6000
12317321 3B 12312321 , 12313321 1x A6000
12320321 11B 12312321 , 12313321 4x A6000 (FSDP)
12323321 3B 12312321 , 12325321 1x A6000
12326321 3B 12312321 , 12328321 / 12329321 1x A6000
12330321 3B 12312321 , 12332321 1x A6000

*推荐使用以获得更好性能

为什么?

Alpaca 代表了一个令人兴奋的新方向,可以以廉价且便捷的方式近似评估像ChatGPT这样的大型语言模型(LLMs)。具体来说,它们利用像GPT-3这样的LLM来生成指令作为合成训练数据。这些覆盖50,000多个任务的合成数据可以用于微调较小的模型。然而,由于底层 LLaMA 模型的许可限制,原始实现不太易于访问。此外,用户对合成数据集中的 potential noise 问题也表达了关注。因此,更好的做法可能是探索一个已经在高质量(但没有那么多样化)指令上进行训练的完全可访问的模型,如 Flan-T5

使用方法

from transformers import pipeline

prompt = "Write an email about an alpaca that likes flan"
model = pipeline(model="declare-lab/flan-alpaca-gpt4-xl")
model(prompt, max_length=128, do_sample=True)

# Dear AlpacaFriend,
# My name is Alpaca and I'm 10 years old.
# I'm excited to announce that I'm a big fan of flan!
# We like to eat it as a snack and I believe that it can help with our overall growth.
# I'd love to hear your feedback on this idea. 
# Have a great day! 
# Best, AL Paca