상위: 02_00_MOC


위치 편향 — Lost in the Middle U자형 성능 곡선

한 줄 요지

관련 정보가 컨텍스트의 처음이나 끝에 있을 때 LLM 성능은 최고조에 달하지만, 같은 정보가 중간에 놓이면 성능이 18퍼센트포인트 이상 급락한다. 이 패턴은 긴 컨텍스트를 지원하도록 설계된 이른바 “explicitly long-context models”까지 포함해, 테스트한 모든 모델에서 똑같이 나타난다.


1. 문제의식 — 왜 위치가 중요한가

RAG(Retrieval-Augmented Generation) 파이프라인과 에이전트 워크플로가 보편화되면서 LLM에 전달되는 컨텍스트는 수만에서 수십만 토큰에 이르게 됐다. 여기에는 “컨텍스트 안에 넣어두면 모델이 알아서 찾아 쓴다”는 암묵적 가정이 깔려 있다.

2023년 Stanford와 Meta 연구팀이 발표한 “Lost in the Middle: How Language Models Use Long Contexts”(Liu et al., TACL 2024)는 이 가정을 정면으로 반박한다. 정보가 컨텍스트 안에 있더라도, 그 정보가 어디에 놓이느냐에 따라 모델의 활용 능력이 크게 달라진다는 것이다.

이는 단순한 성능 최적화 문제가 아니다. 시스템 프롬프트 설계, RAG 결과 정렬, 사용자 질문의 배치 방식 등 프롬프트 엔지니어링의 기본 관행을 다시 따져보게 만드는 발견이다.


2. 실험 설계 — 방법론 상세

2.1 연구팀 및 출판 정보

  • 저자: Nelson F. Liu, Kevin Lin, John Hewitt, Ashwin Paranjape, Michele Bevilacqua, Fabio Petroni, Percy Liang (Stanford University / Meta AI)
  • 출판처: Transactions of the Association for Computational Linguistics (TACL), 2024 (arXiv 최초 공개 2023)
  • arXiv: 2307.03172 (2023년 7월 제출)

2.2 실험 과제 (Tasks)

연구팀은 두 가지 과제를 설계했다.

과제 1: Multi-Document Question Answering (다문서 QA)

  • 여러 문서(passage) 중 정답이 든 문서의 위치를 체계적으로 바꾼다.
  • 나머지 문서는 관련 없는 산만 문서(distractor documents)로 채운다.
  • 모델은 컨텍스트 안에서 정답 문서를 찾아 질문에 답해야 한다.
  • 평가 지표는 정확도(exact match accuracy)다.

과제 2: Key-Value Retrieval (키-값 검색)

  • JSON 형태의 키-값 쌍을 컨텍스트에 배치한다.
  • 특정 키에 대응하는 값을 찾도록 요구한다.
  • 과제 자체는 단순하지만, 목표 키-값 쌍의 위치를 바꿔가며 성능 변화를 측정한다.
  • 컨텍스트 길이는 75개에서 최대 140개 키-값 쌍까지 늘린다.

2.3 독립 변수: 위치(Position)

핵심 독립 변수는 관련 정보(relevant document 또는 target key-value pair)가 컨텍스트 안에서 차지하는 위치다.

  • 위치 인덱스 0: 컨텍스트의 맨 처음
  • 중간 위치: 전체 문서 수의 절반 근처
  • 마지막 위치: 컨텍스트의 맨 끝

연구팀은 질문, 정답, 산만 문서 등 다른 조건을 모두 고정한 채 이 위치만 체계적으로 바꿨다.

2.4 테스트 모델

연구팀은 규모와 특성이 다양한 모델을 테스트했다.

  • 일반 목적 언어 모델 (GPT-3.5-Turbo, GPT-4 등 당시 최신 모델 포함)
  • explicitly long-context models: 긴 컨텍스트를 처리하도록 명시적으로 설계·훈련된 모델들

두 번째 범주를 포함한 것이 이 연구의 핵심 기여 중 하나다. “긴 컨텍스트 지원”을 내세운 모델에서도 같은 위치 편향이 나타나는지 직접 확인했기 때문이다.


3. 핵심 결과 — U자형 성능 곡선

3.1 성능 곡선의 형태

