숙련된 프롬프트 엔지니어들도 예측 가능한 함정에 빠지곤 합니다. 좋은 소식은 이러한 패턴을 인식하면 쉽게 피할 수 있다는 것입니다. 이 장에서는 가장 흔한 함정들을 살펴보고, 왜 발생하는지 설명하며, 이를 피하기 위한 구체적인 전략을 제시합니다.

<Callout type="warning" title="함정이 중요한 이유">
하나의 함정만으로도 강력한 AI가 답답한 도구로 전락할 수 있습니다. 이러한 패턴을 이해하는 것이 "AI는 나한테 안 맞아"와 "AI가 내 업무 방식을 완전히 바꿨어" 사이의 차이를 만드는 경우가 많습니다.
</Callout>

## 모호함의 함정

**패턴**: 자신이 원하는 것을 알고 있으니 AI도 알아낼 것이라고 가정합니다. 하지만 모호한 프롬프트는 모호한 결과를 만들어냅니다.

<Compare 
  before={{ label: "모호한 프롬프트", content: "마케팅에 대해 뭔가 써줘." }}
  after={{ label: "구체적인 프롬프트", content: "마케팅 매니저를 대상으로 B2B SaaS 기업의 브랜드 일관성의 중요성에 관한 300단어 분량의 LinkedIn 게시물을 작성해주세요. 전문적이면서도 친근한 톤을 사용하고, 구체적인 예시를 하나 포함해주세요." }}
/>

**왜 발생하는가**: 우리는 "당연한" 것으로 여겨지는 세부사항을 자연스럽게 생략합니다. 하지만 여러분에게 당연한 것이 여러분의 상황, 청중, 목표에 대한 맥락이 없는 모델에게는 당연하지 않습니다.

<TryIt 
  title="구체성 향상 도구"
  description="모호한 프롬프트를 구체적으로 만들어보세요. 세부사항을 추가하면 결과의 품질이 어떻게 변하는지 확인해보세요."
  prompt={`개선이 필요한 모호한 프롬프트가 있습니다.

원래의 모호한 프롬프트: "\${vaguePrompt}"

다음을 추가하여 이 프롬프트를 구체적으로 만들어주세요:
1. **청중**: 누가 이것을 읽거나 사용할 것인가?
2. **형식**: 어떤 구조를 가져야 하는가?
3. **길이**: 얼마나 길어야 하는가?
4. **톤**: 어떤 목소리나 스타일인가?
5. **맥락**: 상황이나 목적은 무엇인가?
6. **제약조건**: 반드시 포함해야 할 것이나 피해야 할 것은 무엇인가?

이 모든 세부사항을 포함하여 프롬프트를 다시 작성해주세요.`}
/>

## 과부하의 함정

**패턴**: 한 번의 프롬프트로 모든 것을 얻으려고 합니다—포괄적이고, 재미있고, 전문적이고, 초보자 친화적이고, 고급이고, SEO 최적화되고, 짧은 것을 동시에 원합니다. 결과는? AI가 요구사항의 절반을 놓치거나 혼란스러운 결과물을 만들어냅니다.

<Compare 
  before={{ label: "과부하된 프롬프트", content: "AI에 대한 블로그 게시물을 써줘. SEO 최적화되어야 하고 코드 예시도 포함하고 재미있으면서도 전문적이고 초보자를 대상으로 하지만 고급 팁도 있어야 하고 500단어인데 포괄적이어야 하고 우리 제품도 언급하고 행동 촉구도 있어야 해..." }}
  after={{ label: "집중된 프롬프트", content: "초보자에게 AI를 소개하는 500단어 분량의 블로그 게시물을 작성해주세요.\n\n요구사항:\n1. 하나의 핵심 개념을 명확하게 설명\n2. 간단한 코드 예시 하나 포함\n3. 행동 촉구로 마무리\n\n톤: 전문적이면서도 친근하게" }}
