00:00:00

Share Your Feedback 🏝️

Chat QA-2

Chat QA-2

MinWoo(Daniel) Park | Tech Blog

Read more
Previous: Reasoning | Weak-to-Strong Reasoning* Next: Difussion Researches

Chat QA-2

  • Related Project: Private
  • Category: Paper Review
  • Date: 2024-07-18

ChatQA 2: Bridging the Gap to Proprietary LLMs in Long Context and RAG Capabilities

  • url: https://arxiv.org/abs/2407.14482
  • pdf: https://arxiv.org/pdf/2407.14482
  • html: https://arxiv.org/html/2407.14482v1
  • abstract: In this work, we introduce ChatQA 2, a Llama3-based model designed to bridge the gap between open-access LLMs and leading proprietary models (e.g., GPT-4-Turbo) in long-context understanding and retrieval-augmented generation (RAG) capabilities. These two capabilities are essential for LLMs to process large volumes of information that cannot fit into a single prompt and are complementary to each other, depending on the downstream tasks and computational budgets. We present a detailed continued training recipe to extend the context window of Llama3-70B-base from 8K to 128K tokens, along with a three-stage instruction tuning process to enhance the model’s instruction-following, RAG performance, and long-context understanding capabilities. Our results demonstrate that the Llama3-ChatQA-2-70B model achieves accuracy comparable to GPT-4-Turbo-2024-0409 on many long-context understanding tasks and surpasses it on the RAG benchmark. Interestingly, we find that the state-of-the-art long-context retriever can alleviate the top-$k$ context fragmentation issue in RAG, further improving RAG-based results for long-context understanding tasks. We also provide extensive comparisons between RAG and long-context solutions using state-of-the-art long-context LLMs.

TL;DR


  • LLM 커뮤니티의 선행 연구와 기술 개발에 따라 GPT-4 Turbo와 같은 선도 모델과 비교하여 오픈 소스 모델의 성능 차이를 해소하기 위한 다양한 접근 방식을 조사
  • 연장된 컨텍스트 윈도우와 검색 보강 생성(RAG)의 상호작용을 탐구하고, 이를 통한 QA 및 요약 작업의 정확도와 효율성 개선 방법을 제시
  • Llama3-70B 모델의 컨텍스트 윈도우를 8K에서 128K로 확장하고, RAG와 긴 컨텍스트 이해능력을 갖춘 새로운 모델 ChatQA 2 개발

1. 서론

최근 LLM 커뮤니티는 공개적으로 접근 가능한 대규모 언어모델들의 성능을 개선하기 위해 지속적인 노력을 기울이고 있습니다. 특히, Llama-3-70B-Instruct, QWen2-72B-Instruct, Nemotron-4-340B-Instruct 등 다양한 모델들이 개발되었으나, GPT-4 Turbo와 같은 선도적인 모델들과의 성능 차이는 여전히 존재합니다. 이 연구에서는 Llama3과 GPT-4 Turbo 사이의 긴 컨텍스트 이해 능력 격차를 해소하는 것을 목표로 합니다.


2. 관련 연구

2.1 긴 컨텍스트 LLM

컨텍스트 윈도우를 확장하는 기술은 Claude와 같은 모델에서 시작되었으며, RoPE 기반의 위치 인코딩을 통해 입력 컨텍스트의 길이를 늘리는 연구가 활발히 이루어지고 있습니다. 예를 들어, Yi-34B 모델은 기존 4K에서 200K까지 컨텍스트 윈도우를 확장했으며, 이는 RoPE의 기본 frequencies $\theta$를 10,000에서 5M으로 증가시킴으로써 가능하게 되었습니다.

\[\theta_{new} = \theta_{base} \times \frac{200K}{4K}\]

2.2 검색 보강 생성(RAG)

RAG는 검색을 통해 관련 문맥을 추출하고, 이를 기반으로 언어 모델이 답변을 생성하도록 돕는 기술입니다. 이 방법은 긴 문서 요약이나 복잡한 질문에 대한 답변 생성에 특히 유용하며, 최근 연구에서는 RAG의 컨텍스트 윈도우를 32K까지 확장하는 시도가 이루어지고 있습니다.


3. 컨텍스트 윈도우를 128K로 확장

이 섹션에서는 Llama3 모델의 컨텍스트 윈도우를 8K에서 128K로 확장하는 방법을 소개합니다. 이를 위해, Slimpajama 데이터셋을 사용하여 긴 문맥의 문서를 추가하고, RoPE의 $\theta$ 값을 크게 증가시켜 모델이 더 긴 입력을 처리할 수 있도록 합니다. 이런 확장은 모델이 긴 문맥을 더 효과적으로 이해하고 처리할 수 있게 만듭니다.

\[\theta_{expanded} = \theta_{initial} \times \frac{Sequence Length_{new}}{Sequence Length_{initial}}\]

