본문으로 건너뛰기
1인 교육 사업 일지 · 3/3시리즈 보기 →

AI 실습 교안, 수강생이 첫 프롬프트에서 멈추지 않게 — 실습 파일 준비 5단계와 빈 폴더 점검 스크립트

· 약 6분
Datapopcorn CEO / AI automation educator
이 글과 연결된 글 보기
20편 · 64개 연결
100%
회사 자료를 AI에 넣기 전 5단계 — 학습 설정 끄기부터 값 가리기·되돌리기까지AI가 갑자기 이상할 때 10초 만에 원인 가르기 — 상태 페이지 확인 4단계와 한 번에 보는 스크립트API와 MCP 차이, 날씨 데이터 하나로 직접 확인하기: curl 한 줄에서 AI가 쓰는 도구까지 5단계온습도계를 키링으로 만들고 싶어서, 아스트라에게 3D 모델링을 맡겼습니다AI 실습 워크숍, 설치에 2시간 쓰지 않는 법 — 전날 점검 스크립트와 당일 타임테이블 5단계Claude Academy 열렸습니다: Claude Code·MCP를 무료로 배우는 방법취준생 포트폴리오, Colab 200% 사용하기AI가 뽑은 "+124% 증가", 믿기 전에 확인할 7단계 — 데이터 분석 함정 체크리스트DART(다트) 공시로 월급 출처 확인하는 법 — 좋은 회사 판별과 DART MCP 활용역대 흥행 1위는 명량일까? 영화 데이터로 따라 하는 Claude Code 데이터 분석 (강의 교안 공개)AI 실습 교안, 수강생이 첫 프롬프트에서 멈추지 않게 — 실습 파일 준비 5단계와 빈 폴더 점검 스크립트메타 광고 관리자 처음 써보기: 캠페인 만들기부터 보고서 읽기까지 실제 화면으로 따라 하는 취준생 가이드출장이라도 준비할 건 준비합니다 — 베를린 출장 중 AI로 챙긴 것들AI에게 오키나와 여행 계획을 통째로 맡겨봤습니다마이리얼트립 상품 검색, Claude에게 맡기기 — MCP 연결 한 줄이면 됩니다API 키 발급하고 마이리얼트립 마이링크 만들기AI 국비과정 강사가 되려면 먼저 하는 일: 고용24 NCS확인강사 등록 가이드피지컬 AI 입문 가이드: 뜻부터 로봇 없이 시작하는 첫 실습까지수익화 블로그를 시작하고 싶다면, 이 글을 보세요데이터 분석가 8년 차에 회사를 나와 데이터팝콘을 시작한 이유

드래그로 이동 · 휠/두 손가락으로 확대 · 방향키로 글 선택 · 0으로 맞춤. 실선: 본문 링크, 점선: 시리즈·주제의 대표 연결.

표시된 글 20편 목록
전체 글 연결 탐색

AI 실습 교안의 프롬프트가 @references/회사소개.txt처럼 파일을 가리킨다면, 그 파일은 수강생 폴더에 실제로 있어야 합니다. 실습 파일을 공개 저장소에 두고 모든 회차에서 같은 한 줄로 받게 하고, 교안을 빈 폴더 기준으로 점검하면 첫 프롬프트에서 멈추는 일을 막을 수 있습니다.

이 글은 이런 분께 필요합니다​

  • 코딩 에이전트나 AI 앱에 "이 파일을 읽고 정리해줘" 같은 실습을 시키는 강사·사내 교육 담당자
  • 교안 리허설은 다 통과했는데, 막상 강의에서 수강생이 첫 단계부터 멈춘 경험이 있는 분
  • 여러 회차짜리 과정에서 회차마다 실습 자료를 다시 나눠 주고 있는 분

준비물은 교안(마크다운 파일이면 Step 5 스크립트를 그대로 쓸 수 있습니다)과 Mac 또는 Python 3가 깔린 컴퓨터입니다. 이 글의 명령은 2026년 10월 7일에 직접 실행해 확인했습니다.

이런 일이 있었습니다. 6회차짜리 비개발자 대상 과정에서 교안 프롬프트는 이런 모양이었습니다.

@references/회사소개.txt 를 읽고 우리 회사를 세 문장으로 요약해줘
@references/지난제안서.md 의 구조를 추출해서 목차만 뽑아줘
@drafts/파트너미팅_회의록.txt 에서 결정사항과 담당자를 표로 정리해줘

