LongLLMLingua: Accelerating and Enhancing LLMs in Long ContextScenarios via Prompt Compression 리뷰

2026. 3. 29. 16:27·Research/MHQA (자연어 기반)

Jiang, Huiqiang, et al. "Longllmlingua: Accelerating and enhancing llms in long context scenarios via prompt compression." Proceedings of the 62nd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). 2024.

https://arxiv.org/pdf/2310.06839

Abstract

컨텍스트가 많은 상황에서 LLM을 사용한 작업은 컴퓨팅 자원이 많이 소모되며, 입력에 노이즈가 많고 lost in middle의 위치 편향 문제를 겪는다. 프롬프트 압축은 이런 문제를 일부 개선하는데, 본 논문은 기존 방식의 한계는 질문을 크게 고려하지 않기 때문이라고 한다. 따라서 LongLLMLingua는 다음과 같은 기여를 통해 위 문제들을 개선한다:(1) 질문에 초점을 맞춘 여러 압축법 (2) 문서 재정렬 (3) 문서별 압축률 조절 (4) 압축 단어 복원

 

 

Method

Question-aware Coarse-grained Compression (러프한 1차 압축)

SLM에 문서, 질문을 프롬프트로 입력해서 문서와 질문의 관련성을 의미하는 $r_k$ 점수를 얻는다. 구체적으로 [D + Q + Restrict]를 SLM에 입력해서 [Q + Restrict]에 대한 perplexity를 계산한다.

$$ r_k = -\frac{1}{N_c} \sum_{i}^{N_c} \log p(x_i^{\text{que,restrict}} | \mathbf{x}_k^{\text{doc}}), $$

  • restrict : perplexity 계산 시 NTP 외에 D-Q의 관련성을 평가하는 목적으로 추가된다.
    • 자연어 “We can get the answer to this question in the given documents”

D-Q의 유사도가 높을 때 예측 확률이 높으므로 r_k (k번째 문서의 점수)가 낮다. 일단 $r_k$ 점수로 전체 문서 중 top-n 문서를 선택하고 나머지는 압축(제거)한다.

 

Question-aware Fine-grained Compression (세밀한 2차 압축)

SLM에 (1) 문서 (2) 문서, 질문 을 프롬프트로 입력해서 얻은 perplexity 점수를 뺀 $s_i$ 점수를 얻는다. 구체적으로 [D]에서 구한 문서 perplexity와 [Q+D]에서 구한 문서 perplexity의 차이를 사용한다. 이를 본 논문에서 제안하는 contrastive perplexity라고 한다.

$$ s_i = \text{perplexity}(x_i | x_{<i}) - \text{perplexity}(x_i | x^{\text{que}}, x_{<i}) $$

이러한 특이한 perplexity를 사용하는 이유는 기존(LLMLingua)처럼 문서에 대한 perplexity만 사용하는 경우, 질문과 관련된 key information을 얻기 어렵기 때문이다. 이 경우 토큰 자체의 예측 가능성에 따라 압축이 된다. 문서, 질문을 같이 사용하는 경우에는 토큰 자체의 예측 가능성과 문서-질문의 연관성이 구분되지 않는다. 따라서 본 논문에서는 이를 뺀 메트릭을 사용하며, 아래 모의 실험에서 이 방식이 question-aware함이 확인된다.

본 모듈에서 얻게된 점수는 문서 내에서 어떤 항목을 압축할지 정하는데 사용된다.

 

Document Reranking

Coarse-grained 압축에서 얻은 top-n 문서를 $r_k$를 통해 재정렬한다. 이를 통해 lost in the middle 문제를 완화한다.

 

Dynamic Compression Ratio

$r_k$를 활용하여 문서별 압축률을 조절한다.

