AI한테 일 제대로 시키는 법 — 프롬프트 4칸 공식(같은 모델에 18번 넣어 재봤습니다)

막연한 한 줄로 시켰을 때 요구조건 충족률 28.9퍼센트, 같은 일을 네 칸으로 쪼개 시켰을 때 80.0퍼센트 — 모델은 그대로 두고 지시문만 바꿨는데 몇 배가 뛰었습니다(2026년 7월 26일 · 같은 모델에 18번 측정).

그런데 얼마나 올랐느냐보다 중요한 게 따로 있어요. 나머지 20퍼센트는 또박또박 말해줬는데도 안 지켰습니다. 무엇이 안 지켜졌는지가 이 글의 진짜 알맹이입니다.

AI한테 일을 맡겼다가 엉뚱한 결과만 받아들고 반나절 날려본 적, 한 번쯤 있으실 겁니다. 그런 날은 보통 "AI가 아직 멀었네" 하고 도구를 탓하며 끝나죠. 그런데 십중팔구 AI가 부족한 게 아니라 지시가 막연했던 겁니다. 이 인턴은 값이 싼 대신 눈치가 없어서, 안 알려준 건 그냥 안 합니다. 사람 신입이라면 알아서 채웠을 자리를 통째로 비워두고 내놓아요. 그러니 일꾼을 탓하기 전에 지시서부터 봐야 합니다.

문제는 이 얘기가 온 인터넷에 널려 있는데 정작 숫자를 보여주는 글이 없다는 겁니다. "프롬프트를 잘 쓰면 결과가 좋아진다"는 건 다들 아는데, 얼마나 좋아지는지, 어떤 조건이 좋아지고 어떤 조건은 끝내 안 고쳐지는지는 아무도 안 알려줘요. 그래서 직접 쟀습니다.

막연한 한 줄이 왜 시간을 잡아먹나

"블로그 글 하나 써줘." 이렇게 던지면 AI는 수천 갈래 중 아무거나 하나를 골라 그럴듯하게 내놓습니다. 그게 내 머릿속 그림과 맞을 확률은 낮죠. 그래서 다시 시키고, 조건을 붙이고, 결국 대화를 열 번 왕복합니다. 처음부터 조건을 한 번에 정리해 넣었으면 한두 번에 끝날 일을요.

요점은 이겁니다. 이 인턴은 내 의도를 읽지 못합니다. 사람 신입이라면 눈치로 채울 사람 몫의 판단 — 누구를 위한 글인지, 길이는, 톤은, 형식은 — 을 말로 꺼내주지 않으면 알 길이 없어요. 내가 머릿속에서 당연하게 여기는 전제일수록 더 그렇습니다. 그 전제를 빠짐없이 적어주는 가장 쉬운 방법이 '4칸'입니다.

프롬프트 4칸 공식 다이어그램 — 역할(누구로서 답할지)·맥락(배경과 제약조건)·작업(구체적으로 시킬 일)·출력형식(결과를 어떤 모양으로) 네 칸으로 나눠 하나의 지시문을 구성하는 도식

프롬프트 4칸 — 역할 · 맥락 · 작업 · 출력형식

거창한 '프롬프트 엔지니어링'까지 갈 것 없습니다. OpenAI·Anthropic·구글의 공식 가이드를 보면 표현은 제각각이지만(역할 부여·예시 제시·맥락·명확한 지시 등), 이 일꾼을 당장 부려먹는 데 필요한 만큼만 추리면 결국 네 칸으로 모입니다.

① 역할 — "누구로서 답해라" 입장을 정해주면 답의 눈높이와 어휘가 잡힙니다.

  • 막연: "마케팅 문구 써줘"
  • 4칸: "10년 차 카피라이터로서" 써줘

② 맥락 — "어떤 상황이고, 뭘 지켜야 하나" 배경·대상·제약을 줍니다. 뒤에서 보겠지만 여기가 결과를 가장 크게 바꿉니다.

  • 막연: "이거 설명해줘"
  • 4칸: "AI를 처음 쓰는 50대 자영업자 대상이고, 전문용어는 풀어서, 3문장 이내로"

