Language Models can Self-Lengthen to Generate Long Texts

Shanghaoran Quan, Tianyi Tang, Bowen Yu, An Yang, Dayiheng Liu +5 more
10/31/2024
cs.CL

Official code: QwenLM/Self-Lengthen (98 stars, Apache-2.0, last commit 2024-11-06).

Abstract

Recent advancements in Large Language Models (LLMs) have significantly enhanced their ability to process long contexts, yet a notable gap remains in generating long, aligned outputs. This limitation stems from a training gap where pre-training lacks effective instructions for long-text generation, and post-training data primarily consists of short query-response pairs. Current approaches, such as instruction backtranslation and behavior imitation, face challenges including data quality, copyright issues, and constraints on proprietary model usage. In this paper, we introduce an innovative iterative training framework called Self-Lengthen that leverages only the intrinsic knowledge and skills of LLMs without the need for auxiliary data or proprietary models. The framework consists of two roles: the Generator and the Extender. The Generator produces the initial response, which is then split and expanded by the Extender. This process results in a new, longer response, which is used to train both the Generator and the Extender iteratively. Through this process, the models are progressively trained to handle increasingly longer responses. Experiments on benchmarks and human evaluations show that Self-Lengthen outperforms existing methods in long-text generation, when applied to top open-source LLMs such as Qwen2 and LLaMA3. Our code is publicly available at https://github.com/QwenLM/Self-Lengthen.

View on arXivView PDF

Code Implementations(1)

Apache-2.0
9812Shell, PythonNov 1, 20241 years agoApache-2.0

Similar Papers

Cite this paper

@article{quan2024language,
  title  = {Language Models can Self-Lengthen to Generate Long Texts},
  author = {Shanghaoran Quan and Tianyi Tang and Bowen Yu and An Yang and Dayiheng Liu and Bofei Gao and Jianhong Tu and Yichang Zhang and Jingren Zhou and Junyang Lin},
  year   = {2024},
  eprint = {2410.23933},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2410.23933v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2410.23933.svg)](https://codeofpaper.com/paper/2410.23933)

Discussion