AI/추천 오픈소스

AI에게 ‘말투’를 흉내 내게 하지 않고, 작가의 글쓰기 방식을 구조화하는 방법

행복한 수지아빠 2026. 9. 4. 16:49
반응형

Writing DNA Skill 분석

AI에게 특정 사람처럼 글을 쓰게 만드는 가장 흔한 방법은 간단합니다.

“이 글들을 참고해서 비슷한 스타일로 써줘.”

하지만 이 방식은 결과가 상당히 불안정합니다.

어떤 때는 말투만 비슷하고, 어떤 때는 문장 구조만 비슷합니다. 글이 길어지면 처음에 잡았던 스타일도 쉽게 무너집니다.

writing-dna-skill은 이 문제를 조금 다른 방식으로 접근합니다.

원문을 바로 모방시키지 않고 먼저 작가의 글쓰기 방식을 분석해서 ‘Writing DNA’라는 명시적인 규칙 집합으로 만들어 둡니다.

그리고 글을 쓸 때마다 이 DNA와 실제 원문을 다시 읽게 합니다. 저장소는 이를 최소 20편 이상의 완성된 글을 기반으로 수행하도록 설계하고 있습니다.


1. 한 문장으로 정의하면

writing-dna-skill은

작가의 글 20편 이상을 분석해 언어·구조·주제 선정·자료 활용·사고방식·시각 스타일을 추출하고, 이를 AI가 반복해서 사용할 수 있는 Writing DNA로 만드는 Agent Skill

입니다.

여기서 중요한 것은 이것이 모델 Fine-tuning 시스템이 아니라는 점입니다.

현재 저장소에서 확인되는 핵심 구성은 SKILL.md, 템플릿, Agent 설정, 예제, 문서, lieflat-less-ai-tone 보조 Skill입니다. 즉 모델의 Weight를 학습시키는 코드보다는 Agent에게 어떤 순서로 분석하고 어떤 파일을 생성하며 이후 어떻게 다시 읽을지를 정의한 Context Engineering 시스템에 가깝습니다.

구조를 단순화하면 이렇습니다.

작가 원문
   ↓
Style 분석
   ↓
Writing DNA 생성
   ↓
관련 원문 검색
   ↓
Writing DNA + 실제 원문
   ↓
새 글 생성
   ↓
AI 특유 표현 정리

2. 핵심 아이디어: 스타일을 6개 층으로 분해한다

이 프로젝트에서 가장 흥미로운 부분은 ‘글쓰기 스타일’을 하나의 프롬프트로 취급하지 않는다는 것입니다.

스타일을 L1~L6의 여섯 계층으로 나눕니다.

단계분석 대상쉽게 말하면

L1 언어 어떻게 말하는가
L2 글 구조 어떻게 전개하는가
L3 주제 선택 무엇을 쓰는가
L4 자료 전략 무엇을 근거로 쓰는가
L5 인지 프레임 어떻게 생각하는가
L6 시각 스타일 어떻게 보여주는가

저장소가 이 구조를 요약하는 방식도 명확합니다.

L1~L2 → 어떻게 쓰는가
L3~L5 → 어떻게 생각하는가
L6    → 어떻게 보여주는가

즉,

Style = 문체

라고만 보지 않고,

Style
= Language
+ Structure
+ Topic Selection
+ Evidence Strategy
+ Cognitive Framework
+ Visual Presentation

으로 정의하는 셈입니다.


3. L1 — 언어 DNA

첫 단계에서는 가장 표면적인 글쓰기 특징을 분석합니다.

예를 들어 다음과 같은 것들입니다.

고빈도 명사
고빈도 동사
고빈도 부사

평균 문장 길이
15자 이하 짧은 문장 비율
50자 이상 긴 문장 비율

문단당 평균 문장 수

대시 사용
괄호 사용
인용부호 사용
소제목 길이

한국어/영어 혼용 패턴

이런 결과를 하나의 파일로 정리합니다.

중국어 템플릿 기준으로는

语言DNA.md

영문 버전에서는

language-dna.md

입니다.

예를 들어 어떤 작가를 분석했더니 다음과 같은 규칙이 나올 수 있습니다.

평균 문장 길이: 27자

한 문장으로 된 단락을 자주 사용

기술 용어는 영어 원문을 유지

괄호보다 대시 사용 빈도가 높음

첫 문장은 대부분 짧은 주장으로 시작

숫자와 실제 사례를 자주 사용

이 정도만 있어도 단순히

“OOO처럼 써줘.”