③ 작업 — "정확히 뭘 시킬지" 동사를 분명하게. '요약/비교/초안작성/검수'처럼 한 번에 하나씩.

  • 막연: "이 글 좀 봐줘"("봐줘"는 검수인지 요약인지 평가인지 불명확)
  • 4칸: "이 글에서 사실관계가 틀린 문장만 골라 번호로 지적해줘"

④ 출력형식 — "어떤 모양으로 내놓을지" 표·불릿·글자수·말투를 지정하면 후처리 시간이 사라집니다.

  • 막연: (지정 안 함 → 긴 줄글로 나와서 다시 정리)
  • 4칸: "마크다운 표로, 컬럼은 도구·장점·단점 3개, 데이터 행은 4개"

네 칸을 한 문장으로 이으면 이렇게 됩니다. "[①10년 차 카피라이터로서] [②AI 처음 쓰는 50대 자영업자 대상, 전문용어 금지] [③우리 가게 신메뉴 홍보 문구를 3개] [④각 30자 이내로, 번호 매겨서] 써줘."

그래서 정말 차이가 나는지, 직접 재봤습니다

여기까지는 어느 가이드에나 나오는 얘기입니다. 문제는 아무도 재보지 않았다는 것. 그래서 이 인턴을 하루 뺑뺑이 돌렸습니다.

설계는 단순합니다. 축을 하나만 움직였어요.

  • 모델 고정 — gemma3:4b(내 PC에서 돌아가는 무료 로컬 모델) 하나만 씁니다. 모델을 바꾸면 차이가 프롬프트 탓인지 모델 탓인지 알 수 없으니까요.
  • 업무 3종 — ① 블로그 소개문 ② 거래처 납품지연 이메일 ③ AI 도구 비교표. 1인 사업자가 실제로 시키는 일들로 골랐습니다.
  • 프롬프트 2종 — 같은 일을 (가) 막연한 한 줄과 (나) 4칸으로 각각.
  • 각 3회 반복 — AI는 같은 걸 넣어도 매번 다르게 답하니까요. 3 × 2 × 3 = 18회.

핵심은 채점 방식입니다. 업무마다 "사용자가 실제로 원했던 조건" 5개를 미리 못박아 뒀습니다. 예를 들어 이메일이라면 ⓐ첫 줄이 "제목:"으로 시작 ⓑ본문 3문단 이하 ⓒ본문 300자 이하 ⓓ새 납품일 "2026년 8월 10일" 정확히 표기 ⓔ전 문장 존댓말.

4칸 프롬프트는 이 다섯을 전부 말해줍니다. 막연한 한 줄은 하나도 말하지 않습니다. 그리고 두 출력을 같은 자로 잽니다. 그러니까 막연한 쪽의 점수는 곧 "말 안 해도 알아서 해주는 비율"이에요. 채점은 사람이 안 하고 스크립트가 글자수·문단수·표 행수를 직접 세게 했습니다.

결과 — 안 말하면 28.9%, 말하면 80%

막연한 한 줄과 4칸 프롬프트의 요구조건 충족도 막대그래프 — 블로그 소개문 0.7 대 3.0, 거래처 이메일 2.0 대 4.0, 비교표 1.7 대 5.0으로 4칸 프롬프트가 세 업무 모두에서 높음

5점 만점으로 환산한 평균입니다.

  • 블로그 소개문 — 0.7 → 3.0
  • 거래처 이메일 — 2.0 → 4.0
  • 비교표 — 1.7 → 5.0(만점)

전체로 묶으면 조건 45개 중 13개 충족(28.9%) → 36개 충족(80.0%)입니다. (위 업무별 평균은 소수점 반올림이라 셋을 더해도 딱 안 떨어집니다. 원값은 0.667·2.0·1.667이에요.) 같은 녀석한테 같은 일을 시켰는데 지시문만 바꿔서 세 배 가까이 뽑아낸 셈이죠. 특히 비교표는 세 번 다 만점이었습니다. 형식이 명확한 일일수록 4칸이 잘 듣는다는 뜻이에요.

거꾸로 블로그 소개문은 4칸을 써도 3.0에 그쳤습니다. 몫을 뽑아내기 어려운 일이 따로 있다는 신호인데, 이건 아래에서 따로 보겠습니다.

