본문 바로가기
Paper Review

[논문리뷰] Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks

by mjk0618 2023. 12. 9.

 

RAG는 언어 모델의 할루시네이션을 줄이기 위한 기술로 널리 사용되고 있습니다. RAG의 풀네임은 Retrieval-Augmented Generation으로 리트리버로 생성 능력을 보완한 것으로 볼 수 있습니다. 언어 모델은 어떤 시퀀스가 주어졌을 때 그 다음에 나타날 토큰을 예측하는 방식으로 학습했기 때문에, 애초에 텍스트의 사실성을 고려하도록 훈련되진 않았습니다. 언어 모델은 그저 그럴듯한 문장을 완성하는 목표에만 집중할 뿐입니다. 다만 학습 데이터가 대부분 사실에 기반한 텍스트로 이루어졌기 때문에 대부분의 경우 사실에 가까운 결과가 출력되는 것이죠. 하지만 원래 훈련 목표는 이렇다 하더라도, 언어 모델의 출력이 실제 사실에 가까울수록 유용해지기 때문에, 할루시네이션 문제를 개선하기 위한 노력이 끊임없이 이루어졌습니다. 앞서 언급했듯이 RAG는 이런 문제를 해결하기 위한 방법 중 하나입니다. RAG를 하이레벨에서 이해하자면 언어 모델의 지식을 검색된 문서에 한정하여, 검색된 문서를 기반으로 질문에 맞는 답변을 생성하도록 합니다. 그러면 실제로 RAG가 어떤 작동 원리를 갖는지 자세히 알아보겠습니다. 번역을 통해 오히려 이해가 어려워지거나, 원문의 표현을 사용하는 게 원래 의미를 온전히 잘 전달할 것이라고 생각하는 표현은 원문의 표기를 따랐습니다. 오개념이나 오탈자가 있다면 댓글로 지적해주세요. 설명이 부족한 부분에 대해서도 말씀해주시면 본문을 수정하겠습니다.


1. Introduction

사전 학습된 신경망 기반 언어 모델은 상당한 양의 지식을 데이터로부터 학습할 수 있습니다. 이들은 외부 메모리에 의존하는 대신 파라미터에 암시적으로 내재된 지식 베이스를 사용합니다. 문제는 이런 방식은 몇 가지 단점을 갖습니다. 이렇게 학습된 지식은 확장하거나 잘못이 교정되기 어려우며, 예측에 대한 인사이트를 제공하기 어렵고 환각(hallucination)이 발생하기도 합니다. 그래서 혼합 모델은 parametric 메모리와 리트리버에 기반한 non-parametric 메모리를 함께 사용하여 이런 문제를 일부 해결하기도 합니다. REALM이나 ORQA와 같이 마스크드(masked) 언어 모델과 학습된 리트리버(differentiable retriever)를 함께 사용하여 좋은 성능을 보였지만, 오픈 도메인 질문 답변 태스크에 대해서만 연구되었습니다. 논문에서는 parametric, non-parametric 메모리를 NLP의 핵심 기술인 seq2seq 모델에 도입하였습니다.

 

여기서 differentiable retriever는 앞서 언급했듯이 학습된 검색기 정도로 번역할 수 있습니다. QA 태스크는 일반적으로 질문의 답을 찾을 수 있을 것이라고 생각되는 문서를 먼저 검색하는 리트리버(retriever)와 검색된 문서에서 정답을 찾는 리더(reader)로 구성됩니다. 기존의 정보 검색 시스템의 검색 과정은 보통 이산적(discrete)으로 이루어졌습니다. 예를 들어 시스템은 하드 코딩된 규칙에 기반한 검색 알고리즘을 통해 관련 문서를 가져와 언어 모델에 전달합니다. 이런 방법은 검색 과정에서 학습이 이루어지지 않아 언어 모델과 함께 최적화가 불가능하며 유연성이 떨어진다는 단점이 있습니다. 반면 differentiable retriever는 일련의 과정에서 적절한 문서를 검색하는 방법 자체를 함께 학습하여 언어 모델과 함께 최적화될 수 있다는 장점이 있습니다.

 