내용은 강의 웹페이지에 "복사해서 붙여넣는 블록"으로 있었지만, 그걸 어디에 어떤 이름으로 저장하라는 지시가 없었습니다. 수강생이 @를 눌러도 자동완성 목록이 비어 있었고, 초보자는 손을 드는 대신 "내가 뭘 잘못 눌렀나" 하고 조용히 멈췄습니다. 그 지점이 2·3·4회차의 첫 프롬프트였습니다. 제 작업 폴더에는 파일이 다 있어서 리허설로는 끝까지 발견하지 못했습니다.

Step 1. 실습 파일을 작업 폴더 구조 그대로 한곳에 모읍니다​

프롬프트가 파일 이름만이 아니라 경로까지 가리키기 때문에, 수강생 폴더와 똑같은 구조로 보관합니다. 파일 종류별(csv, txt, pdf)로 흩어 두면 수강생이 받은 뒤 다시 옮겨야 하고, 초보자는 바로 거기서 막힙니다.

저는 공개 저장소 datapopcorn-datahub의 business-docs 폴더에 이렇게 두었습니다. 2026년 10월 7일 기준 실제 구성입니다.

business-docs/
├─ references/ 회사소개.txt, 지난제안서.md, 내부보고서양식.md, 발표양식.md, 가상메일.txt, 관련_RFP.pdf
├─ drafts/ 파트너미팅_회의록.txt
└─ data/ 실적_202608.csv, 03_월간업무현황_엑셀형_mock.csv

실제 공공기관 문서처럼 수강생마다 다른 파일을 받게 되는 자료는 가상 문서로 바꿉니다. 저는 긴 문서 실습용으로 발주기관·예산·일정까지 전부 창작한 가상 제안요청서(RFP)를 만들고 표지에 가상 문서임을 적었습니다. 모두가 같은 파일을 가져야 "필수 요구사항 10개를 찾았나" 같은 정답 기준으로 확인할 수 있습니다.

Step 2. 받는 문장을 하나로 정하고 모든 회차 첫 챕터에 넣습니다​

필요한 회차에 필요한 파일만 받게 하면, 회차마다 받는 방법이 달라지고 수강생은 매번 새로 배워야 합니다. 그래서 1회차에 한 번에 전부 받게 하고, 각 회차 첫 챕터에 완전히 같은 문장을 넣었습니다. 코딩 에이전트에 이렇게 붙여 넣습니다.

https://github.com/team-datapopcorn/datapopcorn-datahub/tree/main/public-dataset/business-docs
의 파일을 지금 작업 폴더에 같은 폴더 구조·같은 파일 이름으로 받아줘.
이미 있으면 덮어써도 돼. 끝나면 폴더 안 파일 목록을 보여줘.

덮어쓰기라서 몇 번을 실행해도 결과가 같습니다. 지각한 사람, 파일을 지운 사람, 새 폴더에서 시작한 사람 모두 이 한 줄로 같은 상태가 됩니다.

AI 도구 없이 터미널로 받고 싶다면 아래 한 줄로도 같은 결과가 나옵니다. 빈 폴더에서 실행해 위 구조 그대로 받아지는 것을 확인했습니다.

curl -sL https://github.com/team-datapopcorn/datapopcorn-datahub/archive/refs/heads/main.tar.gz | tar -xz --strip-components=3 "datapopcorn-datahub-main/public-dataset/business-docs"

Step 3. 산출물은 회차·챕터별 폴더에 저장하게 합니다​

받는 한 줄을 붙이고 나서 다른 문제가 드러났습니다. 결과물이 전부 폴더 맨 위에 쌓이다 보니, 뒷 회차 챕터가 앞 회차와 같은 이름의 파일을 다시 만들어 앞의 결과를 조용히 덮어썼습니다.

그래서 프롬프트에 저장 위치를 넣었습니다.

결과는 drafts/ch07/ 폴더에 저장해줘.

입력 폴더(references/, data/)는 입력 전용으로 두고, 산출물은 drafts/ch07/, drafts/ch08/처럼 나눕니다. 그러면 Step 2의 한 줄을 다시 돌려도 산출물은 지워지지 않습니다.

Step 4. 교안 문장을 초보자 기준 규칙 5개로 고칩니다​

이 과정에서 생긴 교안 작성 규칙입니다.