xychart-beta
    title "컨텍스트 위치별 정확도 (Multi-Document QA)"
    x-axis ["처음 (1-3)", "초반 (4-6)", "중반 (7-10)", "후반 (11-15)", "끝 (16-20)"]
    y-axis "정확도 (%)" 60 --> 95
    line [91, 82, 73, 69, 89]

위 차트는 개념을 보여주기 위한 것이고, 실제 수치는 모델과 과제에 따라 다소 차이가 난다. 핵심 패턴은 다음과 같다.

위치 구간평균 정확도비고
처음 20%~91%초두 효과 (Primacy Effect)
중간 60%~73%성능 저점
마지막 20%~88%최신 효과 (Recency Effect)
  • 중간 위치의 정확도는 처음 대비 약 18퍼센트포인트 떨어진다(letsdatascience.com, 2026, RULER 기반 수치).
  • 가장 낮은 중간 위치에서는 일부 모델의 정확도가 66%까지 내려간다.

3.2 U자형 곡선의 직접 인용

“Performance is often highest when relevant information occurs at the beginning or end of the input context, and significantly degrades when models must access relevant information in the middle of long contexts, even for explicitly long-context models.” — Liu et al., “Lost in the Middle”, TACL 2024

이 문장에서 주목할 대목은 “even for explicitly long-context models”다. 긴 컨텍스트를 처리하도록 특별히 설계한 모델조차 같은 위치 편향을 보인다는 뜻이다.

3.3 모델별 위치 편향의 보편성

graph LR
    A[일반 LLM<br/>GPT-3.5 계열] --> C[U자형 위치 편향 관찰]
    B[Long-Context 특화 모델] --> C
    C --> D[처음/끝: 최고 성능<br/>중간: 18~20%p 저하]

테스트한 모든 모델 유형에서 같은 U자형 패턴이 확인됐다. 위치 편향이 특정 모델의 결함이 아니라 당시 트랜스포머 아키텍처 전반에 깔린 구조적 특성임을 보여주는 대목이다.


4. 인간 인지와의 대응 — 초두 효과와 최신 효과

LLM의 U자형 성능 곡선은 인간 기억 연구의 고전적 발견과 놀랍도록 유사하다.

4.1 인간의 연속 위치 효과 (Serial Position Effect)

1960년대 Murdock의 자유 회상(free recall) 실험 이래, 사람도 순서 있는 목록을 기억할 때 U자형 패턴을 보인다는 사실이 정립됐다.

  • 초두 효과(Primacy Effect): 목록 앞쪽 항목은 잘 기억된다. 먼저 제시된 항목일수록 장기 기억(long-term memory)으로 넘어갈 시간을 벌기 때문이다.
  • 최신 효과(Recency Effect): 목록 마지막 항목도 잘 기억된다. 단기 기억(short-term/working memory)에 아직 남아 있어서다.
  • 중간 항목: 장기 기억으로 충분히 넘어가지도 못하고 단기 기억에서도 밀려나, 회상률이 가장 낮다.

4.2 LLM과 인간 기억의 유사성과 차이

graph TD
    subgraph 인간 기억
    A1[초두 효과<br/>장기 기억 전이]
    A2[중간 효과<br/>간섭/대체]
    A3[최신 효과<br/>단기 기억 잔존]
    end

    subgraph LLM 어텐션
    B1[처음 토큰<br/>어텐션 가중치 집중]
    B2[중간 토큰<br/>어텐션 희석]
    B3[마지막 토큰<br/>위치적 근접성]
    end

    A1 -.유사-.-> B1
    A2 -.유사-.-> B2
    A3 -.유사-.-> B3

유사점은 두 시스템 모두 순서의 처음과 끝을 특별 대우한다는 것이다.

차이점도 분명하다. 인간의 초두·최신 효과는 기억 저장 메커니즘(장기 기억과 단기 기억)의 차이에서 나오지만, LLM의 위치 편향은 어텐션 메커니즘의 구조적 특성, 사전훈련 데이터의 위치 분포 편향, 위치 인코딩 방식이 함께 만들어낸다.

이 닮음이 우연인지, 아니면 시퀀스를 다루는 시스템이라면 어디서나 겪는 보편적 제약인지는 아직 열린 질문이다.