논문으로 돌아와 저자는 사전 학습된 parametric-memory를 사용하는 언어 모델과 non-parametric memory를 결합하여 일반적인 파인튜닝 방법론을 제안하였고 이를 retrieval-augmented generation(RAG)라고 명명하였습니다. RAG 모델의 parametric memory는 사전 학습된 seq2seq 모델인 트랜스포머이며, non-parametric memory는 벡터화된 위키피디아를 사용하였습니다. 위키피디아 문서에 접근하는 모델은 사전 학습된 신경망 기반 리트리버입니다. Dense Passage Retriever(DPR)는 입력에 제한된 문서 벡터를 검색하고 seq2seq 모델은 입력과 검색된 문서를 바탕으로 출력을 생성합니다.

 

 


 

2. Methods

RAG 모델은 입력 시퀀스 $x$를 사용하여 문서 $z$를 검색하고 이를 추가적인 문맥으로 활용하여 타겟 시퀀스 $y$를 생성합니다. RAG 모델은 두 가지 구성 요소로 이루어집니다. 하나는 $\eta$를 파라미터로 갖는 리트리버 $p_\eta(z|x)$이며, 이는 주어진 질문 $x$에 대해 상위 K개의 문서가 검색될 확률 분포를 반환합니다. 두 번째는 $\theta$를 파라미터로 하는 생성기 $p_\theta(y_i|x,z,y_{1:i-1})$로 이전 $i-1$개의 토큰 $y_{1:i-1}$과 입력 $x$, 검색된 문서 $z$를 바탕으로 토큰을 생성합니다.

 

2.1 Models

RAG-Sequence Model

RAG-Sequence 모델은 시퀀스 전체를 생성할 때 하나의 같은 문서를 사용합니다. 즉 이 모델은 top-K 근사를 통해 얻은 seq2seq 모델의 확률 분포 $p(y|x)$를 사용해 검색된 문서를 하나의 잠재 변수(latent variable)로 취급합니다. 상위 K개의 문서가 검색되면 생성기는 각 문서에 대한 출력 시퀀스의 확률을 계산하고, 계산된 값들을 바탕으로 단일 확률 분포를 생성(marginalize)합니다.

 

 

수식을 풀이해보면 먼저 $\prod$항 내부에서는 입력 $x$와 검색된 문서 $z$가 고정되었을 때, 출력 시퀀스 $y$의 각 토큰을 반복적으로 생성하며 전체 출력 시퀀스의 확률을 계산합니다. 그리고 각 문서 $z$가 검색될 확률을 곱해 최종적으로 입력이 주어졌을 때 특정 문서가 검색되고, 이를 바탕으로 출력이 생성될 확률을 계산합니다.

 

RAG-Token Model

RAG-Token 모델은 각 타겟 토큰을 생성하는 데 서로 다른 문서를 사용하고, 매 과정에서 marginalize를 수행합니다. 이 방법에서는 생성기가 다양한 문서를 참고하여 정답을 생성할 수 있습니다. 즉 상위 K개의 문서가 검색되면 생성기는 각 문서에서 다음 출력 토큰에 대한 확률을 고려합니다. 수식으로는 다음과 같이 나타냅니다.

 

 

앞에서 본 수식과 비슷하지만 차이는 $\prod$항의 위치입니다. 앞에서는 문서 $z$가 고정되어 있었지만, RAG-Token 모델은 전체 시퀀스를 계산할 때 각 토큰을 생성할 때마다 다른 문서를 참고할 수 있습니다. 따라서 marginalization이 수행되기 이전에 각 문서에 대해서 다음 출력 토큰의 확률 분포를 계산합니다.

 

타겟 클래스를 길이가 1인 타겟 시퀀스라고 생각하면 RAG는 시퀀스 분류 문제에 사용될 수도 있습니다. 이 경우에 위 수식에서 $\prod_i^N$항이 제거되기 때문에 RAG-Sequence와 RAG-Token은 같은 방식으로 작동합니다.

 

2.2 Retriever: DPR

리트리버 $p_\eta(z|x)$는 DPR에 기반합니다. DPR은 다음과 같이 bi-encoder 아키텍처를 사용합니다.

 

 

$\mathbf{d}(z)$는 $\textrm{BERT}_\textrm{BASE}$로 생성한 문서의 밀집 표현을 의미하며, $\mathbf{q}(x)$는 마찬가지로 $\textrm{BERT}_\textrm{BASE}$에 기반한 쿼리 인코더로 생성한 질문의 밀집 표현입니다. $\textrm{top-k}(p_\eta(\cdot|x))$를 계산하는 것은 Maximum Inner Product Search(MIPS) 문제이며, sub-linear time의 복잡도를 갖는 문제로 근사할 수 있습니다. 논문에서는 사전 학습된 bi-encoder를 사용하여 리트리버를 초기화하여 문서 인덱스를 생성하였습니다. 여기서 문서 인덱스(document index)를 non-paremetric memory라고 볼 수 있습니다.

 