안 말해도 해주는 것 vs 말해야만 해주는 것

여기가 이 측정에서 제일 실용적인 부분입니다. 15개 조건을 하나씩 보면, 말 안 해도 알아서 하는 게 있고 말 안 하면 절대 안 하는 게 있습니다. 이걸 알면 프롬프트에 뭘 쓸지가 정해지죠.

조건 막연히 시켰을 때 4칸으로 말했을 때
이메일 첫 줄에 "제목:" 붙이기 100% 100%
마크다운 표로 내놓기 100% 100%
존댓말로 쓰기 (이메일) 100% 100%
존댓말로 쓰기 (소개문) 67% 100%
비교표 헤더에 도구·장점·단점 67% 100%
본문에 '자영업자' 넣기 0% 100%
지정한 날짜 정확히 쓰기 0% 100%
본문 300자 이하 (이메일) 0% 100%
표에 설명문 안 붙이기 0% 100%
표 컬럼 정확히 3개 0% 100%
표 데이터 행 정확히 4개 0% 100%
3문단 이하 (소개문) 0% 67%
끝줄을 "한 줄 요약:"으로 0% 33%
250~400자 (소개문) 0% 0%
본문 3문단 이하 (이메일) 0% 0%

읽는 법은 이렇습니다.

  • 위 3줄 = 안 써도 되는 말. 이메일이면 제목을 붙이고, 표를 시키면 표로 주고, 한국어로 물으면 존댓말로 답합니다. 세 조건 다 막연히 시켜도 100%였어요. 이 일꾼이 학습한 '보통의 모양'이 있어서 굳이 지시할 필요가 없습니다. 프롬프트에 이런 걸 잔뜩 적는 건 월급 값 하는 지시가 아니라 그냥 글자 낭비예요.
  • 넷째·다섯째 줄 = 대체로 하는데 가끔 빠뜨리는 것. 둘 다 67%, 세 번 중 한 번은 놓쳤습니다. 말해주면 100%가 되니 꼭 필요한 조건이면 한 줄 적어두는 게 남는 장사죠.
  • 가운데 6줄 = 반드시 써야 하는 말. 특정 단어, 특정 날짜, 글자수 상한, 표의 컬럼·행 개수 — 전부 0% → 100%입니다. 말하면 되고 안 하면 안 됩니다. 여기가 4칸의 값이 나오는 자리예요.
  • 아래 4줄 = 말해도 확실하지 않은 것. 아예 안 되는 것(0%)부터 세 번 중 두 번은 되는 것(67%)까지 섞여 있습니다. 다음 절에서 따로 봅니다.

가운데 묶음을 다시 보세요. 전부 '내 머릿속에만 있던 조건'입니다. 납품일이 8월 10일이라는 걸 나는 알지만 직원처럼 옆에 앉아 있는 게 아니라 AI는 모릅니다. 4칸 중에서 ② 맥락 칸이 결과를 가장 크게 바꾼다고 한 이유가 이겁니다.

4칸도 못 고치는 것 — 말해줘도 못 맞춘 조건들

정직하게 적겠습니다. 4칸을 써도 80%였습니다. 나머지 20%는 조건을 또박또박 적어줬는데도 못 맞췄어요. 완전히 실패한 것과 들쭉날쭉한 것이 섞여 있는데, 공통점이 뚜렷합니다.

  • "250~400자로" → 3회 모두 실패. 나온 건 424·462·453자. 아깝게 넘긴 게 아니라 매번 넘겼습니다.
  • "본문 3문단 이하" → 이메일에서 3회 모두 실패. 소개문에서도 3회 중 1회 실패.
  • "마지막 줄은 '한 줄 요약:'으로 시작" → 3회 중 1회만 성공.

전부 세는 일입니다. 글자를 세고, 문단을 세고, 어디가 마지막 줄인지 세는 것. 이 녀석은 문장을 만드는 데는 능해도 자기가 쓴 걸 세지는 못합니다. 토큰 단위로 글을 뱉지 글자 단위로 세면서 쓰는 게 아니거든요. 아무리 굴려도 이건 안 고쳐집니다.

