07. 검증된 작업을 배포용 프롬프트로 만들기

목표: 내가 직접 프롬프트를 시험해 결과가 만족스러우면, 그 과정을 도구를 가리지 않고 복사·붙여넣기만 하면 되는 프롬프트 한 벌로 바꿔 학생에게 나눠 준다.

전체 흐름은 네 단계다.1. 기록 → 2. 검증 → 3. 변환 → 4. 배포 (작업 중) (빈 대화) (메타 프롬프트) (버전 보관)


1. 기록 단계 — 작업하면서 무엇을 남길 것인가

프롬프트는 대화가 끝난 뒤 기억으로 복원하기 어렵다. 결과가 좋았던 대화일수록, 그렇게 만든 중간 지시가 흩어져 있기 때문이다. 그래서 작업 중에 아래 다섯 칸만 채워 두는 기록지를 하나 쓴다.

작업 하나당 파일 하나를 만든다. 이름은 log-작업이름-날짜.md 형식이 무난하다.

# 작업 기록: (작업 이름)

## 1) 최초 지시
(처음 AI에게 던진 문장을 고치지 말고 그대로 붙여넣는다)

## 2) 도중에 추가한 지시
- (1차 결과를 보고 무엇을 고쳐 달라고 했는지, 문장 그대로)
- (2차 …)
- (3차 …)

## 3) 통하지 않은 지시
- (기대와 다른 결과가 나온 지시와, 어떻게 어긋났는지 한 줄)

## 4) 최종 결과가 "합격"인 이유
- (예: 코드가 오류 없이 실행됨 / 분량이 A4 1장 / 표가 3열로 나옴)

## 5) 사람이 매번 바꿔 넣은 값
- (예: 주제, 대상 학년, 파일명, 분량, 색상)

핵심은 **3)과 5)**다. 3)은 누구나 똑같이 빠질 함정이라 최종 프롬프트의 “금지” 항목이 되고, 5)는 그대로 변수(빈칸으로 비워 둘 자리)가 된다.


2. 검증 단계 — “이 프롬프트만으로 되는가”를 확인

내 대화가 잘 풀린 이유가 프롬프트 덕분인지, 대화 앞부분의 맥락 덕분인지 구분해야 한다. 다음 절차로 나눠 본다.

  1. 새 대화를 연다. 이전 대화의 파일·설정·기억을 쓰지 않는다.
  2. 정리한 프롬프트 하나만 붙여넣고 결과를 받는다.
  3. 기록지 4)의 합격 기준과 대조한다.
  4. 변수를 다른 값으로 바꿔 한 번 더 돌린다. 다른 주제에서도 형식이 유지돼야 배포할 수 있다.
  5. 가능하면 다른 서비스(예: 다른 AI 도구)에서 한 번 더 돌린다. 도구 무관 배포가 목표이므로 이 시험이 있어야 안전하다.

세 번 중 두 번 이상 기준을 통과하지 못하면 배포하지 않고 3단계로 되돌아간다.

한 가지 주의할 점이 있다. 같은 프롬프트라도 AI는 매번 완전히 같은 답을 내지 않는다. 그래서 검증 기준은 “글자가 같은가”가 아니라 **”형식과 요건을 지켰는가”**로 잡아야 한다.


3. 변환 단계 — 기록지를 프롬프트 한 벌로 압축

3-1. 배포 프롬프트의 표준 골격

배포 프롬프트는 항상 같은 여섯 덩어리로 쓴다. 순서를 고정해 두면 다음 사람이 어느 부분을 고쳐야 할지 금방 찾는다.

[역할] 너는 (분야)를 다루는 (역할)이다. [목표] (완성했을 때 손에 남는 결과물 한 문장) [입력값] - 항목1: {여기에 채우기} - 항목2: {여기에 채우기} - 항목3: {여기에 채우기} [수행 절차] 1. (첫 단계) 2. (둘째 단계) 3. (셋째 단계) [출력 형식] - (분량, 구조, 제목 유무, 표·목록 여부) [제약] - (하지 말아야 할 것) - (자주 나오는 오류와 그 대신 할 것)

