BiRD: A Bidirectional Ranking Defense Mechanism for Retrieval Augmented Generation
https://arxiv.org/abs/2605.20123
Chengcai Gao, Zhihong Sun, Xiaochuan Shi, Qiufeng Wang, Chao Liang | Wuhan University, Naval University of Engineering, Xi’an Jiaotong-Liverpool University | arXiv:2605.20123 | 2026년 5월
Retrieval-Augmented Generation은 외부 지식 베이스를 붙여 언어 모델의 환각을 줄이는 실용적인 구조지만, 바로 그 검색 단계가 공격 표면이 된다. 공격자가 문서 저장소에 소수의 악성 문서를 주입하면, 생성 모델은 정상 질의에 대해 잘못된 근거를 상위 문맥으로 받아들이고 목표 오답을 낼 수 있다. BiRD는 이 문제를 문서 내용의 의미 분석만으로 풀려 하지 않고, 검색기가 이미 만들어 낸 순위 구조 자체를 보안 신호로 읽는다.
핵심 관찰은 단순하다. 포이즈닝 문서는 목표 질의와 가까워 보이도록 최적화되기 때문에 forward retrieval에서는 상위권에 몰리고, 그 문서를 다시 질의처럼 사용했을 때 backward retrieval에서도 서로 비슷한 악성 문서를 상위에 끌어올린다. 반면 정상 문서는 동일한 답을 지지하더라도 표현, 맥락, 출처가 더 다양하게 퍼져 있어 forward ranking과 backward ranking의 정렬이 덜 강하다. BiRD는 이 차이를 content relevance와 context consistency라는 두 점수로 분해한다.
논문은 NQ, MSMARCO, HotpotQA 세 데이터셋, Contriever·ANCE·DPR 세 dense retriever, Qwen2.5-7B·Mistral-7B·Llama-3.1-8B 세 생성 모델, PoisonedRAG와 prompt injection 계열 공격을 조합해 방어 성능을 비교한다. 보고된 결과에서 BiRD는 PoisonedRAG 공격 성공률을 최대 54% 낮추고, 동시에 태스크 정확도를 최대 56% 끌어올리며, 평균 추가 지연을 1초 미만 수준으로 유지한다. 이 수치는 RAG 방어가 반드시 무거운 LLM 판별기나 복잡한 그래프 추론에 의존할 필요가 없다는 주장을 뒷받침한다.
1. 서론: RAG 보안에서 랭킹 구조를 보는 이유
1.1 검색 증강의 강점이 공격 표면으로 바뀌는 순간
RAG는 모델 파라미터 안에 없는 최신 지식이나 사내 문서를 답변에 반영할 수 있게 만든다. 사용자의 질의가 들어오면 retriever가 외부 코퍼스에서 top-k 문서를 고르고, LLM은 그 문서들을 문맥으로 받아 답을 생성한다. 이 구조는 지식 업데이트 비용을 낮추고 환각을 줄이는 데 효과적이지만, 검색 결과가 오염되면 생성 단계는 오히려 공격자가 준비한 근거를 신뢰하는 통로가 된다. 따라서 RAG 보안은 생성 모델의 안전성만 보는 문제를 넘어, 검색기의 랭킹이 어떻게 조작되는지까지 함께 다뤄야 한다.
코퍼스 포이즈닝은 현실적인 위협 모델이다. 공격자는 사용자 질의를 직접 통제하지 못해도, 공개 위키·문서 저장소·사용자 업로드 공간·사내 지식 베이스에 악성 문서를 심을 수 있다. 악성 문서가 target query의 top-k 안에 들어오면, LLM은 그것을 정상적인 검색 근거로 취급한다. PoisonedRAG 같은 공격은 문서 임베딩을 목표 질의 근처로 옮기는 방식으로 검색 순위를 끌어올리고, Topic-FlipRAG류 공격은 특정 주제에 대한 관점이나 답을 뒤집는 방향으로 문서 내용을 조정한다.
기존 방어는 대체로 세 갈래였다. 첫째, 문서 내용의 엔티티·의도·관계 그래프를 분석해 이상치를 찾는 semantic filtering 계열이다. 둘째, 여러 문서가 만들어 내는 답변이나 키워드가 서로 합의하는지 확인하는 voting consistency 계열이다. 셋째, LLM의 내재 지식과 보안 지침을 활용해 검색 근거를 다시 판별하는 LLM-based defense 계열이다. 세 접근은 각각 장점이 있지만, 강한 포이즈닝 공격에서는 계산량이 커지거나 합의 자체가 오염되거나 모델 의존성이 커지는 문제가 남는다.
1.2 BiRD가 던지는 질문
BiRD의 질문은 “문서가 무엇을 말하는가”보다 “문서들이 어떤 순서 관계를 만들었는가”에 가깝다. retriever는 질의와 문서 사이의 유사도만 반환하는 장치처럼 보이지만, 실제로는 문서 집합 안에서 상대적인 순서를 만들어 낸다. 이 순서에는 공격자가 목표 질의에 맞춰 여러 문서를 비슷한 방향으로 밀어 넣었는지, 정상 문서들이 서로 다른 경로로 관련성을 제공하는지 같은 구조 정보가 들어 있다. 논문은 이 구조 정보가 RAG 보안에서 아직 충분히 활용되지 않았다고 본다.
이 관점은 검색 평가에서 MRR이나 nDCG를 보는 감각과도 이어진다. top-k 안에 문서가 들어왔다는 사실만으로는 부족하고, 어느 문서가 얼마나 앞쪽에 놓였는지, 비슷한 문서들이 어떤 순서 패턴을 반복하는지가 중요하다. 내가 이전에 정리했던 Retrieval Ranking Metrics와 Query Coverage in Retrieval의 맥락으로 보면, BiRD는 “정답 근거가 충분히 들어왔는가”를 넘어 “상위 랭킹의 구조가 정상적인 다양성을 보이는가”를 묻는 방어 레이어다.
- 문제 설정: 공격자가 악성 문서를 코퍼스에 주입해 target query의 top-k 검색 결과를 오염시킨다.
- 핵심 신호: 포이즈닝 문서는 forward ranking과 backward ranking 사이의 정렬도가 비정상적으로 높다.
- 방어 방식: 질의-문서 유사도와 랭킹 일관성을 결합한 점수로 악성 문서를 걸러낸다.
- 실용성: LLM 호출 기반 판별보다 가볍고, retriever 내부 점수와 순위 리스트를 재사용할 수 있다.
2. 배경 및 관련 연구: 의미 분석 중심 방어의 빈틈
2.1 표준 RAG 파이프라인과 포이즈닝 공격
표준 RAG는 retrieval과 generation 두 단계로 나뉜다. retrieval 단계에서는 사용자 질의 $q$와 문서 코퍼스 $\mathcal{D}$ 사이의 유사도를 계산해 top-k 문서를 반환한다. generation 단계에서는 원래 질의와 검색 문서를 함께 프롬프트로 넣어 답을 만든다. 여기서 retriever의 실패는 생성 모델의 실패로 곧장 전파된다. 문서가 top-k에 들어온 순간, LLM 입장에서는 그 문서가 검색 시스템이 골라 준 후보라는 암묵적 신뢰를 갖기 때문이다.
포이즈닝 공격은 이 신뢰 경로를 노린다. 공격자는 $\mathcal{D}_{\text{poison}}$을 기존 정상 코퍼스 $\mathcal{D}_{\text{benign}}$에 주입해 $\mathcal{D}^{\prime}=\mathcal{D}_{\text{benign}}\cup\mathcal{D}_{\text{poison}}$를 만든다. 목표는 특정 target query $q$에 대해 악성 문서가 top-k 안에 들어가도록 만드는 것이다. 이후 LLM이 이 문서를 문맥으로 읽으면, 공격자가 의도한 잘못된 답 $r(q)$를 출력할 확률이 올라간다. 논문이 예시로 든 미국 대선 질의처럼, 사실 관계가 명확한 질문에서도 검색 근거가 오염되면 모델 답변은 쉽게 흔들린다.
이 공격이 까다로운 이유는 악성 문서가 겉으로는 주제와 관련되어 보인다는 점이다. 단순 키워드 필터나 문서 길이, 출처 메타데이터만으로는 공격 문서를 분리하기 어렵다. 특히 dense retriever 환경에서는 문서의 표면 문자열보다 임베딩 공간의 위치가 순위를 결정하므로, 공격자는 질의 임베딩 근처로 문서 표현을 끌어오는 최적화를 수행한다. 그 결과 문서 내용은 정상 문서와 유사한 어휘를 공유하면서도, 특정 오답을 유도하는 방향으로 미세하게 조작된다.
2.2 기존 방어의 계산 비용과 강한 공격 취약성
Clustering-filtering 계열은 악성 문서가 의미적으로 비정상적인 군집을 만든다는 직관을 활용한다. Se-ConRAG나 TrustRAG처럼 문서 간 의미 그래프를 만들고, 엔티티·의도·충돌 관계를 분석하면 섬세한 방어가 가능하다. 하지만 이 방식은 외부 LLM 호출, 그래프 구성, 충돌 해결을 반복해야 하므로 지연 시간이 커진다. 실제 제품형 RAG에서는 질의 하나마다 수 초 이상의 추가 지연이 누적되면 사용자 경험과 비용 구조가 동시에 나빠진다.
Voting-consistency 계열은 정상 문서들이 비슷한 답을 지지하고 악성 문서는 소수라는 가정에 기대어 방어한다. ReliabilityRAG는 문서별 답변 간 모순 그래프를 만들고 최대 독립 집합 문제로 정상 문서 집합을 찾는다. RobustRAG는 문서 키워드만 추출해 공격 표면을 줄인다. 이 접근은 공격 밀도가 낮을 때 설득력이 있지만, 공격자가 여러 악성 문서를 함께 주입하면 합의 구조 자체가 오염될 수 있다. 또한 키워드만 남기면 정상 문서의 세부 근거가 손실되어 정확도가 떨어질 수 있다.
LLM-based defense는 생성 모델의 내재 지식과 안전 지침을 활용한다. AstuteRAG는 내부 지식과 검색 근거를 동적으로 결합하고, InstructRAG는 모델이 스스로 rationale을 만들도록 유도한다. 그러나 이 방식은 사용하는 LLM의 지식 범위, 지시 따르기 능력, 안전성 편향에 민감하다. 공격자가 retrieved context 안에 프롬프트 주입 문구나 신뢰를 유도하는 서술을 넣으면 LLM 판별기는 여전히 흔들릴 수 있다. BiRD는 이러한 문제를 피하기 위해 생성 모델 판단보다 retriever의 순위 패턴에 더 많은 책임을 둔다.
2.3 양방향 검색이라는 오래된 발상
Bidirectional search라는 아이디어는 BiRD에서 처음 등장한 것이 아니다. 언어 모델의 bidirectional attention은 토큰의 앞뒤 맥락을 함께 읽고, 검색에서는 query-to-document와 document-to-query, pseudo-query 생성이 함께 성능 향상에 쓰여 왔다. 이미지 검색에서도 close set과 far set을 나누어 역방향 관계를 확인하는 전략이 존재한다. BiRD의 기여는 이 양방향 관계를 RAG 보안 문제에 직접 연결했다는 데 있다.
Forward retrieval은 “질의가 어떤 문서를 끌어오는가”를 본다. Backward retrieval은 “상위 문서를 다시 질의처럼 넣었을 때 어떤 문서들이 따라오는가”를 본다. 정상 문서라면 서로 다른 출처와 표현으로 같은 질문에 기여할 수 있으므로 backward 결과가 forward 결과와 완전히 겹칠 필요가 없다. 반대로 공격 문서 묶음은 동일한 target answer와 유사한 최적화 방향을 공유하므로, 한 악성 문서를 pivot으로 삼아도 다른 악성 문서가 계속 상위에 등장하기 쉽다.
Figure 1: Bidirectional Ranking Defense framework
Figure 1은 BiRD의 전체 프레임을 한 장으로 압축한다. 먼저 질의 기준 forward ranking이 만들어지고, 상위 문서 각각을 다시 질의처럼 사용해 backward ranking을 얻는다. 이후 두 순위의 정렬도와 질의-문서 유사도를 결합해 위협 점수를 계산한다. 그림에서 중요한 부분은 방어가 LLM의 장문 판단으로 이동하지 않고, 검색기가 이미 제공하는 랭킹 산출물을 재해석하는 위치에 놓인다는 점이다. 이 배치는 기존 RAG 파이프라인을 크게 바꾸지 않고도 검색 직후의 보안 게이트를 만들 수 있음을 보여 준다.
3. 방법론: BiRD의 양방향 랭킹 방어
3.1 위협 모델과 방어자 가정
BiRD는 공격자가 코퍼스에 악성 문서를 주입할 수 있는 상황을 가정한다. 공격자는 target query 집합 $\mathcal{Q}_{\text{target}}$와 각 질의에 대응하는 목표 오답 $r(q)$를 설정한다. 방어자는 공격 방식, 악성 문서의 위치, 문서 생성 방법을 모른다. 방어자가 관찰할 수 있는 것은 사용자 질의 $q$에 대해 retriever $R$이 반환한 초기 ranking list뿐이다. 따라서 BiRD는 white-box 공격과 black-box 공격을 모두 포괄하는 비교적 일반적인 설정을 택한다.
방어자의 목표는 초기 top-k 문서에서 악성 문서를 제거하고, LLM에 넘길 clean subset $\mathcal{D}_{\text{clean}}$을 만드는 것이다. 이상적인 결과는 clean subset 안에 포이즈닝 문서가 하나도 들어가지 않는 상태다. 하지만 과도하게 보수적인 필터링은 정상 근거까지 제거해 정확도를 떨어뜨릴 수 있다. 그래서 BiRD는 악성 문서의 attack success rate를 낮추는 동시에, clean setting에서의 answer accuracy를 최대한 유지하거나 개선해야 한다.
3.2 Forward retrieval: content relevance 측정
첫 번째 신호는 content relevance다. 사용자 질의 $q$와 코퍼스 $\mathcal{D}^{\prime}$가 주어지면 retriever $R$은 상위 $k$개 문서로 구성된 forward ranking $R_{\text{fw}}^{q}$를 반환한다. 이때 $d_i^q$는 질의 $q$에 대한 forward ranking의 $i$번째 문서다. 각 문서의 relevance는 retriever가 사용하는 cosine similarity나 dot product 같은 유사도 함수 $\operatorname{sim}(q,d_i^q)$로 계산된다.
Content relevance만 보면 포이즈닝 문서와 정상 문서를 구분하기 어렵다. 공격자는 바로 이 점수를 높이도록 문서를 최적화하기 때문이다. 실제로 poisoned document는 forward ranking 상위에 몰린다. 일반적인 retriever 관점에서는 높은 순위가 좋은 문서의 징후지만, 보안 관점에서는 공격자가 의도적으로 만든 top-heavy 분포일 수 있다. BiRD는 이 점수를 버리지 않는다. 다만 relevance를 단독 판정 기준으로 쓰지 않고, 다음 단계의 ranking consistency와 결합한다.
3.3 Backward retrieval: context consistency 측정
두 번째 신호는 context consistency다. Forward ranking 안의 각 문서 $d_i^q$를 새로운 질의처럼 사용해 다시 코퍼스에서 top-k 문서를 검색한다. 이렇게 얻은 리스트를 $R_{\text{bw}}^{i}$라고 둔다. 직관적으로 $R_{\text{bw}}^{i}$는 “이 문서와 가장 가까운 문서들은 무엇인가”를 보여 준다. 정상 문서가 pivot이면 다양한 관련 문서가 섞여 나오지만, 악성 문서가 pivot이면 같은 목표 오답을 향해 최적화된 악성 문서들이 함께 상위권에 나타난다.
BiRD는 forward ranking과 backward ranking 사이의 공통 문서 집합 $\mathcal{C}$를 잡고, 각 공통 문서의 forward rank $r_f(d)$와 backward rank $r_b(d)$를 비교한다. 논문은 기본적으로 Spearman rank correlation을 사용한다. 두 순위가 완전히 같으면 $r_{cc}^{i}=1$에 가까워지고, 서로 반대면 $r_{cc}^{i}=-1$에 가까워진다. 악성 문서는 forward ranking과 backward ranking의 구조가 지나치게 잘 맞는 경향을 보이므로, 높은 $r_{cc}^{i}$가 위험 신호가 된다.
3.4 Threat filtering: 두 신호의 결합
Threat filtering 단계에서는 relevance와 consistency를 결합해 최종 점수를 만든다. 논문은 공격 문서가 질의와 높은 content relevance를 갖고 동시에 높은 context consistency를 보인다는 관찰을 활용한다. 반대로 정상 문서는 질의와 관련성이 있어도, backward ranking이 forward ranking과 지나치게 일치하지 않는다. 이 차이를 증폭하기 위해 BiRD는 $r_{cr}^{i}$와 $r_{cc}^{i}$를 함께 쓰는 composite score를 계산하고, threshold $\epsilon$을 기준으로 clean document set을 남긴다.
Threshold $\epsilon$은 실험 기본값으로 2.5가 사용된다. 실제 운영에서는 기존 공격 방법으로 만든 validation set에서 threshold를 고를 수 있다고 논문은 설명한다. 이 대목은 실무적으로 중요하다. 모든 도메인에서 악성 문서의 임베딩 군집 강도와 정상 문서 다양성이 같을 수 없기 때문이다. 법률 문서, 고객지원 문서, 의료 문서처럼 문체가 강하게 표준화된 코퍼스에서는 정상 문서도 높은 ranking consistency를 보일 수 있으므로, threshold 선택은 도메인별 calibration 문제로 남는다.
Table 1: BiRD 파이프라인의 세부 구성
| 구성 요소 | 입력 | 출력 | 보안 해석 |
|---|---|---|---|
| Forward retrieval | $q$, $\mathcal{D}^{\prime}$ | $R_{\text{fw}}^{q}$ | 질의와 문서의 content relevance를 측정한다. |
| Backward retrieval | $d_i^q$, $\mathcal{D}^{\prime}$ | $R_{\text{bw}}^{i}$ | 문서가 끌어오는 이웃 문서 구조를 확인한다. |
| Rank similarity | $R_{\text{fw}}^{q}$, $R_{\text{bw}}^{i}$ | $r_{cc}^{i}$ | forward/backward 정렬이 과도하게 강한지 본다. |
| Threat filtering | $r_{cr}^{i}$, $r_{cc}^{i}$ | $\mathcal{D}_{\text{clean}}$ | threshold $\epsilon$을 기준으로 악성 후보를 제거한다. |
Table 1은 BiRD가 새로운 생성 모델을 추가하는 방식보다 retriever의 산출물을 재사용하는 방식에 가깝다는 점을 보여 준다. forward retrieval은 기존 RAG에서 이미 수행되는 단계이고, backward retrieval은 상위 문서 수 $k$에 대해 추가 검색을 수행한다. 순위 유사도 계산은 $k$가 작을 때 비용이 제한적이다. 따라서 전체 방어는 LLM 기반 검증처럼 문서마다 긴 추론을 실행하는 방식보다 예측 가능한 비용 구조를 갖는다.
Figure 2: Overview of BiRD method with forward retrieval, backward retrieval, and threat filtering
Figure 2는 논문 본문에서 제시한 BiRD 방법론 도식이다. 질의가 먼저 상위 문서를 끌어오고, 각 상위 문서가 다시 역방향 검색의 pivot으로 사용된다. 그 다음 content relevance와 context consistency가 함께 계산된다. 이 그림은 BiRD가 단순 reranking을 넘어, 검색 결과의 내부 관계를 한 번 더 투영해 공격 문서 묶음의 구조적 응집성을 포착한다는 점을 보여 준다. 특히 threat filtering이 생성 모델 앞이 아니라 검색 문맥 구성 직전에 놓여 있다는 점이 실제 배포 구조를 이해하는 데 중요하다.
3.5 알고리즘을 질의 처리 흐름으로 풀어 읽기
질의 하나가 들어왔을 때 BiRD의 흐름을 운영 로그 관점으로 풀면 더 명확하다. 먼저 retriever가 top-20 후보를 만들고, 각 후보에는 기존 RAG와 동일하게 query-document similarity가 붙는다. 다음으로 후보 문서 20개를 각각 pivot query로 바꾸어 document-document retrieval을 수행한다. 이때 결과 리스트마다 forward top-20과 겹치는 문서를 찾고, 겹친 문서들의 순위쌍을 모아 Spearman correlation을 계산한다. 마지막으로 각 문서의 relevance 점수와 rank consistency 점수가 하나의 위험 점수로 합쳐지고, threshold 아래 또는 위에 있는 후보만 clean context로 남는다.
이 흐름의 장점은 모든 중간 산출물이 관측 가능하다는 점이다. LLM 판별기 방식에서는 “모델이 위험하다고 판단했다”는 텍스트 설명이 남더라도 내부 근거를 재현하기 어렵다. BiRD에서는 forward rank, backward rank, 공통 문서 집합, rank correlation, threshold 판정이 모두 숫자와 리스트로 남는다. 따라서 운영자는 특정 문서가 제거된 이유를 재계산할 수 있고, threshold 변경 시 어떤 문서가 새롭게 통과하거나 제거되는지도 diff로 확인할 수 있다. 보안 필터가 audit 대상이 되는 서비스에서는 이런 재현성이 큰 장점이다.
또한 BiRD는 검색기가 반환한 similarity score의 절대값만 믿지 않는다. Dense retriever의 score는 모델, index normalization, document length, embedding distribution에 따라 scale이 달라질 수 있다. 반면 rank correlation은 순서 관계를 중심으로 보기 때문에 score calibration 문제에서 조금 자유롭다. 물론 순위 자체도 retriever 특성에 의존하지만, 여러 retriever에서 같은 패턴이 관찰됐다는 실험 결과는 이 신호가 특정 점수 scale에 덜 묶여 있음을 시사한다.
수식으로 보면 $r_{cr}^{i}$는 질의와 문서의 직접 유사도이고, $r_{cc}^{i}$는 문서 $d_i^q$가 만든 backward list와 원래 forward list 사이의 rank correlation이다. 공격 문서는 두 값이 모두 높게 나오는 경향을 보인다. 정상 문서는 relevance가 높아도 backward consistency가 낮거나, consistency가 높아도 query relevance가 제한적일 수 있다. 그래서 두 값을 결합하면 단일 점수보다 더 분리력이 커진다. 이 설계는 anomaly detection에서 “크기”와 “형태”를 동시에 보는 방식과 비슷하다.
3.6 왜 division 형태가 분리를 키우는가
논문이 composite score에서 division을 사용한다고 설명하는 부분은 직관적으로 “두 신호의 대비를 증폭한다”로 읽을 수 있다. 악성 문서는 forward relevance가 높고 context consistency도 높으므로, 두 값의 조합에서 정상 문서와 다른 영역으로 밀려난다. 정상 문서는 질의와 관련되어 상위에 올 수 있지만, 다양한 정상 근거가 서로 다른 방향으로 퍼져 있으면 backward consistency가 낮다. 이 차이를 직접 더하는 방식보다 비율이나 정규화된 결합으로 보면, 공격 문서의 군집성이 더 선명해질 수 있다.
다만 division 기반 점수는 분모나 분자에 작은 값이 들어갈 때 안정성 문제가 생길 수 있다. 실제 구현에서는 score clipping, epsilon smoothing, rank list overlap이 너무 적은 경우의 fallback을 정해야 한다. 논문 본문은 핵심 아이디어와 실험 결과에 초점을 맞추지만, 제품 구현에서는 이런 numerical detail이 중요하다. 예를 들어 공통 문서 집합 $\mathcal{C}$가 너무 작으면 Spearman correlation이 통계적으로 불안정하므로, 최소 overlap 조건을 두거나 해당 문서를 별도 uncertainty bucket으로 보내는 편이 안전하다.
또 하나의 실무적 고려는 rank correlation을 계산할 때 tie와 missing document를 어떻게 처리할지다. Dense retrieval에서는 같은 점수가 나오는 tie가 흔하지 않지만, quantized index나 approximate search에서는 순위가 약간 흔들릴 수 있다. backward list와 forward list의 공통 문서가 적으면 상관계수 하나가 특정 문서의 위치 변화에 크게 민감해진다. 따라서 BiRD를 production에 넣을 때는 반복 검색 안정성, ANN index seed, index refresh 후 score drift를 같이 모니터링해야 한다.
- 관측 가능성: 각 문서의 forward rank, backward rank, overlap, correlation을 로그로 남길 수 있다.
- 경량성: LLM 판별 호출보다 retriever와 vector index 최적화로 비용을 줄이기 쉽다.
- 민감도: 공통 문서 수가 작거나 ANN 순위가 흔들리면 점수 안정성 검사가 필요하다.
- 확장성: chunk-level filtering, provenance signal, domain-normalized threshold와 결합하기 좋다.
4. 실험 설정: 데이터셋, 검색기, 모델, 공격 시나리오
4.1 데이터셋 및 벤치마크
실험은 Natural Questions, MSMARCO, HotpotQA 세 데이터셋에서 수행된다. NQ는 실제 구글 검색 질의에서 파생된 open-domain QA 데이터셋으로, 비교적 직접적인 사실 검색 능력을 본다. MSMARCO는 Microsoft가 구축한 기계독해·검색 데이터셋으로 대규모 passage retrieval 환경을 대표한다. HotpotQA는 multi-hop reasoning을 요구하므로, 단일 문서 hit보다 여러 근거의 조합과 문맥 구성 품질이 더 중요하다. 세 데이터셋을 함께 사용하면 단순 사실 검색부터 복합 추론까지 방어가 버티는지 확인할 수 있다.
논문은 대규모 전체 코퍼스에서 pilot 분석을 직접 돌리는 대신, target query마다 관련 정상 문서 20개와 poisoned document 5개를 포함하는 subset을 구성해 bidirectional ranking behavior를 통계적으로 본다. 이 설계는 공격 문서의 위치 분포와 backward ranking 패턴을 세밀하게 관찰하기 위한 것이다. 본 실험에서는 실제 방어 성능을 세 데이터셋과 여러 검색기·LLM 조합에서 비교해, 관찰이 특정 retriever나 특정 QA 유형에 묶이지 않는지 점검한다.
4.2 구현 세부사항
Retriever는 Contriever, ANCE, DPR 세 가지를 사용한다. Contriever는 contrastive learning 기반의 범용 dense retriever이고, ANCE는 approximate nearest neighbor hard negative를 활용하는 dense retrieval 방법이며, DPR은 open-domain QA에서 널리 쓰인 dense passage retrieval 모델이다. 이 세 검색기를 고른 이유는 공격과 방어가 특정 임베딩 모델의 특수한 성질에만 기대는지 확인하기 위해서다.
생성 모델은 Qwen2.5-7B, Mistral-7B, Llama-3.1-8B가 사용된다. 방어 성능이 LLM별로 달라지는 이유는 같은 검색 문맥이라도 모델마다 지시 따르기, 근거 우선순위, 오염 문서에 대한 민감도가 다르기 때문이다. BiRD가 retriever 앞단에서 문서를 걸러내면, 생성 모델이 어떤 계열이든 오염 문맥을 덜 받게 된다. 논문은 이 점을 확인하기 위해 세 모델 조합을 모두 표에 포함한다.
기본 구현에서 공격자의 corruption size $m$은 5이고, BiRD의 filtering threshold $\epsilon$은 2.5, 초기 retrieval 문서 수 $k$는 20으로 설정된다. 논문은 이후 dynamic performance 실험에서 $k$, $m$, $\epsilon$ 변화에 따른 ASR과 ACC를 별도로 분석한다. 이 파라미터 분석은 실제 배포에서 top-k를 얼마나 넓게 잡을지, 공격 문서 수가 늘 때 방어가 언제 흔들리는지, threshold를 validation set에서 고르는 절차가 얼마나 민감한지 판단하는 데 필요하다.
4.3 베이스라인
비교 대상은 VanillaRAG, RobustRAG, InstructRAG, ReliabilityRAG다. VanillaRAG는 방어가 없는 원본 시스템으로, 공격 성공률의 기준선을 제공한다. RobustRAG는 문서 전체 대신 키워드 중심 문맥을 제공해 공격 표면을 줄인다. InstructRAG는 LLM이 근거에서 답을 도출하는 rationale을 만들도록 유도한다. ReliabilityRAG는 문서별 답변 모순 관계를 그래프로 만들고 maximum independent set 관점으로 정상 문서 집합을 찾는다.
이 베이스라인 구성은 BiRD의 위치를 잘 드러낸다. RobustRAG는 정보 손실을 감수하며 문맥을 축약하고, InstructRAG는 생성 모델의 추론 능력에 더 의존하며, ReliabilityRAG는 그래프 최적화 비용과 문서별 답변 생성 비용을 치른다. BiRD는 이들과 달리 ranking structure만으로 필터링 신호를 만들기 때문에, 성능이 비슷하더라도 지연 시간과 운영 단순성에서 다른 trade-off를 갖는다.
Table 2: 실험 설정 요약
| 항목 | 구성 | 역할 |
|---|---|---|
| 데이터셋 | NQ, MSMARCO, HotpotQA | 단순 사실 검색부터 multi-hop QA까지 방어 성능을 확인한다. |
| 검색기 | Contriever, ANCE, DPR | 서로 다른 dense retriever에서 랭킹 신호가 유지되는지 본다. |
| LLM | Qwen2.5-7B, Mistral-7B, Llama-3.1-8B | 생성 모델 변화에도 필터링 효과가 유지되는지 확인한다. |
| 공격 | PoisonedRAG, PIA, Topic-FlipRAG 분석 | 문서 주입형 공격과 프롬프트 주입형 공격을 포함한다. |
| 평가 지표 | ASR, ACC, runtime | 공격 성공률, 정상 답변 정확도, 지연 시간을 함께 본다. |
Table 2의 조합은 꽤 넓다. 특히 같은 데이터셋에서도 retriever가 바뀌면 공격 문서가 상위에 올라오는 방식이 달라지고, 같은 retriever에서도 LLM이 바뀌면 오염 문맥을 따르는 정도가 달라진다. BiRD가 이 조합에서 일관되게 ASR을 낮추면, 단일 모델의 우연한 취약성보다 ranking behavior라는 더 일반적인 신호를 사용했다는 주장에 힘이 실린다.
5. 주요 실험 결과: 공격 성공률과 정확도의 동시 개선
5.1 NQ 결과: PoisonedRAG에서 큰 ASR 감소
NQ 실험에서 VanillaRAG는 PoisonedRAG 공격에 매우 취약하다. Qwen2.5-7B 기준으로 ANCE, Contriever, DPR 조합에서 PoisonedRAG ASR은 각각 0.87, 0.89, 0.87까지 올라간다. BiRD를 적용하면 같은 조건에서 ASR이 0.08, 0.16, 0.30으로 낮아지고, ACC는 0.75, 0.62, 0.63 수준을 유지한다. 특히 ANCE 조합에서는 공격 성공률이 0.87에서 0.08로 급락한다.
흥미로운 점은 BiRD가 공격 성공률을 낮추는 동시에 accuracy도 개선하는 경우가 많다는 점이다. 포이즈닝 문서를 제거하면 LLM이 정상 근거를 더 집중적으로 보게 되므로, 공격 상황에서 답변 정확도가 회복된다. 물론 clean accuracy가 항상 최고는 아니다. 일부 조합에서는 RobustRAG나 VanillaRAG의 clean setting 수치가 더 높다. 그러나 방어 시스템의 핵심 목적은 공격 조건에서 오답 유도를 막으면서 정상 답변 품질을 보존하는 것이고, 이 관점에서는 BiRD의 ASR/ACC 균형이 두드러진다.
Table 3: NQ에서 대표 조합별 PoisonedRAG 방어 결과
| 모델·검색기 | VanillaRAG PoisonedRAG ASR/ACC | BiRD PoisonedRAG ASR/ACC | 해석 |
|---|---|---|---|
| Qwen2.5-7B + ANCE | 0.87 / 0.37 | 0.08 / 0.75 | ASR을 크게 낮추면서 ACC를 두 배 이상으로 회복한다. |
| Qwen2.5-7B + Contriever | 0.89 / 0.34 | 0.16 / 0.62 | forward 상위 오염을 ranking consistency로 걸러낸다. |
| Qwen2.5-7B + DPR | 0.87 / 0.44 | 0.30 / 0.63 | DPR에서도 방어 효과가 유지되지만 감소 폭은 상대적으로 작다. |
| Mistral-7B + ANCE | 0.93 / 0.16 | 0.25 / 0.57 | 오염 문맥에 취약한 모델에서 정확도 회복 폭이 크다. |
| Llama-3.1-8B + Contriever | 0.87 / 0.31 | 0.13 / 0.68 | 모델 변경 후에도 ASR 감소와 ACC 개선이 함께 관찰된다. |
Table 3은 전체 표 중 일부 대표 조합만 압축한 것이다. 논문 원 표는 세 LLM과 세 retriever의 더 많은 조합을 포함한다. 여기서 중요한 패턴은 VanillaRAG의 ASR이 대체로 0.8 이상까지 치솟는 반면, BiRD는 여러 조합에서 0.1~0.3대로 낮춘다는 점이다. RAG 보안에서는 ASR을 낮추는 대신 정상 정확도를 크게 잃는 경우가 흔한데, BiRD는 많은 조건에서 ACC를 오히려 높인다.
5.2 MSMARCO 결과: 강한 검색 데이터셋에서도 유지되는 방어 효과
MSMARCO에서도 비슷한 경향이 나타난다. Qwen2.5-7B 기준 VanillaRAG의 PoisonedRAG ASR은 ANCE 0.86, Contriever 0.85, DPR 0.88이다. BiRD는 이를 각각 0.17, 0.24, 0.27로 낮춘다. ACC도 0.76, 0.71, 0.68로 유지되어, 공격 상황에서 실제 답변 품질을 회복한다. MSMARCO는 대규모 passage retrieval 성격이 강하기 때문에, 단순한 데이터셋 특수 현상으로 보기 어렵다.
Mistral-7B 조건에서는 RobustRAG가 일부 조합에서 낮은 ASR을 보이지만, ACC가 크게 떨어지는 구간이 있다. RobustRAG는 문서 전체를 쓰기보다 키워드나 축약 근거에 의존하므로 공격 표면을 줄일 수 있지만, 정상 근거의 문맥 정보를 함께 잃을 수 있다. BiRD는 문서 자체를 축약하기보다 위험한 문서를 제거하는 전략이므로, 정상 문서가 살아 있을 때 더 풍부한 문맥을 LLM에 넘길 수 있다.
Table 4: MSMARCO에서 대표 조합별 PoisonedRAG 방어 결과
| 모델·검색기 | VanillaRAG PoisonedRAG ASR/ACC | BiRD PoisonedRAG ASR/ACC | 해석 |
|---|---|---|---|
| Qwen2.5-7B + ANCE | 0.86 / 0.47 | 0.17 / 0.76 | ASR 감소와 accuracy 회복이 함께 가장 뚜렷하다. |
| Qwen2.5-7B + Contriever | 0.85 / 0.49 | 0.24 / 0.71 | Contriever에서도 높은 방어 효과를 보인다. |
| Qwen2.5-7B + DPR | 0.88 / 0.47 | 0.27 / 0.68 | DPR 조건에서도 공격 성공률을 3분의 1 이하로 낮춘다. |
| Mistral-7B + ANCE | 0.88 / 0.24 | 0.31 / 0.57 | 취약한 모델에서도 정확도 개선이 동반된다. |
| Llama-3.1-8B + Contriever | 0.76 / 0.37 | 0.26 / 0.63 | 검색기와 LLM을 바꿔도 큰 흐름은 유지된다. |
Table 4에서 볼 수 있듯, BiRD는 공격 성공률을 낮추면서 정확도를 회복하는 방향으로 작동한다. 이 결과는 context consistency가 단순히 특정 데이터셋의 아티팩트보다, 공격 문서들이 목표 질의 근처에서 서로 비슷한 임베딩 구조를 만든다는 더 일반적인 현상을 포착한다는 해석과 맞물린다.
5.3 HotpotQA 결과: multi-hop 환경의 의미
HotpotQA는 multi-hop reasoning을 요구하기 때문에, 방어가 정상 근거를 과도하게 제거하면 accuracy 손실이 크게 드러난다. VanillaRAG의 PoisonedRAG ASR은 Qwen2.5-7B 기준 ANCE 0.93, Contriever 0.93, DPR 0.95로 매우 높다. BiRD는 이를 0.22, 0.24, 0.41로 낮춘다. DPR에서 감소 폭이 상대적으로 작지만, 여전히 VanillaRAG 대비 큰 개선이다.
HotpotQA 결과는 BiRD의 장점과 한계를 동시에 보여 준다. 장점은 multi-hop 환경에서도 공격 문서의 랭킹 응집성이 여전히 방어 신호로 작동한다는 점이다. 한계는 복합 질의에서는 정상 문서도 서로 강하게 연결될 수 있어 context consistency만으로 공격 문서를 완벽하게 분리하기 어렵다는 점이다. 예를 들어 두 hop을 연결하는 근거 문서들이 모두 같은 엔티티나 사건을 공유하면 정상 문서 간 backward alignment도 높아질 수 있다.
Table 5: HotpotQA에서 대표 조합별 PoisonedRAG 방어 결과
| 모델·검색기 | VanillaRAG PoisonedRAG ASR/ACC | BiRD PoisonedRAG ASR/ACC | 해석 |
|---|---|---|---|
| Qwen2.5-7B + ANCE | 0.93 / 0.24 | 0.22 / 0.59 | 강한 공격 조건에서도 ASR을 크게 낮춘다. |
| Qwen2.5-7B + Contriever | 0.93 / 0.29 | 0.24 / 0.69 | accuracy 회복 폭이 특히 크다. |
| Qwen2.5-7B + DPR | 0.95 / 0.24 | 0.41 / 0.62 | DPR 조건에서는 잔여 공격 성공률이 더 높다. |
| Mistral-7B + Contriever | 0.93 / 0.16 | 0.24 / 0.54 | 오염에 취약한 모델에서도 방어 후 정확도가 회복된다. |
| Llama-3.1-8B + ANCE | 0.93 / 0.15 | 0.17 / 0.63 | 모델이 바뀌어도 ranking defense의 효과가 유지된다. |
Table 5는 multi-hop QA에서도 ranking defense가 실질적인 방어선을 만들 수 있음을 보여 준다. 다만 HotpotQA에서는 여러 정상 문서가 함께 답을 구성하므로, threat filtering이 정상 근거를 얼마나 보존하는지 더 세밀하게 봐야 한다. BiRD의 accuracy가 좋아지는 조합이 많지만, 배포 시스템에서는 문서 제거 후 남은 근거가 multi-hop chain을 끊지 않는지 별도의 trace 검사가 필요하다.
Figure 3: Rank position poison frequency statistical heatmaps
Figure 3은 포이즈닝 문서가 forward ranking과 backward ranking에서 어떤 위치 분포를 보이는지 요약한다. 왼쪽 열은 공격 문서가 forward 상위권에 몰리는 top-heavy 패턴을 보여 주고, 오른쪽 행렬은 악성 문서를 pivot으로 삼았을 때 다른 악성 문서가 backward 상위권에 반복 등장하는 현상을 보여 준다. BiRD의 핵심 가정은 바로 이 분포 차이가 의미 분석보다 가볍고 강한 보안 신호라는 데 있다. 방어 점수의 직관이 표나 수식보다 이 heatmap에서 가장 선명하게 드러난다.
Figure 4: t-SNE visualization of benign documents, poisoned documents, and queries
Figure 4의 t-SNE 시각화에서는 poisoned document가 붉은 표식으로 조밀하게 뭉치고, benign document는 더 넓게 퍼진다. 공격자는 목표 질의 근처로 여러 악성 문서를 옮겨야 하므로 비슷한 방향의 임베딩 조정이 반복된다. 이 군집성은 backward retrieval에서 악성 문서끼리 서로를 끌어올리는 원인이 되고, BiRD가 ranking consistency를 위험 신호로 삼는 근거가 된다. 다만 t-SNE는 설명용 투영이므로 실제 판정은 원래 임베딩 공간의 순위 리스트에서 수행된다.
5.4 모델별 차이를 어떻게 해석할 것인가
세 LLM의 결과를 함께 보면 방어 성능은 retriever 단계에서 결정되지만, 최종 피해 규모는 생성 모델의 성향에도 영향을 받는다는 점이 드러난다. 같은 poisoned context를 넣어도 어떤 모델은 문서의 주장에 더 강하게 끌리고, 어떤 모델은 내부 지식이나 instruction following 패턴 때문에 공격 문서의 지시를 덜 따른다. BiRD가 앞단에서 악성 문서를 제거하면 이런 모델별 취약성 차이를 완전히 없애지는 못해도, LLM이 마주하는 위험 문맥의 밀도를 줄인다. 그래서 Mistral-7B처럼 일부 조건에서 공격에 더 취약한 모델도 방어 후 accuracy가 크게 회복된다.
이 관점은 RAG 시스템 평가에서 retriever와 generator를 분리해 보아야 한다는 사실을 다시 확인시킨다. Retriever가 악성 문서를 top-k 안에 넣는 순간 공격 기회가 생기고, generator는 그 문서를 얼마나 설득력 있게 받아들이는지를 결정한다. BiRD는 첫 번째 단계를 겨냥한다. 따라서 BiRD 적용 후에도 특정 LLM이 남은 악성 문서 하나에 과도하게 반응한다면, 생성 단계의 instruction hierarchy, citation requirement, answer abstention 정책을 추가로 붙여야 한다.
결과 표에서 clean accuracy를 함께 보는 것도 중요하다. 어떤 방어는 공격 상황에서는 안전해 보이지만 clean setting에서 정상 문서까지 많이 제거해 정확도를 잃는다. BiRD는 많은 조합에서 clean 또는 attacked accuracy를 유지하지만, 모든 조합에서 압도적인 최고점은 아니다. 이 사실은 BiRD를 “항상 최상위 accuracy를 주는 만능 필터”로 읽기보다, 공격 성공률과 지연 시간, 정상 정확도 사이의 균형을 좋게 만드는 ranking-level defense로 읽어야 한다는 뜻이다.
5.5 공격별 차이: PoisonedRAG와 PIA를 나누어 보기
논문은 PoisonedRAG뿐 아니라 PIA 방어 결과도 보고한다. PIA에서는 MSMARCO에서 $\epsilon=2.5$를 PoisonedRAG validation set으로 선택한 뒤 그대로 적용한다. 결과적으로 BiRD는 Contriever 0.27/0.63, ANCE 0.22/0.69, DPR 0.25/0.63 수준의 ASR/ACC를 보인다. ReliabilityRAG도 일부 조건에서 강하지만, BiRD는 ranking signal만으로 유사한 수준의 방어와 정확도 균형을 만든다.
이 실험의 의미는 threshold가 한 공격 방식에만 맞춰진 값인지 확인하는 데 있다. 방어가 특정 공격 생성기에 과적합되면, 다른 공격에서는 점수 분포가 달라져 효과가 급격히 줄어든다. BiRD는 PoisonedRAG validation set에서 고른 threshold가 PIA에서도 작동한다고 보고함으로써, 악성 문서의 공통적인 랭킹 응집성을 잡고 있다는 해석을 제시한다. 다만 adaptive attack까지 포함한 더 넓은 공격군에서는 이 일반화가 다시 검증되어야 한다.
Table 10: PIA 방어 결과 요약
| 방어 방법 | Contriever ASR/ACC | ANCE ASR/ACC | DPR ASR/ACC | PIA 해석 |
|---|---|---|---|---|
| RobustRAG | 0.71 / 0.61 | 0.69 / 0.52 | 0.65 / 0.58 | ASR이 높게 남아 강한 주입에는 취약하다. |
| InstructRAG | 0.53 / 0.55 | 0.63 / 0.56 | 0.50 / 0.55 | LLM 지시 기반 방어가 일정 부분 작동한다. |
| ReliabilityRAG | 0.30 / 0.62 | 0.27 / 0.59 | 0.31 / 0.59 | 모순 그래프 기반 방어가 낮은 ASR을 보인다. |
| BiRD | 0.27 / 0.63 | 0.22 / 0.69 | 0.25 / 0.63 | ranking signal만으로 가장 낮은 ASR과 좋은 ACC 균형을 낸다. |
Table 10은 BiRD가 PoisonedRAG 전용 방어에 머물지 않고 prompt injection attack 조건에서도 강한 결과를 냈음을 보여 준다. 특히 ANCE 조합에서 0.22/0.69는 낮은 공격 성공률과 높은 정확도를 동시에 달성한다. 이 결과는 RAG 공격이 표면적으로는 문서 내용이나 프롬프트 문구를 바꾸더라도, 검색 상위권을 장악하기 위해 유사한 랭킹 흔적을 남길 수 있음을 시사한다.
5.6 Figure 3 계열 heatmap의 해석
논문 부록과 본문에는 여러 retriever·dataset 조합에서 포이즈닝 문서의 위치 빈도를 시각화한 heatmap이 제시된다. 이 그림들은 단순히 “악성 문서가 앞에 있다”는 사실보다 더 많은 정보를 준다. Forward ranking에서는 악성 문서가 상위 위치에 집중되고, backward ranking에서는 악성 pivot을 기준으로 다른 악성 문서가 높은 빈도로 다시 등장한다. 이 두 현상이 동시에 나타나야 BiRD의 분리 논리가 완성된다.
Heatmap을 운영 지표로 바꾼다면, 질의군별로 rank-position poison frequency와 backward alignment matrix를 샘플링해 대시보드에 올릴 수 있다. 실제 서비스에서는 악성 label이 없으므로 poison frequency를 직접 계산할 수는 없지만, 새로 유입된 문서군, 동일 출처 문서군, 비정상적으로 빠르게 상위 노출이 늘어난 문서군을 pseudo-group으로 묶어 유사한 행렬을 볼 수 있다. 이렇게 하면 BiRD score가 갑자기 높아지는 query family를 더 빨리 발견할 수 있다.
6. 추가 분석 및 Ablation Study: 어떤 신호가 실제로 먹히는가
6.1 양방향 점수 ablation
Ablation 결과는 BiRD가 forward relevance와 backward consistency를 모두 필요로 한다는 점을 보여 준다. HotpotQA, MSMARCO, NQ에서 forward retrieval 점수만 쓰거나 backward retrieval 점수만 쓸 때보다, 두 신호를 함께 쓰는 bidirectional retrieval 설정이 가장 좋은 균형을 낸다. 예를 들어 MSMARCO에서 forward only는 ASR/ACC 0.41/0.75, backward only는 0.42/0.71인데, bidirectional은 0.24/0.71로 ASR을 더 낮춘다.
이 결과는 직관과 잘 맞는다. Forward relevance는 질의와 문서가 얼마나 가까운지 알려 주지만, 공격자가 직접 최적화하는 목표이기도 하다. Backward consistency는 악성 문서 묶음의 구조적 응집성을 포착하지만, 정상 문서의 관련 군집까지 공격으로 오인할 수 있다. 두 신호를 결합하면 “질의와 매우 가깝고, 동시에 자기들끼리 과하게 일관된 문서”를 더 정확히 분리할 수 있다.
Table 6: Bidirectional score ablation 결과
| 설정 | $r_{cr}^{i}$ 사용 | $r_{cc}^{i}$ 사용 | HotpotQA ASR/ACC | MSMARCO ASR/ACC | NQ ASR/ACC |
|---|---|---|---|---|---|
| Forward Retrieval | 사용 | 미사용 | 0.34 / 0.70 | 0.41 / 0.75 | 0.53 / 0.68 |
| Backward Retrieval | 미사용 | 사용 | 0.52 / 0.62 | 0.42 / 0.71 | 0.44 / 0.70 |
| Bidirectional Retrieval | 사용 | 사용 | 0.24 / 0.69 | 0.24 / 0.71 | 0.16 / 0.62 |
Table 6에서 NQ의 bidirectional ASR 0.16은 forward only 0.53, backward only 0.44보다 훨씬 낮다. Accuracy는 forward only가 더 높은 구간도 있지만, 공격 성공률 감소 폭까지 함께 보면 결합 점수의 효용이 분명하다. 방어 시스템에서는 clean accuracy와 attacked accuracy를 함께 봐야 하며, BiRD는 공격 조건에서의 안전성을 우선 확보하면서 accuracy 손실을 제한하는 쪽에 가깝다.
6.2 ranking similarity metric 비교
논문은 ranking similarity metric으로 Jaccard, RBO, Spearman을 비교한다. Jaccard는 공통 문서 집합의 겹침을 보고, RBO는 상위 순위 겹침에 더 민감한 지표이며, Spearman은 공통 문서의 순서 상관을 본다. 결과적으로 Spearman을 사용한 BiRD가 가장 큰 ASR 감소와 ACC 개선을 보인다. HotpotQA 예시에서 VanillaRAG는 0.93/0.29이고, Spearman 기반 BiRD는 0.24/0.69까지 개선된다.
이 결과는 BiRD의 신호가 단순한 “문서가 겹치는가”보다 “겹친 문서들이 어떤 순서 관계를 유지하는가”에 더 가깝다는 뜻이다. 악성 문서 묶음은 서로를 상위에 끌어올릴 뿐 아니라, forward ranking의 순서와 backward ranking의 순서가 비슷하게 맞춰지는 경향을 보인다. Spearman은 이 순서 관계를 직접 읽기 때문에 Jaccard보다 더 강한 분리력을 제공한다.
Table 7: Ranking similarity metric 비교
| 방법 | Jaccard ASR/ACC | RBO ASR/ACC | Spearman ASR/ACC | 해석 |
|---|---|---|---|---|
| VanillaRAG | 0.93 / 0.29 | 0.93 / 0.29 | 0.93 / 0.29 | 방어가 없으므로 metric 선택과 무관하다. |
| BiRD | 0.37 / 0.54 | 0.88 / 0.40 | 0.24 / 0.69 | Spearman이 순서 상관을 가장 잘 포착한다. |
| $|\Delta|$ | 0.56 / 0.25 | 0.05 / 0.11 | 0.69 / 0.40 | Spearman에서 ASR 감소와 ACC 개선 폭이 가장 크다. |
Table 7은 ranking defense를 설계할 때 metric 선택이 단순 구현 세부사항을 넘어 성능의 핵심이라는 점을 말해 준다. Jaccard처럼 공통 문서 수만 보는 방식은 악성 문서 군집을 어느 정도 잡지만, 순서 관계의 비정상적인 일관성까지는 충분히 읽지 못한다. RBO는 상위권 overlap에는 강하지만, 이 실험에서는 Spearman만큼 공격 문서의 구조적 정렬을 분리하지 못했다.
6.3 k, epsilon, m 변화에 따른 동적 성능
BiRD는 $k$, $\epsilon$, 공격 문서 수 $m$에 민감하다. $k$는 처음에 얼마나 많은 문서를 가져와 backward retrieval을 수행할지 결정한다. 너무 작은 $k$는 정상 근거와 악성 문서를 충분히 비교하지 못하고, 너무 큰 $k$는 비용을 늘리며 noise를 포함할 수 있다. 논문은 기본값으로 $k=20$을 사용하고, 여러 데이터셋에서 ASR과 ACC가 어떻게 변하는지 막대그래프로 보여 준다.
$\epsilon$은 clean subset을 고르는 threshold다. threshold가 낮으면 더 많은 문서를 제거해 ASR을 낮출 수 있지만, 정상 문서까지 줄어 accuracy가 떨어질 수 있다. threshold가 높으면 정상 문서 보존은 쉬워지지만 악성 문서가 남을 가능성이 커진다. 논문은 PoisonedRAG validation set에서 고른 $\epsilon=2.5$가 PIA 방어에서도 일정하게 작동한다고 보고한다. 이 결과는 threshold가 공격 종류 하나에만 과적합되지 않았다는 근거로 제시된다.
공격 문서 수 $m$이 늘어나면 방어는 더 어려워진다. 악성 문서가 많아질수록 voting 기반 방어는 합의 오염에 취약해지고, 검색 결과 상위권에 악성 문서가 반복적으로 들어올 가능성이 커진다. BiRD는 이 상황에서도 악성 문서끼리의 backward alignment가 강해지는 현상을 활용할 수 있지만, 정상 문서와 악성 문서가 동일한 주제권에서 섞이는 도메인에서는 false positive와 false negative가 함께 늘 수 있다.
Figure 5: ASR and ACC changes across datasets with respect to k in BiRD
Figure 5는 초기 검색 문서 수 $k$가 변할 때 ASR과 ACC가 어떻게 움직이는지 보여 준다. $k$가 커지면 더 많은 후보를 비교해 ranking consistency를 안정적으로 계산할 수 있지만, 역방향 검색 비용과 잡음도 함께 늘어난다. 이 그래프의 의미는 BiRD가 하나의 고정 top-k 상황에만 맞춘 방법이 아니며, 운영자가 지연 시간과 방어 강도를 조정할 수 있다는 데 있다. 실제 서비스에서는 top-k 확대가 문맥 예산과 index latency까지 함께 건드리므로 이 곡선을 별도 튜닝 지표로 봐야 한다.
Figure 6: ASR and ACC versus the filtering threshold epsilon in BiRD
Figure 6은 threshold $\epsilon$ 변화에 따른 ASR과 ACC를 나타낸다. 낮은 threshold는 더 공격적인 필터링을 만들고, 높은 threshold는 더 많은 문서를 통과시킨다. 그래프를 볼 때는 ASR 최저점만 고르면 안 된다. 정상 문서 제거가 많아지면 accuracy가 떨어질 수 있으므로, 실제 서비스에서는 validation set에서 공격 성공률과 답변 정확도의 허용 범위를 함께 정해야 한다. 이 그림은 BiRD의 핵심 운영 파라미터가 threshold calibration이라는 점을 가장 직접적으로 보여 준다.
Figure 7: ASR and ACC changes with respect to attack corruption size m
Figure 7은 공격자가 주입하는 문서 수 $m$이 늘어날 때 성능이 어떻게 변하는지 보여 준다. 방어 입장에서는 $m$이 커질수록 검색 상위권의 악성 밀도가 올라가고, 정상 문서가 밀려날 위험이 커진다. BiRD가 이런 조건에서도 ranking structure를 활용해 ASR을 낮춘다는 점은 의미가 있지만, 공격 문서가 정상 문서 분포를 더 정교하게 모방할 경우 추가 검증이 필요하다. 이 실험은 공격 강도가 커질 때 방어 점수가 어느 지점부터 포화되는지 보는 기준선 역할을 한다.
6.4 런타임 분석
효율성 분석에서 BiRD의 평균 runtime은 여러 조합에서 InstructRAG, ReliabilityRAG, RobustRAG보다 낮다. Qwen2.5-7B 기준 NQ-Contriever에서 InstructRAG는 5.57초, ReliabilityRAG는 8.92초, RobustRAG는 25.73초, BiRD는 3.00초다. HotpotQA-ANCE에서는 BiRD가 6.05초로 RobustRAG 23.43초, ReliabilityRAG 26.53초보다 낮다. Llama-3.1-8B 조건에서도 BiRD는 대체로 3~8초대에 머무른다.
논문은 이론적으로 BiRD의 시간 복잡도를 $O((k+1)N+k^2)$로 설명한다. 단일 retrieval 비용을 $O(N)$으로 보면, forward retrieval 한 번과 $k$개의 backward retrieval이 주요 비용이다. 하지만 $k$는 보통 20 정도로 작고, matrix computation을 활용하면 backward retrieval을 병렬화할 수 있다. 또한 코퍼스가 정적이면 문서 간 pairwise similarity를 미리 계산하거나 캐시할 수 있어 실제 online overhead를 더 줄일 수 있다.
Table 8: Qwen2.5-7B 조건의 평균 runtime 예시
| 방법 | NQ Contriever | HotpotQA ANCE | MSMARCO DPR | 운영 해석 |
|---|---|---|---|---|
| InstructRAG | 5.57초 | 6.18초 | 5.71초 | LLM rationale 생성 비용이 붙는다. |
| ReliabilityRAG | 8.92초 | 26.53초 | 25.48초 | 문서별 답변과 그래프 풀이 비용이 크다. |
| RobustRAG | 25.73초 | 23.43초 | 21.68초 | 문맥 축약·분석 비용이 높게 나타난다. |
| BiRD | 3.00초 | 6.05초 | 4.22초 | 랭킹 재사용과 병렬화로 비용이 낮다. |
Table 8은 BiRD가 방어 성능과 배포 비용 측면에서 모두 경쟁력이 있음을 보여 준다. 특히 검색 기반 서비스에서는 평균 지연 시간과 tail latency가 모두 중요하다. BiRD는 retriever 연산 쪽으로 비용이 집중되어 있어 캐싱, 배치 처리, vector index 최적화로 개선할 여지가 있다. 반면 LLM을 여러 번 호출하는 방어는 모델 서버 부하와 토큰 비용을 직접 증가시킨다.
7. 한계점 및 향후 연구 방향: 랭킹 신호가 놓칠 수 있는 장면
7.1 정상 문서의 높은 응집성과 false positive
BiRD의 가장 큰 가정은 악성 문서가 정상 문서보다 더 강한 backward-forward alignment를 보인다는 것이다. 많은 open-domain QA 환경에서는 이 가정이 잘 맞을 수 있다. 정상 문서는 서로 다른 출처와 표현으로 흩어져 있고, 악성 문서는 목표 답을 위해 비슷한 방향으로 최적화되기 때문이다. 하지만 전문 도메인에서는 정상 문서 자체가 높은 응집성을 가질 수 있다. 예를 들어 법률 조항, 표준 운영 절차, 제품 매뉴얼은 같은 문구와 구조를 반복하므로 정상 문서 간 backward ranking이 강하게 맞을 수 있다.
이 경우 BiRD는 정상 문서를 악성으로 오인할 위험이 있다. 특히 문서 코퍼스가 작거나 같은 템플릿으로 작성된 문서가 많으면 Spearman correlation이 높게 나올 수 있다. 논문은 세 공개 QA 데이터셋에서 강한 결과를 보이지만, 기업 내부 지식 베이스나 규정 문서처럼 문체가 표준화된 환경에서는 별도의 calibration이 필요하다. 따라서 배포 전에 정상 코퍼스의 rank consistency 분포를 측정하고, domain-specific threshold를 잡는 절차가 따라야 한다.
7.2 적응형 공격과 랭킹 구조 은폐
BiRD가 알려지면 공격자는 ranking consistency를 낮추는 방향으로 적응할 수 있다. 예를 들어 악성 문서를 서로 덜 비슷하게 만들거나, 각 문서가 서로 다른 benign neighbor를 끌어오도록 임베딩을 분산시킬 수 있다. 목표 query와의 forward relevance를 유지하면서 backward alignment를 낮추는 공격은 더 어렵지만 불가능하다고 볼 수 없다. 특히 공격자가 retriever 모델을 알고 있는 white-box 상황에서는 이중 목적 최적화가 가능하다.
논문은 white-box와 black-box 공격 모두에 적용 가능하다고 설명하지만, 실제 adaptive attack에 대한 분석은 더 필요하다. 공격자가 Spearman correlation 기반 필터를 우회하도록 문서 집합을 최적화하면, BiRD의 단일 점수만으로는 탐지가 약해질 수 있다. 후속 연구에서는 공격자가 ranking defense의 존재를 알고 있다는 stronger threat model을 두고, forward relevance, backward diversity, semantic plausibility를 동시에 조작하는 공격을 구성해 볼 필요가 있다.
7.3 threshold 선택과 운영 모니터링
Threshold $\epsilon$ 선택은 BiRD의 실용성을 좌우한다. 논문은 PoisonedRAG validation set에서 고른 $\epsilon=2.5$가 PIA 방어에도 작동한다고 보이지만, 실제 서비스에서는 공격 유형과 코퍼스가 계속 바뀐다. 공격 문서가 얼마나 자주 들어오는지, 정상 문서의 템플릿 반복이 어느 정도인지, retriever를 업데이트했는지에 따라 점수 분포가 달라질 수 있다. 따라서 threshold는 한 번 정하고 끝낼 값보다 지속적으로 재검정해야 하는 운영 파라미터에 가깝다.
좋은 운영 방식은 BiRD 점수를 로그로 남기고, 제거된 문서와 통과된 문서의 샘플을 주기적으로 검토하는 것이다. 특히 high-risk query family, 신규 업로드 문서, 갑자기 유사도가 높아진 문서군에 대해 rank consistency 분포를 따로 보면 이상 징후를 빨리 찾을 수 있다. 이 과정은 내가 이전에 정리한 Evidence Utility in RAG와도 연결된다. 최종 답변만 평가하는 대신, 개별 근거 문서가 답변과 공격 성공에 어떤 영향을 주었는지 개입 기반으로 확인해야 한다.
7.4 운영 적용 시나리오: 어디에 붙이면 가장 자연스러운가
BiRD를 실제 RAG 서비스에 붙일 때 가장 자연스러운 위치는 retriever와 prompt assembly 사이다. 사용자의 질의가 들어오면 기존처럼 top-k 문서를 검색하고, BiRD가 그 후보군에 대해 backward retrieval과 rank similarity 계산을 수행한다. 이후 clean subset만 prompt builder로 넘긴다. 이렇게 배치하면 생성 모델, 프롬프트 템플릿, 후처리 정책을 크게 바꾸지 않아도 된다. 서비스 관점에서는 “검색된 문서를 그대로 넣기 전에 하나의 랭킹 보안 필터를 통과시킨다”는 형태가 되므로, 기존 RAG 코드베이스에 점진적으로 넣기 쉽다.
운영자가 먼저 확인해야 할 값은 세 가지다. 첫째, 정상 트래픽에서 $r_{cc}^{i}$ 분포가 어떤 모양을 갖는지다. 둘째, 제거된 문서가 최종 답변의 evidence coverage를 얼마나 줄이는지다. 셋째, 공격 validation set에서 ASR 감소가 실제로 business-critical query에 집중되는지다. BiRD 논문은 공개 데이터셋에서 평균 지표를 제시하지만, 제품 환경에서는 전체 평균보다 특정 질의군의 위험도가 더 중요하다. 예컨대 결제, 의료, 법률, 보안 설정처럼 잘못된 답의 비용이 큰 질의군에서는 threshold를 더 보수적으로 잡고, 일반 FAQ성 질의에서는 accuracy 손실을 더 민감하게 볼 수 있다.
또 하나의 설계 포인트는 문서 단위 필터링과 문맥 구성 단위 필터링을 분리하는 것이다. BiRD는 기본적으로 top-k 문서 중 위험한 문서를 제거한다. 하지만 prompt assembly 단계에서는 문서 전체가 아니라 passage, chunk, section 단위로 문맥이 들어가는 경우가 많다. 문서 하나가 길고 내부에 정상 내용과 의심스러운 삽입 문단이 섞여 있다면, 문서 단위 제거는 정확도를 과도하게 희생할 수 있다. 후속 구현에서는 BiRD 점수를 chunk 단위 ranking으로 내려 보거나, high-risk document 안에서 어느 chunk가 backward consistency를 끌어올리는지 추적하는 방식이 필요하다.
검색 인프라 측면에서는 backward retrieval 비용을 어떻게 amortize할지가 중요하다. 코퍼스가 자주 바뀌지 않는 서비스라면 문서-문서 similarity cache를 유지할 수 있고, 상위 문서 $d_i^q$가 들어왔을 때 backward ranking을 빠르게 조회할 수 있다. 반대로 실시간 업로드가 많은 서비스에서는 cache invalidation이 어렵다. 이때는 신규 문서와 최근 변경 문서에 대해 더 촘촘한 BiRD 검사를 수행하고, 오래된 신뢰 문서는 낮은 빈도로 재검사하는 계층형 정책이 현실적이다. 논문이 말한 평균 지연 1초 미만이라는 장점은 이런 cache 전략을 붙일 때 더 안정적으로 유지된다.
7.5 실패 모드: 정상 다양성과 공격 다양성이 뒤섞이는 경우
BiRD가 가장 잘 작동하는 장면은 악성 문서가 같은 목표 답을 향해 서로 비슷하게 최적화되고, 정상 문서는 서로 다양한 관점과 표현을 갖는 경우다. 하지만 실패 모드는 이 구분이 흐려질 때 발생한다. 정상 문서가 같은 원본에서 파생된 mirror page, 문서화 템플릿, 자동 생성 요약본으로 구성되어 있으면 정상 문서끼리도 높은 alignment를 보일 수 있다. 반대로 공격자가 일부러 문체와 출처를 다양화하고, 각 악성 문서가 다른 정상 문서를 이웃으로 갖게 만들면 악성 문서의 alignment는 낮아질 수 있다.
이 문제를 줄이려면 BiRD 점수만 최종 판정으로 쓰기보다 provenance signal을 함께 저장해야 한다. 문서 출처, 최초 수집 시점, 최근 수정 시점, 작성자 신뢰도, 원본 URL domain, 중복 문서 fingerprint 같은 값은 ranking structure가 애매할 때 중요한 보조 증거가 된다. 예를 들어 같은 domain에서 같은 날 대량으로 들어온 문서들이 특정 target query에서 동시에 높은 relevance와 높은 consistency를 보인다면, 단순한 정상 문서 군집보다 공격 가능성을 더 높게 볼 수 있다.
또한 BiRD의 clean subset을 바로 생성 모델에 넘기기 전에, 제거 전후의 answer trace를 샘플링해 비교할 수 있다. 제거 전에는 target false answer가 나오고 제거 후에는 정답으로 돌아오는 질의는 BiRD의 긍정 사례다. 제거 후에도 답이 틀리거나, 제거 전에는 맞았는데 제거 후 틀리는 질의는 false negative 또는 false positive 후보가 된다. 이런 trace를 모으면 threshold 조정이 감으로 흐르지 않고, 실제 답변 변화와 연결된 운영 데이터가 된다.
평가 로그에는 최소한 query id, forward ranking, 제거된 문서 id, 각 문서의 $r_{cr}^{i}$와 $r_{cc}^{i}$, 최종 score, threshold, 생성 모델 답변, ground truth 또는 human label을 함께 남기는 편이 좋다. 이 정보가 있어야 나중에 “왜 이 문서를 제거했는가”, “왜 공격 문서가 남았는가”, “threshold를 바꾸면 어떤 질의가 영향을 받는가”를 재현할 수 있다. BiRD는 계산 방식이 비교적 명확하기 때문에, 이런 audit log와 결합했을 때 LLM 판별기보다 설명 가능성이 좋아진다.
7.6 기존 RAG 품질 지표와 함께 읽는 법
BiRD를 평가할 때 ASR과 ACC만 보면 보안 효과는 보이지만 검색 품질 변화의 세부 원인은 덜 보인다. Retrieval ranking 관점에서는 MRR, nDCG, recall@k, query coverage를 함께 봐야 한다. 예를 들어 BiRD 적용 후 ACC가 내려갔다면, 정상 정답 문서가 제거된 것인지, 정답 문서는 남았지만 prompt 앞쪽 위치가 밀린 것인지, 여러 근거 중 하나가 빠져 multi-hop chain이 끊긴 것인지 구분해야 한다. 이런 구분이 있어야 threshold를 낮출지, top-k를 넓힐지, chunk 단위 필터링으로 바꿀지 결정할 수 있다.
Evidence utility 관점에서는 각 문서의 제거가 답변에 미치는 영향을 개입 실험으로 볼 수 있다. BiRD가 제거한 문서를 다시 넣었을 때 오답이 재현되면 해당 문서는 실제 공격 기여도가 높다. 제거해도 답이 바뀌지 않으면 그 문서는 위험 점수는 높았지만 생성 단계에서는 영향이 작았을 수 있다. 반대로 BiRD가 통과시킨 문서를 하나씩 제거했을 때 정답이 회복되는 경우는 남은 공격 문서나 오염 chunk를 찾는 단서가 된다. 이 방식은 BiRD를 단일 필터가 아니라 RAG 평가 루프 안의 진단 도구로 바꿔 준다.
Multi-hop 질의에서는 query coverage와 BiRD 점수의 충돌이 특히 중요하다. 어떤 문서는 backward consistency가 높아 의심스럽지만, 동시에 두 번째 hop을 완성하는 유일한 근거일 수 있다. 이런 경우 무조건 제거하면 답변이 빈다. 따라서 high-risk score를 받은 문서를 바로 버리기보다, 같은 엔티티와 관계를 지지하는 대체 문서가 있는지 확인하는 coverage-aware filtering이 필요하다. BiRD 논문은 이 부분을 깊게 다루지는 않지만, 실제 시스템에서는 공격 방어와 근거 보존 사이의 접점을 이루는 핵심 확장 지점이다.
Table 9: BiRD를 기존 RAG 품질 지표와 함께 해석하는 방법
| 운영 지표 | BiRD와의 연결 | 판단에 주는 의미 |
|---|---|---|
| ASR | 악성 문서가 남아 목표 오답을 유도하는 비율 | 방어 강도의 1차 지표다. |
| ACC | 공격 또는 방어 후 최종 답변 정확도 | 정상 근거 손실과 방어 효과를 함께 반영한다. |
| MRR/nDCG | 정답 근거가 prompt 앞쪽에 남는지 확인 | 필터링 후 순위 품질 변화를 보여 준다. |
| Query coverage | 질문의 핵심 엔티티와 관계가 남았는지 확인 | multi-hop 근거 손실을 찾는 데 필요하다. |
| Evidence utility | 문서 제거가 답변을 실제로 바꾸는지 측정 | 위험 점수와 실제 기여도를 연결한다. |
Table 9처럼 지표를 나눠 보면 BiRD의 결과를 더 실용적으로 읽을 수 있다. ASR이 내려갔다는 사실은 방어의 출발점이고, ACC와 ranking metric은 방어가 정상 검색 품질을 얼마나 보존했는지 말해 준다. Query coverage와 evidence utility는 왜 특정 질의에서 답이 좋아지거나 나빠졌는지 설명한다. 이 조합이 있어야 BiRD가 연구용 성능표를 넘어 운영 가능한 RAG 보안 레이어가 된다.
7.7 배포 체크리스트: BiRD를 붙이기 전에 확인할 것
BiRD를 붙이기 전에는 먼저 정상 코퍼스의 랭킹 지문을 만들어야 한다. 대표 질의 집합을 고르고, 각 질의의 forward ranking과 상위 문서의 backward ranking을 저장한 뒤, 문서 유형별 $r_{cc}^{i}$ 분포를 확인한다. 이 기준선이 있어야 공격 상황에서 점수가 높아졌을 때 그것이 실제 이상 신호인지, 원래 해당 도메인의 문서가 비슷하게 쓰이는 특성인지 구분할 수 있다. 특히 FAQ, 규정, API 문서처럼 같은 문장 구조가 반복되는 코퍼스는 기준선 없이 threshold를 고르면 정상 문서 제거가 늘어날 수 있다.
두 번째로는 제거 정책을 정해야 한다. BiRD가 위험하다고 판단한 문서를 완전히 제거할지, prompt 뒤쪽으로 내릴지, LLM에게 낮은 신뢰도 메타데이터와 함께 제공할지에 따라 사용자 경험이 달라진다. 보안이 최우선인 질의군에서는 제거가 맞을 수 있지만, 정보 손실 비용이 큰 지식 검색에서는 down-ranking이나 human review queue가 더 적합할 수 있다. 논문은 filtering을 기본 형태로 제시하지만, 실제 제품에서는 risk score를 여러 정책에 연결하는 편이 유연하다.
세 번째로는 retriever 업데이트와 index refresh가 BiRD 점수에 미치는 영향을 추적해야 한다. 임베딩 모델을 바꾸거나 chunking 정책을 바꾸면 forward ranking과 backward ranking이 동시에 달라진다. 이때 ASR이 실제로 바뀌지 않았는데 BiRD score 분포만 이동할 수 있다. 따라서 retriever 배포 전후에는 같은 query set에 대해 score distribution drift를 비교하고, threshold를 재보정해야 한다. 이런 검증 없이 모델을 교체하면 방어 정책이 갑자기 지나치게 느슨해지거나 보수적으로 변할 수 있다.
마지막으로 high-risk query에 대해 사람 검수 위치를 정해 두는 것이 좋다. BiRD는 자동 필터지만, 법률·의료·금융처럼 잘못된 답의 비용이 큰 영역에서는 제거된 문서와 통과 문서의 샘플을 사람이 볼 수 있어야 한다. 특히 새 문서가 대량 유입된 직후, 특정 질의군에서 ASR proxy가 급상승한 직후, threshold 변경 직후에는 human-in-the-loop 점검이 필요하다. BiRD의 숫자 로그는 이런 검수 대상을 선별하는 데 잘 맞는다.
이 체크리스트를 따르면 BiRD는 단순한 연구 논문 구현체보다 운영 가능한 보안 구성요소에 가까워진다. 핵심은 score를 계산하는 코드 자체보다, 그 score가 어떤 기준선과 비교되고 어떤 정책으로 이어지며 어떤 로그로 감사되는지를 정하는 데 있다. RAG 방어는 검색, 생성, 문서 수집, 사용자 피드백이 이어진 시스템 문제이므로, BiRD의 ranking signal도 그 흐름 속에서 다뤄야 한다.
8. 내 해석: 랭킹 방어의 약점과 다음 확장 제안
나는 BiRD의 가장 설득력 있는 부분이 “검색 결과를 또 다른 보안 로그로 읽는다”는 관점이라고 본다. 기존 RAG 방어는 문서 내용을 더 깊게 읽거나 LLM에게 더 많이 물어보는 방향으로 흐르기 쉬웠다. BiRD는 그 대신 retriever가 이미 만든 순서와 유사도 행렬 안에 공격 흔적이 남는다고 본다. 이 관점은 내가 이전에 정리했던 Retrieval Ranking Metrics, Query Coverage in Retrieval과 자연스럽게 이어진다. 다만 약점도 분명하다. 논문은 공개 QA 데이터셋과 dense retriever 조합에서 강한 결과를 보였지만, 정상 문서가 구조적으로 매우 비슷한 도메인에서 false positive가 얼마나 늘어나는지 충분히 보여 주지는 않는다. 예컨대 사내 정책 문서나 API 문서처럼 같은 템플릿을 반복하는 코퍼스에서는 정상 문서끼리도 backward ranking이 강하게 맞을 수 있다.
내가 이 논문을 확장한다면, 먼저 domain-normalized rank consistency를 붙여볼 것 같다. 질의별 $r_{cc}^{i}$만 절대 threshold로 자르기보다, 해당 코퍼스의 정상 문서군에서 기대되는 rank consistency baseline을 먼저 추정하고, 문서 유형·출처·작성 템플릿별 분포와 비교하는 방식이다. 이렇게 하면 “이 문서가 절대적으로 높은 consistency를 갖는다”보다 “같은 도메인의 정상 문서 분포에 비해 비정상적으로 높은 consistency를 갖는다”는 판단이 가능해진다. 또한 제거된 문서가 실제 답변 정확도에 어떤 영향을 주는지 evidence utility 실험과 연결하면, BiRD가 공격 문서를 잘랐는지 정상 근거를 과도하게 잃었는지 더 명확히 분리할 수 있다.
후속 실험으로는 adaptive attacker를 명시적으로 넣는 것이 좋다. 공격자가 BiRD의 score를 알고 있고, forward relevance는 높게 유지하면서 backward alignment를 낮추려는 목적 함수를 사용한다고 가정하는 것이다. 이 실험은 BiRD가 현재 공격에 대한 경험적 방어인지, 랭킹 구조에 기반한 더 넓은 보안 원리인지 가르는 시험대가 된다. 운영 관점에서는 BiRD 단독보다 문서 출처 신뢰도, 업로드 시점, 사용자 feedback, answer attribution을 함께 묶은 multi-signal 방어가 현실적이다. BiRD는 그 중 계산 비용이 낮고 온라인 추론에 붙이기 쉬운 ranking signal 레이어로 배치하는 편이 가장 자연스럽다.
9. 결론: 의미 분석보다 먼저 볼 수 있는 검색 구조 신호
BiRD는 RAG 포이즈닝 방어에서 “문서가 무슨 말을 하는가”와 “문서들이 어떤 순서 관계를 만드는가”를 분리해 본다. 포이즈닝 문서는 목표 질의의 상위권에 들어가기 위해 forward relevance를 높이고, 같은 목표를 공유하는 악성 문서끼리 backward retrieval에서도 강하게 연결된다. BiRD는 이 구조를 content relevance와 context consistency로 정량화하고, threshold 기반 필터링으로 LLM에 전달되는 문맥을 정화한다.
실험적으로 BiRD는 NQ, MSMARCO, HotpotQA에서 VanillaRAG 대비 공격 성공률을 크게 낮추고, 많은 조합에서 accuracy를 회복한다. RobustRAG, InstructRAG, ReliabilityRAG와 비교했을 때도 런타임이 낮은 편이며, Spearman rank correlation을 사용한 bidirectional score가 가장 강한 성능을 보인다. 이 결과는 랭킹 정보가 단순 평가 지표에 그치지 않고, RAG 보안에서 실시간 방어 신호로 활용될 수 있음을 보여 준다.
남는 과제는 도메인 적응과 적응형 공격이다. 정상 문서가 강하게 군집되는 코퍼스에서는 threshold calibration이 필요하고, 공격자가 ranking consistency를 의도적으로 흐릴 가능성도 고려해야 한다. 그럼에도 BiRD의 장점은 명확하다. 검색기가 이미 계산한 구조를 재사용하므로 비용이 낮고, LLM 기반 검증에 비해 배포 경로가 단순하다. RAG 시스템이 제품 환경으로 더 많이 들어갈수록, 이런 가벼운 ranking-level guardrail은 생성 단계의 safety filter와 함께 기본 방어 계층으로 자리 잡을 가능성이 있다.
10. 요약 정리: BiRD에서 가져갈 핵심 포인트
- BiRD는 RAG 코퍼스 포이즈닝을 문서 의미 분석만으로 잡지 않고, forward/backward ranking structure의 차이로 탐지한다.
- 포이즈닝 문서는 target query와 가깝게 최적화되어 forward ranking 상위에 몰리고, 서로 비슷한 악성 문서를 backward ranking에서도 반복적으로 끌어올린다.
- Content relevance는 질의와 문서의 유사도를, context consistency는 forward ranking과 backward ranking의 순서 상관을 측정한다.
- Spearman rank correlation 기반 점수가 Jaccard나 RBO보다 공격 문서의 순서 정렬 패턴을 더 잘 포착했다.
- NQ, MSMARCO, HotpotQA와 세 dense retriever, 세 LLM 조합에서 BiRD는 VanillaRAG 대비 ASR을 크게 낮추고 ACC를 회복했다.
- RobustRAG, InstructRAG, ReliabilityRAG보다 낮은 평균 runtime을 보이며, retriever 캐시와 병렬화를 활용할 여지가 크다.
- 가장 중요한 한계는 정상 문서도 높은 ranking consistency를 가질 수 있는 전문 도메인에서 false positive가 늘 수 있다는 점이다.
- 실제 배포에서는 threshold $\epsilon$을 고정값으로 두기보다 코퍼스별 정상 분포, 공격 validation set, 제거 문서 샘플링을 함께 사용해 보정해야 한다.
- 후속 연구는 BiRD를 알고 우회하려는 adaptive poisoning attack과 domain-normalized consistency score를 함께 다뤄야 한다.
'[논문 리뷰] > [최신 논문]' 카테고리의 다른 글
| [arXiv 2605.22866] BOHM: 계층형 라우팅 가중치로 복합 AI 시스템을 무비용 귀속하기 (0) | 2026.05.25 |
|---|---|
| [arXiv 2605.20948] Memory Grafting: 오프라인 조건부 메모리로 언어 모델 사전학습을 확장하기 (0) | 2026.05.22 |
| [arXiv 2605.15202] DeepSlide: 산출물 생성에서 발표 전달까지 이어지는 멀티 에이전트 프레젠테이션 시스템 (0) | 2026.05.19 |
| [arXiv 2605.15871] AIRA: 에이전트가 발견하는 신경망 아키텍처와 재귀적 자기개선 (0) | 2026.05.19 |
| [arXiv 2605.15155] SDAR: 자기증류 에이전트 강화학습으로 토큰 신호를 거르기 (0) | 2026.05.19 |