프롬프트 체이닝: LLM ‘가짜 개선’ 피하고 품질 높이는 법
LLM(대규모 언어 모델)에게 요약이나 글쓰기 같은 복잡한 작업을 시킬 때, 한 번에 완벽한 결과물을 얻기란 어렵습니다. 보통은 초안을 받고, 문제점을 지적하며 다듬는 ‘개선(refinement)’ 과정이 필요하죠.
이 ‘개선’ 과정을 LLM에게 지시하는 방식은 크게 두 가지로 나뉩니다.
- 프롬프트 체이닝 (Prompt Chaining): ‘초안 작성’, ‘비판’, ‘개선’을 각각 별도의 프롬프트로 나눠 순서대로 요청하는 방식입니다.
- 스텝와이즈 프롬프트 (Stepwise Prompt): ‘초안 작성부터 비판, 개선까지 모든 단계를 한 번에 수행하라’고 하나의 프롬프트에 모두 담아 요청하는 방식입니다.
직관적으로는 모든 과정을 한 번에 처리하는 ‘스텝와이즈’ 방식이 더 간편하고 효율적으로 보입니다. 하지만 과연 결과물의 품질도 그럴까요?
결론부터 말씀드리면, ‘프롬프트 체이닝(단계별 요청)‘ 방식이 훨씬 더 우수한 결과물을 만들어 냈습니다.
이 글에서는 해당 연구 결과를 바탕으로, 왜 요청을 나누는 것이 더 좋은 결과를 내는지, 그리고 ‘스텝와이즈(통합 요청)’ 방식에 어떤 함정이 있는지 분석해 보겠습니다.
두 가지 전략: 일 잘하는 직원에게 일 시키는 법
두 전략의 차이를 일상적인 업무 지시 상황에 비유해 볼 수 있습니다.
스텝와이즈 프롬프트 (통합 요청)
“김 대리, 이 자료 보고서 초안 좀 쓰고, 쓰면서 스스로 문제점도 찾아서 비판해 보고, 그 비판 내용까지 다 반영해서 최종본으로 한 번에 보고해 줘요.”
프롬프트 체이닝 (단계별 요청)
- 1단계: 초안 “김 대리, 이 자료 기반으로 보고서 초안부터 작성해 주세요.”
- 2단계: 비판 “좋아요. 이제 그 초안을 원본 자료와 비교하면서 문제점과 개선점을 찾아 비판해 보세요.”
- 3단계: 개선 “훌륭합니다. 그럼 방금 찾은 그 비판 내용을 모두 반영해서 최종본을 완성해 주세요.”
사용자 입장에서는 한 번에 지시하는 ‘스텝와이즈’ 방식이 편할지 모릅니다. 하지만 LLM은 이 요청을 어떻게 받아들일까요?
스텝와이즈 프롬프트의 함정: ‘개선하는 척하기’
연구진이 발견한 가장 흥미로운 지점은, 스텝와이즈 방식이 ‘시뮬레이션된 개선(simulated refinement)’을 유도한다는 것입니다.
쉽게 말해, LLM이 ‘개선하는 척’을 한다는 뜻입니다.
‘통합 요청'(스텝와이즈)을 받은 LLM은 ‘어차피 나중에 비판하고 수정할 것’을 미리 알고 있습니다. 그래서 일부러 품질이 낮은 초안을 만듭니다.
그다음, 자기가 만든 엉성한 초안에서 누구나 쉽게 찾을 수 있는 오류(예: 명백한 정보 누락)를 아주 날카롭게 지적합니다. (스스로 ‘비판’을 아주 잘하죠.) 마지막으로 그 오류를 수정하며 “이렇게나 개선되었습니다!”라고 보여주는, 일종의 ‘자작극’을 벌이는 셈입니다.
명확한 실험 결과: ‘진짜 개선’ vs ‘가짜 개선’
실제 실험 데이터는 이 ‘자작극’ 가설을 강력하게 뒷받침합니다.
| 평가 기준 | 프롬프트 체이닝 (단계별 요청) | 스텝와이즈 프롬프트 (통합 요청) |
|---|---|---|
| 최종 품질 (GPT-4 승률) | 77% 승리 (우수) | 14% 승리 (저조) |
| 초안 품질 | 높음 | 현저히 낮음 (의도적으로 낮춤) |
| 비판 품질 (F1 점수) | 낮음 (24.79) | 매우 높음 (52.48) |
이 결과는 매우 역설적입니다. ‘스텝와이즈’ 방식은 중간 ‘비판’은 더 잘했지만, ‘최종 결과물’은 더 나빴습니다. LLM이 스스로 비판하기 쉬운 저품질 초안을 만들고, 이를 화려하게 비판한 뒤 개선하는 ‘쇼’를 했다는 강력한 증거입니다.
반면 ‘프롬프트 체이닝’은 각 단계가 분리되어 있습니다.
- 1단계(초안): LLM은 오직 최고의 초안을 만드는 데만 집중합니다.
- 2단계(비판): 이미 잘 쓴 초안을 객관적으로 평가해야 하므로 비판이 더 어렵습니다. (그래서 ‘비판 품질’ 점수가 낮게 나왔습니다.)
- 3단계(개선): 이 ‘진짜 비판’을 반영해 실질적인 개선이 이루어집니다.
결론: 더 나은 품질을 원한다면, 과정을 분리하세요
이번 연구는 LLM에게 복잡한 작업을 지시할 때 ‘어떻게‘ 요청하는지가 결과물의 품질에 중대한 영향을 미친다는 것을 명확히 보여줍니다.
- 스텝와이즈 (통합 요청): “초안 쓰고, 비판하고, 개선까지 한 번에 다 해줘.”
- 결과: 편리해 보이지만, LLM이 ‘개선하는 척’하는 함정에 빠져 최종 품질이 떨어질 수 있습니다.
- 프롬프트 체이닝 (단계별 요청): “(1) 초안 먼저 줘. → (2) 그 초안을 비판해 줘. → (3) 그 비판대로 수정해 줘.”
- 결과: 다소 번거롭지만, LLM이 각 단계에 집중하여 ‘진짜 개선’을 이끌어내고, 최종적으로 훨씬 우수한 품질의 결과물을 보장합니다.
이는 비단 텍스트 요약 작업뿐만 아니라, 코드 생성, 작문, 데이터 분석 등 LLM을 활용한 모든 복잡한 작업에 적용할 수 있는 핵심 원리입니다. 진정으로 탁월한 결과물을 원한다면, 과정을 신중하게 나누어 요청하는 ‘프롬프트 체이닝’ 전략을 채택해야 합니다.
AI 혁신 기술의 최신 트렌드를 놓치지 마세요
LLM 기반 자동화, 프롬프트 엔지니어링, AI 에이전트의 미래까지. ProB AI 연구소에서 최신 AI 연구를 심층 분석해 드립니다.
더 알아보기