각 덩어리를 기록지에서 이렇게 옮긴다.

배포 프롬프트기록지에서 가져올 곳
역할·목표1) 최초 지시
수행 절차2) 도중에 추가한 지시를 시간 순으로 정리
출력 형식4) 합격 이유
제약3) 통하지 않은 지시
입력값5) 매번 바꿔 넣은 값

3-2. 도구 무관으로 만드는 규칙

특정 도구에서만 되는 표현이 섞이면 다른 서비스에서 그대로 실패한다. 아래처럼 바꾼다.

  • 파일 경로·업로드 전제 → “아래에 내용을 붙여넣는다”로 대체
  • 스킬·확장 기능 호출 → 그 기능이 하던 일을 문장으로 풀어 쓴 절차로 대체
  • 웹 검색·실행 전제 → “확인이 필요하면 불확실하다고 표시하라”로 대체
  • 이전 대화 참조(“아까 그거”) → 프롬프트 안에 값을 직접 적기

3-3. 변환을 대신 시키는 메타 프롬프트

기록지를 다 채웠으면, 아래 프롬프트에 기록지를 붙여 AI에게 변환을 시킨다. 이 문서에서 실제로 반복해 쓸 도구는 이것 하나다.

[역할] 너는 교육용 프롬프트를 설계하는 교수설계자다. [목표] 아래 "작업 기록"을 읽고, 학생이 아무 AI 서비스에나 그대로 붙여넣어 같은 결과를 얻을 수 있는 프롬프트 한 벌로 바꾼다. [작업 기록] """ (여기에 기록지 전체를 붙여넣는다) """ [수행 절차] 1. 기록의 "최초 지시"에서 역할과 목표를 한 문장씩 뽑는다. 2. "도중에 추가한 지시"를 순서대로 정리해 수행 절차로 바꾼다. 같은 말이 반복되면 하나로 합친다. 3. "통하지 않은 지시"를 제약 항목으로 바꾼다. 금지만 적지 말고 "대신 무엇을 하라"를 함께 적는다. 4. "매번 바꿔 넣은 값"을 입력값으로 올리고 {중괄호}로 비워 둔다. 5. 특정 도구에서만 되는 표현(파일 경로, 확장 기능 이름, 이전 대화 참조)을 찾아 일반 문장으로 바꾼다. [출력 형식] - 아래 여섯 덩어리를 이 순서로 쓴 프롬프트 전문 하나. [역할] [목표] [입력값] [수행 절차] [출력 형식] [제약] - 프롬프트 전문 다음에, 학생용 사용 안내 세 줄을 따로 붙인다. (무엇을 채우는지 / 무엇을 붙여넣는지 / 결과를 어떻게 확인하는지) - 마지막에 변수 목록을 표로 정리한다. 열은 변수명, 설명, 예시 값. [제약] - 기록에 없는 요구사항을 새로 만들어 넣지 않는다. - 한 문장은 50자 안팎으로 짧게 쓴다. - 전문용어를 쓰면 괄호로 한 줄 뜻풀이를 붙인다. - 완성 프롬프트 안에 "상황에 맞게 조정하라" 같은 모호한 지시를 넣지 않는다. 판단 기준을 수치나 조건으로 적는다.

4. 배포 단계

배포물은 프롬프트 본문만 주지 않는다. 아래 세 가지를 한 덩어리로 묶는다.

  1. 사용 안내 세 줄 — 무엇을 채우고, 무엇을 붙여넣고, 결과를 어떻게 확인하는지
  2. 프롬프트 전문 — 학생이 통째로 복사할 부분
  3. 변수 표 — 변수명, 설명, 예시 값

보관은 작업당 폴더 하나로 둔다.prompts/ 작업이름/ log.md (기록지) v1.md (첫 배포본) v2.md (수정본) CHANGELOG.md (무엇을 왜 고쳤는지 한 줄씩)

버전을 나누는 이유는, 학생이 이미 받아 간 프롬프트와 내가 고친 프롬프트가 달라졌을 때 어느 쪽 이야기인지 구분하기 위해서다. 수업에서 배포한 판은 지우지 말고 남긴다.


댓글 남기기