Kan Few-shot werken in lange context? Het hergebruiken van de context om demonstraties te genereren
Can Few-shot Work in Long-Context? Recycling the Context to Generate Demonstrations
June 19, 2024
Auteurs: Arie Cattan, Alon Jacovi, Alex Fabrikant, Jonathan Herzig, Roee Aharoni, Hannah Rashkin, Dror Marcus, Avinatan Hassidim, Yossi Matias, Idan Szpektor, Avi Caciularu
cs.AI
Samenvatting
Ondanks recente vooruitgang in Large Language Models (LLMs), blijft hun prestaties bij taken met lange contexten suboptimaal. In-Context Learning (ICL) met few-shot voorbeelden kan een aantrekkelijke oplossing zijn om de prestaties van LLMs in dit scenario te verbeteren. Echter, het naïef toevoegen van ICL-voorbeelden met lange context brengt uitdagingen met zich mee, waaronder een aanzienlijke token-overhead voor elk few-shot voorbeeld en een contextmismatch tussen de demonstraties en de doelquery. In dit werk stellen we voor om automatisch few-shot voorbeelden te genereren voor lange context QA-taken door contexten te recyclen. Specifiek, gegeven een lange invoercontext (1-3k tokens) en een query, genereren we aanvullende query-uitvoerparen uit de gegeven context als few-shot voorbeelden, terwijl we de context slechts één keer introduceren. Dit zorgt ervoor dat de demonstraties dezelfde context gebruiken als de doelquery, terwijl slechts een klein aantal tokens aan de prompt wordt toegevoegd. We verbeteren elke demonstratie verder door het model te instrueren om expliciet de relevante alinea's te identificeren voordat het antwoord wordt gegeven, wat de prestaties verbetert en tegelijkertijd een fijnmazige toeschrijving aan de antwoordbron biedt. We passen onze methode toe op meerdere LLMs en behalen aanzienlijke verbeteringen (+23\% gemiddeld over de modellen) op verschillende QA-datasets met lange context, vooral wanneer het antwoord in het midden van de context ligt. Verrassend genoeg, ondanks het introduceren van slechts single-hop ICL-voorbeelden, generaliseren LLMs ook succesvol naar multi-hop lange-context QA met onze aanpak.
English
Despite recent advancements in Large Language Models (LLMs), their
performance on tasks involving long contexts remains sub-optimal. In-Context
Learning (ICL) with few-shot examples may be an appealing solution to enhance
LLM performance in this scenario; However, naively adding ICL examples with
long context introduces challenges, including substantial token overhead added
for each few-shot example and context mismatch between the demonstrations and
the target query. In this work, we propose to automatically generate few-shot
examples for long context QA tasks by recycling contexts. Specifically, given a
long input context (1-3k tokens) and a query, we generate additional
query-output pairs from the given context as few-shot examples, while
introducing the context only once. This ensures that the demonstrations are
leveraging the same context as the target query while only adding a small
number of tokens to the prompt. We further enhance each demonstration by
instructing the model to explicitly identify the relevant paragraphs before the
answer, which improves performance while providing fine-grained attribution to
the answer source. We apply our method on multiple LLMs and obtain substantial
improvements (+23\% on average across models) on various QA datasets with long
context, especially when the answer lies within the middle of the context.
Surprisingly, despite introducing only single-hop ICL examples, LLMs also
successfully generalize to multi-hop long-context QA using our approach.