이 가이드는 Claude 4 모델(Opus 4.1, Opus 4, Sonnet 4)을 위한 특정 프롬프트 엔지니어링 기법을 제공하여 애플리케이션에서 최적의 결과를 달성할 수 있도록 도와줍니다. 이러한 모델들은 이전 세대의 Claude 모델보다 더 정확한 지시 사항 따르기를 위해 훈련되었습니다.

일반 원칙

지시 사항을 명시적으로 작성하세요

Claude 4 모델은 명확하고 명시적인 지시 사항에 잘 반응합니다. 원하는 출력에 대해 구체적으로 설명하면 결과를 향상시킬 수 있습니다. 이전 Claude 모델의 “기대 이상” 동작을 원하는 고객들은 Claude 4에서 이러한 동작을 더 명시적으로 요청해야 할 수 있습니다.

성능 향상을 위해 맥락을 추가하세요

지시 사항 뒤에 있는 맥락이나 동기를 제공하는 것, 예를 들어 Claude에게 그러한 동작이 왜 중요한지 설명하는 것은 Claude 4 모델이 목표를 더 잘 이해하고 더 타겟팅된 응답을 제공하는 데 도움이 될 수 있습니다.
Claude는 설명으로부터 일반화할 만큼 충분히 똑똑합니다.

예시와 세부사항에 주의하세요

Claude 4 모델은 지시 사항 따르기의 일부로 세부사항과 예시에 주의를 기울입니다. 예시가 장려하고자 하는 동작과 일치하고 피하고자 하는 동작을 최소화하도록 하세요.

특정 상황에 대한 지침

응답 형식 제어

Claude 4 모델에서 출력 형식을 조정하는 데 특히 효과적이라고 발견한 몇 가지 방법이 있습니다:
  1. 하지 말라고 하는 것 대신 무엇을 해야 하는지 Claude에게 말하세요
    • 대신에: “응답에 마크다운을 사용하지 마세요”
    • 시도해보세요: “응답은 매끄럽게 흐르는 산문 단락으로 구성되어야 합니다.”
  2. XML 형식 지시자 사용
    • 시도해보세요: “응답의 산문 섹션을 <smoothly_flowing_prose_paragraphs> 태그 안에 작성하세요.”
  3. 프롬프트 스타일을 원하는 출력에 맞추세요 프롬프트에서 사용된 형식 스타일이 Claude의 응답 스타일에 영향을 줄 수 있습니다. 출력 형식에 대한 조정 가능성 문제가 여전히 발생한다면, 가능한 한 프롬프트 스타일을 원하는 출력 스타일에 맞추는 것을 권장합니다. 예를 들어, 프롬프트에서 마크다운을 제거하면 출력에서 마크다운의 양을 줄일 수 있습니다.

사고 및 교차 사고 능력 활용

Claude 4는 도구 사용 후 반성이나 복잡한 다단계 추론을 포함하는 작업에 특히 도움이 될 수 있는 사고 능력을 제공합니다. 더 나은 결과를 위해 초기 또는 교차 사고를 안내할 수 있습니다.
예시 프롬프트
도구 결과를 받은 후, 그 품질을 신중히 반성하고 진행하기 전에 최적의 다음 단계를 결정하세요. 이 새로운 정보를 바탕으로 계획하고 반복하기 위해 사고를 사용한 다음, 최선의 다음 행동을 취하세요.
사고 능력에 대한 자세한 정보는 확장된 사고를 참조하세요.

병렬 도구 호출 최적화

Claude 4 모델은 병렬 도구 실행에 뛰어납니다. 그렇게 하라는 프롬프트 없이도 병렬 도구 호출을 사용하는 데 높은 성공률을 보이지만, 약간의 프롬프트로 이 동작을 ~100% 병렬 도구 사용 성공률로 높일 수 있습니다. 이 프롬프트가 가장 효과적이라고 발견했습니다:
에이전트를 위한 샘플 프롬프트
최대 효율성을 위해, 여러 독립적인 작업을 수행해야 할 때마다 순차적으로가 아닌 동시에 모든 관련 도구를 호출하세요.