/>

**왜 발생하는가**: 여러 번의 상호작용에 대한 두려움, 또는 한 번에 "모든 것을 담고" 싶은 욕구 때문입니다. 하지만 인지 과부하는 인간에게 영향을 미치듯이 AI에게도 영향을 미칩니다—너무 많은 경쟁하는 요구사항은 누락된 항목으로 이어집니다.

<InfoGrid items={[
  { label: "요구사항 제한하기", description: "프롬프트당 3-5개의 핵심 요구사항으로 제한하세요", example: "집중할 것: 청중, 형식, 길이, 하나의 핵심 제약조건", exampleType: "text", color: "green" },
  { label: "번호 매긴 목록 사용", description: "구조가 우선순위를 명확하게 합니다", example: "1. 반드시 X가 있어야 함, 2. Y가 있으면 좋음, 3. Z는 선택사항", exampleType: "text", color: "green" },
  { label: "프롬프트 연결", description: "복잡한 작업을 단계별로 나누세요", example: "먼저: 개요. 그다음: 섹션 1 초안. 그다음: 섹션 2 초안.", exampleType: "text", color: "green" },
  { label: "무자비하게 우선순위 정하기", description: "필수적인 것 vs. 있으면 좋은 것은 무엇인가?", example: "단 하나만 제대로 할 수 있다면, 그것은 무엇일까?", color: "green" }
]} />

<Callout type="tip" title="프롬프트 체이닝 배우기">
단일 프롬프트가 과부하될 때, [프롬프트 체이닝](/book/11-prompt-chaining)이 종종 해결책입니다. 복잡한 작업을 집중된 프롬프트의 연속으로 나누어 각 단계가 이전 단계를 기반으로 구축되도록 합니다.
</Callout>

## 가정의 함정

**패턴**: "이전에" 보여준 것을 참조하거나 AI가 여러분의 프로젝트, 회사, 또는 이전 대화를 알고 있다고 가정합니다. 하지만 AI는 알지 못합니다.

<Compare 
  before={{ label: "맥락을 가정함", content: "이전에 보여준 함수에 에러 처리를 추가해줘." }}
  after={{ label: "맥락을 제공함", content: "이 함수에 에러 처리를 추가해주세요:\n\n```python\ndef calculate_total(items):\n    return sum(item.price for item in items)\n```\n\n빈 리스트와 잘못된 항목에 대한 try/except를 추가해주세요." }}
/>

**왜 발생하는가**: AI 대화는 동료와 대화하는 것처럼 느껴집니다. 하지만 동료와 달리, 대부분의 AI 모델은 세션 간에 영구적인 기억이 없습니다—각 대화는 새로 시작됩니다.

<TryIt 
  title="맥락 완전성 검사"
  description="프롬프트를 보내기 전에 필요한 모든 맥락이 포함되어 있는지 확인하는 데 사용하세요."
  prompt={`이 프롬프트에 누락된 맥락이 있는지 검토해주세요:

"\${promptToCheck}"

다음을 확인해주세요:
1. **참조되었지만 포함되지 않은 것**: "그 코드," "그 문서," "이전에," 또는 "위에"를 언급하면서 실제 내용은 포함하지 않았나요?

2. **가정된 지식**: 특정 프로젝트, 회사, 또는 상황에 대한 지식을 가정하고 있나요?

3. **암묵적 요구사항**: 형식, 길이, 또는 스타일에 대해 명시되지 않은 기대가 있나요?

4. **누락된 배경**: 똑똑한 낯선 사람이 무엇을 요청하는지 이해할 수 있을까요?

누락된 것을 나열하고 어떻게 추가할지 제안해주세요.`}
/>

## 유도 질문의 함정

**패턴**: 여러분의 가정을 내포하는 방식으로 질문을 구성하여, 통찰력 대신 확인을 받게 됩니다.

