Claude AI로 전자책 교재(4-6장) 자동 보강하기 - JSON 원전 데이터 활용

소개

시도하고자 했던 것

전통 학문 분야의 교재를 집필하던 중, 참고문헌인 원전 서적의 내용 중 일부가 누락되어 있었습니다.

기존에 JSON으로 변환해둔 원전 데이터를 활용하여 교재를 자동으로 보강하고자 했습니다.

그 이유

1.          수작업의 한계: 400페이지 이상 분량의 원전에서 필요한 내용을 찾아 교재에 통합하는 작업은 수 시간이 소요됨

2.          JSON 데이터 활용: 이미 구조화된 JSON 원전 데이터가 있으므로, AI가 자동으로 보강점을 찾고 통합 가능

3.          일관성 유지: AI가 기존 문서 스타일을 분석하여 일관된 형식으로 보강 내용 삽입

다양한 색깔의 한국 사업 계획

한국사이트 스크린샷

진행 방법

사용 도구

도구

용도

Claude Opus 4.5

문서 분석, 보강점 탐색, 콘텐츠 생성

Claude Projects

프로젝트 파일 및 지식베이스 관리

Pandoc

DOCX ↔ Markdown 변환

Python

텍스트 처리 및 자동 삽입

진행 단계

Step 1: 기존 교재와 원전 JSON 업로드

업로드 파일:
1. 교재_v7.docx (기존 교재)
2. 원전_완전판.json (원전 전체 구조화 데이터)
3. 원전_상세.json (특정 챕터 상세 보강 데이터)

Step 2: 보강점 탐색 프롬프트

교재 최종본에 첨부자료의 보강할 자료가 있는가 찾아서
보강자료가 있으면 보강해요?

Claude의 분석 결과 예시:

현재 교재 위치

보강 가능 내용

출처

4.3절

주기 체계 상세

원전 제10장

4.3절

보조 주기 상세

원전 제10장

신규 추가

한계 조건

원전 제10장

신규 추가

추정 방법

원전 제9장

신규 추가

역사적 기록 통계

원전 제10장

Step 3: 전체 보강 실행 프롬프트

전체 보강 - 위 항목 모두 추가

Step 4: Claude의 자동 처리 과정

1.          기존 DOCX 분석: unpack.py로 XML 구조 추출

2.          보강 콘텐츠 생성: JSON 원전에서 필요한 내용 추출 및 마크다운 작성

3.          목차 자동 업데이트: 신규 섹션 번호 재배열

4.          버전 업그레이드: v7 → v8

5.          DOCX 생성: Pandoc으로 최종 문서 변환

Step 5: 핵심 Python 코드 (자동 삽입 로직)

import re

# 기존 마크다운 읽기
with open('교재.md', 'r', encoding='utf-8') as f:
    content = f.read()

# 버전 업데이트
content = content.replace('v7 확장판', 'v8 확장판')

# 목차 업데이트 - 신규 항목 추가
toc_addition = """        -   4.3 기존 내용
        -   4.4 신규 보강 내용 1 🆕
        -   4.5 신규 보강 내용 2 🆕
        -   4.6 신규 보강 내용 3 🆕
        -   4.7 기존 내용 (번호 이동)"""

content = content.replace(
    """        -   4.3 기존 내용
        -   4.4 기존 내용""",
    toc_addition
)

# 기존 섹션 번호 변경
content = content.replace('### 4.4 기존 내용', '### 4.7 기존 내용')

# 보강 내용 삽입
insertion_point = "기존 설명 마지막 부분..."
content = content.replace(insertion_point, insertion_point + formatted_supplement)

# 저장
with open('교재_v8.md', 'w', encoding='utf-8') as f:
    f.write(content)

import re

# 기존 마크다운 읽기
with open('교재_4-6_보강.md', 'r', encoding='utf-8') as f:
    content = f.read()

# 버전 업데이트
content = content.replace('v6.3 확장판', 'v8.0 확장판')

# 목차 업데이트 - 신규 항목 추가
toc_addition = """        -   4.4.3 윤년 주기 체계
        -   4.4.4 식년 및 사로스/이넥스 주기 상세 🆕
        -   4.4.5 황도한계 🆕
        -   4.4.6 정삭망의 추정 🆕
        -   4.4.7 한국 고대 일식 기록 🆕
        -   4.4.8 세차와 장동"""

content = content.replace(
    """        -   4.4.3 윤년 주기 체계
        -   4.4.4 세차와 장동""",
    toc_addition
)

# 기존 4.4.4 → 4.4.8로 번호 변경
content = content.replace('### 4.4.4 세차와 장동', '### 4.4.8 세차와 장동')

# 보강 내용 삽입 (19년 7윤법 설명 다음에)
insertion_point = "**19년 7윤법** - 원리: 19태양년 ≈ 235태음월..."
content = content.replace(insertion_point, insertion_point + formatted_supplement)

# 저장
with open('교재_4-6장_v8_0.md', 'w', encoding='utf-8') as f:
    f.write(content)

결과와 배운 점

결과

항목

보강 전

보강 후

파일 크기

약 50KB

약 83KB (66% 증가)

섹션 수

4개

8개 (+4개 신규)

주요 개념 설명

1줄 표 언급

상세 표 + 계산식 + 예시

역사적 기록

없음

통계표 추가

배운 점

1.          JSON 구조화의 위력: 원전을 미리 JSON으로 변환해두면, AI가 필요한 내용을 정확히 찾아 활용 가능

2.          프롬프트 단순화: “보강할 자료가 있는가 찾아서 보강해요?”라는 간단한 프롬프트로도 AI가 맥락을 파악하고 적절한 보강점 제안

3.          목차 자동 재배열: 신규 섹션 추가 시 기존 섹션 번호를 자동으로 밀어주는 로직 필요

나만의 꿀팁

1.          원전을 먼저 JSON으로 변환: 책/논문을 JSON 구조로 미리 변환해두면 AI 활용도가 급상승

2.          “찾아서 보강”이라는 마법의 프롬프트: AI에게 탐색 + 실행을 한 번에 요청하면 효율적

3.          버전 관리 명시: 보강 전/후 버전 번호를 명확히 하여 변경 이력 추적

시행착오

문제

해결

기존 DOCX를 참조 문서로 사용 시 인코딩 오류

기본 Pandoc 변환으로 전환

섹션 번호 충돌

기존 섹션을 자동으로 뒤로 이동


<< 앞으로의 계획 >>

1.          교재 전체 챕터 동일 방식 보강: 원전 전체 챕터 활용

2.          추가 원전 JSON 연동: 다른 참고문헌도 동일 방식 적용

3.          자동 보강 파이프라인 구축: 원전 JSON 업로드 → 보강점 탐색 → 자동 통합 → 버전 관리


도움 받은 글 (옵션)

•             Claude Projects 활용 가이드 - Anthropic 공식 문서

•             Pandoc 사용자 매뉴얼 - 문서 변환 도구

1

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요