에이전트 코딩에서 파일 생성 줄이기

Claude 4 모델은 특히 코드 작업 시 테스트 및 반복 목적으로 새 파일을 생성하는 경우가 있습니다. 이 접근 방식을 통해 Claude는 최종 출력을 저장하기 전에 파일, 특히 파이썬 스크립트를 ‘임시 스크래치패드’로 사용할 수 있습니다. 임시 파일 사용은 특히 에이전트 코딩 사용 사례에서 결과를 향상시킬 수 있습니다. 새로운 파일 생성을 최소화하고 싶다면, Claude에게 정리하도록 지시할 수 있습니다:
샘플 프롬프트
반복을 위해 임시 새 파일, 스크립트 또는 도우미 파일을 생성하는 경우, 작업 끝에 이러한 파일을 제거하여 정리하세요.

시각적 및 프론트엔드 코드 생성 향상

프론트엔드 코드 생성의 경우, 명시적인 격려를 제공하여 Claude 4 모델이 복잡하고 상세하며 상호작용적인 디자인을 만들도록 유도할 수 있습니다:
샘플 프롬프트
주저하지 마세요. 최선을 다하세요.
또한 집중해야 할 부분에 대한 추가 수정자와 세부사항을 제공하여 특정 영역에서 Claude의 프론트엔드 성능을 향상시킬 수 있습니다:
  • “가능한 한 많은 관련 기능과 상호작용을 포함하세요”
  • “호버 상태, 전환, 마이크로 상호작용과 같은 사려 깊은 세부사항을 추가하세요”
  • “웹 개발 능력을 보여주는 인상적인 데모를 만드세요”
  • “디자인 원칙을 적용하세요: 계층, 대비, 균형, 움직임”

테스트 통과와 하드코딩에 집중하는 것 피하기

최첨단 언어 모델은 때때로 더 일반적인 솔루션을 희생하면서 테스트를 통과시키는 데 너무 집중할 수 있습니다. 이러한 동작을 방지하고 견고하고 일반화 가능한 솔루션을 보장하려면:
샘플 프롬프트
고품질의 범용 솔루션을 작성해주세요. 테스트 케이스뿐만 아니라 모든 유효한 입력에 대해 올바르게 작동하는 솔루션을 구현하세요. 값을 하드코딩하거나 특정 테스트 입력에만 작동하는 솔루션을 만들지 마세요. 대신 문제를 일반적으로 해결하는 실제 로직을 구현하세요.

문제 요구사항을 이해하고 올바른 알고리즘을 구현하는 데 집중하세요. 테스트는 정확성을 확인하기 위한 것이지 솔루션을 정의하기 위한 것이 아닙니다. 모범 사례와 소프트웨어 설계 원칙을 따르는 원칙적인 구현을 제공하세요.

작업이 불합리하거나 실행 불가능하거나 테스트 중 일부가 잘못된 경우 알려주세요. 솔루션은 견고하고 유지 관리 가능하며 확장 가능해야 합니다.

마이그레이션 고려사항

Sonnet 3.7에서 Claude 4로 마이그레이션할 때:
  1. 원하는 동작에 대해 구체적으로 설명하세요: 출력에서 보고 싶은 것을 정확히 설명하는 것을 고려하세요.
  2. 수정자로 지시 사항을 구성하세요: Claude가 출력의 품질과 세부사항을 높이도록 격려하는 수정자를 추가하면 Claude의 성능을 더 잘 형성하는 데 도움이 될 수 있습니다. 예를 들어, “분석 대시보드를 만들어주세요” 대신 “분석 대시보드를 만들어주세요. 가능한 한 많은 관련 기능과 상호작용을 포함하세요. 기본을 넘어서 완전한 기능을 갖춘 구현을 만들어주세요.”를 사용하세요.
  3. 특정 기능을 명시적으로 요청하세요: 애니메이션과 상호작용 요소는 원할 때 명시적으로 요청해야 합니다.