<Compare 
  before={{ label: "유도 질문", content: "왜 Python이 데이터 과학을 위한 최고의 프로그래밍 언어야?" }}
  after={{ label: "중립적 질문", content: "데이터 과학 작업에 대해 Python, R, Julia를 비교해줘. 각각의 장단점은 무엇이야? 언제 하나를 다른 것보다 선택해야 할까?" }}
/>

**왜 발생하는가**: 우리는 종종 정보가 아닌 확인을 구합니다. 우리의 표현 방식이 무의식적으로 기대하거나 원하는 답으로 밀어붙입니다.

<TryIt 
  title="편향 감지기"
  description="프롬프트에 숨겨진 편향과 유도 표현이 있는지 확인하세요."
  prompt={`이 프롬프트의 편향과 유도 표현을 분석해주세요:

"\${promptToAnalyze}"

다음을 확인해주세요:
1. **내포된 가정**: 질문이 무언가가 사실이라고 가정하고 있나요?
2. **유도적 표현**: "X가 왜 좋아?"는 X가 좋다고 가정하고 있지 않나요?
3. **누락된 대안**: 다른 가능성을 무시하고 있나요?
4. **확인 추구**: 분석이 아닌 검증을 요청하고 있나요?

중립적이고 개방형으로 프롬프트를 다시 작성해주세요.`}
/>

## 모든 것을 신뢰하는 함정

**패턴**: AI 응답이 자신감 있고 권위적으로 들리기 때문에 검증 없이 받아들입니다. 하지만 자신감이 정확성을 의미하지는 않습니다.

<InfoGrid items={[
  { label: "검토되지 않은 콘텐츠", description: "팩트체크 없이 AI 생성 텍스트를 게시함", example: "조작된 통계나 가짜 인용문이 포함된 블로그 게시물", exampleType: "text", color: "red" },
  { label: "테스트되지 않은 코드", description: "테스트 없이 프로덕션에서 AI 코드를 사용함", example: "보안 취약점, 엣지 케이스 실패, 미묘한 버그", exampleType: "text", color: "red" },
  { label: "맹목적 결정", description: "AI 분석에만 기반하여 중요한 선택을 함", example: "환각으로 만들어진 시장 데이터에 기반한 비즈니스 전략", exampleType: "text", color: "red" }
]} />

**왜 발생하는가**: AI는 완전히 틀렸을 때도 자신감 있게 들립니다. 우리는 또한 "자동화 편향"—컴퓨터 출력을 실제보다 더 신뢰하는 경향에 취약합니다.

<TryIt 
  title="검증 프롬프트"
  description="AI가 자체적인 불확실성과 잠재적 오류를 표시하도록 하는 데 사용하세요."
  prompt={`다음에 대한 정보가 필요합니다: \${topic}

중요: 응답 후에 다음을 포함하는 "검증 노트" 섹션을 추가해주세요:

1. **신뢰도 수준**: 이 정보에 대해 얼마나 확신하시나요? (높음/중간/낮음)

2. **잠재적 오류**: 이 응답의 어떤 부분이 틀리거나 오래됐을 가능성이 가장 높나요?

3. **검증할 것**: 사용자가 독립적으로 팩트체크해야 할 구체적인 주장은 무엇인가요?

4. **확인할 출처**: 사용자가 이 정보를 어디서 검증할 수 있나요?

한계에 대해 솔직해주세요. 틀린 것에 대해 자신감 있게 들리는 것보다 불확실성을 표시하는 것이 더 좋습니다.`}
/>

## 한 번에 끝내기 함정

**패턴**: 하나의 프롬프트를 보내고, 평범한 결과를 받은 후 AI가 여러분의 사용 사례에는 "작동하지 않는다"고 결론 내립니다. 하지만 훌륭한 결과는 거의 항상 반복을 필요로 합니다.

