프롬프팅
verified · type: reference · verified: 2026-07 · review: 90d · updated: 2026-07-25 · [prompting]

프롬프팅 안티패턴 카탈로그

프롬프트가 기대대로 안 될 때 여는 문서. "옛날 조언 그대로 썼는데 왜 이상하지" 를 진단한다. 증상 → 원인 → 대신 이렇게, 3단으로.

⚠️ 핵심 프레임: 2023~2024 의 프롬프트 정석 중 상당수가 현행 모델(특히 Opus 4.5/4.6 이상, 추론 모델)에서 뒤집혔다. 강한 지시가 이제 과잉반응을, 수동 CoT 가 이제 중복 비용을 만든다. 아래 표는 "그때는 맞고 지금은 틀린" 것을 먼저 배치했다.


1. 지시 강도 — 강하게 = 좋다 (뒤집힘)

증상 왜 생기나 대신 이렇게
툴/스킬을 안 써도 될 때 자꾸 부른다 (오버트리거) Opus 4.5/4.6 이상은 시스템 프롬프트 반응성이 올라갔다. 예전 undertrigger 를 막으려 넣은 공격적 문구가 이제 과잉발동한다 (verified 2026-07) CRITICAL: You MUST use this tool when...Use this tool when... 로 완화
사소한 입력에도 툴을 호출 If in doubt, use [tool] 같은 안전망 문구가 이제 오버트리거를 유발 안전망 문구를 지운다. 현행 모델은 애매할 때 알아서 판단
규칙 8~10개 쌓으니 정확도가 떨어짐 규칙이 많아지면 모델이 무엇이 중요한지 triage 하다 놓친다 [MED, aggregator] 3~4개 원칙문으로 압축, 엣지케이스는 규칙이 아니라 예시로
지시끼리 모순 두 접근을 다 적어두고 모델에게 조정을 떠넘김 하나를 골라 끝까지 밀어라. Anthropic 지침: "pick one and see it through"

2. 부정 지시 — "하지 마" 로 막는다 (역효과)

증상 왜 생기나 대신 이렇게
Do not use markdown 했는데 마크다운이 나옴 부정 지시는 무엇을 하라는지를 안 알려줘 모델이 여전히 헤맨다 Your response should be smoothly flowing prose paragraphs. 처럼 원하는 결과를 긍정형으로 [HIGH]
금지 목록만 길고 원하는 톤이 안 나옴 "안 되는 것" 만 정의하면 허용 공간이 너무 넓다 목표 상태를 서술 + 예시 3~5개로 형태를 보여줘라

Anthropic 1차 원칙: "Tell Claude what to do instead of what not to do." (verified 2026-07)


3. 추론 모델에 옛 CoT 스캐폴딩 (중복·역효과)

현행 추론 모델은 사고를 내부에서 한다. thinking: {type: "adaptive"} 가 기본이고 Fable 5·Mythos 5 는 always-on 이다 (verified 2026-07). 여기에 손으로 짠 절차를 얹으면 손해다.

증상 왜 생기나 대신 이렇게
think step by step 넣었더니 비용만 늘고 품질 그대로 사고가 hidden thinking 과 narrated output 에 두 번 나와 토큰을 배로 쓴다 [MED] 추론 모델엔 이 문구를 지운다. output_config.effort 노브로 사고량 조절
손으로 짠 step-by-step plan 이 오히려 답을 좁힘 모델의 추론이 사람이 짠 절차보다 나은 경우가 많다 think thoroughly 같은 고수준 지시를 선호하라 [HIGH]
추론 문제에 few-shot 넣으니 다양성이 줄어듦 예시의 solution-path 에 앵커링되어 답 경로가 고정된다 [MED] few-shot 은 포맷/분류 스티어링에만. 추론은 스크래치부터 시키기
Opus 5 에 검증 지시 넣었더니 느려짐 Opus 5 는 지시 없이도 자체검증을 잘해서 verification 지시가 over-verification 을 유발 [HIGH] Opus 5 로 마이그레이션 시 옛 검증 지시를 제거

함정: 수동 CoT 는 thinking OFF 일 때만 폴백이다. 다만 Opus 5 는 thinking 을 끄면 내부 XML 태그가 눈에 보이는 출력로 새어나올 수 있어, 끄기보다 저-effort thinking 유지가 권장된다 (verified 2026-07). 자세히 → reasoning-vs-standard-models


4. 페르소나·감정 프라이밍 (무효)

