같은 모델, 같은 질문이라도 "어떻게 묻느냐"에 따라 답의 질이 천차만별이다. "글 좀 써줘"와 "초등학교 4학년이 이해할 수 있게, 5문장으로, 친근한 말투로 광합성을 설명해줘"는 완전히 다른 결과를 낳는다. 이 "모델에게 잘 묻는 기술"이 **프롬프트 엔지니어링(prompt engineering)**이다.
생성형 AI는 모델을 새로 학습시키지 않아도, 프롬프트만 잘 쓰면 원하는 결과의 상당 부분을 얻을 수 있다. 학습·파인튜닝이 비싸고 느린 데 비해, 프롬프트는 즉시·무료로 바꿀 수 있다. 그래서 AIF 시험에서 "가장 빠르고 비용이 적게 드는 개선 방법"을 물으면 프롬프트 엔지니어링이 자주 답이 된다. 오늘은 좋은 프롬프트의 요소, Zero-shot / Few-shot 같은 핵심 기법, 그리고 프롬프트만으로는 넘지 못하는 한계를 본다.
좋은 프롬프트는 운이 아니라 구조에서 나온다. 보통 다음 요소들을 명확히 담는다.
| 요소 | 설명 | 예시 |
|---|---|---|
| 지시(Instruction) | 무엇을 해야 하는지 | "다음 리뷰의 감정을 분류하라" |
| 맥락(Context) | 배경 정보 | "우리는 가전 쇼핑몰이다" |
| 입력 데이터(Input) | 처리할 대상 | "리뷰: '배송이 너무 느렸다'" |
| 출력 형식(Output format) | 답의 형태 | "긍정/부정/중립 중 한 단어로만" |