From 1ca84f67ed143ea04abb48b5b90fe55641b1db56 Mon Sep 17 00:00:00 2001 From: Andrew Yim Date: Wed, 13 May 2026 15:45:45 +0900 Subject: [PATCH] add: jamie-journal-editor gotcha file. --- .../references/image-generation-gotchas.md | 356 ++++++++++++++++++ 1 file changed, 356 insertions(+) create mode 100644 custom-skills/46-jamie-journal-editor/desktop/references/image-generation-gotchas.md diff --git a/custom-skills/46-jamie-journal-editor/desktop/references/image-generation-gotchas.md b/custom-skills/46-jamie-journal-editor/desktop/references/image-generation-gotchas.md new file mode 100644 index 0000000..0567e13 --- /dev/null +++ b/custom-skills/46-jamie-journal-editor/desktop/references/image-generation-gotchas.md @@ -0,0 +1,356 @@ +# Image Generation Gotchas + +> **Purpose**: Catalog known failure modes of image generation (Gemini, etc.) when producing journal article visuals, and provide reusable defensive prompt patterns. +> **Last updated**: 2025-05-12 +> **First case captured**: 결막 절개 접근법 도식 (8편 — 눈밑지방 재배치 vs 제거) + +--- + +## Core Principle + +이미지 생성 모델은 **"의료기관 페이지" 시각 패턴을 강하게 학습**하고 있어, 단순 해부학 도식 요청에도 다음 요소를 자동으로 끼워 넣는 경향이 있습니다: + +- 클리닉 헤더(브랜드명 + 진료 분야 메뉴) +- 영문 진료 카테고리 나열 (Blepharoplasty | Rhinoplasty | Anti-aging 등) +- 무의미한 한글 환각 문자 (산중, 강남, 압구정 등) +- 영문 비존재 단어 (Ecolomtira, Blephnoplasty, Pygmentation 등 — 실제로는 학습 데이터의 OCR 오류 잔재) +- 동일 라벨의 다중 위치 중복 표시 +- **존재하지 않는 한국어 합성어** (눈물술 단년, 옥건 등 — 영어 서술 표현을 강제로 한국어 라벨링하려다 발생) + +> **방어의 핵심 1**: 추상적 카테고리 금지("메뉴 금지")보다 **금지하려는 정확한 문자열을 예시로 직접 호명**하는 것이 압도적으로 효과적입니다. + +> **방어의 핵심 2**: **"Korean (English) format"** 같은 형식 규칙을 강제하면서 정작 영어 서술 표현(e.g., "shadow line", "thin layer")으로 라벨을 지시하면, 모델은 의학적 정확성을 희생하고 가짜 한국어 합성어를 만들어 형식 일관성을 채웁니다. 따라서 **모든 라벨의 완성된 한글-영문 쌍을 프롬프트에 직접 적시**하고, 라벨이 불필요한 시각 요소(음영, 색조 등)는 명시적으로 "leave unlabeled"로 처리해야 합니다. + +> **방어의 핵심 3**: **라벨링 대상은 정식 한국어 의학 용어가 존재하는 명사형 항목으로만 한정**합니다. 영어 서술 표현(동사형 "removed", 형용사형 "shadow", 합성형 "shadow line")을 라벨링하려고 시도하면 거의 항상 한국어 환각이 발생합니다. 동작(verb)은 라벨이 아니라 **화살표의 기하학적 묘사**로 전달해야 합니다 (시작점·종점·방향·곡률·개수를 정량 명시). + +> **방어의 핵심 4 (Highest Priority)**: **빈 영문 괄호 자리를 절대 만들지 않습니다.** 영문 병기가 필요하면 모든 한글-영문 쌍을 완성형으로 적시하고, 영문 병기가 불필요하면 "Korean only, NO English parentheses"를 명시적으로 선언해야 합니다. 그렇지 않으면 모델이 **이전에 학습한 환각 헤더 문자열("Blepharoplasty/Rhinoplasty/Anti-aging")을 의학적으로 무관한 라벨의 영문 번역으로 채워 넣습니다** (Pattern 12). 이는 시각 노이즈가 아니라 콘텐츠 본문의 의학적 오정보이며, **시각 검사만으로는 발견되지 않으므로 의학 용어 검증이 필수**입니다. + +--- + +## Defense Strategy — Prompt First, Post-Processing as Fallback + +이미지 생성 도구를 **WebApp 환경에서 단발성(one-shot)으로 사용**하는 것이 기본 워크플로이므로, 환각 통제는 **프롬프트 단계에서 완결**되어야 합니다. Canva/Figma 후처리는 프롬프트로 막지 못한 잔존 환각을 정리하는 2차 보완책입니다. + +### 1차 방어 — 프롬프트 강화 (Primary) + +모든 환각 통제는 **프롬프트 안에서 1회 생성으로** 끝내는 것을 목표로 합니다. 핵심 원칙 4가지: + +1. **완성된 한글-영문 라벨 쌍을 모두 적시** — "Korean with English" 같은 형식 규칙 대신 "안와지방 (Orbital Fat)" 같이 완성된 문자열을 그대로 명시 +2. **라벨 총 개수와 위치 명시** — "EXACTLY 6 labels: 3 in Column 1, 1 in Column 2, 2 in Column 3" 같이 정확한 수치 제약 +3. **시각 요소 중 라벨링하지 않을 것을 명시** — "DO NOT label the shadow. Visual element only." +4. **Defensive Prompt Block append** — `image-generation-gotchas.md`의 표준 블록 끝에 부착 + +### 2차 보완 — Canva/Figma 후처리 (Fallback Only) + +다음 경우에 한해 후처리로 정리합니다: + +- 프롬프트 강화에도 잔존하는 환각 텍스트 (e.g., Case 1의 우상단 메뉴) +- 모델이 강하게 학습한 시각 패턴(클리닉 헤더 등)이 부정 프롬프트만으로는 제거되지 않을 때 +- JAMIE 워터마크 추가 (이건 항상 후처리로 처리) + +> **재생성 vs 후처리의 판단 기준**: 잔존 환각이 1~2개 텍스트 요소이고 단순 삭제·교체로 해결되면 → 후처리. 환각이 다이어그램 구조 자체에 침투했으면 → 프롬프트 재작성 후 재생성. + +--- + +## Failure Pattern Catalog + +저널 이미지 생성에서 반복적으로 관찰되는 환각 패턴입니다. + +### Pattern 1: Phantom Clinic Header + +| 증상 | 우상단 또는 헤더 영역에 "Blepharoplasty \| Rhinoplasty \| Anti-aging" 등 진료 분야 메뉴가 자동 추가됨 | +|------|-------------------------------------------------------------------------| +| 원인 | 의료기관 웹사이트 헤더의 시각 패턴이 강하게 학습되어 있음 | +| 방어 강도 | 🟡 부정 프롬프트만으로는 100% 차단 어려움 — Canva/Figma 후처리 권장 | + +### Pattern 2: Hallucinated Korean Strings + +| 증상 | "산중", "강남" 등 의미 없는 한글 단어가 헤더/장식 위치에 등장 | +|------|---------------------------------------------------------| +| 원인 | 의료기관 페이지의 지역명·브랜드명 패턴 자동 삽입 | +| 방어 강도 | 🟢 예시 문자열 호명으로 거의 완전 차단 가능 | + +### Pattern 3: Non-existent English Words + +| 증상 | "Ecolomtira" (=Eyelash 환각), "Blephnoplasty" (=Blepharoplasty 오타) 등 영문 비존재 단어 | +|------|------------------------------------------------------------------------------| +| 원인 | 학습 데이터의 OCR 오인식 결과가 잔재 텍스트로 출력 | +| 방어 강도 | 🟢 정확한 표기를 명시하고 비존재 단어를 예시로 부정하면 차단 가능 | + +### Pattern 4: Label Duplication + +| 증상 | 동일한 해부학 라벨(예: "속눈썹")이 이미지의 2~3 위치에 반복 표시 | +|------|----------------------------------------------------------| +| 원인 | 라벨 위치 명시 부족 시 모델이 안전한 다중 배치를 시도 | +| 방어 강도 | 🟢 "LABEL ONLY ONCE, do not duplicate" 명시로 차단 가능 | + +### Pattern 5: Title Spread Across Corners + +| 증상 | 타이틀과 동일 텍스트가 4 모서리(좌상·우상·좌하·우하)에 분산 배치 | +|------|----------------------------------------------------------| +| 원인 | 모델이 위치를 지정받지 않으면 안전한 대칭 배치를 시도 | +| 방어 강도 | 🟢 "top-left corner only" 명시로 차단 가능 | + +### Pattern 6: Color Confusion Between Comparison Items + +| 증상 | 비교 대상 (예: 결막 절개법 vs 피부 절개법)이 동일 색조로 표현되어 시각적 구분 실패 | +|------|------------------------------------------------------------------------------| +| 원인 | 색상 의미를 부여하지 않으면 디자인적 균일성을 우선시 | +| 방어 강도 | 🟢 "to differentiate from path 1" 같은 차별화 이유 함께 명시로 차단 가능 | + +### Pattern 7: Phantom Korean Translation for English Descriptors + +| 증상 | 영어 서술 표현("shadow line", "thin layer" 등)에 한국어 번역 라벨이 강제되면, 모델이 존재하지 않는 한국어 합성어("눈물술 단년" 등)를 만들어 채움 | +|------|----------------------------------------------------------------------------------| +| 원인 | 프롬프트에 "Korean with English in parentheses" 형식이 강제되어 있는데, 영어 서술 표현은 정식 한국어 의학 용어가 존재하지 않음 → 모델이 의학적 정확성보다 형식 일관성을 우선시해 합성어 생성 | +| 방어 강도 | 🟢 **모든 라벨의 완성된 한글-영문 문자열을 프롬프트에 직접 적시**하고, 라벨이 필요 없는 시각 요소(음영, 색조 등)는 라벨링하지 않도록 명시 | + +### Pattern 8: Korean Nonsense Compound (Phonetic Hallucination) + +| 증상 | "옥건 (Pygmentation)"처럼 의미 없는 한글 단어가 등장 | +|------|--------------------------------------------------| +| 원인 | 영어 의학 용어("Pigmentation")를 한국어로 음역하려다 무의미한 한글 글자 조합을 출력. 한국어 형태소 학습이 불완전한 영역에서 발생 | +| 방어 강도 | 🟢 정확한 한국어 의학 용어를 직접 명시하고("색소침착"), 비존재 한글 합성어를 예시로 부정 ("옥건" 등) | + +### Pattern 9: Bilateral Label Duplication in Cross-Sections + +| 증상 | 단면도/대칭 구조에서 같은 라벨이 좌측·우측 양쪽에 표시 (예: "정맥 (Vein)"이 좌우 양측) | +|------|---------------------------------------------------------------------| +| 원인 | 대칭 구도에서 모델이 시각적 균형감을 맞추려 양쪽에 동일 라벨을 자동 배치. Pattern 4(일반 라벨 중복)의 변종 | +| 방어 강도 | 🟢 "label only on the right side of the diagram" 등 라벨 배치 방향을 명시 | + +### Pattern 10: Inconsistent Label Format (Mixed Language) + +| 증상 | 모든 라벨이 "한글 (영문)" 형식이어야 하는데 일부 라벨만 영문 단독("Inferior Orbital rim", "Before", "After") | +|------|------------------------------------------------------------------------------| +| 원인 | 프롬프트가 "for primary terms"처럼 추상적 구분 표현을 사용하거나 라벨 자체를 "Before / After"처럼 영문으로 적시하면, 모델이 해당 라벨에 한글 병기를 적용하지 않음 | +| 방어 강도 | 🟢 "ALL labels must follow the Korean (English) format. No exceptions." 명시 + 프롬프트 안에서도 모든 라벨을 한글-영문 쌍으로 적시 ("수술 전 (Before)" 등) | + +### Pattern 11: Ambiguous Action Arrows + +| 증상 | 동작 묘사("fat being removed", "fat being repositioned")를 화살표로 지시했을 때 모델이 의미 불명확한 복합 기호(나선형 + 곡선 결합 등)를 생성 | +|------|--------------------------------------------------------------------------------| +| 원인 | "removed", "repositioned" 같은 동사적 표현은 시각적 행동이 아니라 처치 결과. 모델은 학습 데이터에서 일관된 시각 기호를 찾지 못해 여러 화살표 패턴을 조합 | +| 방어 강도 | 🟢 화살표를 정량적·기하학적으로 묘사 — 시작점·종점·곡률·개수 명시 (예: "ONE straight arrow from A to B, no curve") 또는 동작 표현 자체를 제거하고 Before/After 비교만으로 메시지 전달 | + +### Pattern 12: Cross-Contamination from Phantom Header Strings 🔴 HIGH RISK + +| 증상 | Pattern 1의 환각 헤더 문자열("Blepharoplasty \| Rhinoplasty \| Anti-aging")이 **실제 콘텐츠 라벨 자리에 침투**하여 의학적으로 무관한 영문 번역으로 둔갑. 예: "구조적 다크서클 (Blepharoplasty)", "색소성 다크서클 (Rhinoplasty)" | +|------|------------------------------------------------------------------------------| +| 원인 | 프롬프트가 한글 라벨만 지시하고 영문 번역을 명시하지 않았는데도, 모델이 "Korean (English)" 형식이 의료 도식의 디폴트라고 학습하여 영문 괄호를 자동 추가. 빈 영문 자리는 **이 시리즈에서 반복 학습한 환각 헤더 문자열로 채워짐** | +| 위험도 | 🔴 **콘텐츠 정확성 위협** — Pattern 1과 달리 본문 데이터에 침투해 의학적 오정보를 생성. 의료광고 심의 즉시 거절 사유. 시각 검사로는 발견되지 않고 **의학 용어 검증을 통해서만 식별 가능** | +| 방어 강도 | 🟢 영문 병기가 필요하면 **모든 한글-영문 쌍을 완성형으로 적시**. 영문 병기가 불필요하면 "Korean only, NO English parentheses" 명시. Defensive Prompt Block에 "Blepharoplasty/Rhinoplasty/Anti-aging을 무관한 라벨에 채워 넣지 말 것" 명시 부정 | + +--- + +## Defensive Prompt Block (재사용 표준) + +모든 저널 해부학 도식 프롬프트의 마지막 블록에 아래 패턴을 그대로 삽입하는 것을 권장합니다. + +```text +[STRICTLY PROHIBITED — DO NOT GENERATE ANY OF THE FOLLOWING] + +Clinic-page artifacts: +- DO NOT add any clinic name, brand name, hospital name, or website-like header +- DO NOT add any navigation menu, category list, or service-list text such as + "Blepharoplasty | Rhinoplasty | Anti-aging" or any similar 3-item English menu +- DO NOT add footer text, page numbers, watermarks, or copyright marks +- DO NOT add address, phone number, URL, or social media handle + +Hallucinated English text: +- DO NOT include words that do not exist in English. Specifically, do NOT + output any of: "Ecolomtira", "Blephnoplasty", "Blephroplasty", "Pygmentation", + "Pigmantation", "Rihinoplasty", or similar misspellings of medical terms +- All English terms inside parentheses must be spelled EXACTLY as written in + the Korean (English) labels specified above. No substitutions, no creative + variations + +Cross-contamination prevention (CRITICAL): +- DO NOT insert "Blepharoplasty", "Rhinoplasty", "Anti-aging", or any other + unrelated medical procedure name as an English translation for any Korean + label. These strings are commonly hallucinated and must NEVER appear unless + the label content is literally about that specific procedure +- Each English term in parentheses must be the ACCURATE direct translation of + the Korean term it follows. For example: "구조적 다크서클" → "(Structural)", + NOT "(Blepharoplasty)". "색소성 다크서클" → "(Pigmentation)", + NOT "(Rhinoplasty)" +- If a Korean label does NOT need English translation, leave it as Korean only. + DO NOT auto-fill English parentheses with arbitrary medical terms + +Hallucinated Korean text: +- DO NOT add any Korean text other than the title and the anatomical labels + specified above +- Korean place names such as "산중", "강남", "압구정", "서울" must NOT appear +- Korean nonsense compound words such as "옥건", "눈물술", "단년", "단년선", + or any invented Korean phonetic transliteration of English terms must NOT appear +- If a label is not explicitly specified above, DO NOT invent one — leave the + visual element unlabeled + +Label discipline: +- DO NOT repeat the same label more than once in the image +- LABEL ONLY ONCE for each anatomical structure +- For symmetric/cross-section diagrams: label each structure on ONE side only + (typically the right side); do not duplicate labels on both sides of the + diagram for visual balance +- ALL labels must follow the EXACT format specified above (typically + "한글 (English)"). No exceptions, no English-only labels, no Korean-only labels +- DO NOT label state-indicators in English only. Use Korean-bilingual format + for "Before/After" labels too — e.g., "수술 전 (Before)" / "수술 후 (After)" + +Arrow discipline: +- Specify arrow geometry quantitatively when arrows are needed: + number of arrows, start point, end point, direction, and curvature +- DO NOT request abstract action descriptions like "showing fat being removed" + — instead specify "ONE arrow from [start] to [end], [straight/curved]" +- DO NOT combine multiple arrow symbols (spiral + curve + arrow) for a single + concept — one clean arrow per action + +Visual style: +- DO NOT use 3D shading, gradients, drop shadows, or photographic rendering +- DO NOT add surgical tools, blood, tissue color, or any gore +- DO NOT add icons, clip-art, emojis, decorative borders, or stock illustrations +- DO NOT add any English-only title, subtitle, or decorative tagline +``` + +--- + +## Verification Checklist (이미지 생성 후 점검) + +이미지 생성 후 발행 전 다음 항목을 시각적으로 점검합니다: + +- [ ] 클리닉 헤더/메뉴 텍스트가 없는가? (특히 우상단·우하단) +- [ ] 영문 단어가 모두 실제 단어인가? (Eyelash, Conjunctiva, Orbital Fat, Pigmentation, Vein 등 — 철자 정확 여부 확인) +- [ ] **🔴 행 라벨·분류명·데이터 셀의 영문 번역이 의학적으로 정확한가?** (예: "구조적 다크서클 (Structural)" ← (Blepharoplasty) 같은 무관한 시술명이 침투하지 않았는가?) +- [ ] 동일 라벨이 두 번 이상 표시되지 않았는가? +- [ ] 단면도/대칭 구조에서 좌우 양측에 같은 라벨이 중복되어 있지 않은가? +- [ ] 타이틀이 한 곳에만 배치되었는가? +- [ ] 비교 대상이 색상으로 구분되는가? +- [ ] 무의미한 한글 문자열("산중", "옥건", "눈물술 단년" 등)이 없는가? +- [ ] 모든 라벨이 동일한 형식(한글 영문 또는 한글만)으로 일관성을 유지하는가? +- [ ] "Before/After" 등 상태 라벨이 영문 단독이 아닌, 한글-영문 병기 형식인가? +- [ ] 화살표가 1개 화살표 = 1개 의미로 단순·명확한가? 나선·곡선 등이 의미 없이 결합되어 있지 않은가? +- [ ] 채널 컬러(#E0E5EB 배경, #333333 텍스트, #6B8FAF 강조, #8B9BA8 보조)가 적용되었는가? +- [ ] 워터마크 영역에 다른 텍스트가 침범하지 않았는가? + +--- + +## Exceptional Fallback — Text-Stripped Generation (예외 시에만) + +> **주의**: 본 워크플로는 **프롬프트 강화로도 환각이 해결되지 않는 예외적 경우**에만 사용합니다. 1차 방어(프롬프트 강화)가 항상 우선입니다. + +다음 상황에 한해 텍스트를 완전히 분리하는 2단계 워크플로를 검토합니다: + +- 프롬프트 강화를 2~3회 반복했는데도 동일 환각이 잔존하는 경우 +- 의료광고 심의·법무 검토가 임박해 즉시 안전한 출력이 필요한 경우 +- 텍스트 라벨이 매우 많아(10개 이상) 프롬프트로 통제하기 비효율적인 복잡 다이어그램 + +### Step 1: WebApp에서 라인아트만 생성 + +한글 타이틀과 라벨을 모두 빼고, **순수 해부학 라인아트만 생성**하도록 프롬프트 조정합니다. 환각 텍스트의 침투 표면 자체가 사라집니다. + +### Step 2: Canva 또는 Figma에서 텍스트 오버레이 + +한글 타이틀, 한영 병기 라벨, 화살표, 강조 라인을 Canva/Figma에서 직접 입력합니다. 채널 컬러 팔레트와 폰트(Noto Sans KR / Pretendard)도 이 단계에서 적용합니다. + +> **JAMIE 워터마크는 항상 이 단계에서 추가합니다** (우하단, `#6d7856`, 반투명) — 워터마크는 본 2단계 워크플로 사용 여부와 관계없이 모든 이미지의 마지막 단계입니다. + +--- + +## Case Log + +발생한 환각 사례를 기록하여 향후 부정 프롬프트의 예시로 재사용합니다. + +### Case 1 — 2025-05-12: 결막 절개 도식 (8편) + +| 항목 | 내용 | +|------|------| +| 포스트 | 눈밑지방 재배치 vs 제거 — 다크서클 수술, 무엇이 다를까요? | +| 이미지 | `transconjunctival-approach-anatomy-04` | +| v1 환각 | "산중 Blepharoplasty", "Ecolomtira", "Blephnoplasty", 속눈썹 라벨 중복, 4모서리 메뉴 반복 | +| v2 잔존 | 우상단 "Blepharoplasty \| Rhinoplasty \| Anti-aging" (부정 프롬프트 후에도 1회 잔존) | +| 학습 | 추상적 카테고리 부정보다 **구체적 문자열 호명**이 효과적. 강하게 학습된 패턴은 Canva 후처리로 마무리 정리 | +| 등재된 패턴 | Pattern 1, 2, 3, 4, 5, 6 | + +### Case 2 — 2025-05-12: 다크서클 유형 3분류 도식 (8편) + +| 항목 | 내용 | +|------|------| +| 포스트 | 눈밑지방 재배치 vs 제거 — 다크서클 수술, 무엇이 다를까요? | +| 이미지 | `dark-circle-types-anatomy-02` | +| v1 환각 | (1) "눈물술 단년 (shadow line)" — 존재하지 않는 한국어 합성어
(2) "옥건 (Pygmentation)" — 무의미 한글 + 영문 오타 동시 발생
(3) 동일 영역에 라벨 2개 중복 ("색소성"과 "옥건"이 같은 음영 가리킴)
(4) "정맥 (Vein)", "피부 (Skin)" 좌우 양측 중복 라벨
(5) "Inferior Orbital rim" 영문 단독 표기 — 라벨 형식 불일치 | +| 핵심 학습 | **영어 서술 표현("shadow line", "thin layer")에 강제로 한국어 라벨링하면 모델은 한국어 가짜 합성어를 만든다.** 라벨이 필요 없는 시각 요소(음영, 색조)는 라벨링 자체를 생략하거나, 모든 라벨의 완성된 한글-영문 문자열을 프롬프트에 직접 적시해야 함 | +| 등재된 패턴 | Pattern 3 (재발), Pattern 7, 8, 9, 10 (신규) | + +### Case 3 — 2025-05-13: 제거 vs 재배치 비교 도식 (8편) + +| 항목 | 내용 | +|------|------| +| 포스트 | 눈밑지방 재배치 vs 제거 — 다크서클 수술, 무엇이 다를까요? | +| 이미지 | `under-eye-fat-removal-vs-repositioning-comparison-03` | +| v1 환각 | (1) **Pattern 1 재발**: 상단 중앙 "Blepharoplasty \| Rhinoplasty \| Anti-aging" 클리닉 메뉴 (Image #4와 동일 문자열)
(2) **Pattern 10 재발**: "Before" / "After" 영문 단독 라벨 — 다른 라벨은 한글(영문) 형식인데 이 라벨만 형식 위반
(3) **Pattern 11 신규**: 좌측 컬럼 화살표가 "나선형 + 곡선" 복합 기호로 결합되어 "제거" 동작이 시각적으로 불명확 | +| v1 차단된 환각 | Korean nonsense compound, Phantom Korean Translation, Non-existent English, Bilateral label duplication, 4모서리 메뉴 반복 — 모두 발생 안 함 | +| 핵심 학습 | **정식 한국어 의학 용어가 있는 명사형 라벨만 사용하면 Korean 환각이 발생하지 않는다.** 단, 동작(verb) 묘사("being removed")는 화살표 환각(Pattern 11)을 유발하므로 **화살표는 기하학적으로 정량 명시**해야 함. Pattern 1(클리닉 헤더)은 모델에 매우 강하게 학습되어 어떤 프롬프트에서도 재발 위험이 큼 | +| **v2 결과** | ✅ **완전 차단 성공 (2025-05-13)** — 클리닉 메뉴 제거, "수술 전 (Before)" / "수술 후 (After)" 한글-영문 병기, 단일 직선 화살표 (좌측) + 단일 곡선 화살표 (우측), 양 컬럼 라벨 구조 균형 (공통 + 차별) 모두 정확 적용. 단, Column 1 After 일러스트의 윤곽선 완결성은 디자인 품질 측면에서 후처리 검토 가능 | +| 등재된 패턴 | Pattern 1, 10 (재발), Pattern 11 (신규) | + +### Case 4 — 2025-05-13: 다크서클 유형별 권장 접근법 인포그래픽 (8편) 🔴 HIGH SEVERITY + +| 항목 | 내용 | +|------|------| +| 포스트 | 눈밑지방 재배치 vs 제거 — 다크서클 수술, 무엇이 다를까요? | +| 이미지 | `dark-circle-treatment-summary-infographic-05` | +| v1 환각 | **Pattern 12 신규 발견** — 행 라벨 영문 번역에 환각 헤더 침투:
(1) "구조적 다크서클 (Blepharoplasty)" — Blepharoplasty는 안검성형술, 콘텐츠와 무관
(2) "색소성 다크서클 (Rihinoplasty)" — Rhinoplasty는 코 성형술 + "Rihinoplasty" 오타
(3) "혈관성 다크서클 (Anti-aging)" — Anti-aging은 일반 카테고리, 콘텐츠와 무관 | +| v1 차단된 환각 | 클리닉 헤더 메뉴, 한글 환각, 라벨 중복 — 모두 발생 안 함 | +| 위험도 | 🔴 **HIGH** — 단순 시각 노이즈가 아니라 **콘텐츠 본문의 의학적 오정보**. 의료광고 심의 즉시 거절 사유 + 독자에게 잘못된 의학 지식 전달 위험. 시각 검사만으로는 발견되지 않으며 의학 용어 검증을 통해서만 식별 가능 | +| 핵심 학습 | **빈 영문 괄호 자리를 만들면 모델이 이전에 학습한 환각 헤더 문자열로 자동 채움.** "구조적 다크서클" 같이 영문 번역이 명시되지 않은 한글 라벨에 모델이 "Korean (English)" 형식을 자의적으로 적용하고, 빈 영문 자리에 시리즈 전반에서 반복 학습한 "Blepharoplasty/Rhinoplasty/Anti-aging"을 채워 넣음 | +| **v2 결과** | ✅ **완전 차단 성공 (2025-05-13)** — 모든 행 라벨 영문 번역이 의학적으로 정확함 ((Structural), (Pigmentation), (Vascular)). 컬럼 헤더·9개 셀 콘텐츠도 한글 단독 유지. 강조 셀 대각선 배치(R1C1, R2C2, R3C3) 정확. **방어의 핵심 4 원칙의 결정적 입증 사례** | +| 등재된 패턴 | Pattern 3 (재발 — "Rihinoplasty" 오타), Pattern 12 (신규) | + +> 새 케이스 발생 시 본 섹션에 같은 형식으로 추가합니다. + +--- + +## Pattern Effectiveness Tracking + +각 패턴이 v2 프롬프트로 얼마나 효과적으로 차단되었는지 추적합니다. 향후 새 케이스 발생 시 본 표를 업데이트하여 패턴별 통제 강도를 평가합니다. + +### v2 차단 성공률 누적 + +| Pattern | 위험도 | 발생 케이스 | v2 차단 결과 | 통제 강도 | +|---------|------|------------|------------|----------| +| Pattern 1 (Phantom Clinic Header) | 중 | Case 1, 3, 4 | Image #3, #5 v2에서 100% 차단 | 🟢 안정 | +| Pattern 2 (Hallucinated Korean Strings) | 중 | Case 1 | v2에서 차단 | 🟢 안정 | +| Pattern 3 (Non-existent English Words) | 중 | Case 1, 2, 4 | v2에서 차단 | 🟢 안정 | +| Pattern 4 (Label Duplication) | 중 | Case 1 | v2에서 차단 | 🟢 안정 | +| Pattern 5 (Title Spread Across Corners) | 저 | Case 1 | v2에서 차단 | 🟢 안정 | +| Pattern 6 (Color Confusion) | 저 | Case 1 | v2에서 차단 | 🟢 안정 | +| Pattern 7 (Phantom Korean Translation) | 중 | Case 2 | v2에서 차단 | 🟢 안정 | +| Pattern 8 (Korean Nonsense Compound) | 중 | Case 2 | v2에서 차단 | 🟢 안정 | +| Pattern 9 (Bilateral Label Duplication) | 중 | Case 2 | v2에서 차단 | 🟢 안정 | +| Pattern 10 (Inconsistent Label Format) | 중 | Case 2, 3 | Image #3 v2에서 100% 차단 | 🟢 안정 | +| Pattern 11 (Ambiguous Action Arrows) | 중 | Case 3 | Image #3 v2에서 100% 차단 | 🟢 안정 | +| **Pattern 12 (Cross-Contamination)** | **🔴 최고** | **Case 4** | **Image #5 v2에서 100% 차단** | 🟢 안정 (검증됨) | + +### 종합 평가 + +- **검증된 v2 프롬프트**: 3건 (Image #3, #4, #5) +- **모든 등재 패턴의 v2 차단율**: 100% +- **가장 위험한 패턴**: Pattern 12 (Cross-Contamination) — v2 차단 검증 완료 + +### 향후 새 패턴 발견 시 등재 절차 + +1. 새 패턴 발견 → Failure Pattern Catalog에 Pattern N으로 등재 +2. Case Log에 발생 케이스 추가 +3. Defensive Prompt Block에 새 부정 예시 추가 +4. Verification Checklist에 새 점검 항목 추가 +5. 필요 시 Core Principle 추가 +6. 본 Pattern Effectiveness Tracking 표에 신규 행 추가 +7. v2 프롬프트 작성 후 검증 → 차단 성공 시 통제 강도 🟢 표시 + +--- + +--- + +## Quick Patch for Other Image Prompts in the Same Article + +본 가이드의 "Defensive Prompt Block"은 같은 포스트의 다른 이미지(예: Image #2 유형 분류, Image #3 비교 도식, Image #5 요약 표)에도 동일하게 일괄 적용 가능합니다. 새 도식 프롬프트 작성 시 각 프롬프트 마지막에 본 블록을 그대로 붙여 넣고, 해당 이미지에서 추가로 차단해야 할 항목만 보완하면 됩니다.