안녕하세요.
투썬AI스쿨입니다.
이번 게시글에서는
CoT(Chain-of-Thought) Prompting에 대해
자세히 알아보려고 합니다!
Chain-of-thought prompting
Chain-of-thought prompting 은
언어모델이 추론을 할 수 있도록 논리적인 과정을
프롬프트에 추가해서 질의하는 방식입니다.
[ 다음 논문에서 소개되었습니다.
Wei et al, Chain-of-Thought Prompting Elicits Reasoning in Large Language Models. 2022]
CoT 프롬팅은 중간 추론 단계를 통해 복잡한 추론 능력을 가능케합니다.
이 방법은 퓨샷프롬팅과 결합하면 응답하기 전에 추론이 필요한 더 복잡한 작업에서
더나은 결과를 얻을 수 있습니다.
CoT 프롬팅에서는 문제를 해결하는데 필요한 중간 추론 단계를 제공하여 작업을
단계적으로 수행합니다.
이렇게 하면 모델이 각 단계를 이해하고 최종 결과를 추론하는데 도움이 됩니다.
다음은 예시입니다.
그런데, 이렇게 추론에 대한 모든 과정을 언어 모델에게 작업 줄 때마다
사람이 하기에는 번거로운 작업입니다.
그래서 논문 ' Kojima et al, Large Language Models are Zero-shot Reasoners. 2023 '을 통해
논리적인 추론이 필요한 질문 뒤에
"Let's think step by step(단계 별로 생각해보자)"라는 질문을 추가하는 것 만으로도
언어모델의 추론 능력을 끌어올릴 수 있다는 것을 알 수 있습니다.
다음은 이에 대한 예시입니다.
기존에 성공하지 못했었던 작업에 대해 올바른 과정을 통해
단계별 추론을 하면서 정확한 답을 생성한 것을 확인할 수 있습니다.
지금까지 언어모델의 답변을 더 잘 이끌어내기 위한
프롬프트 전략을 간단하게 살펴보았습니다.
제로샷 프롬팅은 특정 작업에 대한 예시나 데이터를 별도로 제공하지 않고도,
대형 언어 모델이 특정 작업을 수행하는 능력을 의미합니다.
모델은 훈련 데이터에서 학습한 지식과 패턴을
바탕으로 입력된 프롬프트를 해석하고 적절한 응답을 생성합니다.
few-shot 프롬팅은 모델에게 특정 작업에 대한
몇가지 예시를 제공함으로써 해당 작업에
대한 컨텍스트를 이해하게 하는 방법입니다.
이러한 방식은 모델이 새로운 작업을 더 효과적으로 처리하게 해줍니다.
마지막으로, CoT 프롬팅에 대해 알아보았습니다.
이는 복잡한 추론을 가능케 하는기술로,
특히 문제해결과정의 중간 단계를 명시적으로 제공함으로써
작업을 단계적으로 이해하게 해줍니다.
"단계별로 생각하자"와 같은 프롬프트를 추가하는 것만으로
언어모델로 부터 더 정확한 답변을 얻을 수 있었습니다.
이러한 프롬팅 방법들은 대형언어 모델의 성능을
향상시키는데 중요한 역할을 합니다.
이런 접근법들을 사용하면, 모델은 더 복잡한 작업을 더 잘 수행하고,
더욱 신뢰성 있는 결과를 제공할 수 있게 됩니다.
이는 언어 모델이 우리의 일상 생활에서
더욱 중요한 역할을 하는데 기여하게 될 것입니다.
혹시 궁금한 점이 있으시다면,
aischool@twosun.com으로
메일부탁드립니다.
감사합니다.