JSCODE Logo
블로그후기멘토진
회사명 : JSCODE대표 : 박재성사업자 등록번호 : 244-22-01557통신판매업 : 제 2023-인천미추홀-0381 호
학원 명칭 : 제이에스코드(JSCODE)원격학원학원설립ㆍ운영 등록번호 : 제6063호

서울특별시 구로구 경인로 20가길 11(오류동, 아델리아)

Copyright ⓒ 2025 JSCODE - 최상위 현업 개발자들의 프로그래밍 교육 All rights reserved.

이용약관개인정보처리방침
← 블로그 목록으로 돌아가기

Spring AI Prompts - 프롬프트 엔지니어링 9가지 패턴

JSCODE 시니
JSCODE 시니
2026. 06. 13.
author
JSCODE 시니
category
Spring AI
createdAt
Jun 13, 2026 09:52 AM
isPublic
series
실무에 바로 적용하는 Spring AI: Spring 서비스에 챗봇·RAG·MCP 도입하기
slug
nine-patterns-of-prompt-engineering
type
post
updatedAt

✅ 1. Zero-Shot Prompting (제로샷 프롬프팅)

  • 사전 정보나 예시 없이 AI에게 곧바로 질문을 던지는 가장 기본적인 방식
@AiService public interface QAService { @Prompt("이탈리아의 수도는 어디야?") String answer(); }
 
 
 

✅ 2. Few-Shot Prompting (퓨샷 프롬프팅)

  • AI에게 1개(One-Shot) 또는 여러 개의 정답 예시를 미리 보여주고 패턴을 학습시킨 뒤 질문을 던지는 방식
@Prompt(""" Q: 2 + 2는? A: 4 Q: 3 + 5는? A: 8 Q: {{question}} A: """) String solve(@V("question") String question);
 
 
 

✅ 3. Role & System Prompting (역할 및 시스템 프롬프팅)

  • 시스템 프롬프트를 사용해 AI에게 '페르소나(직업, 성격, 톤앤매너)'를 부여
@Prompt(system = "너는 아주 정중하고 핵심만 말하는 10년 차 내과 의사야.") String respondTo(String userQuestion);
 
 
 

✅ 4. Step-Back Prompting (한 걸음 물러서기 프롬프팅)

  • AI가 섣불리 대답하기 전에, 상황을 먼저 객관적으로 분석하고 성찰하도록 유도함
@Prompt(""" 답변하기 전에, 다음 상황을 주의 깊게 먼저 생각해 봐: {{situation}} 자, 이제 이 상황에서 가장 좋은 조언은 무엇일까? """) String analyze(@V("situation") String situation);
 
 
 

✅ 5. Chain-of-Thought, CoT (생각의 사슬 프롬프팅)

  • 단순히 답만 뱉는 게 아니라, 문제를 해결하는 과정을 단계별로 풀어서 설명하도록 지시하는 방식
@Prompt(""" 다음 문제를 단계별로 차근차근(step-by-step) 해결해 줘: {{problem}} 정답: """) String solveStepwise(@V("problem") String problem);
 
 
 

✅ 6. Self-Consistency Prompting (자기 일관성 프롬프팅)

  • CoT(생각의 사슬) 프롬프트를 여러 번 반복해서 호출한 뒤, 가장 많이 나온(일관된) 답변을 최종 정답으로 채택하는 방식
 
 
 

✅ 7. Tree-of-Thoughts, ToT (생각의 나무 프롬프팅)

  • 하나의 문제에 대해 여러 가지 해결책을 먼저 제안하게 하고, 그중 가장 좋은 것을 스스로 선택해 평가하게 만드는 방식
@Prompt(""" 이 문제를 해결할 수 있는 3가지 다른 접근법을 제안해 봐: {{challenge}} 그런 다음, 3가지 중 가장 좋은 방법을 하나 고르고 그 이유를 설명해 줘. """) String solveWithToT(@V("challenge") String challenge);
 
 
 

✅ 8. Automatic Prompt Engineering (자동 프롬프트 엔지니어링)

  • 내가 쓴 부실한 프롬프트를 AI에게 던져서 "네가 더 완벽한 프롬프트로 다듬어봐"라고 시키는 방식
@Prompt(""" 너는 세계 최고의 프롬프트 엔지니어의 역량을 가졌어. 다음 프롬프트의 명확성과 효과를 극대화해줘: {{originalPrompt}} """) String optimizePrompt(@V("originalPrompt") String originalPrompt);
 
 
 

✅ 9. Code Prompting (코드 프롬프팅)

  • 사용자의 입력을 기반으로 코드를 생성하거나 분석하도록 요청하는 방식
@Prompt(""" 다음 요구사항을 수행하는 Java 함수를 작성해 줘: {{description}} Java Code: """) String generateCode(@V("description") String description);