증상 왜 생기나 대신 이렇게
You are a world-class expert... 로 시작했는데 기술 정확도가 오히려 낮아짐 기술 작업에서 페르소나는 스타일 노이즈만 얹고 지시 준수를 흐린다 [MED] 페르소나는 스타일 중심 창작에만. 기술 작업은 직접적 task framing
take a deep breath, if you're unsure, say so 가 효과 없음 프론티어 추론 모델은 불확실성을 사고 단계에서 스스로 플래그한다 [MED] 2023 트릭들은 지운다. 그 자리에 구체적 성공조건을

5. 예시·포맷 다루기 (조용한 실패)

증상 왜 생기나 대신 이렇게
예시가 옛날 지시를 따라감 (few-shot pollution) 예시와 현재 지시가 모순되면 모델이 옛 예시를 신뢰한다. "조용한 실패의 최대 원인" [MED] 지시를 고칠 때 예시도 같이 고친다. 지시/예시를 <instructions> <example> XML 태그로 분리
형식을 예시로만 보여줬더니 구조 다른 입력에서 파서가 깨짐 예시 하나의 모양에 의존하면 형태가 다른 입력을 못 버틴다 [MED] 스키마를 지시에 명시 + 프로바이더 구조화 출력 사용 → structured-output
다운스트림이 "answer is X" 같은 자유문 문구를 파싱 모델 업그레이드로 문구가 바뀌면 파서가 깨진다 [MED] 자유문 파싱 금지. 구조화 출력의 스키마 필드만 파싱
실패 케이스 하나 막으려 제약을 걸었더니 정상 출력이 다 망가짐 (over-correction) 한 사례에 과제약을 걸어 나머지를 목조른다 [MED] eval 케이스를 먼저 쓰고, 통과에 필요한 만큼만 제약

6. 근거 없는 추론 & 긴 컨텍스트

증상 왜 생기나 대신 이렇게
그럴듯한데 사실이 틀린 결론 (ungrounded CoT) 실제 데이터에 앵커되지 않은 추론 단계를 지어냄 → 환각 CoT 를 검색 컨텍스트에 그라운딩하거나 제거 → hallucination
긴 문서 중간의 정보를 모델이 놓침 (lost-in-the-middle) 컨텍스트 시작/끝은 잘 쓰지만 중간은 성능이 떨어진다. 신형 모델도 완전 해결은 아님 (context rot) [MED] 중요 지시·정책을 시작 근처에 배치
긴 프롬프트일수록 답이 불안정 effective context 가 광고된 최대치에 못 미치는 경우가 많다 [MED] reranking·dedup·필터링으로 컨텍스트를 줄여라 → context-engineering

Anthropic 1차 정합: "Put longform data at the top" — 긴 문서·입력을 query·instruction·example 에 두면 전 모델에서 성능이 오른다 (verified 2026-07).


7. 구조 강제 — prefill 로 JSON 짜내기 (이제 400)

증상 왜 생기나 대신 이렇게
assistant 턴을 { 로 prefill 해서 JSON 강제하던 코드가 400 현행 Claude 모델은 마지막 assistant 턴 prefill 을 거부한다 (verified 2026-07) output_config.format (구조화 출력) 또는 strict tool use 로 대체 → structured-output
응답이 스키마를 어겨 파싱 재시도 루프를 돔 소프트 스티어링(설명·예시)만으로는 스키마 위반을 못 막는다 grammar-constrained 구조화 출력을 쓰면 스키마 위반이 원천 불가
자유 산문에 억지로 JSON 스키마를 강제 강한 구조가 필요 없는데 constrained decoding 을 씀 자유 산문 + 약한 구조는 XML 태그(소프트 스티어링)로 충분

언제 무엇을 (요약)

상황 쓸 것
강한 지시가 오버트리거 문구 완화 (You MUSTUse ... when)
무엇을 막고 싶다 원하는 결과를 긍정형으로 서술
추론 모델에 단계 지시하고 싶다 고수준 지시(think thoroughly) + effort 노브
프로그램이 소비하는 출력 구조화 출력/strict tool use → structured-output
자유 산문 + 약한 구조 XML 태그

참고

출처: Anthropic 프롬프팅 안티패턴은 [HIGH] (best-practices 1차). 페르소나·instruction stacking·lost-in-the-middle 등 aggregator 사실은 [MED] — 정성 서술만 취하고 수치는 배제. 원본 → 2026-07-25-structured-output-antipatterns