$$ \tau_k^{\text{doc}} = \max\left(\min\left(\left(1 - \frac{2I(r_k)}{K'}\right)\delta\tau + \tau^{\text{doc}}, 1\right), 0\right) $$

$\tau^{\text{doc}}$ 압축률을 기준으로 $\delta\tau$ 하이퍼파라미터가 압축률 폭이 되어 조절된다. 아래 그림은 $\tau^{\text{doc}}=0.5, \delta\tau=0.3$에서의 문서별 압축률 예시이다.

 

Subsequence Recovery

LLM이 생성한 결과에서 문자열 매칭을 통해 압축 시 훼손된 토큰을 복원하는 기법이다. 압축 시 토크나이저에 의해 나눠진 자연어를 LLM이 그대로 생성하여 자연어가 훼손되는 것을 방지한다.

  1. 생성 결과와 압축 프롬프트에 공통으로 존재하는 가장 긴 문자열을 찾는다.
  2. 해당 문자열에 대응하는 원본 프롬프트의 가장 짧은 연속 시퀀스를 찾는다. (ex. prefix tree)
  3. 압축으로 훼손된 단어를 원본 문자열로 치환한다.

 

Experiments

(1) LongLLMLingua가 얼마나 효과적인가, (2)LongLLMLingua가 얼마나 효율적인가 를 평가한다.

메인 실험

Single-Hop QA / Lost in the middle / Latency

  • datasets : NaturalQuestions
  • metric : Accuacy
  • SLM : LLaMA-2-7B-Chat
  • segment size : 200

오리지널 프롬프트와 비교 시 압축했음에도 성능이 오르는데, 이는 질문을 고려한 압축이 노이즈를 제거하기 때문이다. 또한 Lost in the middle도 오리지널 대비 많이 완화된다. 기존 압축 방법론과 비교 시 성능 차이가 큰데, 이는 기존 방법론이 long context에서는 적절하지 않음을 의미한다. $r_k$만 적용한 방법론에서도 비교적 성능이 높으므로 Coarse-grained 방법론의 중요성이 확인된다.

 

Multiple Task / Latency

  • datasets : LongBench
  • metric : F1 score, ROUGLE-L, Edit Similarity, Accuracy
  • SLM : LLaMA-2-7B-Chat
  • segment size : 200

오리지널 프롬프트와 비교 시 압축했음에도 전반적인 테스크에서 모두 성능이 오른다. 그리고 Retrieval-based 방식은 3000 -> 2000 토큰으로 압축을 더 많이했을 때 성능 저하가 크나, LongLLMLingua에서는 성능 저하가 적은 이점이 있다. 다른 방법론과 비교 시 성능이 높으면서도 LongLLMLingua의 속도가 매우 빠르다.

 

Ablation

Natural Questions에서의 ablation을 진행한다.

w/o Question-awareness에서 가장 성능이 감소한다. 이는 $r_k$를 생성하는 첫 단계의 Coarse-grained 방법론이 본 방법론에서 가장 중요함을 의미한다. 다음으로 성능 감소가 큰 모듈은 w/ $p(\mathbf{x}_k^{\text{doc}} | x_i^{\text{que,restrict}})$이다. 질문을 컨텍스트로 하여 문서를 예측하는 것은, 그 반대와 비교했을 때 더 어렵기 때문이다. 구체적으로는 질문에 없는 내용(노이즈)가 문서에 많기 때문이다.

 

Conclusion

기여

  • Dynamic Compression : 별도 메트릭으로 문서별 압축률을 조절
  • Conditional Perplexity : 기존의 문서 perplexity 계산 외에 질문을 반영하기 위해 새로운 perplexity 적용
    • Question-aware Perplexity, Contrastive Perplexity
  • Subsequence Recovery : 프롬프트 압축 후처리 방법

한계

  • Question-aware limit : 질문이 바뀌면 동일한 문서에 대해 다시 방법론을 적용해야함
  • Multi-document limit : 하나의 문서에 대한 perplexity를 계산하므로 Musique와 같은 복잡한 데이터셋을 사용하는 MHQA에 약함
  • Perplexity dependency : 여전히 Information Entropy 기반 예측 가능성이라는 하나의 메트릭에 의존함

'Research > MHQA (자연어 기반)' 카테고리의 다른 글

Compressing Context to Enhance Inference Efficiency of Large Language Models 리뷰  (0) 2026.03.16
DAC: A Dynamic Attention-aware Approach for Task-Agnostic Prompt Compression 리뷰  (0) 2026.03.13
Cooperative Retrieval-Augmented Generation for Question Answering: Mutual Information Exchange and Ranking by Contrasting Layers 리뷰  (0) 2026.03.06
MAGNET: Augmenting Generative Decoders with Representation Learningand Infilling Capabilities 리뷰  (0) 2026.02.28
One Token Can Help! Learning Scalable and Pluggable Virtual Tokensfor Retrieval-Augmented Large Language Models 리뷰  (0) 2026.02.23
'Research/MHQA (자연어 기반)' 카테고리의 다른 글
  • Compressing Context to Enhance Inference Efficiency of Large Language Models 리뷰
  • DAC: A Dynamic Attention-aware Approach for Task-Agnostic Prompt Compression 리뷰
  • Cooperative Retrieval-Augmented Generation for Question Answering: Mutual Information Exchange and Ranking by Contrasting Layers 리뷰
  • MAGNET: Augmenting Generative Decoders with Representation Learningand Infilling Capabilities 리뷰
dev_dev
dev_dev
.
  • dev_dev
    develop about develop
    dev_dev
  • 전체
    오늘
    어제
    • 카테고리 (172)
      • Research (13)
        • KGQA (지식그래프 기반) (4)
        • MHQA (자연어 기반) (9)
      • Develop (158)
        • C++ (44)
        • Information Retrieval (8)
        • ML DL (1)
        • on-device AI (8)
        • AIOT (9)
        • IOT (1)
        • 코딩테스트(백준) (49)
        • 코딩테스트(프로그래머스) (25)
        • 전자공학 (7)
        • 선형대수학 (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    COLAB
    머신러닝
    auto
    데이터 분석
    Template
    uniform initialization
    경사하강법
    인공지능
    decltype
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
dev_dev
LongLLMLingua: Accelerating and Enhancing LLMs in Long ContextScenarios via Prompt Compression 리뷰
상단으로

티스토리툴바