5. 메커니즘 — 왜 중간에서 성능이 떨어지는가

5.1 어텐션 가중치 희석 (Attention Weight Dilution)

트랜스포머의 어텐션 메커니즘은 각 토큰이 다른 모든 토큰에 가중치를 할당한다. 컨텍스트 길이 N에서 레이어당 N² 쌍의 어텐션 계산이 발생한다.

실제 모델의 어텐션은 희소(sparse)하다. 상위 10% 위치가 전체 어텐션 가중치의 38%를 차지한다(letsdatascience.com, 2026). 300K 토큰 문서라면 핵심 30K 토큰에 어텐션의 95%가 쏠리는 경향이 있다.

이런 희소성은 자연스럽게 컨텍스트의 처음과 끝에 유리하게 작용한다.

  • 처음: 문서 구조상 제목, 지시문, 시스템 프롬프트 같은 핵심 정보가 몰려 있다.
  • 끝: 쿼리(질문)와 물리적으로 가까워 어텐션이 강해진다.
  • 중간: 이렇다 할 구조적 이점이 없고, 양쪽 끝 사이에서 어텐션이 희석된다.

5.2 위치 인코딩의 구조적 편향

An et al.(2024, arXiv:2410.18745)의 STRING(ShifTed Rotary position embeddING) 연구는 더 근본적인 원인을 짚는다. 사전훈련 데이터에서 단거리 위치 쌍(short-range position pair)이 장거리 쌍보다 훨씬 자주 등장한다는 점이다.

그 탓에 RoPE(Rotary Position Embedding) 같은 상대적 위치 인코딩은 근거리 토큰 관계 쪽으로 편향되어 학습된다. 결국 컨텍스트 중간의 정보는 현재 쿼리 위치에서 “멀리 있는” 것으로 처리되어 어텐션을 받기 어려워진다.

5.3 어휘 매칭 의존성 (Lexical Shortcut Dependency)

NoLiMa 연구(Modarressi et al., ICML 2025)는 질문과 정보 사이에 표면적 어휘 일치(literal matching)가 없을 때 성능이 훨씬 더 가파르게 떨어진다는 점을 보였다. 모델은 깊은 의미적 추론보다 어휘 매칭 단서에 기댄다. 중간 위치의 정보는 가뜩이나 어텐션을 받기 어려운데, 어휘 단서마저 없으면 사실상 접근 불가능에 가까워진다.


아키텍처 원인과 완화

앞선 5절이 “어텐션이 희석된다”, “중간이 멀게 처리된다”는 행동 수준(behavioral level)의 설명이었다면, 이 절은 그 행동을 만들어내는 물리 원인(physical cause), 곧 위치 인코딩과 KV 캐시 어텐션 패턴 자체를 다룬다. U자형 곡선은 표면 증상(surface symptom)이고, 그 아래에는 RoPE의 회전 기하와 어텐션 싱크(attention sink)라는 구조적 원인이 깔려 있다. 완화책도 두 계층으로 나뉜다. 하나는 프롬프트 배치(7절)라는 표면 처방이고, 다른 하나는 인코딩과 어텐션을 직접 손보는 아키텍처 처방이다.

위치 편향의 인코딩 측 뿌리는 RoPE(Rotary Position Embedding)다. RoPE는 토큰 임베딩을 위치에 비례한 각도로 회전시켜 상대 위치를 표현하는데, 사전훈련 분포에서 거의 보지 못한 큰 회전각(장거리 위치 쌍)에 대해서는 외삽(extrapolation)이 불안정하다. 위치 보간(Position Interpolation, Chen et al. 2023, arXiv:2306.15595)은 학습 길이를 넘는 위치 인덱스를 학습 범위 안으로 압축(보간)해 이 외삽 붕괴를 피한다. NTK-aware 보간과 그 확장인 YaRN(Peng et al. 2023, arXiv:2309.00071)은 RoPE의 주파수 대역별로 보간 강도를 달리 적용해, 고주파(국소 위치) 해상도를 보존하면서 저주파(장거리) 대역만 늘리는 방식으로 적은 추가 훈련으로 컨텍스트 윈도를 확장한다. 즉 위치 편향의 한 축은 RoPE 외삽 한계이고, PI/NTK/YaRN은 그 축을 직접 완화한다.

