LongForm-LLaMA-7B-diff
The LongForm dataset is created by leveraging English corpus examples with reverse instructions. We select a diverse set of human-written documents from existing corpora such as C4 and Wikipedia and generate instructions for the given documents via LLMs. Then, we extend these examples with structured corpora examples such as Stack Exchange and WikiHow and task examples such as question answering, email writing, grammar error correction, story/poem generation, and text summarization.
Github Repo: https://github.com/akoksal/LongForm
For OPT and LLaMA models: Use [EOI] to indicate the end of instruction.
LongForm-T5-XL: https://huggingface.co/akoksal/LongForm-T5-XL
LongForm-OPT-2.7B: https://huggingface.co/akoksal/LongForm-OPT-2.7B
LongForm-OPT-6.7B: https://huggingface.co/akoksal/LongForm-OPT-6.7B
How to Load
We present the diff between LongForm-LLaMA-7B and LLaMA-7B because of the license constraints. Please load the pretrained 7B model, add [EOI] token, and add model weights.
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
# 1. Original LLaMA path
original_llama_path = "/mounts/data/corp/huggingface/llama/llama-7b"
# 2. Add [EOI] token to the tokenizer
tokenizer = AutoTokenizer.from_pretrained(original_llama_path)
tokenizer.add_tokens(["[EOI]"])
# 3. Add the pretrained llama with this diff
base_model = AutoModelForCausalLM.from_pretrained(original_llama_path)
base_model.resize_token_embeddings(len(tokenizer))
longform_model_diff = AutoModelForCausalLM.from_pretrained("akoksal/LongForm-LLaMA-7B-diff")
longform_model = AutoModelForCausalLM.from_pretrained("akoksal/LongForm-LLaMA-7B-diff") # will change this to the actual model
# Add diff with base model
for name, param in base_model.named_parameters():
longform_model.state_dict()[name].copy_(param + longform_model_diff.state_dict()[name])
del base_model, longform_model_diff
# 4. Example
instruction = "Write an essay about meditation. [EOI]"
torch.manual_seed(42)
input_ids = tokenizer(instruction, return_tensors="pt").input_ids
target_ids = longform_model.generate(input_ids, do_sample=True, max_new_tokens=50, top_p=0.9)
tokenizer.decode(target_ids[0], skip_special_tokens=True)
# Output:
# > Write an essay about meditation. [EOI] There are a few types of meditation\
# but it essentially involves quieting the mind. The most common form of\
# meditation is where you sit down for a period of time and focus on your\
# breathing. Your goal is to be able to observe and
Evaluation
We provide in-depth evaluation of LongForm models and baselines in the paper. We present the METEOR scores of models in out-of-domain datasets. In all tasks, Recipe Generation (RGen), long-form question answering (ELI5), short story generation (WritingPrompts/WP), LongForm models outperform prior instruction-tuned models.
All | Recipe Generation | ELI5 | Writing Prompts | |
---|---|---|---|---|
T0++ | 10.9 | 18.7 | 3.8 | 10.2 |
Tk-Instruct | 6.3 | 12.9* | 3.6 | 2.4 |
Flan-T5 | 10.6 | 20.9* | 3.5 | 7.4 |
Alpaca-LLaMA-7B | 14.6 | 19.5 | 12.5 | 11.8 |
OPT-30B | 11.1 | 18.6 | 12.2 | 2.6 |
LongForm-T5-XL | 16.3 | 20.2 | 18.3 | 10.6 |
LongForm-OPT-2.7B | 17.8 | 15.5 | 17.9 | 19.9 |
LongForm-OPT-6.7B | 17.7 | 16.9 | 17.2 | 19.0 |
LongForm-LLaMA-7B‡ | 19.7 | 21.7 | 18.6 | 18.9 |
Smaller versions of LongForm-OPT models are also available:
‡: We can just release the difference between LongForm-LLaMA-7B and pretrained LLaMA-7B publicly due to restrictions of LLaMA models.
Limitations
The LongForm dataset and models mainly focus on long text generation and have limitations regarding structured prediction tasks in NLP. Additionally, we observe that LongForm models may present hallucination problems similar to those found in LLMs.
License
The LongForm project is subject to a MIT License with custom limitations for restrictions imposed by OpenAI (for the instruction generation part), as well as the license of language models (OPT, LLaMA, and T5). The WikiHow subset of LongForm-C is subject to the license proposed by WikiHow.
Citation
@misc{koksal2023longform,
title={LongForm: Effective Instruction Tuning with Reverse Instructions},
author={Abdullatif Köksal and Timo Schick and Anna Korhonen and Hinrich Schütze},
year={2023},
eprint={2304.08460},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
- Downloads last month
- 17