라고 하는 것보다 훨씬 구체적인 스타일 제약을 AI에 전달할 수 있습니다.


4. L2 — 글의 구조를 추출한다

하지만 문체만 똑같다고 작가의 글처럼 느껴지는 것은 아닙니다.

글에는 반복되는 구조가 있습니다.

예를 들어 인터뷰 글이라면 다음 패턴이 반복될 수 있습니다.

왜 지금 이 사람인가
        ↓
핵심 배경 설명
        ↓
이번 글의 핵심 질문
        ↓
Q&A
        ↓
몇 개의 큰 주제
        ↓
자연스러운 마무리

프로젝트는 이런 구조를 콘텐츠 유형별로 분리합니다.

인터뷰
심층 분석
짧은 의견
관찰
리뷰
뉴스 분석

그리고 각각의 구조를

文章结构模板.md

또는 영어의

structure-patterns.md

에 저장합니다.

이 부분이 꽤 중요합니다.

같은 사람이 쓰더라도

뉴스 해설
제품 리뷰
인터뷰
칼럼
SNS 글

은 구조가 전혀 다를 수 있기 때문입니다.

따라서 이 Skill은 작가마다 하나의 Writing Template을 만드는 것이 아니라 여러 개의 글 구조를 만드는 방식을 사용합니다.


5. L3 — 무엇을 쓰는 사람인지 분석한다

여기서부터 단순한 문체 분석을 넘어갑니다.

L3에서는 작가의 주제 선택 방식을 분석합니다.

예를 들어 AI 업계를 다루는 두 작가가 있다고 해보겠습니다.

A는

신제품 발표 직후
→ 기능
→ 가격
→ 사용법

을 주로 다룰 수 있습니다.

반면 B는

기술 발표
→ 산업 변화
→ 비즈니스 영향
→ 앞으로 무엇이 바뀌는가

를 주로 다룰 수 있습니다.

둘은 같은 사건을 보고도 완전히 다른 글을 씁니다.

Writing DNA는 이런 차이까지 추출하려고 합니다.


6. L4 — 자료를 사용하는 방법까지 분석한다

좋은 글의 스타일은 문장만으로 만들어지지 않습니다.

어떤 자료를 선택하느냐도 작가 스타일의 일부입니다.

Skill에서는 다음을 분석하도록 되어 있습니다.

직접 관찰을 많이 사용하는가

공식 발표를 많이 사용하는가

연구 논문을 사용하는가

통계를 사용하는가

사례를 사용하는가

전문가 발언을 인용하는가

스크린샷을 근거로 사용하는가

특히 이 저장소는 이미지 안의 정보도 분석 대상으로 봅니다.

스크린샷이나 데이터 차트가 단순 장식인지, 실제 논증을 담당하는지 구별하고, L2·L4·L6 분석에서는 5~10편의 글을 샘플링해 이미지 내용을 직접 확인하도록 규정하고 있습니다.

이 부분은 SNS나 뉴스레터 스타일을 분석할 때 상당히 유용한 접근입니다.


7. L5 — 작가의 ‘생각하는 방식’을 추출한다

Writing DNA의 핵심은 이 부분이라고 볼 수 있습니다.

문체만 따라 하면 이런 결과가 나오기 쉽습니다.

말투는 비슷하다.
그런데 그 사람이 쓴 것 같지는 않다.

왜냐하면 사람마다 반복적으로 사용하는 사고방식이 있기 때문입니다.

Skill은 다음과 같은 질문을 던집니다.

이 작가는 무엇을 중요하다고 생각하는가?

새로운 기술을 어떤 기준으로 평가하는가?

좋은 제품의 기준은 무엇인가?

어떤 현상을 낙관적으로 보는가?

무엇을 경계하는가?

어떤 논리가 반복해서 등장하는가?

그리고 여기서 반복되는 핵심 명제를 추출합니다.

예를 들어 가상의 기술 작가라면 다음과 같은 DNA가 나올 수 있습니다.

기술 자체보다 사용자 행동 변화가 중요하다.

제품의 성공은 기능보다 Distribution에서 결정된다.

AI 제품은 모델보다 Workflow가 중요하다.

새 기술은 데모보다 실제 사용 사례를 봐야 한다.

이런 규칙이 들어가면 AI가 단순히 문체만 따라 하는 것이 아니라 비슷한 관점에서 글을 구성하도록 유도할 수 있습니다.


8. L6 — 시각 스타일도 DNA에 포함한다