또 다른 축은 어텐션 분포 자체에 있다. StreamingLLM(Xiao et al. 2023, arXiv:2309.17453)은 트랜스포머가 의미와 무관하게 시퀀스 맨 앞 토큰에 어텐션을 과도하게 쏟는 어텐션 싱크(attention sink) 현상을 보고했다. 소프트맥스는 가중치를 어딘가로 배출해야 하는데, 모델은 초기 토큰을 그 배출구로 삼는다. 이는 5.1절의 “처음 위치가 유리하다”는 관찰, 나아가 초두 효과의 일부를 물리적으로 설명한다. StreamingLLM은 이 초기 토큰들의 KV만 고정으로 붙들어두면(sliding window + sink tokens) 추가 미세조정 없이도 최대 400만 토큰까지 성능 붕괴 없이 스트리밍할 수 있음을 보였다. 다만 이는 장문맥을 고르게 활용하도록 보장하는 게 아니라 윈도 밖으로 밀려나며 생기는 붕괴를 막는 데 그치므로, 중간 정보 손실(Lost in the Middle) 자체를 없애지는 못한다.

정리하면, 위치 편향과 장문맥 저하는 (a) RoPE 외삽 한계와 (b) 어텐션 싱크라는 두 물리 원인이 겹쳐 발생하며, PI·NTK-aware·YaRN은 (a)를, StreamingLLM은 (b)를 각각 부분 완화한다. 7절의 배치 전략이 증상을 우회하는 사용자 측 처방이라면, 이 절의 기법들은 원인을 건드리는 모델 측 처방이다. 두 계층은 상호 배타적이지 않으며, 실무에서는 함께 쓰인다.


6. 모든 모델에서 발생 — “Explicitly Long-Context Models”에서도

이 연구의 가장 중요한 기여 중 하나는 “긴 컨텍스트를 지원하도록 설계한 모델”에서도 위치 편향이 사라지지 않는다는 발견이다. 그 함의는 분명하다.

광고된 컨텍스트 길이가 곧 고르게 쓸 수 있는 컨텍스트는 아니라는 말이다.

RULER 벤치마크(Hsieh et al., COLM 2024)는 이 격차를 수치로 보여준다. 32K를 지원한다고 주장하는 모델 가운데 절반만이 실제 32K에서 만족스러운 성능을 유지한다. 모델별 실효 컨텍스트 길이는 광고 컨텍스트의 50~65% 수준에 그친다(02_04-데이터-실효-컨텍스트-길이-갭 참조).

Gemini 2.5 Pro는 1M 토큰 컨텍스트 윈도를 지원하지만, Pokémon 에이전트 실험에서는 100K 토큰부터 이미 추론 저하가 관찰됐다. 광고 길이의 10% 지점에서 에이전트 행동이 달라진 셈이다(02_02-사례-gemini-포켓몬-에이전트 참조).


7. 실천적 함의 — 프롬프트 배치 전략

Liu et al.(2023)의 발견은 직접적인 실천 가이드라인으로 이어진다.

7.1 정보 배치의 황금률

graph LR
    subgraph 컨텍스트 구조
    A["[처음] 시스템 프롬프트<br/>핵심 지시사항<br/>중요 제약조건"] --> B["[중간] 산만 문서<br/>덜 중요한 참고자료<br/>배경 정보"] --> C["[끝] RAG 검색 결과<br/>사용자 질문<br/>실행 명령"]
    end
    style A fill:#2d8a4e,color:#fff
    style B fill:#c0392b,color:#fff
    style C fill:#2d8a4e,color:#fff

중요 정보는 처음이나 끝에 둔다.

  • 처음: 시스템 프롬프트, 핵심 지시사항, 페르소나 정의, 반드시 지켜야 할 제약조건
  • 끝: 가장 관련성 높은 RAG 검색 결과, 사용자의 실제 질문, 즉각 실행할 명령
  • 중간: 배경 정보, 우선순위 낮은 참고자료, 필수가 아닌 컨텍스트

7.2 RAG 결과 정렬 전략

