프롬프트란 무엇인가
1. 프롬프트라는 단어가 의미하는 것
프롬프트(Prompt)는 원래 컴퓨터를 다룰 때 "사용자의 입력을 기다리는 자리"를 가리키는 말이었습니다. 검은 화면에 깜빡이는 커서, 검색창의 빈 칸, 그게 다 원래의 프롬프트입니다. ChatGPT가 등장한 뒤로 이 단어가 한 번 더 확장돼서, 지금은 사람이 AI에게 던지는 모든 형태의 입력을 가리킵니다. 한 줄짜리 질문도, 긴 지시문도, 같이 붙여 넣은 예시 데이터도, 모델의 기본 성격을 잡아두는 시스템 설정도 전부 프롬프트입니다.
기술적으로 한 줄 더 보태면, LLM은 입력 텍스트 뒤에 올 단어를 확률로 골라가며 답을 만듭니다. 같은 모델에 같은 입력을 줘도 매번 답이 살짝 다른 이유, 그리고 입력 한 줄을 바꾸는 것만으로 결과가 완전히 달라지는 이유가 여기 있습니다. 프롬프트 엔지니어링은 이 확률 분포를 우리에게 유리한 쪽으로 좁혀가는 작업입니다. AI에게 잘 물어보는 법, 이라고 줄이면 됩니다.
같은 사람한테 같은 사람 얘기를 한다고 해도, 앞에 무엇을 깔아주느냐에 따라 다음에 떠올리는 그림이 달라지는 것과 같은 원리입니다. 프롬프트는 그 "앞에 깔아주는 단서"를 의도적으로 설계하는 일입니다.
2. 좋은 프롬프트는 네 자리를 채운다
이 책에서 다루는 좋은 프롬프트의 네 자리는 다음과 같습니다. 외울 필요 없이, 평소에 사람한테 일을 부탁할 때 자연스럽게 챙기는 것들이라고 생각하면 됩니다.
1. 역할 (Role): AI가 누구의 입장에서 답해주길 원하는지 (선택)
2. 맥락 (Context): 어떤 상황에서 일어나는 일인지
3. 작업과 절차 (Task and Procedure): 정확히 무엇을 어떻게 해주길 원하는지
4. 형식 또는 예시 (Format or Example): 결과를 어떤 모양으로 받고 싶은지
회사 동료에게 보고서 작성을 부탁한다고 생각해 보세요. "당신은 우리 회사 마케터고(역할), 지금 분기 매출이 떨어지는 상황이며(맥락), 원인 분석 보고서를 다음 순서로 정리해 줘(작업), 표와 함께 PPT 한 장 분량으로(형식)." 자연스럽지요. 프롬프트도 똑같습니다.
2.1 역할 (Role)
AI에게 어떤 입장에서 답해 달라고 지정합니다. 같은 질문이라도 변호사로 답할 때와 마케터로 답할 때가 다르므로, 특정한 톤이나 시각을 끌어내고 싶을 때 씁니다.
너는 10년 경력의 백엔드 개발자야. 코드 리뷰를 할 때는 성능, 보안, 유지보수성을 중심으로 봐줘.
한 가지 짚어둘 점은, 역할 부여가 항상 정답률을 올려주는 건 아닙니다. 학계에서는 시스템 프롬프트의 페르소나가 객관식 벤치마크 점수를 유의미하게 올리지 않는다는 결과를 보고하기도 했습니다(When "A Helpful Assistant" Is Not Really Helpful). 대신 글의 톤, 어휘, 강조점 같은 결과물의 결은 확실히 바뀝니다. "성능 부스터"라기보다는 "톤 잡는 장치"로 이해하는 편이 정확하고, 자기 사용 사례에서 A/B로 비교해 효과가 보이면 쓰는 게 안전한 결론입니다.
2.2 맥락 (Context)
AI는 우리 회사 사정을 모릅니다. 어떤 산업이고, 누구를 상대로 일하고, 지금 어떤 상황인지 일일이 알려줘야 합니다. 맥락이 빠진 프롬프트가 가장 흔히 받는 답은 "교과서적이고 누구에게도 도움이 안 되는 일반론"입니다.
우리 회사는 B2B SaaS 스타트업이고, 현재 MAU 5,000명 수준이야.
최근 고객 이탈률이 15%에서 20%로 증가했어.
주요 고객은 중소기업 마케팅팀이고, 경쟁사 대비 가격은 30% 저렴하지만
기능이 부족하다는 피드백을 받고 있어.
회사 규모, 지표 변화, 고객층, 경쟁사 대비 위치를 같이 주면, 답이 곧바로 우리 상황에 들어맞게 좁혀집니다.
2.3 작업과 절차 (Task and Procedure)
원하는 작업을 모호하지 않게, 가능하면 순서까지 적어 줍니다. 순서가 명시되면 AI가 중간 단계를 빼먹지 않고 따라옵니다.
다음 순서로 고객 이탈 방지 전략을 수립해줘.
1. 이탈 원인 분석 (가격, 기능, 서비스 측면)
2. 단기 대응 방안 (1개월 이내 실행 가능)
3. 중장기 전략 (3-6개월)
4. KPI 설정 및 측정 방법
"분석해 줘"보다는 "이 세 가지 관점에서 분석해 줘"가 낫고, 그보다는 "1) 이렇게 분석하고 2) 이런 방안을 내고 3) 측정 방법까지 적어 줘"가 가장 낫습니다.
2.4 형식 또는 예시 (Format or Example)
결과를 어떤 모양으로 받고 싶은지 지정합니다. 마크다운 표인지, 글머리 기호 리스트인지, JSON인지, 글자 수 제한이 있는지 같은 것들입니다.
형식:
- 제목 (15자 이내)
- 요약 (3줄)
- 상세 내용 (500자 이내, 마크다운 테이블 사용)
- 액션 아이템 (체크리스트 형태)
형식을 정해두면 결과물이 바로 쓸 수 있는 모양으로 나오고, 여러 번 돌려도 같은 모양이 유지돼서 비교가 쉬워집니다. 매주 같은 형식의 결과물을 받아야 하는 작업이라면 형식 지정의 효과가 특히 큽니다.
말로 형식을 길게 설명하는 대신 원하는 모양의 예시를 한두 개 보여주는 방식도 잘 통합니다. 분류·라벨링처럼 답 형식이 일정해야 하는 작업에서 이 방법이 빠릅니다.
다음 예시처럼 분류해줘.
문장: "배송이 너무 빨라서 놀랐어요!"
감정: 긍정 / 카테고리: 배송
문장: "제품은 좋은데 가격이 좀 비싸네요."
감정: 혼합 / 카테고리: 가격
문장: "고객센터 응대가 정말 친절했습니다."
감정: / 카테고리:
예시는 2~5개 정도가 가성비가 좋습니다. 더 많아지면 컨텍스트만 잡아먹고 정확도는 크게 안 오릅니다.
3. 한때 유명했던 트릭은 이제 모델 안에 들어가 있다
ChatGPT 초기에는 "단계별로 생각해 봐(Let's think step by step)" 한 줄을 붙이는 것만으로 추론 정확도가 눈에 띄게 올라갔습니다. 이른바 Chain of Thought 프롬프팅인데, 한때 프롬프트 엔지니어링의 대표 기법이었습니다. 그런데 지금의 최신 모델들은 이 패턴을 모델 안에 내재화해 두었습니다. 굳이 사용자가 시키지 않아도 복잡한 문제 앞에서 자동으로 단계별 추론을 시작합니다. 오히려 추론 특화 모델한테 "차근차근 풀어줘"를 굳이 또 붙이면 사고 길이가 불필요하게 늘기도 합니다.
비슷한 운명을 맞은 트릭이 적지 않습니다. 한때 통하던 자잘한 주문들이 이제는 기본값으로 들어가 있거나, 통하더라도 효과가 미미합니다. 그래서 이 책은 한 줄짜리 주문보다는, 위에서 본 네 자리(역할·맥락·작업·형식)를 어떻게 채우느냐에 집중합니다. 이건 모델이 바뀌어도 거의 그대로 유효합니다.
이어서 같은 작업에 대해 나쁜 프롬프트와 좋은 프롬프트가 어떻게 다른지 비교해보고, 매번 4요소를 처음부터 쓰지 않으면서도 품질을 유지하는 두 가지 보조 장치를 봅니다.