이 프로젝트가 일반적인 Style Prompt와 크게 다른 또 하나의 부분입니다.

이미지를 스타일의 일부로 봅니다.

분석 대상에는 다음이 들어갑니다.

기사당 이미지 수

몇 문단마다 이미지가 등장하는지

스크린샷 사용 빈도

그래프 사용 빈도

인물 사진 사용 빈도

대표 이미지 형태

글자 굵기

제목 크기

문단 길이

강조 색상

인용 블록

여백

그리고 이미지를 역할별로 다시 구분합니다.

증거형
데모형
데이터형
스토리 진행형
감정 표현형
권위 보강형

결과는

视觉风格指南.md

또는

visual-style-guide.md

에 저장됩니다.

즉 이 시스템에서는

글쓰기 Style = Text Style + Information Style + Visual Style

입니다.


9. 최종적으로 만들어지는 Writing DNA

모든 분석이 끝나면 다음 문서들이 생성됩니다.

author/
│
├── raw/
│   └── 실제 원문
│
├── _meta/
│   └── 글별 메타데이터
│
├── language-dna.md
│
├── structure-patterns.md
│
├── cognitive-framework.md
│
├── visual-style-guide.md
│
└── Writing-DNA.md

중국어 버전에서는 일부 파일명이 중국어로 생성됩니다. 저장소는 중국어와 영어용 템플릿을 별도로 제공합니다.

최종 Writing-DNA.md에는 대략 다음 정보가 압축됩니다.

Writing DNA

├─ Language
├─ Structure
├─ Topic Selection
├─ Source Strategy
├─ Cognitive Framework
└─ Visual Style

저장소의 자체 품질 기준에서는 이 통합 문서를 지나치게 길게 만들지 않고 압축된 규칙집으로 유지하도록 하고 있으며, 동시에 구조 템플릿·인지 프레임·메타데이터·시각 분석 등에 대한 체크 항목도 정의합니다.


10. 진짜 중요한 부분은 ‘쓸 때’다

여기까지라면 그냥 Style 분석기와 크게 다르지 않을 수 있습니다.

이 프로젝트에서 더 중요한 설계는 Runtime Writing 과정입니다.

새로운 글을 작성할 때 AI가 단순히 Writing-DNA.md 하나만 읽으면 안 됩니다.

저장소는 글을 쓸 때마다 다음 자료를 다시 읽도록 요구합니다.

language-dna
        +
structure-patterns
        +
cognitive-framework
        +
visual-style-guide
        +
Writing-DNA

그리고 한 단계가 더 있습니다.

이번에 작성하려는 글과 가장 비슷한 원문 5편을 추가로 읽습니다.

선택 기준은 _meta/의

article_type
topic_tags

입니다.

5편 이상이면 최근 글을 우선합니다.

이 구조를 시스템 관점에서 보면 사실상 다음과 같습니다.

         ┌───────────────┐
         │ Writing DNA   │
         └───────┬───────┘
                 │
                 ▼
Topic ──→ Metadata Search
                 │
                 ▼
        Related Articles × 5
                 │
                 ▼
          LLM Context
                 │
                 ▼
             Writing

[Inference] 따라서 이 프로젝트를 기술적으로 표현하면 Style Distillation + Metadata Retrieval + Few-shot Context Injection 구조에 가깝습니다.


11. RAG와도 상당히 비슷하다

[Inference] 일반적인 RAG는 다음과 같습니다.

질문
 ↓
Vector Search
 ↓
관련 문서
 ↓
LLM
 ↓
답변

Writing DNA는 목적이 조금 다릅니다.

글쓰기 요청
 ↓
글 유형 / Topic 판단
 ↓
관련 원문 5편 선택
 ↓
Writing DNA + 원문
 ↓
LLM
 ↓
새로운 글

따라서 정확히 말하면 지식 검색보다는 Style Retrieval에 가깝습니다.

일반 RAG가

무엇을 말할 것인가

를 가져온다면,

Writing DNA 시스템은

어떻게 말할 것인가

를 가져오는 것입니다.


12. Fine-tuning이나 LoRA와는 무엇이 다른가

[Inference] 가장 큰 차이는 모델 Weight를 변경하지 않는다는 것입니다.

방식Style PromptWriting DNALoRA/Fine-tuning

모델 학습 없음 없음 있음
원문 필요량 적음 20편+ 권장 일반적으로 더 많음
스타일 규칙 암묵적 명시적 Weight 내부
수정 쉬움 매우 쉬움 재학습 필요 가능
설명 가능성 낮음 높음 낮음
Runtime Context 작음 비교적 큼 작게 가능
구축 비용 낮음 낮음~중간 상대적으로 높음