RAG 파이프라인에서 검색된 여러 청크(chunk)를 배치할 때는 이렇게 한다.

  1. 가장 관련성 높은 청크를 끝 근처에 둔다(recency 효과 활용).
  2. 두 번째로 관련성 높은 청크를 처음에 둔다(primacy 효과 활용).
  3. 나머지 청크는 중간에 둔다(중요도 낮은 항목을 가운데로).

이렇게 배치하면 관련성 점수 순으로 나열할 때보다 더 나은 성능을 낼 수 있다.

7.3 증거 재인용 (Evidence Recitation) 프롬프트

Du et al.(EMNLP 2025)은 모델이 답하기 전에 관련 근거를 먼저 재인용하도록 유도하는 프롬프팅 기법을 제안했다. GPT-4o RULER에서 최대 4%의 성능 개선을 보였다. 중간에 묻힌 정보를 명시적으로 “끌어내어” 현재 작업 맥락 가까이로 옮겨주는 효과를 낸다.

예시 지시문:

Before answering, first quote the relevant passage(s) from the provided documents 
that are necessary to answer the question.

7.4 에이전트 워크플로에서의 시사점

에이전트 워크플로에서 컨텍스트가 쌓이다 보면, 중간에 묻힌 중요 결정이나 목표 정의가 점점 잊히는 현상이 생긴다. 이를 막으려면 다음을 챙긴다.

  • 목표와 핵심 제약: 매 턴 시스템 프롬프트로 다시 주입한다(처음 위치 고정).
  • 최근 관찰과 결과: 항상 컨텍스트 끝에 덧붙인다(recency 효과 활용).
  • 오래된 히스토리: 주기적으로 요약·압축해 중간이 부풀지 않게 한다(06_01-전략-컨텍스트-압축-요약 참조).

8. 이후 연구로의 연결

Liu et al.(2023)은 하나의 출발점이었다. 이후 연구들은 위치 편향의 원인과 해결책을 더 깊이 파고들었다.

연구핵심 기여위치 편향과의 관계
RULER (Hsieh et al., COLM 2024)실효 컨텍스트 길이 측정 체계위치 편향의 영향을 벤치마크로 정량화
NoLiMa (Modarressi et al., ICML 2025)어휘 매칭 없는 장문 추론 테스트어휘 단서 부재 시 위치 편향 더욱 심화
STRING (An et al., 2024)위치 인코딩 수정으로 해결 시도위치 편향의 인코딩 측 원인 확인
Du et al. (EMNLP 2025)길이 자체만으로도 성능 저하위치 편향 + 길이 효과의 독립적 기여 확인

관련 노트: 포켓몬 에이전트 사례, 02_04-데이터-실효-컨텍스트-길이-갭, 01 오염, 06_01-전략-컨텍스트-압축-요약


9. 한계 및 후속 논의

9.1 연구 당시의 한계

  • 2023년 당시 모델을 대상으로 한 연구라, 이후 나온 더 강력한 장문 컨텍스트 모델(Gemini 1.5, GPT-4o, Claude 3.5 등)에서도 같은 패턴이 유지되는지는 후속 연구로 확인해야 했다(RULER와 NoLiMa가 이를 부분적으로 확인했다).
  • Multi-document QA와 key-value retrieval 두 과제에 집중했기에, 추론·코딩·창작 같은 다른 과제의 위치 편향은 직접 다루지 않았다.
  • 위치 편향의 원인보다 현상을 기술하는 데 무게를 둔 한계가 있다.

9.2 “훈련 데이터 부족” vs. “구조적 한계” 논쟁

Databricks(2024)는 일부 모델의 장문 컨텍스트 실패를 “장문 컨텍스트 사후훈련 데이터 부족”으로 해석할 수 있다고 본다. 더 많은 장문 데이터로 훈련하면 위치 편향이 줄어들 수 있다는 것이다.

반론도 있다. An et al.(2024)의 STRING은 추가 훈련 없이 위치 인코딩만 손봐서 10점 이상의 성능 개선을 이뤘다. 위치 편향이 훈련 데이터 부족만으로는 설명되지 않는, 아키텍처 측 원인을 함께 가졌음을 강하게 시사하는 결과다.

현재의 컨센서스는 위치 편향이 훈련 데이터 분포 편향과 어텐션 아키텍처의 구조적 특성, 두 요인이 겹쳐 나타난다는 쪽이다.


참고문헌