반대로 같은 '세는 일'이라도 표의 행 4개·컬럼 3개는 100% 지켰습니다. 표는 구조가 눈에 보여서 세기 쉽고, 줄글의 글자수는 안 보여서 못 세는 거죠.

그래서 실무에선 이렇게 하시면 됩니다. 길이 제약은 프롬프트로 해결하려 하지 말고 ⓐ 받아서 직접 자르거나 ⓑ "3문장으로"처럼 셀 수 있는 단위로 바꿔 요구하세요. "400자 이내"보다 "3문장 이내"가 훨씬 잘 먹힙니다.

덤으로 알게 된 둘 — 더 빠르고, 없는 건 지어내지 않았다

측정하다 보니 예상 못 한 게 두 개 나왔습니다.

하나, 4칸이 더 빨랐습니다. 막연한 지시 평균 9.0초, 4칸 평균 5.3초로 약 1.7배 차이가 났어요. 다만 시간만큼은 표본이 어긋납니다 — 맨 첫 회차 26.8초에 모델을 GPU에 처음 올리는 시간이 섞여 있어 그 한 번을 뺐고, 그래서 막연한 쪽 8회 대 4칸 9회로 비교한 값입니다. 그 한 회를 넣으면 막연한 쪽 평균이 11.0초로 더 벌어지니, 빼는 쪽이 4칸에 불리한 계산이에요. 충족률 28.9%·80.0%는 18회를 전부 넣은 값입니다. 출력 길이도 평균 1,113자 대 325자로 3.4배 차이입니다.

이유는 단순합니다. 조건을 안 주면 이 인턴은 뭘 원하는지 몰라서 이것저것 다 넣은 장문을 내놓습니다. 비교표를 막연히 시켰더니 2,241자짜리 설명문이 딸려 나온 적도 있어요. 야근을 시킨 것도 아닌데 혼자 일을 키운 셈이죠. 그리고 그 장문은 결국 제가 다시 잘라내야 합니다. 4칸은 지시를 길게 쓰는 대신 결과를 짧게 만듭니다.

둘, 안 알려준 정보를 지어내지는 않았습니다. 이메일 테스트에서 막연한 쪽에는 새 납품일을 알려주지 않았는데, 3회 모두 [날짜] 같은 빈칸으로 남겼습니다. 그럴듯한 가짜 날짜를 박아 넣은 경우는 0회였어요.

이건 안심할 대목이자 경계할 대목입니다. 날짜처럼 비면 티가 나는 자리는 비워두지만, 그렇지 않은 곳은 얘기가 다릅니다. 저희가 별도로 돌린 로컬 AI 사실성·환각 저항 실측에서는 존재하지 않는 전제를 깐 질문에 그럴듯한 답을 지어내는 경우가 실제로 나왔습니다. "빈칸은 비워두더라도 사실은 지어낼 수 있다" 정도로 이해하시는 게 맞습니다.

흔한 실수 3가지 — 이제 숫자가 붙었습니다

  • 출력형식을 안 정함. 위 표에서 확인된 그대로입니다. 형식을 비워두면 표 컬럼·행 개수는 0%로 안 맞고, 결과는 3.4배 길어져서 그걸 다시 정리하는 데 시간이 갈아넣어집니다.
  • 한꺼번에 다 던지기. "기획서 쓰고 표도 만들고 메일도 써줘"를 한 프롬프트에 욱여넣으면 셋 다 어중간해집니다. 이 일꾼은 한 번에 하나를 시켰을 때 제일 잘합니다 — 형식이 뚜렷한 비교표가 만점이었던 게 그 방증이에요.
  • '좋게' 같은 빈말. "좀 더 좋게", "프로처럼"은 측정이 안 되니 AI도 못 맞춥니다. 다만 이번 결과를 보면 검사 가능한 조건이라고 다 되는 것도 아닙니다. "400자 이내"는 검사 가능하지만 지켜지지 않았죠. "존재/포함 여부"를 묻는 조건(특정 단어·날짜·표 구조)이 "개수/길이"를 묻는 조건보다 훨씬 잘 먹힙니다.

보내기 전, 4칸 체크리스트

