AI로 정책문서 종합해 조직설계안 만들고 한글문서로 자동 생성하기
요약
흩어진 정책문서 7건(PDF·구형 HWP·HWPX·확장자 없는 한글파일)을 AI에게 한꺼번에 읽히고, 그 내용을 근거로 행정조직 설계안(본부 1개, 5과 20팀, 민간위탁 중간지원조직 5개)을 만든 뒤, 한글(hwpx) 문서로 표·조직도까지 포함해 자동 생성한 실전 기록이다. 사용자는 문서 파일만 던지고 피드백만 했고, 조사→설계→집필→한글파일 산출까지 AI가 수행했다. 피드백 4라운드(팀 재편, 명칭 변경, 교육팀 이관·복원, 조직도 표 변환)에도 매번 몇 분 안에 새 판본이 나왔다.
왜 이 기술인가
- 정책 제안 실무에서 최종 산출물은 거의 항상 한글(HWP/HWPX) 문서다. AI가 마크다운으로만 결과를 주면 사람이 다시 한글로 옮기는 노동이 남는다.
- 조직설계처럼 근거 문서가 여러 건(발제문, 설계안, 시정기획서, 조직도 PDF)인 작업은 “어느 문서의 어느 대목이 근거인지”가 생명이다. AI에게 원문 전체를 읽히면 근거 있는 설계가 나온다.
- 판본 관리: 조직안은 회의 때마다 바뀐다(팀 통폐합, 명칭 변경, 되돌리기). 문서를 코드로 생성해 두면 수정 요청이 와도 해당 줄만 고쳐 몇 분 만에 새 hwpx가 나온다.
단계별 따라하기
1단계 — 근거 문서를 형식 불문 전부 읽힌다
| 형식 | 방법 |
|---|---|
| AI가 페이지 범위를 지정해 직접 읽음 (대용량은 1~20쪽씩 분할) | |
| .hwpx | ZIP이므로 XML에서 텍스트 추출 |
| 구형 .hwp | OLE 바이너리 — olefile로 BodyText 스트림을 zlib 해제해 UTF-16 디코드 |
| 확장자 없는 파일 | 파일 시그니처(매직넘버)로 판별 후 위 방법 적용 |
함정: 대용량 한글파일 추출 시 서로게이트 문자로 UTF-8 저장이 실패할 수 있다. text.encode('utf-8','ignore').decode('utf-8')로 정리하고 저장하면 된다.
2단계 — 설계 원칙을 원문에서 찾게 한다
“조직도의 5개 과에 각 4팀을 설계하라”는 요청에 대해, AI가 창작하게 두지 말고 원문 속 단서를 찾게 한다. 이번 사례에서는 인수위 문서의 “시민주권경제과 4개 팀 + 민간위탁 시민자산지원센터 15명 내외”라는 한 줄이 전체 설계의 원형이 됐다 — ‘사업 단위 = 팀 단위’ 원칙을 전 과에 확장한 것. 근거 문서명과 날짜를 설계안 본문에 함께 남기면 회의에서 “이건 어디서 나온 얘기냐”에 바로 답할 수 있다.
3단계 — 산출물을 3종 동기화로 관리한다
- md 파일(프로젝트 폴더): 원본이자 검색 가능한 기록
- 웹 아티팩트: 회의 공유용 (링크 하나로 전달, 수정 시 같은 링크 갱신)
- hwpx: 공식 제출용
수정 요청이 오면 셋을 모두 갱신한다. 하나만 고치면 판본이 갈라져 사고가 난다.
4단계 — 한글문서는 템플릿에서 생성한다
빈 문서를 만들지 말고, 같은 조직에서 쓰던 기존 hwpx를 서식 템플릿으로 삼는다:
- 템플릿의 문단 XML에서 스타일 ID(제목·장 제목·불릿·표 셀)를 채록
- 파이썬으로 본문 XML을 조립 — 문단은 문자열 템플릿, 표는 행×열 배열로
- 템플릿 ZIP에서 본문(section0.xml)만 교체해 재패키징
이렇게 하면 새 문서가 기존 문서들과 서식이 완전히 같아서, 받아보는 쪽에서 “우리 문서”로 읽힌다.
5단계 — 조직도는 병합 표로 그린다
한글에서 그리기 개체로 조직도를 자동 생성하는 것은 위험하다. 대신 셀 병합(colSpan) 표로 조직도를 만든다:
[ 시민주권위원회 (전폭 병합, 음영) ]
[ ▼ 심의·의결 (전폭) ]
[ 시민주권본부 — 5과 20팀 (전폭, 음영) ]
[ ①과 ] [ ②과 ] [ ③과 ] [ ④과 ] [ ⑤과 ] ← 5분할, 음영
[팀4개] [팀4개] [팀4개] [팀4개] [팀4개] ← 셀당 여러 문단
[ 중간지원조직(민간위탁) 5개 (전폭) ]
행정기관 조직도 문서 대부분이 실제로 이런 표 구조라서 결과물이 자연스럽다. “과별 업무·팀별 사업을 1쪽 총괄표로”라는 요청도 같은 방법(21행×3열, 표 앞뒤 쪽나눔)으로 해결된다.
교훈
- 원문 전체를 읽히는 비용을 아끼지 말 것. 요약본만 주면 그럴듯한 창작이 나오고, 원문을 주면 “인수위 문서 4팀 구상”같은 결정적 단서를 AI가 찾아낸다.
- 판본은 파일명으로(v2, v3, v4). 특히 출력 대상 한글파일이 한글 프로그램에서 열려 있으면 덮어쓰기가 잠겨 실패한다 — 새 파일명으로 내보내는 것이 오히려 안전하다.
- 피드백은 짧게 자주. “교육팀을 중간지원조직으로 이관” → 다음 회의에서 “다시 살려” 같은 번복도, 문서가 코드로 생성되는 구조에서는 부담이 없다.
- 확정된 결정과 남은 결정을 문서 끝에 분리해 두면, 회의가 거듭될수록 문서가 의사결정 기록이 된다.
참고
- 관련 스킬:
hwpx-powershell-edit(경로 C: PS 조립 / 경로 D: 파이썬 빌더hwpx_gen.py),hwp-binary-extract(구형 HWP 텍스트 추출) - 선행 문서: AI와-함께-정책문서-교차검증하고-한글문서-자동수정하기 — 이번 기술은 ‘수정’을 넘어 ‘생성’으로 확장한 것
- 문서 정리 = 데카(deka2026)
이 문서는 연대지능 공동위키에도 같은 내용으로 올라가 있다. 원본: AI로-정책문서-종합해-조직설계안-만들고-한글문서로-자동생성하기