<Compare 
  before={{ label: "한 번에 끝내기 사고", content: "평범한 출력 → \"AI는 이걸 못해\" → 포기" }}
  after={{ label: "반복적 사고", content: "평범한 출력 → 무엇이 잘못됐는지 분석 → 프롬프트 개선 → 더 나은 출력 → 다시 개선 → 훌륭한 출력" }}
/>

**왜 발생하는가**: 우리는 AI가 첫 번째 시도에서 우리의 마음을 읽기를 기대합니다. Google 검색으로 반복할 것을 기대하지 않으면서, 어떻게든 AI에게는 완벽을 기대합니다.

<TryIt 
  title="반복 도우미"
  description="첫 번째 결과가 만족스럽지 않을 때, 체계적으로 개선하는 데 사용하세요."
  prompt={`원래 프롬프트는:
"\${originalPrompt}"

받은 출력은:
"\${outputReceived}"

문제점:
"\${whatIsWrong}"

반복을 도와주세요:

1. **진단**: 왜 원래 프롬프트가 이런 결과를 만들었나요?

2. **누락된 요소**: 명시해야 했는데 명시하지 않은 것은 무엇인가요?

3. **수정된 프롬프트**: 이러한 문제를 해결하도록 프롬프트를 다시 작성해주세요.

4. **주의할 점**: 새 출력에서 무엇을 확인해야 하나요?`}
/>

## 형식 무시의 함정

**패턴**: AI가 무엇을 말해야 하는지에 집중하지만, 어떻게 형식화해야 하는지 명시하는 것을 잊습니다. 그러면 JSON이 필요할 때 산문을 받거나, 글머리 기호가 필요할 때 텍스트 벽을 받게 됩니다.

<Compare 
  before={{ label: "형식 미지정", content: "이 텍스트에서 핵심 데이터를 추출해줘." }}
  after={{ label: "형식 지정", content: "이 텍스트에서 핵심 데이터를 JSON으로 추출해주세요:\n\n{\n  \"name\": string,\n  \"date\": \"YYYY-MM-DD\",\n  \"amount\": number,\n  \"category\": string\n}\n\n설명 없이 JSON만 반환해주세요." }}
/>

**왜 발생하는가**: 우리는 구조보다 내용에 집중합니다. 하지만 출력을 프로그래밍 방식으로 파싱하거나 특정 위치에 붙여넣어야 한다면, 형식은 내용만큼 중요합니다.

<TryIt 
  title="형식 명세 빌더"
  description="필요한 모든 출력 유형에 대한 명확한 형식 명세를 생성합니다."
  prompt={`특정 형식의 AI 출력이 필요합니다.

**요청하는 것**: \${taskDescription}
**출력 사용 방법**: \${intendedUse}
**선호하는 형식**: \${formatType} (JSON, Markdown, CSV, 글머리 기호 등)

프롬프트에 추가할 수 있는 형식 명세를 생성해주세요, 다음을 포함하여:

1. **정확한 구조** - 필드 이름과 타입 포함
2. **예시 출력** - 형식을 보여주는 예시
3. **제약조건** (예: "설명 없이 JSON만 반환")
4. **엣지 케이스** (데이터가 누락된 경우 출력할 내용)`}
/>

## 컨텍스트 윈도우의 함정

**패턴**: 방대한 문서를 붙여넣고 포괄적인 분석을 기대합니다. 하지만 모델에는 한계가 있습니다—긴 입력에서 잘리거나, 집중력을 잃거나, 중요한 세부사항을 놓칠 수 있습니다.

