지시사항을 늘리는 대신 예시를 추가했더니 프롬프트 성능이 3배 좋아졌다
My prompts got 3x better the day I stopped writing more instructions and started writing more examples instead
핵심 요약
프롬프트에 장황한 지시사항을 적는 것보다 구체적인 예시를 제공하는 것이 모델의 성능과 일관성을 훨씬 높여준다.
- 예시의 중요성 — 장황한 스타일 설명보다 잘 작성된 예시 하나가 모델의 결과물을 훨씬 더 정확하게 제어함.
- 형식 학습 — 원하는 출력 형식을 예시로 직접 보여주면 모델이 구조를 완벽하게 복제함.
- 다양성 확보 — 여러 개의 예시를 제공하면 모델이 특정 스타일을 그대로 베끼지 않고 일반적인 어조를 학습함.
- 부정 예시 활용 — '하지 말아야 할 것'을 예시로 제시하면 불필요한 제약 조건을 길게 설명할 필요가 없음.
지난달에 스스로 실험을 하나 해봤음. 평소 업무에서 매주 사용하는 프롬프트 5개를 골랐지. 블로그 초안, 회의록 요약, 코드 리뷰 피드백, 이메일 답장, 콘텐츠 개요가 대상이었음.
각 프롬프트마다 '지시사항 위주' 버전과 '예시 위주' 버전을 작성했음. 그리고 두 버전 모두 각각 3번씩 실행해 봤음.
결과는 예시 위주 버전이 매번 압도적으로 승리했음!
지시사항 위주 버전은 수정이 더 많이 필요했고, 제약 조건을 더 자주 어겼음. 아이러니하게도 내 글쓰기 스타일을 구체적으로 지정했음에도 결과물은 오히려 덜 개인적인 느낌이었음.
15번의 실행 과정에서 일관되게 중요했던 5가지 포인트는 다음과 같음.
-
강력한 예시 하나가 200단어의 스타일 설명보다 낫다. 블로그 초안 프롬프트에서 '대화하듯 캐주얼하면서도 정보가 담긴 톤으로 써줘'라는 문구를 내가 직접 쓴 블로그 도입부 예시 하나로 바꿨더니, 수정 시간이 15분에서 3분으로 줄었음.
-
형식은 예시를 붙여넣는 것으로 학습된다. 회의록의 경우 '결정 사항, 실행 항목, 미해결 질문의 3개 섹션으로 작성해'라고 하는 것도 괜찮았음. 하지만 잘 작성된 회의록 문서 하나를 예시로 붙여넣었더니, 그다음 4개의 결과물은 추가 프롬프트 없이도 구조가 거의 동일하게 나왔음.
-
다양성이 중요하다! 예시 하나만 있으면 모델이 너무 그 예시에만 고정됨. 2~3개의 예시를 주면 모델이 무엇이 변하지 않는 요소인지 파악함. 코드 리뷰 프롬프트의 경우 이제 서로 다른 스타일로 쓴 짧은 리뷰 2개를 붙여넣음. 그러면 모델이 어느 한쪽을 그대로 베끼지 않고도 일반적인 '목소리'를 잡아냄.
-
반대 예시(Counter-examples)는 저평가되어 있다. '이건 아님:'이라는 짧은 줄 하나가 제약 조건을 길게 쓰는 것보다 훨씬 효과적임. 콘텐츠 개요를 짤 때 '이건 아님: [일반적인 개요 예시]'를 추가했더니, 리스트 형식의 글을 바로 멈췄음.
-
자주 쓰는 프롬프트는 이제 폴리싱 도구로 표준화함. 마지막 단계에서 몇 가지 무료 프롬프트 최적화 도구를 번갈아 사용함. 이 도구들은 내 예시들 사이의 중복을 잡아내고 문장을 다듬어줌. 예시만 남기고 나머지를 다 쳐내면, 프롬프트 길이는 500단어에서 150단어로 줄어들면서도 중요한 내용은 하나도 손실되지 않음.
이번 실험에서 얻은 메타 교훈은 모델이 작성된 규칙보다 예시를 훨씬 더 무겁게 받아들인다는 점임.
예시와 규칙이 충돌하면 거의 매번 예시가 이김. 따라서 상세한 규칙을 적어두더라도 예시가 그 규칙과 미묘하게 어긋나면, 결과물은 예시를 따라가게 됨.