Writing DNA 방식의 재미있는 부분은 모델을 학습시키는 대신 Context를 학습시킨다는 것입니다.

기존 방식이

Corpus
  ↓
Training
  ↓
Model Weight

이라면,

Writing DNA는

Corpus
  ↓
Distillation
  ↓
Explicit Style Rules

입니다.


13. ‘AI 냄새 제거’를 별도의 단계로 분리했다

이 저장소에는

skills/lieflat-less-ai-tone/

이라는 별도의 보조 Skill도 포함되어 있습니다.

전체 파이프라인으로 보면 다음과 같습니다.

Original Articles
       ↓
Writing DNA Distillation
       ↓
Style-conditioned Writing
       ↓
Less-AI-Tone
       ↓
Final Article

이 설계에서 재미있는 점은

작가처럼 쓰기

AI처럼 보이지 않게 쓰기

를 서로 다른 문제로 분리한다는 것입니다.

두 규칙이 충돌하면 Writing DNA를 우선하도록 SKILL에 명시돼 있습니다. 실제 작가가 사용하는 표현을 AI 표현이라고 판단해서 제거하는 것을 막기 위한 장치입니다.


14. 실제로는 ‘코드 프로젝트’라기보다 Agent Protocol에 가깝다

[Inference] 개발자 관점에서 이 저장소를 볼 때 가장 중요한 부분입니다.

이 프로젝트에는 현재 확인한 범위에서 일반적인 ML 프로젝트에 있을 법한

train.py
dataset.py
model.py
inference.py

같은 학습 코드가 중심에 있지 않습니다.

대신 핵심은

SKILL.md
templates/
references/
agents/
skills/

입니다.

OpenAI용 Agent 설정도 포함되어 있으며 기본 프롬프트에서 $writing-dna-skill을 사용해 article corpus를 Writing-DNA.md로 distill하도록 정의하고 있습니다.

따라서 이 저장소의 본질은 소프트웨어 라이브러리라기보다

Agent가 따라야 할 분석 프로토콜

이라고 보는 편이 정확합니다.


15. 기술적으로 가장 가치 있는 아이디어

[Inference] 개인적으로 이 프로젝트에서 가장 재사용 가치가 높은 것은 ‘작가 복제’ 자체보다 Distillation Pattern입니다.

같은 구조를 다른 분야에도 적용할 수 있습니다.

예를 들어 개발자의 코딩 스타일을 분석한다면

Code DNA

├─ Naming DNA
├─ Architecture Patterns
├─ Error Handling
├─ Testing Strategy
├─ API Design
└─ Comment Style

제품 기획자라면

Product DNA

├─ Problem Definition
├─ Market Analysis
├─ Feature Prioritization
├─ UX Principles
├─ Metrics
└─ Decision Framework

투자자라면

Investment DNA

├─ Company Selection
├─ Market Evaluation
├─ Risk Evaluation
├─ Valuation
├─ Thesis
└─ Exit Criteria

로 확장할 수 있습니다.

즉 핵심 패턴은

Human Output
     ↓
Pattern Distillation
     ↓
Explicit DNA
     ↓
Relevant Examples Retrieval
     ↓
Agent Execution

입니다.

이 구조는 Writing을 넘어 상당히 많은 Agent 시스템에 적용할 수 있습니다.


16. 장점

[Inference] 이 접근의 가장 큰 장점은 설명 가능성입니다.

LoRA를 학습하면 모델이 왜 특정 표현을 사용했는지 알기 어렵습니다.

Writing DNA는

평균 문장 길이는 이 정도
Hook은 이런 방식
자료는 이런 종류
결론은 이런 구조

처럼 사람이 직접 읽고 수정할 수 있습니다.

따라서 Style을 바꾸고 싶다면 모델을 다시 학습할 필요 없이 DNA 문서를 수정하면 됩니다.

또 다른 장점은 Portability입니다.

DNA가 Markdown 파일이기 때문에 특정 모델에 강하게 종속되지 않습니다.

Claude, GPT 계열, Gemini나 로컬 LLM 등 긴 Context를 처리할 수 있는 Agent 환경으로 옮기기 쉽습니다.


17. 한계도 분명하다

[Inference] 반대로 가장 큰 비용은 Context입니다.

매번

Writing DNA
+ 4개 상세 문서
+ 원문 5편