<InfoGrid items={[
  { label: "한계 파악하기", description: "모델마다 컨텍스트 윈도우가 다릅니다", example: "GPT-4: 128K 토큰, Claude: 200K 토큰, Gemini: 1M 토큰", exampleType: "text", color: "blue" },
  { label: "큰 입력 분할하기", description: "문서를 관리 가능한 섹션으로 나누세요", example: "챕터를 별도로 분석한 다음 종합", exampleType: "text", color: "blue" },
  { label: "중요한 정보 앞에 배치", description: "프롬프트 초반에 핵심 맥락을 넣으세요", example: "핵심 요구사항을 먼저, 배경 세부사항은 나중에", exampleType: "text", color: "blue" },
  { label: "불필요한 것 제거", description: "불필요한 맥락을 삭제하세요", example: "전체 문서가 정말 필요한가요, 아니면 관련 섹션만 필요한가요?", exampleType: "text", color: "blue" }
]} />

<TryIt 
  title="문서 분할 전략"
  description="컨텍스트 한계를 초과하는 문서를 처리하기 위한 전략을 얻으세요."
  prompt={`분석할 큰 문서가 있습니다:

**문서 유형**: \${documentType}
**대략적인 길이**: \${documentLength}
**추출/분석해야 할 것**: \${analysisGoal}
**사용 중인 모델**: \${modelName}

분할 전략을 만들어주세요:

1. **나누는 방법**: 이 문서 유형에 대한 논리적 분할 지점
2. **각 청크에 포함할 것**: 독립적 분석에 필요한 맥락
3. **종합하는 방법**: 여러 청크의 결과를 결합하기
4. **주의할 점**: 청크에 걸쳐 있을 수 있는 정보`}
/>

## 의인화의 함정

**패턴**: AI를 인간 동료처럼 대합니다—작업을 "즐길" 것으로 기대하거나, 여러분을 기억하거나, 결과에 관심을 가질 것으로 기대합니다. AI는 그렇지 않습니다.

<Compare 
  before={{ label: "의인화됨", content: "이 창의적인 프로젝트를 즐길 거라고 확신해! 사람들을 돕는 것을 좋아한다는 걸 알아, 이건 개인적으로 정말 중요해." }}
  after={{ label: "명확하고 직접적", content: "다음 사양으로 창의적인 단편 소설을 작성해주세요:\n- 장르: 공상과학\n- 길이: 500단어\n- 톤: 희망적\n- 필수 포함: 반전 결말" }}
/>

**왜 발생하는가**: AI 응답이 너무 인간 같아서 우리는 자연스럽게 사회적 패턴에 빠집니다. 하지만 감정적 호소는 AI가 더 노력하게 만들지 않습니다—명확한 지시가 그렇게 합니다.

<Callout type="info" title="실제로 도움이 되는 것">
감정적 호소 대신 다음에 집중하세요: 명확한 요구사항, 좋은 예시, 구체적인 제약조건, 명시적인 성공 기준. 이것들이 출력을 개선합니다. "정말 열심히 해줘"는 그렇지 않습니다.
</Callout>

## 보안 무시의 함정

**패턴**: 작업을 완료하려는 급함에 프롬프트에 민감한 정보를 포함합니다—API 키, 비밀번호, 개인 데이터, 또는 독점 정보.

<InfoGrid items={[
  { label: "프롬프트의 비밀", description: "API 키, 비밀번호, 토큰을 프롬프트에 붙여넣음", example: "\"이 API 키를 사용해: sk-abc123...\"", color: "red" },
  { label: "개인 데이터", description: "서드파티 서버로 전송되는 PII를 포함함", example: "프롬프트에 고객 이름, 이메일, 주소 포함", exampleType: "text", color: "red" },
  { label: "정제되지 않은 사용자 입력", description: "사용자 입력을 프롬프트에 직접 전달함", example: "프롬프트 인젝션 취약점", exampleType: "text", color: "red" },
  { label: "독점 정보", description: "영업 비밀이나 기밀 데이터", example: "내부 전략, 미공개 제품 세부사항", exampleType: "text", color: "red" }
]} />

**왜 발생하는가**: 보안보다 기능에 집중합니다. 하지만 기억하세요: 프롬프트는 종종 외부 서버로 전송되고, 로그될 수 있으며, 학습에 사용될 수 있습니다.

