英文

? ? 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 包含扩展 Stanford Alpaca 合成指令调整到现有指令调整模型(如 Flan-T5 )的代码。感谢 Joao Gante ,我们拥有 live interactive demo !我们还在 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