을 읽어야 하기 때문입니다.

장문의 원문이라면 Context 사용량이 상당히 커질 수 있습니다.

두 번째 문제는 분석 품질입니다.

이 시스템에는

L3 Topic
L4 Evidence
L5 Cognitive Framework

처럼 정량화하기 어려운 요소가 많습니다.

따라서 어떤 LLM이나 Agent를 사용하느냐에 따라 DNA 품질이 크게 달라질 가능성이 있습니다.

세 번째는 Corpus 품질입니다.

20개의 글이 있다고 하더라도

작성 시기가 너무 다르거나
주제가 지나치게 다르거나
Ghostwriter가 섞여 있거나
AI 생성 글이 섞여 있다면

DNA 자체가 오염될 수 있습니다.

그래서 _meta/가 중요한 것입니다.


18. 저작권과 모방 문제

저장소 자체도 이 부분에 경계선을 두고 있습니다.

프로젝트는 학습·분석·스타일 연구·개인 글쓰기 자산 구축 용도로 설명되며, 다른 작가를 사칭하거나 독자를 오도하거나 저작권을 침해하는 용도로 사용하지 말 것을 명시합니다. 또한 권한 없는 원문 Corpus를 오픈소스 저장소에 포함하지 말라고 안내합니다.

따라서 실무적으로 가장 좋은 활용 대상은 오히려

다른 유명 작가를 복제하는 것보다 자기 자신을 복제하는 것

일 수 있습니다.

자신이 과거에 작성한

블로그
Threads
X
LinkedIn
기술 문서
보고서
뉴스레터

를 모아 자신의 Writing DNA를 만들 수 있기 때문입니다.


19. 내가 이 프로젝트를 다시 만든다면

[Inference] 이 구조를 실제 서비스로 만든다면 다음처럼 구현하는 것이 좋습니다.

                    ┌─────────────┐
                    │ Article DB  │
                    └──────┬──────┘
                           │
              ┌────────────▼────────────┐
              │ Corpus Analyzer         │
              │                         │
              │ Sentence Statistics     │
              │ Metadata Extraction     │
              │ Structure Detection     │
              │ Image Analysis          │
              └────────────┬────────────┘
                           │
                           ▼
                  Writing DNA Store
                           │
          ┌────────────────┴───────────────┐
          │                                │
          ▼                                ▼
    Style Retrieval                  Article Retrieval
          │                                │
          └────────────────┬───────────────┘
                           ▼
                       LLM Agent
                           │
                           ▼
                        Draft
                           │
                           ▼
                   AI-Tone Cleaner
                           │
                           ▼
                     Final Article

여기에 Vector DB를 붙이면 원문 5편을 고르는 과정도 자동화할 수 있습니다.

article embedding
      ↓
Vector DB
      ↓
new topic embedding
      ↓
Top-K = 5

그러면 현재의

article_type
+ topic_tags

기반 검색을 Semantic Retrieval까지 확장할 수 있습니다.


결론

writing-dna-skill의 핵심은 AI에게 작가를 바로 흉내 내라고 시키지 않는 것입니다.

먼저 작가의 글을 분석합니다.

언어
구조
주제
자료
사고방식
시각 표현

그리고 이것을

Writing DNA

라는 명시적인 자산으로 만듭니다.

새 글을 작성할 때는 다시

Writing DNA
+
관련 원문 5편

을 읽힌 뒤 글을 생성합니다.

[Inference] 기술적으로 보면 이것은 Fine-tuning보다

Context Engineering + Style Distillation + Retrieval + Few-shot Learning

에 가까운 구조입니다.

그리고 이 아이디어의 가장 큰 가치도 여기 있습니다.

모델을 사람에게 맞춰 다시 학습하는 대신,
사람의 작업 방식을 AI가 읽을 수 있는 명시적인 DNA로 바꾼다.

Writing뿐 아니라 코딩, 기획, 리서치, 투자 분석, 보고서 작성 같은 분야에도 그대로 확장할 수 있는 꽤 흥미로운 Agent 설계 패턴입니다.

저장소는 MIT 라이선스로 공개되어 있습니다.

 

GitHub - larashero3-dotcom/writing-dna-skill: 写作蒸馏器.skill|蒸馏复刻任意写作风格的 agent skill | Writing DN

写作蒸馏器.skill|蒸馏复刻任意写作风格的 agent skill | Writing DNA Distiller - distill and recreate any writing style as an agent skill - larashero3-dotcom/writing-dna-skill

github.com

 

 

반응형