규칙실제로 있었던 문제이렇게 고칩니다
파일명·경로를 챕터끼리 똑같이한 챕터는 @메일.txt, 다른 챕터는 @references/가상메일.txt실제 파일 경로 하나로 통일합니다
(주제) 같은 괄호 빈칸 금지초보자가 괄호째 붙여 넣습니다실제 예시값을 넣고, 바꾸고 싶은 사람만 바꾸게 합니다
숫자가 들어가는 문서엔 근거 데이터를 같이양식만 주면 AI가 숫자를 지어냅니다data/실적_202608.csv처럼 근거 파일을 같이 줍니다
완료 확인은 내용 기준으로"파일이 생겼다"는 아무것도 확인하지 않습니다"담당자 이름이 들어갔나", "CSV와 숫자가 같나"로 확인합니다
회차 마지막엔 다시 쓸 지시서를 남기게회차마다 일회성 초안만 남습니다"방금 한 절차를 지시서로 써 줘"를 마지막 미션으로 둡니다

Step 5. 빈 폴더에서 교안 속 파일 경로를 점검합니다​

강사 폴더에서 하는 리허설은 파일이 이미 있어서 이 문제를 절대 잡지 못합니다. 그래서 빈 폴더에 Step 2로만 파일을 받은 뒤, 교안 속 @경로가 전부 있는지 스크립트로 대조합니다.

아래 내용을 check-practice-files.py로 저장합니다.

#!/usr/bin/env python3
"""교안(.md)의 프롬프트에 나오는 @경로가 실습 폴더에 실제로 있는지 확인합니다.
사용법: python3 check-practice-files.py <교안 폴더> <빈 상태에서 준비한 실습 폴더>"""
import re, sys
from pathlib import Path

lecture_dir, work_dir = Path(sys.argv[1]), Path(sys.argv[2])
pattern = re.compile(r"@([\w가-힣./\-]+\.[A-Za-z0-9]+)")
missing = 0
for md in sorted(lecture_dir.rglob("*.md")):
for lineno, line in enumerate(md.read_text(encoding="utf-8").splitlines(), 1):
for ref in pattern.findall(line):
exists = (work_dir / ref).is_file()
missing += not exists
print(f"{'✅' if exists else '❌'} {md.name}:{lineno} @{ref}")
print(f"\n없는 파일 {missing}개" if missing else "\n모든 파일이 있습니다.")
sys.exit(1 if missing else 0)

실행은 이렇게 합니다.

python3 check-practice-files.py 교안 fresh

위의 세 줄 프롬프트가 든 교안으로 실제 돌려본 결과입니다. 먼저 회사소개.txt 하나만 있는 폴더에서 돌렸을 때입니다.

✅ ch02.md:3 @references/회사소개.txt
❌ ch02.md:4 @references/지난제안서.md
❌ ch02.md:5 @drafts/파트너미팅_회의록.txt

없는 파일 2개

빈 폴더에 Step 2의 한 줄로 공개 세트를 받은 뒤 다시 돌린 결과입니다.

✅ ch02.md:3 @references/회사소개.txt
✅ ch02.md:4 @references/지난제안서.md
✅ ch02.md:5 @drafts/파트너미팅_회의록.txt

모든 파일이 있습니다.

❌가 하나라도 있으면 강의 전에 파일을 추가하거나 교안 경로를 고칩니다.

오류가 나면 여기부터 확인하세요​

증상확인할 것
수강생 화면에서 @를 눌러도 목록이 빔지금 열린 폴더가 작업 폴더가 맞는지, Step 2를 실행했는지 확인합니다
스크립트가 아무 줄도 출력하지 않음교안 폴더 경로가 맞는지, 교안이 .md 파일인지 확인합니다
경로가 맞는데 ❌가 나옴파일 이름의 띄어쓰기·밑줄·확장자가 교안과 같은지 확인합니다
앞 회차 결과물이 사라짐Step 3처럼 저장 위치를 챕터별 폴더로 지정했는지 확인합니다
회사 hwp·pptx로 실습하고 싶다는 요청마크다운으로 바꿔 쓸 수 있지만 표가 많은 문서는 변환 품질 편차가 커서 사람이 손봐야 합니다

정리​

화면에 보여 준 자료와 폴더에 파일로 있는 자료는 다른 상태입니다. 실습 파일을 한곳에 같은 구조로 두고, 모든 회차에서 같은 한 줄로 받게 하고, 강의 전에 빈 폴더 기준으로 점검하면 첫 프롬프트에서 멈추는 수강생이 사라집니다.

전체 연결 보기