[산책] AI 프롬프팅 고급 기술: 8가지 전략
💎 포인트 (Key Takeaways)
- Reason 단계: 세부 기준을 명시하여 사용자가 명확한 평가 기준을 이해하도록 함.
- Act 단계: 종합적인 판단을 위한 간결한 권장사항을 제시함.
AI 프롬프팅 고급 기술: 6가지 전략
1. 개방형 질문 (Asking Open-Ended Questions)
개방형 질문은 AI에게 특정 정보를 직접 요청하는 대신, 문제 해결에 필요한 정보가 무엇인지 스스로 묻도록 유도하는 프롬프팅 기법입니다. 이 접근 방식은 사용자가 미처 생각하지 못했던 요소들을 AI가 식별하게 하여 문제에 대한 더 깊이 있는 이해를 돕고, 창의적인 해결책을 모색하는 데 유용합니다.
개방형 질문의 주요 프롬프트 예시:
- "이 문제를 효과적으로 해결하기 위해 어떤 정보가 필요한가?"
- "이 작업/문제를 해결하기 위해 고려해야 할 요소는 무엇인가?"
- "이 문제와 관련된 맥락/배경 정보는 무엇이 있을까?"
- "이 문제에 대해 어떤 관점에서 접근해야 하는가?"
- "이 문제 해결에 필요한 데이터/자료는 무엇인가?"
이러한 질문을 통해 AI는 문제 해결에 필요한 다양한 요소들을 스스로 파악하고, 사용자에게 필요한 정보와 그 이유를 설명해 줍니다. 이는 사용자가 문제에 대한 종합적인 시각을 갖도록 도와줄 뿐만 아니라, AI가 제공하는 답변의 정확성과 관련성을 높이는 데 기여합니다.
2. 고급 역할 부여 (Advanced Role Assigning)
고급 역할 부여는 AI에게 특정 역할을 부여하여 문제 해결 능력을 향상시키고 창의적인 답변을 얻도록 유도하는 기법입니다. 단순히 "마케팅 매니저"와 같은 일반적인 역할을 부여하는 것에서 나아가, AI에게 유명한 리더(예: 스티브 잡스)의 역할을 맡기거나, AI를 사용자의 멘토 또는 코치로 설정하여 더욱 정교한 가이드를 받을 수 있습니다.
**고급 역할 부여 (Advanced Role Assigning)**의 핵심 프롬프트 예시는 다음과 같습니다:
유명 인물 역할 부여:
- "당신은 [유명 인물]입니다. [문제]를 해결하기 위한 의료 환경에서의 접근 방식을 설명해 주세요."
- 예시: "당신은 응급의학과 20년 경력의 전문의입니다. 응급실 환자 대기 시간을 단축하기 위한 효과적인 시스템을 어떻게 설계하시겠습니까?"
사용자 역할 부여 및 AI 멘토/코치 설정:
- "저는 [경력] 의료 종사자입니다. [목표]를 달성하기 위한 최적의 방법을 안내해 주세요."
- 예시: "저는 신규 간호사입니다. 병동에서의 효율적인 업무 루틴을 구축하는 방법을 안내해 주세요."
이러한 프롬프트를 통해 AI는 특정 인물의 관점이나 사용자의 수준에 맞춰 사고하고, 문제 해결에 대한 새로운 시각을 제공할 수 있습니다. 또한, 더욱 창의적이고 실질적인 아이디어를 제시할 수 있어, AI를 단순한 정보 제공자가 아닌 창의적인 파트너로 활용하는 데 효과적입니다.
3. 다양한 해결책 요청 (Requesting Multiple Solutions)
하나의 해결책에 집중하는 대신, AI에게 여러 가지 해결책을 제시하도록 요청하는 기법입니다. 각 해결책이 독특한 관점에서 문제에 접근하도록 지시함으로써, 사용자는 다양한 가능성을 탐색하고 최적의 결정을 내릴 수 있습니다. 이는 의사 결정 과정에서 중요한 정보를 확보하거나, 초기 브레인스토밍 및 전략 기획 단계에서 특히 유용합니다.
다양한 해결책 요청 프롬프트 예시:
- "이 문제/과제를 해결하기 위한 3가지(또는 5가지) 독특한 접근 방식을 제시해 주세요."
- "각 접근 방식은 서로 다른 관점에서 문제를 해결해야 합니다."
- "각 해결책의 장단점을 간략하게 설명해 주세요."
이러한 기법을 통해 AI는 한 가지 정답에 국한되지 않고 다양한 접근 방식을 탐색할 수 있도록 유도됩니다. 예를 들어, 의료 환경에서는 특정 치료법이나 프로세스를 개선하기 위한 다양한 대안을 제시하는 방식으로 활용할 수 있습니다.
예시:
- "병원 응급실의 대기 시간을 줄이기 위한 3가지 전략을 제시해 주세요."
- "각 전략이 어떻게 작용하는지, 예상되는 장단점은 무엇인지 설명해 주세요."
이 기법을 적용하면 사용자는 특정한 문제에 대해 보다 폭넓은 시각을 가질 수 있으며, 다양한 해결책을 비교하여 최적의 선택을 할 수 있도록 지원받을 수 있습니다.
4. 역방향 프롬프팅 (Reverse Prompting)
역방향 프롬프팅은 원하는 결과물을 먼저 제시하고, 그 결과물을 생성했을 가능성이 높은 프롬프트를 AI에게 생성하도록 요청하는 기법입니다. 전통적인 프롬프팅 방식과는 반대로, 원하는 결과물에서 시작하여 프롬프트를 역으로 추론하는 방식입니다.
역방향 프롬프팅의 핵심
- 원하는 결과물이 있지만, 효과적인 프롬프트 작성 방법을 모를 때 유용합니다.
- 원하는 결과물을 생성할 수 있는 프롬프트를 추론함으로써, 프롬프트 작성 능력을 향상시키는 데 도움이 됩니다.
- 다양한 템플릿을 구축하여 유사한 작업에 재사용할 수 있습니다.
역방향 프롬프팅 단계
- 원하는 결과물 제시: AI에게 원하는 결과물 (예: 광고 문구, 블로그 게시물)을 제공합니다.
- 프롬프트 생성 요청: AI에게 제시된 결과물을 생성했을 가능성이 높은 프롬프트를 작성하도록 요청합니다.
- 템플릿 구축: 생성된 프롬프트를 기반으로 템플릿을 구축하고, 필요에 따라 조정하여 유사한 작업에 활용합니다.
역방향 프롬프팅 프롬프트 예시
- "다음 [결과물 종류, 예: 블로그 글]을 분석하고, 이와 유사한 스타일과 구조의 [결과물 종류]을 생성할 수 있는 프롬프트를 생성해 주세요."
- "이 [결과물 종류]의 스타일과 구조를 모방하여, [주제]에 대한 [결과물 종류]을 생성하는 데 사용할 수 있는 프롬프트를 만들어 주세요."
역방향 프롬프팅의 장점
- 프롬프트 작성 능력 향상: AI가 생성한 프롬프트를 분석하고 수정하면서 프롬프트 작성 능력을 키울 수 있습니다.
- 템플릿 재사용: 구축된 템플릿을 통해 유사한 작업을 보다 효율적으로 수행할 수 있습니다.
- 맞춤형 결과물 생성: 템플릿을 조정하고 추가적인 맥락을 제공함으로써, 더욱 맞춤화된 결과물을 생성할 수 있습니다.
5. 다중 프롬프트 (Multi-Prompts)
다중 프롬프트는 광범위하고 복잡한 문제를 일련의 상호 연결된 프롬프트로 나누어 해결하는 기술입니다. 단일 프롬프트로 모든 해답을 얻는 것을 기대하지 않고, AI가 전체 프로세스를 단계별로 생각하도록 유도합니다.
다중 프롬프트 접근 방식 예시
문제:
응급실 환자의 대기 시간을 줄이는 전략을 개발해야 함.
일반적인 프롬프트:
"응급실의 대기 시간을 줄이기 위한 전략을 제안해 주세요."
- 결과는 나쁘지 않지만 다소 일반적일 수 있음.
다중 프롬프트 접근:
- 첫 번째 프롬프트: 응급실 대기 시간 단축을 위해 고려해야 할 요소는 무엇인지 묻습니다.
- 예상되는 답변: 환자 분류 시스템 개선, 인력 배치 최적화, 응급 상황 분류 기준 조정 등.
- 두 번째 프롬프트: 환자 분류 시스템을 최적화하기 위한 방법을 묻습니다.
- 예상되는 답변: AI 기반 환자 우선순위 분류, 전자 건강 기록 시스템 활용 등.
- 세 번째 프롬프트: 인력 배치를 최적화하는 구체적인 전략을 묻습니다.
- 예상되는 답변: 피크 시간대 추가 인력 배치, 간호사와 의사의 역할 분담 개선 등.
- 최종 프롬프트: 앞서 분석한 요소들을 기반으로 최적의 응급실 운영 전략을 제안하도록 요청합니다.
- 결과: 더욱 구체적이고 실행 가능한 해결책을 도출할 수 있음.
다중 프롬프팅의 장점
- 더 깊이 있는 분석 가능: AI가 다양한 측면을 고려하도록 유도하여 더 정교한 해결책을 얻을 수 있음.
- 복잡한 문제 해결: 응급실 운영 최적화와 같이 여러 요소를 고려해야 하는 작업에 유용.
- AI의 사고 과정 최적화: AI가 한 번에 답변을 내놓는 것이 아니라, 논리적인 단계를 거치도록 유도.
이 기법을 적용하면 사용자는 특정한 문제에 대해 보다 폭넓은 시각을 가질 수 있으며, 단계별 접근 방식을 통해 더욱 정밀한 해결책을 도출할 수 있습니다.
6. 자기 성찰 요청 (Asking AI to do Self-Reflection)
자기 성찰 요청은 AI에게 자신의 응답을 분석하고 제안된 해결책의 잠재적 한계를 반영하도록 요청하는 기술입니다. AI가 자신의 결과물에 대해 장단점을 고려하도록 강제하여 더 깊이 생각하도록 유도하는 좋은 방법입니다.
기존 Chain-of-Thought도 매우 좋은 방법이지만 CoT의 문제점은 다른 대체 추론 경로를 탐색하거나, 오류를 수정하는 과정이 없습니다. 따라서 이를 해결하는 좋은 대안 기술이 자기 성찰 프롬프팅입니다.
자기 성찰 요청 접근 방식 예시
문제:
병원에서 환자 경험을 개선하기 위한 전략 개발.
첫 번째 프롬프트:
"병원에서 환자 경험을 개선하기 위한 10가지 전략을 제안해 주세요."
- 예상되는 답변: 대기 시간 단축, 의료진 친절 교육, 실시간 피드백 시스템 구축 등.
두 번째 프롬프트:
"이 답변에서 부족한 점이나 개선할 부분이 있는지 자체 평가해 주세요."
- 예상되는 답변: 일부 전략이 현실적으로 구현하기 어려울 수 있으며, 구체적인 실행 방안이 부족할 수 있음.
세 번째 프롬프트:
"위에서 지적된 한계를 개선하기 위한 실행 가능한 전략을 제시해 주세요."
- 예상되는 답변: 예산 고려, 인력 확보 방안 추가, 환자별 맞춤형 서비스 도입 제안.
자기 성찰 요청의 장점
- 더 정교한 응답 유도: AI가 자신의 답변을 평가하고 스스로 개선 방안을 제안하도록 유도.
- AI의 한계를 보완: 초기에 제공된 답변이 불완전할 경우 이를 보완하여 보다 신뢰할 수 있는 정보를 얻을 수 있음.
- 비판적 사고 촉진: AI가 단순한 정보 제공을 넘어, 응답의 질을 향상시키는 방향으로 발전 가능.
7. Chain-of-Thoght (CoT, 생각의 사슬) 프롬프팅
![]() 그림. 생각의 사슬 (chain-of-thought, CoT) 프롬프트가 적용된 사례 (오른쪽) |
왼쪽 그림에서 어느 쪽 대답이 더 바람직할까요? 오른쪽의 대답이 더 바람직합니다. 마치 인간이 암산으로 문제를 푸는 것과 종이에 풀이과정을 적으면서 문제를 푸는 것과 흡사합니다. 단순 응답은 겉보기에 간단해 보이지만, 실제로는 더 큰 계산 비용이 발생합니다. 모델이 내부적으로 복잡한 계산을 수행하면서도 중간 과정을 생략하고 결과만 제시하기 때문입니다. 이로 인해 몇 가지 중요한 문제가 발생할 수 있습니다:
- 높은 오류 가능성: 중간 과정이 보이지 않아 결과의 정확성을 검증하기 어렵습니다.
- 설명력 부족: 답이 어떻게 도출되었는지 이해하기 어려워 학습이나 검증에 제한이 있습니다.
- 디버깅의 어려움: 오류가 발생했을 때 어느 단계에서 문제가 있었는지 파악하기 힘듭니다.
반면, 단계별 추론 응답은 이러한 문제들을 효과적으로 해결할 수 있습니다:
- 투명한 사고 과정: 각 단계가 명확히 표시되어 결과의 신뢰성을 쉽게 확인할 수 있습니다.
- 교육적 가치: 문제 해결 과정을 단계별로 보여줌으로써 학습 효과를 높일 수 있습니다.
- 효율적인 오류 수정: 중간 과정이 모두 표시되어 있어 문제가 발생한 지점을 쉽게 찾을 수 있습니다.
- 낮은 계산 비용: 각 단계를 순차적으로 처리하므로 전체적인 계산 부담이 줄어듭니다.
이러한 장점들로 인해 단계별 추론은 특히 교육, 연구, 복잡한 문제 해결 등에서 더욱 효과적인 접근 방식이 될 수 있습니다.
대부분의 현대 LLM은 기본적인 추론이 가능하며, "기차가 시속 60마일로 움직이고 3시간 동안 이동하면 얼마나 멀리 갈 수 있을까?"와 같은 질문에 답할 수 있습니다. 따라서 오늘날 추론 모델이라고 할 때 일반적으로 퍼즐, 수수께끼, 수학적 증명을 푸는 것과 같은 더 복잡한 추론 과제에 뛰어난 LLM을 의미합니다. 또한, 오늘날 추론 모델로 브랜드화된 대부분의 LLM(ChatGPT o1, o3, DeepSeek R1 등)은 응답의 일부로 "생각" 또는 "생각하는" 프로세스를 포함합니다. 단, LLM이 실제로 "생각"하는지 여부는 별개입니다.
8. Reson and Act (React) 프롬프팅
📌 1. 개요 (Overview)
Reason and Act Prompts는 대규모 언어 모델(LLM)이 복잡한 작업을 수행할 때 **"생각(Reason)"**과 **"행동(Act)"**의 두 단계로 나누어 더 명확하고 체계적인 응답을 제공하는 프롬프트 기법입니다.
- Reason 단계: LLM이 문제를 분석하고 논리적으로 추론합니다.
- Act 단계: 추론 결과를 바탕으로 실제 답변이나 행동을 생성합니다.
이 방법은 Chain-of-Thought (CoT) 기법과 유사하지만, 추론과 행동을 명확히 분리하여 더 직관적이고 신뢰성 있는 결과를 얻을 수 있다는 점이 특징입니다.
✅ 2. 구조 (Structure)
- Reason 단계 (Reason Stage)
- LLM은 입력된 정보를 분석하고, 해결 방법을 계획하며, 각 단계의 논리적 근거를 설명합니다.
- 이 단계에서는 결론을 도출하지 않고 오직 추론에만 집중합니다.
- Act 단계 (Act Stage)
- Reason 단계의 결과를 바탕으로 실제 응답 또는 **행동(action)**을 생성합니다.
- 이 단계에서는 구체적이고 실행 가능한 출력을 제공합니다.
💡 3. 예시 (Examples)
🤖 예시 1: 복잡한 질문에 대한 Reason and Act Prompt
💡 시나리오:
사용자가 AI의 의료 분야 적용 사례에 대해 구체적이고 설명 가능한 답변을 원함.
💻 실제 프롬프트 입력:
### Reason 단계:
사용자는 AI가 의료 분야에서 어떻게 사용되는지에 대한 설명을 원합니다.
먼저, 다음과 같은 세 가지 주요 측면에서 AI의 역할을 논리적으로 분석하세요:
1. 질병의 조기 진단 (Early Diagnosis)
2. 맞춤형 치료 계획 (Personalized Treatment)
3. 의료 데이터 관리 및 자동화 (Medical Data Management)
각 측면마다 AI가 제공하는 이점과 구체적인 사례를 설명하세요.
### Act 단계:
Reason 단계의 분석을 바탕으로, 사용자가 쉽게 이해할 수 있도록 200자 이내로 간결하게 요약하여 응답하세요.
답변은 문법적으로 명확하고 자연어로 작성하세요.
✅ LLM의 응답:
Reason 단계:
1. **질병의 조기 진단:** AI는 의료 영상 분석을 통해 암, 심장질환 등 질병을 조기에 발견합니다. 예: 구글의 DeepMind는 망막 이미지 분석으로 당뇨병성 망막증을 정확히 진단합니다.
2. **맞춤형 치료 계획:** AI는 환자의 유전 정보와 병력을 분석하여 개인별 치료 계획을 제공합니다. 예: IBM Watson은 암 환자에게 맞춤형 치료법을 추천합니다.
3. **의료 데이터 관리 및 자동화:** AI는 대규모 의료 데이터를 처리하여 의사들의 업무 부담을 줄입니다. 예: Nuance의 DAX는 음성 인식을 통해 의사들의 문서 작성 시간을 단축합니다.
Act 단계:
"AI는 의료 영상 분석, 맞춤형 치료 계획 및 데이터 자동화를 통해 질병의 조기 발견과 치료 정확성을 높이며, 의료진의 업무를 더 효율적으로 만듭니다."
🗂️ 예시 2: 의사결정 시나리오 (Decision-Making Scenario)
💡 시나리오 (Scenario)
사용자가 신규 소프트웨어 도입에 대한 의사결정을 내리기 위해 판단 기준을 요청함.
💻 프롬프트 입력 (Prompt Input)
### Reason 단계:
신규 소프트웨어를 도입할지 여부를 판단하기 위해 다음 세 가지 기준을 논리적으로 분석하세요:
1. 기능 및 기존 시스템과의 호환성 (Functionality & Compatibility)
2. 비용 대비 효용성 (Cost-Effectiveness)
3. 팀원들의 사용 편의성 및 만족도 (User-Friendliness & Feedback)
각 기준의 중요성과 고려해야 할 요소를 설명하세요.
### Act 단계:
Reason 단계의 분석을 바탕으로, 소프트웨어 도입 여부에 대한 권장사항을 명확하게 제시하세요.
✅ LLM의 응답 (LLM Output)
### 🧠 Reason 단계:
1. **기능 및 호환성 (Functionality & Compatibility):**
- 소프트웨어의 주요 기능이 회사의 업무 요구사항과 일치해야 합니다.
- 기존 시스템과의 호환성을 점검하여 통합 과정에서의 문제를 최소화해야 합니다.
- 예: 클라우드 기반 협업 도구는 원격 근무 환경에 적합합니다.
2. **비용 대비 효용성 (Cost-Effectiveness):**
- 초기 도입 비용뿐 아니라 유지보수 및 업그레이드 비용을 고려해야 합니다.
- 장기적으로 생산성과 효율성을 얼마나 개선할 수 있는지 평가합니다.
- 예: 자동화 기능이 직원들의 반복 업무를 줄이면 업무 생산성이 향상됩니다.
3. **팀원들의 사용 편의성 및 만족도 (User-Friendliness & Feedback):**
- 사용자가 쉽게 학습하고 사용할 수 있어야 하며, 사용 경험이 업무 흐름을 개선해야 합니다.
- 팀원의 피드백을 통해 실제 사용 경험과 잠재적 문제점을 파악해야 합니다.
- 예: 소프트웨어의 직관적인 인터페이스와 고객 지원 서비스는 사용자의 만족도를 높입니다.
---
### ⚡ Act 단계:
"소프트웨어가 기존 시스템과 호환되고, 비용 대비 효용성이 높으며, 팀원들이 쉽게 사용할 수 있다면 도입을 권장합니다. 이러한 요소를 종합적으로 고려하여 최종 결정을 내리세요."
💎 포인트 (Key Takeaways)
- Reason 단계: 세부 기준을 명시하여 사용자가 명확한 평가 기준을 이해하도록 함.
- Act 단계: 종합적인 판단을 위한 간결한 권장사항을 제시함.
💎 4. Reason and Act Prompts의 장점 (Benefits)
✅ 명확성 (Clarity): 추론 과정과 최종 응답을 분리함으로써 더 직관적이고 명확한 결과를 제공합니다.
🔍 추론의 투명성 (Transparency): 사용자는 LLM이 어떤 논리를 통해 결론에 도달했는지 이해할 수 있습니다.
⚡ 복잡한 작업 처리 (Complex Task Handling): 단계별 접근 방식을 통해 더 복잡한 문제를 체계적으로 해결할 수 있습니다.
🚀 5. 응용 사례 (Applications)
- 고급 질의응답 시스템: 사용자에게 더 신뢰성 있는 응답을 제공하기 위해 Reason 단계를 통해 근거를 설명.
- 코드 작성 및 디버깅: Reason 단계에서 논리를 설명하고, Act 단계에서 실제 코드를 생성.
- 의사결정 지원: Reason 단계에서 각 선택지의 장단점을 분석하고, Act 단계에서 권장 사항을 제공.
- 자동화된 작업 워크플로우: Reason 단계에서 작업 계획을 수립하고, Act 단계에서 실제 작업을 실행.
📝 6. Reason and Act Prompts의 일반적인 프롬프트 구조 (Prompt Template)
💡 7. 결론 (Conclusion)
Reason and Act Prompts는 LLM의 응답을 더 명확하고 설명 가능하게 만들어 사용자가 추론 과정과 최종 결과를 쉽게 이해할 수 있게 합니다. 특히 복잡한 문제 해결, 코드 작성, 의사결정 지원 등 다양한 작업에 효과적으로 적용할 수 있습니다.
```
참고 사이트:
https://www.promptingguide.ai/kr/models/chatgpt
ChatGPT 프롬프트 엔지니어링 – Nextra
A Comprehensive Overview of Prompt Engineering
www.promptingguide.ai
https://cloud.google.com/discover/what-is-prompt-engineering
https://cloud.google.com/discover/what-is-prompt-engineering
cloud.google.com
https://youtu.be/g55knWQTUms?si=8Mg51eAabPz0vtPD
https://arxiv.org/html/2310.14735v5
Unleashing the potential of prompt engineering in Large Language Models: a comprehensive review
Ej=(Qj,{(fj,1,Qj,1,Aj,1),…,(fj,kj,Qj,kj,Aj,kj)})subscript𝐸𝑗subscript𝑄𝑗subscript𝑓𝑗1subscript𝑄𝑗1subscript𝐴𝑗1…subscript𝑓𝑗subscript𝑘𝑗subscript𝑄𝑗subscript𝑘𝑗subscript𝐴𝑗subscript𝑘𝑗E_{j}=\left(Q
arxiv.org