이번 측정을 반영해 다듬었습니다. 이 인턴을 부려먹기 전 네 줄만 자문하세요.

  • 역할 정했나? — 없어도 크게 안 망가지는 칸입니다. 있으면 어휘가 잡히는 정도.
  • 맥락 줬나? — 여기가 제일 중요합니다. 내 머릿속에만 있는 사실(날짜·이름·수치·대상)은 100% 적어야 합니다. 안 적으면 0%예요.
  • 작업이 하나로 분명한가? — 동사 하나, 결과물 하나.
  • 출력형식 못박았나? — 표·컬럼·행처럼 구조로 지정하세요. 글자수로 지정하면 안 지켜집니다.

네 칸이 다 차 있으면 보내세요. 한 칸이라도 비었으면, 십중팔구 그 비운 칸 때문에 다시 시키게 됩니다.

이 측정이 말하지 않는 것

정직하게 선을 긋겠습니다.

  • 모델 1종·업무 3종·각 3회입니다. 제 PC에서 공짜로 굴리는 gemma3:4b 한 녀석을 돌린 결과예요. 챗GPT·클로드·제미나이처럼 월급 받는 축(유료 모델)은 막연한 지시도 더 잘 받아냅니다 — 즉 막연한 쪽 점수(28.9%)는 큰 모델에서 더 높게 나올 가능성이 큽니다. 다만 "안 말한 정보는 못 채운다"는 부분은 모델 크기와 무관한 구조적 한계라, 그 항목은 어디서나 비슷하게 나올 겁니다.
  • 잰 것은 '형식 조건 충족률'이지 '글의 품질'이 아닙니다. 조건을 다 지켰어도 재미없는 글일 수 있어요. 품질은 기계로 셀 수 없어서 아예 재지 않았습니다.
  • 4칸이 이기도록 설계된 것 아니냐고 하실 수 있는데, 맞습니다. 4칸은 조건을 말해줬으니 유리하죠. 그래서 이 측정이 실제로 답한 질문은 다른 두 개입니다 — ① 말 안 해도 얻어걸리는 비율은 얼마인가(28.9%) ② 말해줘도 안 지키는 비율은 얼마인가(20%). 둘 다 미리 알 수 없던 값입니다.
  • 테스트 조건·프롬프트 전문·채점 기준은 재현할 수 있게 고정해 뒀습니다. 같은 모델에 같은 문장을 넣으면 비슷한 범위가 나올 겁니다.

이 4칸 골격 자체는 챗GPT·클로드·제미나이 어디서나 통합니다. 다만 같은 프롬프트라도 도구마다 결과의 결이 달라요. 어떤 작업에 어느 도구가 맞는지는 빅3 같은 작업 비교에서, 로컬 모델로 어디까지 되는지는 로컬 AI 한국어 교정 실측에서 따로 다룹니다.

참고자료

  • OpenAI — Best practices for prompt engineering (help.openai.com/en/articles/6654000-best-practices-for-prompt-engineering-with-openai-api)
  • Anthropic — Claude prompting best practices (platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-prompting-best-practices)
  • Google — Gemini prompt design strategies (ai.google.dev/gemini-api/docs/prompting-strategies)
  • 본문 수치 = 자체 실측(2026년 7월 26일 · gemma3:4b · 업무 3종 × 프롬프트 2종 × 3회 = 18회 · 조건 충족 여부는 스크립트 자동 채점)

이 글의 숫자는 cinevyze 운영자가 직접 돌린 테스트에서 나왔습니다. 같은 모델에 두 형태의 프롬프트를 넣고 출력물을 스크립트로 채점했으며, 조건 충족 여부는 손으로 매기지 않고 글자수·문단수·표 구조를 프로그램이 세게 했습니다. 무엇을 잴지 정하는 일과 결과 해석은 직접 했고, 글을 다듬는 일부 과정에 AI 도구의 도움을 받았습니다. 모델 1종·3회 반복이라는 한계는 위에 적은 그대로입니다.

댓글

이 블로그의 인기 게시물

ChatGPT 글쓰기, 무료로 어디까지 뽑아먹나 — 돈 새는 지점이랑 Go $8 함정까지

챗GPT·클로드·제미나이 요금 비교 — '셋 다 20달러'가 아니었습니다 (2026.07)