<TryIt 
  title="보안 검토"
  description="보내기 전에 프롬프트의 보안 문제를 확인하세요."
  prompt={`이 프롬프트의 보안 문제를 검토해주세요:

"\${promptToReview}"

다음을 확인해주세요:

1. **노출된 비밀**: API 키, 비밀번호, 토큰, 자격 증명
2. **개인 데이터**: 이름, 이메일, 주소, 전화번호, 주민등록번호
3. **독점 정보**: 영업 비밀, 내부 전략, 기밀 데이터
4. **인젝션 위험**: 프롬프트를 조작할 수 있는 사용자 입력

발견된 각 문제에 대해:
- 위험 설명
- 정보를 삭제하거나 보호하는 방법 제안
- 더 안전한 대안 권장`}
/>

## 환각 무시의 함정

**패턴**: 인용, 통계, 또는 구체적인 사실을 요청하고 AI가 자신감 있게 말했기 때문에 그것이 진짜라고 가정합니다. 하지만 AI는 정기적으로 그럴듯하게 들리는 정보를 만들어냅니다.

<Compare 
  before={{ label: "맹목적으로 신뢰", content: "출처와 함께 원격 근무 생산성에 대한 통계 5가지를 알려줘." }}
  after={{ label: "한계 인정", content: "원격 근무 생산성에 대해 우리가 알고 있는 것은 무엇인가요? 언급하는 통계가 잘 확립된 발견인지 더 불확실한 것인지 알려주세요. 구체적인 숫자는 독립적으로 검증하겠습니다." }}
/>

**왜 발생하는가**: AI는 권위 있게 들리는 텍스트를 생성합니다. AI는 자신이 만들어내고 있는지 "알지" 못합니다—검증된 사실을 검색하는 것이 아니라 가능성 있는 텍스트를 예측하고 있습니다.

<TryIt 
  title="환각 방지 쿼리"
  description="환각 위험을 최소화하고 불확실성을 표시하도록 프롬프트를 구성하세요."
  prompt={`다음에 대한 정보가 필요합니다: \${topic}

오류를 최소화하기 위해 다음 가이드라인을 따라주세요:

1. **잘 확립된 사실을 고수하세요**. 검증하기 어려운 모호한 주장을 피하세요.

2. **불확실성을 표시하세요**. 확신이 없다면 "저는 ~라고 생각합니다..." 또는 "이것은 검증이 필요할 수 있습니다..."라고 말해주세요.

3. **출처를 만들어내지 마세요**. 특정 논문, 책, 또는 URL이 존재한다고 확신하지 않는 한 인용하지 마세요. 대신 이러한 유형의 정보를 어디서 찾을 수 있는지 설명해주세요.

4. **지식 한계를 인정하세요**. 제 질문이 학습 데이터 이후의 사건에 관한 것이라면 그렇게 말해주세요.

5. **사실과 추론을 분리하세요**. "X는 사실이다"와 "Y를 기반으로 X가 사실일 가능성이 높다"를 명확하게 구분해주세요.

이제 이 가이드라인을 염두에 두고: \${actualQuestion}`}
/>

## 전송 전 체크리스트

중요한 프롬프트를 보내기 전에 이 빠른 체크리스트를 실행하세요:

<Checklist 
  title="프롬프트 품질 검사"
  items={[
    { text: "충분히 구체적인가? (모호하지 않음)" },
    { text: "집중되어 있는가? (요구사항이 과부하되지 않음)" },
    { text: "필요한 모든 맥락이 포함되어 있는가?" },
    { text: "질문이 중립적인가? (유도하지 않음)" },
    { text: "출력 형식을 지정했는가?" },
    { text: "입력이 컨텍스트 한계 내에 있는가?" },
    { text: "보안 문제가 있는가?" },
    { text: "출력을 검증할 준비가 되어 있는가?" },
    { text: "필요하다면 반복할 준비가 되어 있는가?" }
  ]}
