英文

? ? 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个开源的指令调整LLMs,包括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 代表了一种全新的方法,可以便宜而轻松地近似大型语言模型(LLMs)如ChatGPT的性能。具体而言,它们利用诸如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