Skip to main content
공개 노트

강사 AI가 ‘학습자료 3종 세트’를 동시에 만든다면?

Views 20약 4분
Summary

— Dark Moon Study Report 개발기

“유튜브 자막 하나로 학습 노트 + 학생 워크시트 + 강사 가이드가 한 번에 나오면… 내 삶이 좀 밝아질까?”
(결론: 달은… 아직 어둡지만, 야근은 줄었다.)

그 생각 하나로 시작했다.


💡 아이디어의 시작: 나는 교사가 아니라 강사다

나는 영어 강사다.
그리고 매일 같은 루프에 갇혀 살았다.

  1. 유튜브에서 괜찮은 강의 영상 찾기

  2. 자막 다운로드

  3. 핵심 요약하기

  4. 학생용 워크시트 만들기

  5. 수업용 가이드(=강사용 메모) 만들기

이걸 한 번 돌리면 2~3시간이 그냥 사라진다.
내 시간은 어디로 가는가… (아마 달의 뒷면)

그래서 혼잣말을 했다.

“이거… AI가 대신 해주면 안 돼?”

그렇게 Dark Moon Study Report가 태어났다.


🔧 그래서 뭐를 만들었나

Dark Moon Study Report는 한 줄로 말하면 이거다.

유튜브 강의 자막을 붙여넣기만 하면, Gemini AI가 3가지 학습 파일을 동시에 생성하는 도구

생성되는 파일 3종

파일내용
📝 학습 노트핵심 요점 3가지 + 암기 카드 + 예상 시험 문제
📋 학생 워크시트빈칸 채우기 + 이해 점검 + 토론 질문
👩‍🏫 강사 가이드수업 팁 + 평가 기준 + 토론 전략

그리고 욕심이 좀 과했다. (하지만 후회는 없다)

  • 4개 언어 동시 지원: 한국어 · English · 日本語 · 中文

  • 암기 카드 클릭 인터랙션

  • 개념 맵 시각화까지

“강사 한 명이 혼자 다 하려면… 결국 도구를 만들어야 한다”는 결론에 도달했다.


🚀 개발 여정: HuggingFace Spaces와의 (정겨운) 전쟁

1단계 — 아이디어를 코드로 바꾸기

첫 버전은 단순했다.

  • Gradio + Gemini API

  • 자막 입력 → JSON 분석 → HTML 렌더링

이론상: “오, 쉽다.”
현실: “오… 쉽지 않다.”


2단계 — HuggingFace 배포의 함정들

HuggingFace Spaces에 올리는 순간부터,
내 프로젝트는 ‘학습자료 생성기’에서 ‘버그 생성기’로 진화했다.

① f-string 이스케이프 지옥

# 이렇게 쓰면 HF에서 오류
html = f"""<style>
  .card { background: #fff; }  # ← 중괄호가 f-string이랑 충돌
</style>"""

CSS의 {}가 f-string에 의해 “아? 변수 주입인가?”로 오해받는다.
해결책은 {{}} 이중 중괄호.

문제는… CSS가 수십 줄이면?
그날 나는 중괄호 탐정이 되었다.

② CDN 차단

한국 Google Fonts가 HF 환경에서 간헐적으로 로드 실패.
결국 시스템 폰트 fallback 추가하고 CDN 의존도를 낮췄다.

“폰트가 안 뜨면 감성이 죽고, 감성이 죽으면 서비스가 죽는다.”

③ gr.Progress 충돌

로컬에서는 되는데 배포하면 안 되는 그 악명 높은 패턴.
Gradio 버전 차이로 gr.Progress가 엇갈렸다.

해결: requirements.txt에 버전 핀(pin) 박기
(“우리 사이엔 안정이 필요해.”)

④ CSS !important 전쟁

Gradio 기본 CSS가 내 스타일을 계속 덮어쓴다.
결국 중요한 스타일엔… !important 폭격.

.study-card {
  background: #1a1a2e !important;
  border-radius: 16px !important;
}

우아하진 않다.
하지만 작동한다. (세상은 늘 그렇다)


🛰️ 3단계 — Pro 버전: 실시간 화면 캡처(여기서 진짜 오래 걸림)

Free 버전은 자막 텍스트 붙여넣기 방식이었다.

Pro 버전은 욕심을 더 냈다.

  • 로컬 비디오 + 시스템 오디오 실시간 캡처

  • 화면 보면서 자막 생성

  • 강의 끝나면 자동으로 학습자료 생성

이 부분이
✅ 제일 오래 걸렸고
✅ 제일 힘들었고
✅ 제일 보람 있었다

그때 느꼈다.

“아… 이게 진짜 ‘강사용 자동화’다.”


📦 Gumroad 출시: Free + Pro 전략

처음부터 “무료로 다 풀자!”는 생각은 없었다.

  • Free 버전 (HuggingFace Spaces): 자막 텍스트 붙여넣기

  • Pro 버전 (Gumroad $9): 로컬 설치 + 실시간 화면·오디오 캡처

구조는 단순했다.

Free로 가치를 증명하고,
Pro는 “진짜 자주 쓰는 사람”을 위한 깊은 기능.

Gumroad 올리는 것도 처음이라
상품 설명 한국어/영어로 쓰고, 스크린샷 찍고, 가격 고민하고…

올리는 내내 이 생각만 했다.

“이거… 누가 살까?”

근데 막상 올리고 나니까 묘하게 뿌듯했다.
내가 만든 도구가 세상 밖으로 나갔다.


🎓 배운 것들 (삽질 요약본)

이 프로젝트로 진짜 배운 것들:

  • MVP는 못생겨도 된다
    첫 버전은 솔직히… 나도 안 쓰고 싶었다.
    근데 그게 없었으면 다음 버전도 없다.

  • HuggingFace는 로컬과 다른 행성이다
    “내 컴퓨터에서는 됐는데요?”는 주문이 아니라 저주다.

  • Gemini API는 생각보다 강력하다
    프롬프트만 잘 짜면, 진짜 ‘강의 자료 구조화’를 해준다.

  • 작은 도구도 수익화 될 수 있다
    “이런 거 누가 사?”라고 생각하던 것들이
    의외로 “바로 내가 필요하던 거”가 된다.


💭 마치며

Dark Moon Study Report는
내 첫 번째 AI 도구 출시였다.

힘들었다.
HuggingFace랑 씨름하느라 밤샌 날도 있었고,
f-string 버그 하나 잡느라 2시간을 태운 날도 있었다.

근데… 재미있었다.

“아이디어를 코드로,
코드를 제품으로,
제품을 수익으로.”

이 흐름을 처음으로 직접 경험했다.

다음 도구는 더 빠르게 만들 수 있을 것 같다.
이미 함정들을 알고 있으니까.
(중괄호는 이제 내 친구…는 아니고, 최소한 얼굴은 안다)

그리고 어쩌면, 이런 개발기도 결국은 같은 얘기다.
학생에게 ‘자료’를 주기 전에, 강사에게 ‘숨 쉴 시간’을 주는 일.


🔗 링크

  • 🔗 무료로 써보기:

  • 🛒 Pro버전 구매:

  • 🌙 AI 도구 추천:

—
달의이성(reasonofmoon) | 강사이자 AI 도구 개발자

이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.

틸노트는 사용자가 AI를 활용해 노트를 쉽게 작성하거나 편집할 수 있는 서비스입니다.

AI 스퀘어 단톡방에 함께해요

AI 활용과 틸노트 사용 팁을 나누는 오픈채팅방입니다. 입장 비밀번호는 tilnote입니다.

참여하기