2.3 Generator: BART

생성기 $p_\theta(y_i|x,z,y_{1:i-1})$는 임의의 인코더-디코더로 구현할 수 있습니다. 논문에서는 400M개의 파라미터를 갖는 사전 학습된 seq2seq 트랜스포머 BART-large를 사용하였습니다. 입력 $x$와 검색된 내용 $z$를 결합하기 위해서는 단순히 concatenate 연산이 사용되었습니다. 여기서 BART 생성기의 파라미터 $\theta$를 parametric memory라고 볼 수 있습니다.

 

2.4 Training

RAG 모델의 리트리버와 생성기는 명시적으로 어떤 문서를 검색해야 하는지에 대한 지도 없이도 함께 훈련될 수 있습니다. 파인 튜닝에 사용될 학습 말뭉치 $(x_j, y_j)$가 주어지면 각 타켓에 대한 negative marginal log-likelihood $\sum_j-\log p(y_j|x_j)$를 계산합니다. 이 과정에서는 Adam과 확률적 경사하강법을 사용합니다. 문서 인코더 $\textrm{BERT}_d$를 업데이트 하는 것은 비용이 많이 들 뿐만 아니라 문서 인덱스를 주기적으로 갱신해야 됩니다. 게다가 이는 성능에도 큰 영향을 미치지 않기 때문에 문서 인코더는 고정하고 쿼리 인코더 $\textrm{BERT}_q$와 BART 생성기만을 파인튜닝하였습니다.

 

2.5 Decoding

테스트에서는 RAG-Sequence와 RAG-Token은 각각 다른 방법으로 $\argmax_y p(y|x)$를 근사합니다.

 

RAG-Token

RAG-Token 모델은 다음과 같은 trainsition probability를 갖는 전형적인 자기회귀적 seq2seq 모델입니다. 디코딩 과정에서는 $p_\theta^\prime(y_i|x_i,y_{1:i-1})$를 일반적인 빔 인코더에 추가합니다.

 

 

RAG-Sequence

RAG-Sequence는 가능도 $p(y|x)$를 일반적인 토큰 당 가능도로 분해할 수 없습니다. 따라서 이는 빔 서치로는 해결할 수 없는 문제입니다. 대신 각 문서 $z$에 대해 빔 서치를 수행하고 각 가설에 대한 확률 $p_\theta(y_i|x,z,y_{1:i-1})$의 점수를 측정합니다. 이 방법으로 가설 집합 $Y$가 만들어는데 가설 중 일부는 어떠한 문서의 빔에도 포함되지 않을 것입니다. 어떤 가설 $y$의 확률을 추정하기 위해서는 $y$가 빔에 나타나지 않은 문서 $z$에 대한 추가적인 순방향 계산을 거치고, 생성기의 확률 $p_\eta(z|x)$를 곱한 다음 빔 전체에 걸친 확률을 더하여 marginals를 계산합니다. 이 디코딩 과정을 Thorough Decoding이라고 합니다. 긴 출력 시퀀스에 대해서는 $|Y|$의 값이 커지고 더 많은 순방향 계산이 필요합니다. 효율적인 디코딩을 위해서 $x, z_i$에 대한 빔 서치 과정에서 $y$가 생성되지 않은 상황에 대한 추가적인 근사 $p_\theta(y|x,z_i)\approx0$를 거칩니다. 이를 통해 일단 후보 집합 $Y$가 결정되면 추가적인 순방향 계산이 이루어지지 않도록 하며, 이러한 디코딩 절차를 Fast Decoding이라고 합니다.

 


 

3. Experiments

RAG는 지식 집약적인 여러 범위에 걸친 태스크에서 실험되었습니다. 모든 실험에서는 non-parametric knowledge source로 하나의 위키피디아 덤프가 사용되었습니다. 위키피디아 덤프는 2018년 12월에 만들어진 것을 사용하였으며, 각 글은 100 단어마다 분할되었습니다. 이 결과 총 21M개의 문서가 생성되었습니다. 문서 인코더를 사용하여 각 문서의 임베딩을 계산하였고, FAISS를 사용하여 하나의 MIPS 인덱스를 구축하였습니다. 학습 과정에서는 각 질문에 대해 상위 $k$개의 문서를 검색하였고, $k\in{5,10}$의 값을 사용하였습니다.

 

