swing ordering: 유연성이나 적응성을 나타낼 수 있음. 이 맥락에서 “swing ordering”은 주문 프로세스가 매우 유동적이며, 고객의 요구 사항이나 시장 조건의 변화에 신속하게 적응할 수 있는 시스템을 의미
speculate: 추측하다
1. Introduction
최근 ChatGPT와 같은 후속 연구들은 QA 모델을 구축하는 패러다임의 변화를 주도하고 있음
특히, 실제 애플리케이션에서 선호되는 QA 모델의 다음과 같은 측면에 초점을 맞추고 있음
i) 사용자가 QA 모델과 대화식으로 상호작용할 수 있으므로, 추가적인 질문을 쉽게 제기할 수 있음
ii) 일반적인 모델이 데이터셋 특정의 미세 조정 없이도 zero-shot 방식으로 답변을 생성할 수 있으며, 미세 조정된 전문가 모델의 정확도에 맞출 수 있음
iii) QA 모델이 개방 도메인 또는 긴 문서 설정에서 검색된 증거 조각을 통합할 수 있는 능력을 가지고 있으며, 제공된 맥락이 LLM의 맥락 창보다 훨씬 긴 경우에도 적용됨
이에 따라, 저자들은 이러한 세 가지 측면을 포괄하는 대화형 QA에 초점을 맞추었음
그러나 GPT-4와 같은 최신의 블랙박스 모델의 정확도에 맞먹는 대화형 QA 모델을 구축하는 것은 여전히 연구 커뮤니티에 큰 도전 과제임
이 작업에서 저자들은 자세한 사양과 GPT-4 수준의 정확도를 가진 백박스 대화형 QA 모델인 ChatQA-70B를 소개하며, 이는 제안된 두 단계 지시어 튜닝 레시피, 대화형 QA에서 검색을 향상시킨 검색기, 그리고 자세한 데이터 큐레이션 프로세스를 통해 달성되었음
2. Related Work
2.1. Conversational QA
대화형 QA는 사용자 경험을 자연스럽게 향상시키는 방법으로, 후속 질문을 처리할 수 있음
모델이 필요에 따라 사용자에게 명확화 질문을 할 수 있으며, 이는 환각을 줄일 수 있음
그래서 QA 모델을 생산 환경에 배포할 때 기본 형식으로 사용되고 있음
최근 몇 년 동안 많은 대화형 QA 데이터셋이 소개되었으며, 이 데이터셋들은 모델이 제공된 맥락이나 문서를 기반으로 질문에 답변할 것을 요구함
제공된 맥락이나 문서는 다양한 도메인에서 온 텍스트 전용 문서일 수 있음
최신 LLM 기반의 일반적인 해결책과 달리, 대부분의 이전 연구들은 특정 도메인이나 데이터셋에서 미세 조정된 전문가 모델에 중점을 둠
2.2. Retrieval for Multi-Turn QA
대화형 QA는 개방 도메인 설정이나 제공된 문서가 LLM의 맥락 창보다 길 경우 검색을 통합하는 생성을 포함함
보통 조밀한 검색기는 주어진 단일 질문에 대해 상위 k개의 관련 청크를 검색하도록 훈련됨
대화형 QA에서 후속 질문들은 대화 이전의 언급된 개체를 지칭하는 대명사를 사용하여, 검색을 위한 충분한 정보를 포함하지 않을 수 있음
모든 대화 이력과 현재 질문을 함께 제공하는 것은 중복을 초래하여 부적절한 결과를 낼 수 있음
2.2.1. CONVERSATIONAL QUERY REWRITING
이전 해결책 중 대부분은 질의 재작성 방법임
최신 회차의 질문을 이전 대화 이력의 추가 정보 없이도 독립적인 질문으로 재작성하며, 이를 통해 검색 모델이 관련 맥락을 직접 검색할 수 있게 됨
질의 재작성 모델은 재작성된 질문을 입력으로 사용하여 필요한 맥락을 검색함으로써 추가적인 임베딩과 검색 비용 뿐만 아니라, 재작성 과정에서 상당한 계산 비용을 발생시킴
이 연구 분야를 지원하기 위해 여러 데이터셋이 수집되었으며, 다양한 질의 재작성 방법이 제안되었음
2.2.2. FINE-TUNING RETRIEVER FOR MULTI-TURN QA
이전 연구 중 일부는 단일 턴 질의 검색기를 대화형 질의와 맥락 쌍에 대해 미세 조정함으로써, 대화 이력과 현재 질의의 결합을 입력으로 직접 받아들일 수 있게 함
이 작업에서 저자들은 zero-shot 평가에 중점을 두고 있음
저자들은 고품질의 다단계 데이터셋에서 단일 턴 질의 검색기를 미세 조정한 후, 미세 조정된 검색기의 zero-shot 능력을 다섯 개의 벤치마크 데이터셋에서 평가함
놀랍게도, 이 간단한 접근법은 최신 질의 재작성 모델 즉, GPT-3.5-turbo와 비슷한 zero-shot 결과를 얻을 수 있음
2.3. Instruction Tuning
지시어 튜닝의 목표는 LLM에 자연어 지시어를 따를 수 있는 능력을 부여하는 것임
이 분야에서는 FLAN, Self-Instruct, Unnatural Instructions, Dolly, OpenAssistant 등과 같은 고품질의 지시어 튜닝 데이터셋 개발에 대한 연구가 급증하고 있음
지시어 튜닝에 대한 많은 연구가 진행되었지만, 몇몇 연구만이 QA에 대한 RAG 또는 맥락 인식 생성을 개선하는 데 초점을 맞추고 있음
3. ChatQA
이 절에서 저자들은 ChatQA를 위한 두 단계 지시어 튜닝 방법을 제안함
저자들의 방법은 사전 훈련된 LLM 기반 모델에서 시작함
첫 번째 단계에서는 지시어를 따르는 능력을 갖춘 대화형 에이전트로서의 모델을 위해 감독된 미세 조정을 적용함
그러나 이 모델의 맥락 인식이나 검색을 통한 생성 능력은 여전히 제한적임
따라서 맥락 인식 또는 검색을 통한 생성 능력을 향상시키기 위해 맥락 강화 지시어 튜닝이라는 두 번째 단계를 도입함
3.1. Stage-1: Supervised Fine-tuning
대규모 및 포괄적인 감독된 미세 조정(SFT) 데이터셋을 구성하기 위해, 저자들은 고품질 지시어 튜닝 데이터셋에서 128K SFT 샘플의 결합된 세트를 모음
이 데이터셋은 1) 소셜 대화 데이터셋인 Soda, 2) 상세한 답변이 포함된 장형 QA 데이터셋인 ELI5, 3) FLAN 및 사고 과정 데이터셋, 4) LLM 합성 지시어 튜닝 데이터셋인 Self-Instruct 및 Unnatural Instructions, 그리고 5) 사설 크라우드 소싱 대화형 데이터셋 및 두 개의 공개 인간 작성 대화 데이터셋인 OpenAssistant와 Dolly를 포함함
모든 SFT 데이터의 구조를 대화형 형식으로 통합함
먼저, LLM이 예의 바르고 도움이 되는 답변을 제공하도록 지도하는 일반적인 지시어를 설정하기 위해 시작 부분에 “System” 역할을 추가함
또한, 지시어 및 응답 쌍을 포함하기 위해 “User” 및 “Assistant” 역할을 추가함
이 통합된 형식을 사용하여 LLM 기반 모델에 미세 조정을 적용함
3.2. Stage-2: Context-Enhanced Instruction Tuning
모델의 대화형 QA 능력을 주어진 맥락에서 더 향상시키기 위해, 저자들은 두 번째 단계 지시어 튜닝을 수행함
구체적으로, 이 단계의 지시어 튜닝 데이터셋은 맥락화된 단일 턴 QA와 대화형 QA 데이터셋의 조합으로 구성됨
자세한 내용은 아래에서 더 설명됨
이 부분에서 저자들은 고품질 문서 기반 대화형 QA 데이터셋을 얻는 것이 중요한 요소 중 하나임을 강조함
이를 위해 저자들은 인터넷에서 다양한 주제를 다루는 문서를 수집한 후, 주석자에게 문서에 대해 궁금한 질문과 답변을 하는 에이전트 역할을 하도록 지시함
이 과정을 통해 각 문서에 대해 평균 5번의 사용자-에이전트 턴을 포함하는 총 7천 개의 대화형 QA 대화를 생성함
답변을 찾을 수 없는 경우를 처리하기 위해, 모델이 명시적으로 “답변할 수 없음”을 표시하도록 하는 데이터 샘플도 포함시킴
이를 위해 주석자는 사용자의 질문과 관련 있는 모든 맥락 위치를 식별하도록 요청받았으며, 이를 통해 답변이 불가능한 시나리오를 구성함
마지막으로, 저자들은 HumanAnnotatedConvQA의 품질을 검증하기 위해 GPT-3.5-turbo를 사용하여 합성 대화형 QA 데이터셋을 생성함
이는 대규모 합성 데이터 생성에 대한 이전 연구와는 대조적으로, 중간 크기의 고품질 합성 데이터에 초점을 맞춘 것임
3.2.1. HUMAN ANNOTATED DATA
저자들은 고품질의 문서 기반 대화형 QA 데이터셋을 확보하는 것이 핵심 요소 중 하나임을 강조함
이를 위해 저자들은 인터넷에서 다양한 주제를 다루는 7천 개의 문서를 수집함
그런 다음 주석자에게 문서에 대해 궁금한 질문을 하고, 그에 대한 답변을 하는 에이전트 역할을 하도록 지시함
이 과정을 통해 각 문서마다 평균 5번의 사용자-에이전트 턴을 포함하는 총 7천 개의 대화형 QA 대화를 생성함
답변을 찾을 수 없는 경우를 처리하기 위해, 모델이 명시적으로 “답변할 수 없음”을 표시하도록 하는 데이터 샘플도 준비함
이를 위해 주석자는 사용자의 질문과 관련 있는 모든 맥락 위치를 식별하도록 요청받았으며, 이를 통해 답변이 불가능한 시나리오를 구성함
3.2.2. SYNTHETIC DATA GENERATION
고품질의 문서 기반 대화형 QA 데이터셋을 확보하는 것이 핵심 요소 중 하나임을 강조하며, 이를 위해 저자들은 인터넷에서 다양한 주제를 다루는 7천 개의 문서를 수집함
그런 다음 주석자에게 문서에 대해 궁금한 질문을 하고, 그에 대한 답변을 하는 에이전트 역할을 하도록 지시함
이 과정을 통해 각 문서마다 평균 5번의 사용자-에이전트 턴을 포함하는 총 7천 개의 대화형 QA 대화를 생성함
답변을 찾을 수 없는 경우를 처리하기 위해, 모델이 명시적으로 “답변할 수 없음”을 표시하도록 하는 데이터 샘플도 준비함
이를 위해 주석자는 사용자의 질문과 관련 있는 모든 맥락 위치를 식별하도록 요청받았으며, 이를 통해 답변이 불가능한 시나리오를 구성함
3.2.3. TRAINING BLENDS
이 부분에서는 저자들이 두 번째 단계 지시어 튜닝을 위한 교육 혼합물의 세부 사항을 소개함
QA 능력을 강화하기 위해, 저자들은 문서나 표를 다루는 TAT-QA 데이터셋을 추가함
또한, 저자들은 모델의 QA 능력을 더욱 강화하기 위해 맥락화된 단일 턴 QA 데이터셋을 통합함
저자들은 또한 두 번째 단계 교육 혼합물에 첫 번째 단계 SFT 데이터셋을 유지하여 모델이 지시어를 따르는 능력을 유지하도록 함
결과적으로, 두 번째 단계 교육 혼합물은 1) 사람이 주석을 단 대화형 QA 데이터셋 또는 합성 대화형 QA 데이터셋, 2) 단일 턴 QA 데이터셋, 그리고 3) 첫 번째 단계의 모든 SFT 데이터셋을 포함함
4. Retrieval for Multi-Turn QA
대화형 QA 작업에서 문서가 너무 길어서 LLM에 직접 입력할 수 없는 경우, 대화형 쿼리를 처리할 수 있는 검색기가 필수적임
이 대화형 검색기는 대화 이력과 현재 쿼리의 결합을 인코딩하고, 문서에서 관련 맥락을 검색한 후, LLM의 입력으로만 사용될 관련 맥락을 검색함
최신 검색기 예를 들어 Dragon은 단일 턴 쿼리에 최적화되어 있어, 다단계 대화형 쿼리의 일반화에는 한계가 있음
그림 2에서는 이 문제를 완화하기 위한 검색기 미세 조정 방법을 보여줌
저자들은 대화형 쿼리와 맥락 쌍을 사용하여 단일 턴 검색기를 추가로 미세 조정하여 대화형 입력을 더 잘 처리할 수 있도록 제안함
대안적인 해결책으로 대화형 쿼리 재작성이 있으며, 이는 현재 질문을 대화 이력에 기반하여 재작성하는 쿼리 재작성기를 사용하는 것임
재작성된 쿼리는 단일 턴 쿼리 검색기에 직접 사용되어 관련 맥락을 검색함
질의 재작성 모델 외에도 추가적인 임베딩 및 검색 비용이 발생하며, GPT-3.5-turbo와 같은 강력한 모델을 사용할 경우 상당한 계산 비용이 발생할 수 있음
4.1.Fine-tuningRetrieverforMulti-turnQA
고품질의 미세 조정 데이터셋을 구축하기 위해 저자들은 HumanAnnotatedConvQA 또는 SyntheticConvQA에서 대화형 쿼리와 맥락 쌍을 활용함
HumanAnnotatedConvQA의 경우, 주석이 달린 대화형 쿼리와 맥락 쌍을 직접 가져와 단일 턴 쿼리 검색기를 추가로 미세 조정함
SyntheticConvQA의 경우, 대화형 QA 데이터셋의 각 문서를 다른 청크로 나누고, 에이전트의 답변과 각 청크 간의 4-gram 회수 점수를 계산함
이후 가장 높은 점수를 가진 청크를 현재 사용자의 질문에 대한 골드 청크로 간주함
최종적으로 구성된 대화형 쿼리와 맥락 쌍을 사용하여 단일 턴 쿼리 검색기를 미세 조정함
4.2.ConversationalQueryRewriting
강력한 대화형 쿼리 재작성 모델을 구축하기 위해 저자들은 GPT-3.5-turbo를 재작성기로 선택함
Galimzhanova 등이 보여준 바와 같이, GPT-3.5-turbo를 사용하여 지시어 튜닝을 진행하면 대화형 쿼리 재작성에 있어 최고의 결과를 얻을 수 있음
GPT-3.5-turbo에 재작성 작업 지시어를 제공하는 것 외에도, 저자들은 재작성 결과의 품질을 향상시키기 위해 몇 가지 few-shot 재작성 예시를 추가로 제공함
자세한 내용은 부록 B.1에서 확인할 수 있음
4.3.Comparisons
저자들은 다섯 개의 데이터셋에서 zero-shot 설정에서 질의 재작성과 미세 조정 방법을 비교함
Dragon과 같은 최신 검색기에서 미세 조정은 질의 재작성과 비교했을 때 평균 top-1 리콜에서 약간 떨어지지만(1.74% 차이), 평균 top-5 리콜에서는 더 나은 결과를 보임(0.54% 향상)
이는 미세 조정 접근법의 효과를 입증함
또한, HumanAnnotatedConvQA와 SyntheticConvQA를 사용한 미세 조정 결과가 비슷하다는 것은 저자들이 수집한 인간 주석 데이터의 높은 품질을 시사함
특히, E5-unsupervised에서는 미세 조정이 질의 재작성보다 훨씬 우수한 성능을 보여, 두 가지 접근법 간의 평균 top-1 및 top-5 리콜 점수에서 15% 이상의 큰 개선을 보임
따라서 고품질 대화형 쿼리 맥락 쌍으로 좋은 단일 턴 검색기를 미세 조정하는 것은 최신 재작성기를 활용하는 것과 동등한 성능을 달성할 수 있지만, 재작성 방법은 자동 회귀 생성 과정과 potenial API 비용으로 인한 추가적인 계산 시간을 필요로 함
저자들은 미세 조정 접근법을 사용하여 모든 QA 모델에 대해 일관되게 최상위 5개의 결과를 검색하여 QA 평가를 수행함
5. Experimental Setup
이 절에서 저자들은 대화형 질문 응답 작업에 대한 실험 설정의 세부 사항을 제시함
다양한 모델 크기에 대한 실험을 수행함
먼저, 1단계 지시어 튜닝을 통한 맥락 강화 능력의 효과를 보여주기 위해, Llama2-SFT-{7B, 13B, 70B}와 비교함
이는 각각 Llama2-7B/13B/70B 기반 모델이 1단계 지시어 튜닝을 거친 후의 것임
두 번째로, Llama2-Chat-{7B, 13B, 70B}와 비교함
Llama2-Chat 모델은 강력한 지시어 따르기와 대화형 QA 능력을 가지고 있음을 보여줌
Llama2 모델 외에도, 3.5조 토큰으로 사전 훈련된 자체 GPT-{8B, 22B} 기반 모델에 대한 실험을 진행함
이 모델들과 그들의 1단계 SFT 기반라인인 GPT-SFT-{8B, 22B}와 비교함
마지막으로, GPT-3.5-turbo-0613(4k)과 GPT-4-0613(8k)와 같은 강력한 OpenAI 모델과 비교함
공정한 비교를 위해, 검색이 필요한 경우 모든 기반라인과 ChatQA 모델에 대해 최상의 검색기에서 얻은 상위-k 검색된 청크를 맥락으로 사용함
모든 기반라인에 대해 가능한 최상의 결과를 얻기 위해 지시어를 세심하게 조정함
6.Results
이 절에서 저자들은 다양한 모델 변형과 OpenAI 모델들과의 비교를 통해 10개 대화형 QA 데이터셋에서의 주요 결과를 제시함
ChatQA 방법은 모델의 대화형 QA 능력을 크게 향상시킴
평균 점수 측면에서 Llama2-Chat 모델은 SFT 모델 대비 약간의 개선을 보여줌
반면, ChatQA 모델들은 SFT 및 Chat 모델과 비교하여 10점 이상의 절대적인 개선을 달성함
예를 들어, ChatQA-13B는 Llama2-13B-SFT와 Llama2-13B-Chat보다 각각 13.17점과 10.52점 개선됨
OpenAI 모델과의 비교에서, 저자들의 최고 모델인 ChatQA-70B는 GPT-3.5-turbo를 3.77점의 평균 점수로 능가하며 GPT-4와는 0.24점의 평균 점수로 비슷한 성능을 보임
특히, 저자들이 제안한 2단계 지시어 튜닝 방법은 GPT-22B-SFT의 성능을 14.70점 향상시켜, 훨씬 작은 모델 크기에도 불구하고 GPT-4에 근접한 성능(53.53 대 53.90)을 보임
이는 제안된 지시어 튜닝 방법의 효율성을 강조함
7. Conclusion
이 논문에서 저자들은 7B에서 70B에 이르는 다양한 모델 크기의 ChatQA 모델들을 구축하였음
10개 대화형 QA 데이터셋에 대한 포괄적인 평가를 통해, 저자들의 최고 모델인 ChatQA-70B가 GPT-3.5-turbo를 현저히 능가하고 GPT-4와 동등한 수준의 성능을 보임을 보여주었으며, 이는 ChatGPT 모델에서 생성된 합성 데이터를 사용하지 않고도 달성되었음
또한, 저자들은 저자들의 수집한 대화형 QA 데이터를 사용하여 단일 턴 쿼리 검색기를 미세 조정하는 것이 상태 최신 LLM 기반 질의 재작성 모델과 비슷한 성능을 내면서도 추가적인 연산 시간과 잠재적인 API 비용을 발생시키지 않음을 보여주었음
더욱이, 저자들은 “답변 불가” 샘플의 소량을 포함시키는 것이 저자들의 모델이 제공된 맥락에서 답변을 찾을 수 없을 때 이를 명시적으로 나타내는 능력을 크게 향상시킬 수 있음을 보여주었음
답변 불가 평가는 저자들의 최고 모델인 ChatQA-70B가 GPT-4와 비교했을 때 약간의 격차가 있지만 매우 강력한 성능을 보임을 강조함
요약
ChatQA is a conversational question answering models achieving GPT-4 level accuracies
It has two-stage instruction tuning method significantly improving zero-shot conversational QA results from large language models
The two-stage instruction tuning method includes supervised fine-tuning on diverse datasets and refines the models’ contextual understanding and response generation in conversational QA by integrating contextualized QA datasets
ChatQA-70B model outperforms GPT-4 on 10 conversational QA datasets
Find me on WeChat with the ID YourWeChatUsername, or scan my QR code: