언어모델은 컨텍스트의 처음과 끝은 잘 읽지만 중간은 자주 놓칩니다. 위치 편향 연구가 법률 RAG의 증거 배치 설계에 주는 함의를 분석합니다.
초록 검색증강생성(RAG)은 얼마나 많은 근거를 넣느냐 못지않게 '어디에' 넣느냐가 결과를 좌우한다. 장문 컨텍스트 연구는 언어모델이 입력의 처음과 끝에 놓인 정보는 잘 활용하지만 중간에 놓인 정보는 체계적으로 놓치는 U-자형 위치 편향을 보고해 왔다. 본 칼럼은 이 현상의 원인 가설과 명목 컨텍스트 길이 대 유효 컨텍스트 길이의 격차를 검토하고, 재순위화와 가장자리 배치를 축으로 하는 법률 RAG의 증거 배치 설계 원칙을 제안한다. 결론은 단순하다 — 컨텍스트는 창고가 아니라 지형이며, 핵심 근거는 모델이 실제로 읽는 자리에 놓여야 한다.
임대차 분쟁 질의 하나에 검색기가 조문 12건과 판례 18건을 물어왔다고 하자. 전부 프롬프트에 밀어 넣으면 안심이 될 것 같지만, 정작 사건의 향방을 가르는 대항력 조문이 30건 목록의 한가운데에 끼어 있다면 모델은 그것을 '읽고도 쓰지 않는' 상태에 빠질 수 있다. 장문 컨텍스트를 다루는 일련의 연구는 이 직관을 실험으로 뒷받침한다. 정답 근거가 입력의 처음이나 끝에 있을 때와 중간에 있을 때 모델의 활용도가 체계적으로 달라진다는 것이다. 컨텍스트 윈도우가 수십만 토큰으로 늘어난 시대에도 이 편향은 사라지지 않았다. 법률 AI처럼 근거 하나의 누락이 결론을 뒤집는 도메인에서, 증거를 어디에 배치할 것인가는 검색 품질과 동급의 설계 변수다. 이번 칼럼은 위치 편향의 구조를 해부하고, 법마디 OS의 컨텍스트 조립 파이프라인에 적용할 배치 원칙을 도출한다.
동일한 정보라도 입력 컨텍스트 내 위치에 따라 모델의 활용도가 달라지는 현상입니다. 처음(primacy)과 끝(recency)에 강하고 중간에 약한 U-자형 패턴이 대표적입니다.
모델 명세가 주장하는 최대 입력 길이(명목 길이)와 달리, 실제 과제 성능이 유지되는 입력 길이입니다. RULER류 벤치마크는 명목과 유효 사이의 격차를 측정합니다.
1차 검색 결과를 질의와의 관련성 기준으로 다시 정렬해 상위 소수만 남기는 단계입니다. 컨텍스트에 '무엇을 넣을지'와 '어떤 순서로 넣을지'를 동시에 결정합니다.
Liu 등(2023)의 실험 설계는 명료하다. 다중 문서 질의응답 과제에서 정답이 담긴 문서 하나를 여러 방해 문서 사이에 끼워 넣고, 그 위치만 처음·중간·끝으로 옮겨 가며 성능을 측정했다. 결과는 일관된 U-자형 곡선이었다. 정답 문서가 입력의 맨 앞이나 맨 뒤에 있을 때 성능이 높고, 한가운데에 있을 때 뚜렷하게 낮아진다. 심지어 일부 조건에서는 정답 문서를 아예 주지 않은 폐쇄형(closed-book) 응답보다 중간 배치 조건의 성능이 낮게 나타났다. 근거가 컨텍스트 안에 물리적으로 존재한다는 것과 모델이 그 근거를 추론에 동원한다는 것은 별개의 사건이라는 뜻이다. 검색기가 정답을 물어왔는지만 감사하는 파이프라인은 이 격차를 보지 못한다. 회수(retrieval) 성공과 활용(utilization) 성공을 분리해 측정해야 하는 이유가 여기에 있다.
원인은 단일하지 않지만 두 갈래 가설이 유력하다. 첫째는 학습 데이터의 분포다. 자기회귀 모델이 학습하는 자연 문서에서 과제 지시나 핵심 요지는 문서의 서두와 말미에 몰리는 경향이 있고, 직전 토큰일수록 다음 토큰 예측에 유용하다. 모델은 이 통계를 내면화해 시작부와 최근부에 어텐션을 집중하는 사전 편향을 갖게 된다. 둘째는 위치 표현과 어텐션 구조다. 상대적 위치 인코딩은 가까운 토큰 사이의 상호작용을 우대하도록 설계되어 장거리 의존이 구조적으로 희석되고, 초기 토큰이 어텐션의 정박점처럼 기능하는 현상도 보고되어 있다. 중요한 것은 이 편향이 버그가 아니라 학습 목표의 자연스러운 귀결이라는 점이다. 따라서 모델 교체나 컨텍스트 확장만으로 사라지기를 기대하기 어렵고, 입력을 조립하는 쪽에서 편향을 전제한 배치 전략을 세우는 것이 현실적인 대응이 된다.
'128K 지원'이라는 명세는 그 길이에서 과제 성능이 유지된다는 보증이 아니다. RULER는 건초더미에서 바늘 찾기(needle-in-a-haystack)류의 단순 회수 과제를 넘어, 다중 추적·집계· 다단계 질의응답까지 포함한 합성 과제군으로 이 격차를 체계적으로 측정했다. 결과의 요지는, 단순 회수에서는 명목 길이 근처까지 버티는 모델도 과제 복잡도가 오르면 훨씬 짧은 길이에서 성능이 무너진다는 것이다. 즉 유효 컨텍스트 길이는 고정 상수가 아니라 과제 난이도의 함수다. 법률 질의는 조문 요건의 결합, 판례 법리의 대조, 사실관계 포섭이 겹치는 다단계 과제에 가깝므로, 유효 길이를 보수적으로 잡아야 한다. 긴 창을 믿고 근거를 쌓아 올리는 설계보다, 짧은 창을 전제로 근거를 정예화하는 설계가 법률 도메인의 위험 프로파일에 부합한다.
편향을 전제하면 배치 원칙은 세 가지로 정리된다. 첫째, 소수 정예다. 재순위화로 관련성 상위 문서만 남기고 나머지는 버린다. 무관 문서는 중립적 채움재가 아니라 핵심 근거를 중간 지대로 밀어내는 능동적 방해물이다. 둘째, 가장자리 우선이다. 가장 결정적인 근거 — 요건 조문, 리딩 케이스의 판시 — 는 프롬프트 최상단(시스템 지시 직후)이나 최하단(질문 직전)에 배치하고, 보조 근거를 중간에 둔다. 재순위 점수 내림차순을 그대로 이어 붙이면 최상위 문서가 목록 중간에 놓이는 역설이 생기므로, 점수 순서와 물리적 배치 순서를 분리해야 한다. 셋째, 중복 제거다. 같은 조문의 상이한 표기, 같은 판례의 중복 발췌는 정보 이득 없이 지면만 차지한다. 결정론적 정규화 키로 중복을 접고, 남은 자리를 서로 다른 근거로 채우는 것이 활용률 관점의 정답이다.
긴장 관계 검색 문서를 많이 넣을수록 재현율(놓친 근거의 위험)은 줄지만, 중간 소실로 실제 활용률이 떨어지고 토큰 비용과 지연은 늘어난다. 즉 '더 넣기'와 '더 잘 읽히기'가 정면으로 충돌한다.
실무적 해소 실무 해법은 단계 분리다. 1차 검색은 넓게 회수해 재현율을 확보하고, 재순위화가 정밀도를 책임지며, 배치 단계가 활용률을 책임진다. 핵심 근거를 가장자리에 고정하고 보조 근거만 중간에 두면, 소수 문서로도 놓침 위험을 통제할 수 있다. 그리고 최종 방어선은 생성 이후의 검증 게이트다. 근거가 중간에서 소실되어 모델이 미검증 인용으로 빈틈을 메우려 하면, fail-closed 게이트가 그 문장을 차단한다. 배치는 품질을 올리고, 게이트는 바닥을 지킨다.
법마디 OS의 현행 파이프라인은 이미 위치 편향과 정합적인 골격을 갖고 있다. Stage 1의 검증자산 그라운딩 블록은 질문에 직접 등장한 조문·판례의 검증 본문을 컨텍스트 최상단에 결정론적으로 고정 주입하는데, 이는 primacy 구간에 최고 신뢰 근거를 배치하는 설계다. 다음 단계 업그레이드는 세 방향이다. 첫째, Vertex 검색 상위 결과를 컨텍스트에 이어 붙일 때 재순위 점수 내림차순을 그대로 쓰지 않고, 최상위 근거를 블록의 처음과 질문 직전 양 끝에 재배치하는 '가장자리 배치' 규칙을 조립기에 추가한다. 둘째, Stage 1.7이 프리패치한 조문 전문은 질의와의 인접성이 활용률을 좌우하므로 사용자 질문 바로 앞 recency 구간에 둔다. 셋째, 프로바이더 패리티 하니스에 '동일 근거·상이 배치' 시나리오를 추가해, 후보 모델의 위치 민감도를 fail-closed 통과율과 함께 측정한다. 위치 편향이 모델마다 다른 이상, 배치 전략의 효과 역시 모델 교체 시 재검증되어야 하기 때문이다. 세 변경 모두 검증 계층을 건드리지 않는 입력 조립 단계의 개선이므로, 할루시네이션 0 원칙과 충돌 없이 적용할 수 있다.
"컨텍스트는 창고가 아니라 지형이다 — 근거는 쌓는 것이 아니라, 모델이 읽는 자리에 놓는 것이다."