Llama3-70B 모델은 세 단계의 지시 조정 과정을 통해 지시 사항을 따르는 능력, RAG 성능, 그리고 긴 컨텍스트 이해 능력을 각각 향상시킵니다. 이 과정은 모델이 다양한 데이터셋에 대해 파인튜닝되며, 각 단계에서의 학습은 특정 목표에 초점을 맞춥니다.


4. 지시 조정과 긴 컨텍스트 데이터

이 섹션에서는 긴 컨텍스트 이해 능력과 RAG 성능을 동시에 향상시키기 위해 설계된 지시 조정 방법을 소개합니다.

구체적으로, 세 단계의 지시 조정을 구현합니다. 첫 두 단계에서는 128K 고품질 지시 데이터셋에서 초기 훈련을 진행한 후, 제공된 컨텍스트와 함께 대화형 QA 데이터의 혼합에 대해 훈련을 진행합니다(ChatQA 1.5 참고). 그러나 이 두 단계는 최대 4K 토큰의 상대적으로 짧은 컨텍스트만을 다룹니다. 연구팀의 모델이 최대 128K 토큰의 긴 컨텍스트 시퀀스를 처리할 수 있도록 하기 위해, 긴 SFT 데이터셋을 수집합니다.

이 데이터셋은 두 가지 범주로 수집됩니다.

  • 32K 미만의 SFT 데이터 시퀀스의 경우, LongAlpaca12k, Open Orca 1의 GPT-4 샘플, Long Data Collections 2에서 기존의 긴 컨텍스트 데이터셋을 활용합니다.
  • 32K에서 128K 사이의 시퀀스 길이의 경우, 이런 SFT 샘플을 수집하는 것이 도전적이므로, 합성 데이터셋을 사용합니다. NarrativeQA를 활용하는데, 이는 관련 단락과 함께 ground truth 요약을 포함하고 있습니다. 관련 단락을 모두 조합하고, 실제 긴 문서를 모방하기 위해 임의로 ground truth 요약을 삽입합니다. 이후 짧은 SFT 데이터셋과 함께 전체 긴 SFT 데이터셋을 학습에 사용하고, 학습률은 3e-5로 설정하고, 배치 크기는 32로 설정합니다.


5. 긴 컨텍스트 검색기와 긴 컨텍스트 LLM의 만남

앞선 섹션에서 언급한 바와 같이, 현재 RAG 파이프라인은 다음과 같은 문제점을 갖고 있습니다.

  • top-$k$ 조각별 검색은 정확한 답변 생성을 위한 컨텍스트의 상당한 분열을 초래합니다. 예를 들어, 기존의 state-of-the-art 밀도 기반 임베딩 검색기들은 단지 512 토큰만을 지원합니다.
  • 작은 top-$k$ (e.g., 5 또는 10)는 일반적으로 낮은 재현율을 초래하며, 훨씬 큰 k (e.g., 100)는 이전 LLM이 많은 조각된 컨텍스트를 잘 활용하지 못하여 성능이 저하될 수 있습니다. 이 문제를 해결하기 위해, 최신 긴 컨텍스트 검색기를 사용할 것을 제안합니다. 설정에서는 E5-mistral 임베딩 모델을 검색기로 사용합니다.


아래 표 1은 top-$k$ 검색의 다양한 chunk size와 context window의 전체 토큰 수를 비교합니다. 총 3000에서 12000 토큰까지의 비교에서, 더 많은 토큰이 일관되게 더 좋은 결과를 가져온 것으로 확인되었습니다. 이는 연구팀의 모델의 강력한 긴 컨텍스트 능력을 확인시켜 줍니다. 또한, 총 토큰 수가 6000일 때, 1200 크기의 조각이 비용과 성능 사이의 좋은 균형을 제공한다는 것을 발견했습니다. 따라서, 실험에서는 기본 값으로 chunk size 1200과 top-5 조각을 사용합니다.

# Chunk Size Top-$k$ Total Tokens Avg.
300 10 3000 46.31
300 20 6000 46.28
300 40 12000 46.96
600 10 6000 46.88
1200 5 6000 47.08
1200 10 12000 47.13

표 1: 32K 토큰 범위 내 중-장 컨텍스트 벤치마크에서 다양한 top-$k$ = {5, 10, 20, 40}, chunk size = {300, 600, 1200}에 대한 Llama3-ChatQA2-70B의 RAG 성능 비교(자세한 내용은 섹션 6.2 참조). 총 토큰 수가 6000으로 같을 경우, 큰 chunk size(1200)가 작은 chunk size(300, 600)보다 더 나은 결과를 보임을 확인합니다. Context Window의 총 토큰이 많을수록 정확도도 향상될 수 있음을 확인합니다.


6. 평가 벤치마크