3.1 Open-domain Question Answering

ODQA는 흔히 사용되는 지식 집약적인 태스크입니다. 질문과 답변을 입출력 텍스트 쌍 $(x,y)$로 취급하여 RAG를 훈련시켰습니다. RAG는 기존에 널리 사용되는 추출적 QA 패러다임들과 비교되었습니다. 추출적 QA는 검색된 문서에서 어떤 영역(span)을 추출하여 정답으로 사용합니다. 또한 외부 지식에 의존하지 않고 순수하게 파라미터에 학습된 지식만을 사용하는 Closed-Book QA 접근법과도 비교하였습니다.

 

3.2 Abstractive Question Answering

RAG는 추출적 QA를 넘어서 자유로운 형식의 추상적 텍스트 생성도 가능합니다. RAG의 자연어 생성(NLG) 능력을 평가하기 위해서, MSMARCO NLG 태스크를 사용하였습니다. 이 과제는 문제와 10개의 정답 문서, 검색된 문서에서 가져온 정답 문장으로 이루어집니다. 추상적 QA 세팅을 위해서, 이 태스크에서는 제공된 문서는 사용하지 않고 질문과 정답만을 사용하였습니다.

 

3.3 Jeopardy Question Generation

RAG의 non-QA 세팅에서의 생성 능력을 평가하기 위해서 질문 생성에 대한 연구도 수행하였습니다. Jeopardy는 어떤 개체에 대한 사실이 주어지면 묘사하고 있는 대상이 무엇인지를 추측하는 흔하지 않은 형식의 문제입니다. 예를 들어 “1986년 멕시코는 이 국제 스포츠 대회를 두 번이나 개최한 최초의 국가로 기록되었습니다.”라는 문장이 주어지면 “월드컵”이라는 정답을 맞혀야 합니다.

 

3.4 Fact Verification

FEVER는 위키피디아 문서가 어떤 주장을 뒷받침하는지 반박하는지, 또는 해당 문서로는 판단이 어려운지를 가려내야 하는 문제입니다. 이 태스크는 주장과 관련된 문서를 검색하는 것을 넘어서 참, 거짓과 연관 가능성을 모두 추론해야 하는 난이도가 높은 과제입니다. 기존의 다른 모델과는 다르게 RAG는 검색된 문서에 대한 학습이 별도로 이루어지지 않았습니다. 실제 적용 사례에서는 리트리버 지도 학습이 이루어지기 어렵기 때문에 이와 같은 환경에서 RAG를 평가하였습니다.

 


 

4. Results

4.1 Open-domain Question Answering

 

 

REALM이나 T5+SSM과 다르게 RAG는 학습 비용이 많이 드는 salient span masking을 사용하지 않고도 높은 성능을 보입니다. RAG는 re-ranker나 추출적 리더가 없어도 SOTA 성능을 보입니다. 정답을 추출할 수 있음에도 불구하고 정답을 직접 생성하는 것에는 여러 장점이 있습니다. 문서에 정답에 대한 단서가 포함되어도 정답이 있는 그대로(verbatim) 존재하지 않을 경우에는 추출만으로는 정답을 맞힐 수가 없습니다.

 

4.2 Abstractive Question Answering

RAG-Sequence는 BART보다 뛰어난 성능을 보입니다. RAG는 정답 문서(gold passages)를 사용해 학습한 모델보다 높은 성능을 보이며, Open MS-MARCO NLG는 정답 문서 없이는 답하기 어려운 문제를 포함하며, 위키피디아 문서만으로는 정답을 맞히기 어려운 문제도 있다는 점에서 결과가 흥미롭습니다.

 

 

다음은 RAG가 생성한 정답의 예시입니다. RAG는 BART보다 사실에 근거한 정답을 생성하며 환각이 덜 발생한다는 것을 발견하였습니다.

 

 

4.3 Jeopardy Question Generation

