칼은 어디에서 왔는가
요약
프롬프트 엔지니어링의 발전 단계를 샌드위치 만들기 비유를 통해 설명합니다. 단순 명령에서 벗어나 컨텍스트, 제약 사항, 수락 기준을 포함한 '환경 설정'의 중요성을 강조합니다.
핵심 포인트
- 단순 명령만으로는 모델의 의도한 동작을 이끌어내기 어려움
- 프롬프트는 단순 지시가 아닌 모델이 활동할 '환경'을 구축하는 과정임
- 효과적인 프롬프트를 위해 컨텍스트, 제약 사항, 수락 기준이 필요함
초등학교 3학년 때, 나는 피넛 버터 젤리 샌드위치(peanut butter and jelly sandwich)를 만드는 방법에 대한 설명서를 써야 했습니다. 나는 완벽하게 해냈다고 생각했습니다. 네 단계였죠:
- 빵을 준비한다.
- 피넛 버터와 젤리를 준비한다.
- 한 조각에는 피넛 버터를 바르고, 다른 조각에는 젤리를 바른다.
- 그것들을 합친다.
선생님은 그것을 읽고는, 고개를 들어 질문 하나를 던지셨습니다:
칼은 어디에서 왔니?
나는 머릿속으로 상상하고 있었습니다. 환경(environment) 설정을 생략한 것이죠. 칼은 내 머릿속에서는 실재했습니다(그날 아침 서랍에서 본 적이 있었으니까요). 그래서 글 위에서도 실재할 것이라고 가정했습니다. 하지만 그렇지 않았습니다.
LLM(대규모 언어 모델)에서 이 실수를 반복하는 세 가지 단계
작년에 프롬프트 엔지니어링(prompt engineering)을 진지하게 시작했을 때, 나는 내가 3학년 때의 실수를 반복하고 있다는 것을 깨달았습니다. 그 흐름은 매우 익숙해서 대부분의 사람들이 이 과정을 거친다고 생각합니다.
1단계: 한 줄짜리 명령. 단 한 문장. 모델이 당신의 마음을 읽기를 기대합니다. 모델이 실패하면, 프롬프트를 수정하는 대신 다음 턴에서 모델과 싸웁니다.
2단계: 노트 작성. 효과가 있었던 프롬프트들을 저장하기 시작합니다. 일관성(consistency)이 중요하다는 것을 깨닫습니다. 어떤 프롬프트들은 주변의 추가 설정 없이는 모델이 실제로 수행할 수 없는 작업을 수행하려 한다는 것을 알게 됩니다.
3단계: 환경 설정. 프롬프트가 단순한 지시 사항이 아니라는 것을 깨닫습니다. 그것은 하나의 방(room)입니다. 모델은 방 안에 있는 것들만 사용할 수 있습니다. 만약 방 안에 칼이 없다면, 당신이 바르는 동작을 아무리 명확하게 설명하더라도 샌드위치는 만들어지지 않습니다.
내가 지금 작성하는 방식
세 가지 요소를 층층이 쌓아 올립니다:
- 컨텍스트 (Context): 재료가 어디에 있는지. 모델이 무엇에 접근할 수 있는지.
- 제약 사항 (Constraints): 도구를 어떻게 사용할지, 그리고 어떻게 사용하지 않을지.
- 수락 기준 (Acceptance criteria):
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기