/>

<Quiz 
  question="중요한 결정에 AI를 사용할 때 가장 위험한 함정은 무엇인가요?"
  options={[
    "모호한 프롬프트 사용",
    "검증 없이 AI 출력을 신뢰함",
    "출력 형식을 지정하지 않음",
    "요구사항으로 프롬프트를 과부하함"
  ]}
  correctIndex={1}
  explanation="모든 함정이 문제를 일으키지만, 검증 없이 AI 출력을 신뢰하는 것이 가장 위험합니다. 거짓 정보 게시, 버그가 있는 코드 배포, 또는 환각 데이터에 기반한 결정으로 이어질 수 있기 때문입니다. AI는 완전히 틀렸을 때도 자신감 있게 들리기 때문에, 중요한 사용 사례에서는 검증이 필수적입니다."
/>

## 프롬프트 분석하기

AI를 사용하여 프롬프트 품질에 대한 즉각적인 피드백을 받으세요. 어떤 프롬프트든 붙여넣으면 상세한 분석을 받을 수 있습니다:

<PromptAnalyzer 
  title="프롬프트 품질 분석기"
  description="명확성, 구체성, 개선 제안에 대한 AI 기반 피드백을 받으세요"
  defaultPrompt="내 코드 좀 도와줘"
/>

## 이 프롬프트 디버깅하기

이 프롬프트에서 무엇이 잘못되었는지 찾을 수 있나요?

<PromptDebugger
  title="함정 찾기"
  badPrompt="기술에 대한 블로그 게시물을 써줘. 키워드로 SEO 최적화되어야 하고 재미있으면서도 전문적이고 코드 예시도 포함하고 초보자를 대상으로 하지만 고급 팁도 있어야 하고 우리 제품 TechCo도 언급하고 사회적 증거와 행동 촉구도 있어야 하고 500단어인데 포괄적이어야 해."
  badOutput="여기 기술에 대한 블로그 게시물 초안이 있습니다...

[모든 것을 하려고 하지만 어느 것도 제대로 해내지 못하는 일반적이고 집중되지 않은 콘텐츠. 톤이 캐주얼과 기술적 사이에서 어색하게 전환됨. 요구사항의 절반이 누락됨.]"
  options={[
    { id: "vague", label: "프롬프트가 너무 모호함", isCorrect: false, explanation: "사실 이 프롬프트에는 많은 구체적인 요구사항이 있습니다. 문제는 반대입니다—너무 적은 요구사항이 아니라 너무 많은 요구사항입니다." },
    { id: "overload", label: "프롬프트가 너무 많은 경쟁 요구사항으로 과부하됨", isCorrect: true, explanation: "정답입니다! 이 프롬프트는 SEO + 재미 + 전문적 + 코드 + 초보자 + 고급 + 제품 언급 + 사회적 증거 + CTA + 길이 제약을 요청합니다. 10개 이상의 경쟁하는 요구사항입니다! AI가 모두를 만족시킬 수 없어서 모든 것을 평범하게 합니다. 해결책: 이것을 여러 개의 집중된 프롬프트로 나누세요." },
    { id: "format", label: "출력 형식이 지정되지 않음", isCorrect: false, explanation: "더 구체적인 형식이 도움이 되겠지만, 주요 문제는 요구사항 과부하입니다. 너무 많은 것을 요청하는 것을 형식으로 해결할 수 없습니다." },
    { id: "context", label: "맥락이 충분하지 않음", isCorrect: false, explanation: "이 프롬프트에는 실제로 많은 맥락이 있습니다—어쩌면 너무 많을 수도 있습니다! 문제는 한 번에 너무 많은 목표를 달성하려고 한다는 것입니다." }
  ]}
  hint="이 단일 프롬프트에 몇 개의 다른 요구사항이 담겨 있는지 세어보세요."
/>