다양한 상태 최신 모델들과 비교하여 모델 성능을 평가합니다.

  1. GPT-4-Turbo-2024-04-09 (128K context window)
  2. Qwen2-72B-Instruct (128K context window)
  3. Llama-3-70B-Instruct-Gradient-262k.

평가 벤치마크는 세 가지 범주로 나뉩니다.

  1. 100K 토큰을 넘는 긴 컨텍스트 벤치마크
  2. 32K 토큰 이내의 중-장 컨텍스트 벤치마크
  3. 4K 토큰 이내의 짧은 컨텍스트 벤치마크.

RAG의 경우 적용 가능한 down-stream 태스크에 적용합니다.

6.1 100K 토큰을 넘는 긴 컨텍스트 벤치마크

InfiniteBench를 사용하여 100K 시퀀스 길이 이상의 LLM 긴 컨텍스트 능력을 평가합니다. 이 벤치마크는 긴 소설 요약(En.Sum), 질문응답(En.QA), 다중선택(En.MC), 대화(En.Dia) 등 네 가지 관련 작업으로 구성됩니다.

  • En.Sum은 주어진 소설의 간결한 요약을 생성하는 것을 평가하고, ROUGE-L-Sum 메트릭으로 평가됩니다.
  • En.QA는 장기 의존성과 인퍼런스를 필요로 하는 질문으로 구성되며, F1 점수로 답변의 질을 평가합니다.
  • En.MC는 En.QA와 동일한 파이프라인으로 주석이 달린 후 네 가지 답변 선택지가 제공되고, 정확하게 일치하는 점수를 정량적으로 나타냅니다.
  • En.Dia는 영화와 드라마 대본을 활용하며, 스크립트 내 무작위로 마스킹된 캐릭터 이름을 정확히 식별하는 것을 목표로 합니다.

6.2 32K 토큰 이내의 중-장 컨텍스트 벤치마크

NarrativeQA를 제외한 Xu et al. (2024)의 긴 컨텍스트 데이터셋을 중-장 컨텍스트 벤치마크로 사용합니다. 여기에는 QMSum, Qasper, QuALITY, HotpotQA, MuSiQue, MultiFieldQA-en이 포함되며, 공식 메트릭에 따라 QMSum은 ROUGE 점수의 기하 평균, QLTY는 정확한 일치 점수, 나머지 네 개의 데이터셋은 F1 점수로 보고됩니다.

6.3 4K 토큰 이내의 짧은 컨텍스트

ChatRAG Bench를 사용하여 4K 토큰 이내의 짧은 컨텍스트 벤치마크를 평가합니다.

ChatRAG Bench는 10개의 데이터셋으로 구성되며, 훈련에 포함된 HDial을 제외합니다. 각 데이터셋은 F1 점수로 평가되며, 다양한 모델 간 공정한 비교를 위해 HDial 없이 평균 점수를 보고합니다.


7. 결과

실험 결과는 광범위한 벤치마크 평가를 통해 제시됩니다. 우선, 합성된 Needle in a Haystack 벤치마크 테스트를 시작으로, 실제 긴 컨텍스트 이해 및 RAG 작업에 초점을 맞춥니다.

7.1 Needle In A Haystack

이 합성 작업은 LLM의 긴 컨텍스트 능력을 테스트하기 위해 설계되었으며, 연구팀의 모델은 128K 토큰까지 100% 정확도를 달성하여 우수한 긴 컨텍스트 검색 능력을 입증합니다.

7.2 100K 토큰 이상의 긴 컨텍스트 평가

InfiniteBench의 실제 작업에서 100K 토큰 이상의 긴 컨텍스트 능력을 평가합니다. 연구팀의 모델은 GPT4-Turbo 및 다른 최신 모델들을 능가하며, Qwen2-72B-Instruct와도 경쟁적인 성능을 보입니다.

7.3 32K 토큰 이내의 중-장 컨텍스트 평가

32K 토큰 이내의 범위에서 중-장 컨텍스트 능력을 평가합니다.

GPT-4-Turbo가 가장 높은 점수를 달성하는 반면, 연구팀의 모델은 Llama-3-70B-Instruct-Gradient-262k보다는 높지만 Qwen2-72B-Instruct보다는 낮은데, 이 차이는 Qwen2-72B-Instruct가 훨씬 더 큰 32K 사전 훈련 코퍼스를 사용한 것에 기인할 수 있습니다. 또한, 모든 RAG 솔루션은 긴 컨텍스트 솔루션보다 성능이 낮다는 것을 발견했습니다. 이는 모든 최신 긴 컨텍스트 LLM이 실제로 32K 토큰 범위 내에서 컨텍스트를 처리할 수 있음을 시사합니다.

Previous: Reasoning | Weak-to-Strong Reasoning* Next: Difussion Researches

post contain ""

    No matching posts found containing ""