[Wei et al. (2022)](https://arxiv.org/abs/2201.11903)에서 소개된 생각의 사슬(CoT) 프롬프트는 중간 추론 단계를 통해 복잡한 추론을 가능하게 합니다. 이를 단답형 프롬프트와 결합하면 응답하기 전에 추론이 필요한 복잡한 작업에서 더 나은 결과를 얻을 수 있습니다.
최근에 나온 아이디어 중 하나로 제로샷 생각의 사슬\(zero-shot CoT\)가 있습니다. [zero-shot CoT](https://arxiv.org/abs/2205.11916) (Kojima et al. 2022) 원래의 프롬프트에 "단계별로 생각하자"를 추가하는 것이 핵심입니다. 간단한 문제를 풀고 모델이 어떻게 작동하는지 살펴봅시다:
이 간단한 프롬프트가 위와 같은 문제에 효과적이라는 점이 인상적입니다. 프롬프트에 사용할 예제가 너무 많지 않을 때 특히 유용합니다.
## Automatic Chain-of-Thought (Auto-CoT)
데모와 함께 생각의 사슬 프롬프트를 적용할 때, 이 과정은 효과적이고 다양한 예시를 수작업으로 포함합니다. 이러한 수작업은 차선의 해결책으로 이어질 수 있습니다. [Zhang 등(2022)](https://arxiv.org/abs/2210.03493)은 "단계별로 생각해보자"라는 프롬프트가 있는 대규모언어모델을 활용하여 데모를 위한 추론 사슬을 하나씩 생성함으로써 수작업을 없애는 접근 방식을 제안합니다. 이 자동 프로세스는 여전히 생성된 체인에 실수가 있을 수 있습니다. 실수로 인한 영향을 완화하기 위해서는 데모의 다양성이 중요합니다. 이 연구에서는 다양한 질문을 샘플링하고 데모를 구성하기 위한 추론 체인을 생성는 Auto-CoT를 제안합니다.
Auto-CoT는 두 가지 주요 단계로 구성됩니다:
- 1단계): **질문 클러스터링\(question clustering\)**: 주어진 데이터 세트의 질문을 몇 개의 클러스터로 분할합니다.
- 2단계): **데모 샘플링\(demonstration sampling\)**: 각 클러스터에서 대표 질문을 선택하고 간단한 휴리스틱과 함께 제로 샷 생각의 사슬(Zero-Shot-Cot)를 사용해 추론 체인을 생성합니다.
간단한 휴리스틱은 질문의 길이(예: 60개의 토큰)와 추론 단계 수(예: 5개의 추론 단계)가 될 수 있습니다. 이렇게 하면 모델이 간단하고 정확한 데모를 사용하도록 장려합니다.
그 과정은 아래에 설명되어 있습니다:
<Screenshot src={AUTOCOT} alt="AUTOCOT" />
이미지 출처: [Zhang et al. (2022)](https://arxiv.org/abs/2210.03493)
Auto-CoT 코드는 [여기](https://github.com/amazon-science/auto-cot)에서 확인할 수 있습니다.