RAG-Token은 이 태스크에서 뛰어난 성능을 보였습니다. Jeopardy 문제는 보통 두 개의 서로 다른 지식을 포함하는데, RAG-Token은 여러 문서의 정보를 바탕으로 정답을 생성하였기 때문입니다. “Sun”을 생성할 때는 문서 2의 사후 확률이 높았고, “A Farewell to Arms”를 생성할 때는 문서 1에 대한 확률이 높았습니다. 흥미로운 점은 첫 번째 토큰이 생성된 이후에는 사후 확률이 하나로 합쳐졌습니다. 이는 모델이 검색된 문서를 사용하지 않고도 제목을 완성할 수 있다는 것을 의미합니다. 즉 모델이 parametric knowledge를 함께 사용하여 텍스트를 생성합니다.

 

 

다음은 RAG와 BART의 출력을 사람이 비교한 결과입니다. 사실성과 개체 연관성 면에서 모두 RAG가 더 나은 것을 알 수 있습니다.

 

 

4.4 Fact Verification

다음 표를 다시 보면 사실 검증 태스크에 대한 RAG의 성능을 확인할 수 있습니다. RAG는 SOTA 모델보다 4.3% 정도 성능이 뒤처지지만, 기존 모델은 도메인에 특화된 아키텍처를 포함한 복잡한 파이프라인 시스템 아래 설계되었으며 추가적인 공학적 기술과 리트리버 지도 학습이 이루어졌다는 점을 감안해야합니다. 또한 2-way 분류에서도 gold sentence가 주어지지 않았음에도 SOTA 모델과 성능이 크게 차이나지 않는 점을 알 수 있습니다.

 

 

RAG가 적절한 문서를 검색했는지 확인하기 위한 추가적인 연구도 수행되었는데 가장 확률이 높은 문서가 실제로 gold article인 경우는 71%, 상위 10개의 문서에 포함될 확률은 90% 였습니다.

 

4.5 Additional Results

RAG는 BART보다 사실에 기반한 생성 능력이 뛰어납니다. 또한 서로 다른 모델에서 생성 다양성(generation diversity)을 평가하기 위해서 전체 ngram을 distnict ngram으로 나눈 비율을 측정하였습니다. RAG-Sequence는 RAG-Token보다 다양성이 높고 모두 diversity-promoting decoding 없이 BART보다 높은 점수를 보입니다.

 

 

RAG의 핵심은 관련 문서를 검색하는 것입니다. 검색 시스템의 효율성을 평가하기 위해서, 리트리버를 고정하고 ablation을 수행했습니다. 다음 결과와 같이 리트리버를 학습하는 것이 더 나은 성능을 보였습니다. 또한 단어의 겹침에 따라 관련 문서를 검색하는 BM25와 비교한 결과 FEVER를 제외한 다른 태스크에서는 모두 differentiable retriever가 더 나은 성능을 보였습니다. FEVER는 매우 개체 중심적이기 때문에 단어 겹침에 의한 문서 검색의 효과가 특히 좋기 때문에 이런 결과가 나왔을 것입니다.

 

 

RAG와 같이 non-parametric memory를 사용하는 것의 이점은 테스트 과정에서 쉽게 지식을 업데이트할 수 있다는 것입니다. 반면 T5나 BART와 같이 parametric 모델은 추가적인 학습이 필요합니다. 검증을 위해 저자는 DrQA와 2016년 12월의 위키피디아 덤프를 사용하여 인덱스를 구축하였고 2018년 12월 위키피디아 덤프를 사용하여 인덱스를 구축한 RAG와의 출력을 비교하였습니다. 두 모델의 출력 mismatch는 12%에 불과하였으며, 이는 RAG가 world knowledge를 단순히 non-parametric memory를 교체하는 것만으로 업데이트 할 수 있음을 의미합니다.

 

RAG 모델은 5개 또는 10개의 문서를 검색하도록 훈련되었는데 두 경우에서 큰 성능 차이가 있지 않았습니다. 테스트 시에는 유연하게 검색할 문서의 개수를 지정할 수 있었습니다. 다음은 검색한 문서의 개수에 따른 성능을 나타낸 것입니다. 일반적으로는 더 많은 문서를 사용하면 더 높은 점수를 보이는 경향이 있습니다.

 

 


 

5. Related Work

Single-Task Retrieval

기존의 연구는 여러 NLP 태스크에서 리트리버가 성능 개선에 영향을 미친다는 것을 밝혔습니다. 이 태스크는 오픈 도메인 질문 답변, 사실 확인, 사실 완성, 위키피디아 글 생성, 대화, 번역, 언어 모델링을 포함합니다. 이 논문의 연구는 여러 태스크에서 성공적으로 사용된 방법을 하나의 방법으로 통합하여 리트리버에 기반한 단일 아키텍처가 여러 태스크에서 최고의 성능을 보일 수 있음을 입증했습니다.

 

General-Purpose Architectures for NLP

일반적인 목적으로 사용할 수 있는 아키텍처에 대한 연구는 리트리버를 사용하지 않고도 뛰어난 성과를 보였습니다. 하나의 사전 학습된 언어 모델은 파인 튜닝을 거친 후 여러 태스크에서 높은 성능을 보입니다. 이를 한층 더 개선하기 위해 BART와 T5와 같이 하나의 사전 학습된 인코더-디코더 모델이 제안되었습니다. 이 논문의 연구는 리트리버 모듈을 학습함으로써 사전 학습된 생성적 언어 모델을 증강하는 통합된 아키텍처를 제안합니다.

 

Memory-based Architectures

RAG의 문서 인덱스(document index)는 거대한 외부 메모리라고 생각할 수 있습니다. 다른 연구에서는 RAG와 같이 원천 텍스트를 검색하는 대신 학습된 임베딩을 검색하는 방법을 사용합니다. 또 다른 연구에서는 fact embedding에 집중하여 사실적인 텍스트를 생성하는 방식으로 대화 시스템의 성능을 개선하기도 했습니다. RAG의 중요한 특징은 분산 표현이 아니라 원천 텍스트를 사용한다는 점입니다. 이는 리트리버가 검색한 문서를 사람이 읽을 수 있어 모델에 해석 가능성을 부여하며, 모델의 메모리를 사람이 직접 쓰며 업데이트 할 수 있다는 장점이 있습니다.

 

이외에도 RAG 연구는 learned retrieval, retreive-and-edit approaches등과 연관되어 있습니다.

 


 

6. Conclusion

이 연구는 parametric과 non-parametric memory를 사용하는 하이브리드 생성 모델을 제안합니다. RAG 모델이 오픈 도메인 QA 태스크에서 최고의 성능에 달성하였음을 입증하였고, 인간 평가를 통해 RAG의 생성 결과가 BART 보다 사실적이며 질문에 적합하다는 것을 확인하였습니다. Learned retrieval에 대한 연구를 통해 효용성을 입증하였으며 리트리버 인덱스가 재학습 없이 hot-swap을 통해 업데이트 될 수 있음을 보였습니다. 향후에는 사전 학습 모델과 리트리버가 아예 처음부터 함께 학습될 수 있는지에 대한 연구를 통해 더 나은 성능을 보이는 모델을 구축할 수 있을 것입니다. 이 연구를 통해 parametric과 non-parametric 메모리가 상호작용하는 방법과 그들을 결합하는 방식에 대한 새로운 연구의 지평이 열었습니다.

 


 

7. Reflection

논문을 읽을 때 종종 내가 알고 있던 내용과 논문의 설명이 다를 때가 있습니다. 이전에 리뷰한 Chain of Thought에서도 이런 느낌을 받았었는데 RAG도 생각한 내용이랑 조금은 달랐습니다. 이번에 진행하는 프로젝트에 RAG 기술이 필요해서 정확히 어떤 개념을 의미하는지를 알아보기 위해서 논문을 읽었는데, 기존에는 RAG가 단순히 어떤 문서를 기반으로 언어 모델의 지식의 컨텍스트를 한정하는 역할이라고 포괄적으로 생각했는데, 논문에서 언급하는 기술은 조금 달랐던 것 같습니다. QA 태스크를 수행하는 모델은 크게 리트리버와 리더라는 두 개의 구조를 갖고, 각각은 별도의 모델로써 훈련됩니다. RAG가 언어 모델이 답변을 생성할 문맥을 한정해주는 것은 맞지만, 이 문서를 검색해오는 과정까지 학습하고 이를 언어 모델에 통합한다는 개념이 기존에 알던 사실과는 조금 차이가 있는 것 같습니다. 물론 논문의 구현을 그대로 따라할 필요는 없지만, 원래 이 개념이 제안된 의도가 이렇다는 것을 알게된 게 의미있다고 생각합니다. 

댓글