프롬프트의 요소¶
효과적인 프롬프트는 네 가지 핵심 요소로 구성됩니다. 이 요소들을 이해하고 적절히 조합하면 원하는 결과를 더 정확히 얻을 수 있습니다.
네 가지 핵심 요소¶
1. 지시문(Instruction)¶
정의: 모델이 수행해야 할 작업을 명확하게 설명하는 부분입니다.
지시문은 명령어의 핵심이며, 명확할수록 더 나은 결과를 얻습니다.
특징: - 명확한 동작 동사 사용 (분석, 작성, 설명, 정렬, 비교 등) - 한국어로는 종결 형식이 명확해야 함 - 모호한 표현 피하기
좋은 지시문의 예:
나쁜 지시문의 예:
2. 맥락(Context)¶
정의: 작업을 수행하기 위해 필요한 배경 정보와 상황입니다.
맥락은 모델이 적절한 톤, 스타일, 목표를 이해하도록 도와줍니다.
맥락에 포함될 수 있는 정보:
- 대상 독자 (학생, 전문가, 일반인 등)
- 목적 (교육용, 상업용, 개인용 등)
- 원하는 톤 (공식적, 친근한, 유머러스 등)
- 직책이나 역할 (선생님, 마케터, 개발자 등)
- 관련 배경지식
좋은 맥락의 예:
사용 예:
System: 당신은 마케팅 전문가입니다. 젊은 직장인(25-35세)을
대상으로 SNS 광고 문구를 작성합니다. 톤은 친근하고 유머러스합니다.
User: 새로운 커피 머신 제품의 광고 문구를 작성해 주세요.
3. 입력 데이터(Input Data)¶
정의: 모델이 실제로 처리할 구체적인 내용입니다.
입력 데이터가 명확할수록 더 정확한 결과를 얻을 수 있습니다.
입력 데이터의 형태:
- 텍스트: 문단, 단어 목록, 문장
- 구조화된 데이터: 표, JSON, CSV
- 메타데이터: 길이 제한, 키워드 등
예제 1: 텍스트 형태
분석할 텍스트:
"인공지능 기술은 최근 몇 년간 급속도로 발전하고 있습니다.
특히 생성형 AI는 다양한 분야에서 혁신을 가져오고 있으며,
많은 기업과 개인이 이를 활용하고 있습니다."
예제 2: 구조화된 데이터 형태
다음 고객 정보를 분석해 주세요:
| 이름 | 연령 | 구매 횟수 | 총 구매액 |
|------|------|----------|---------|
| 김철수 | 35 | 12 | 480,000 |
| 이영희 | 28 | 5 | 150,000 |
| 박민준 | 42 | 25 | 1,200,000 |
예제 3: 메타데이터 포함
다음 제목들을 분류해 주세요. (최대 3개 카테고리)
제목 목록:
1. 새로운 iPhone 15 공개, 성능 업그레이드
2. 한국 영화 '파묘' 칸 영화제 수상
3. 주식 시장 반등, 코스피 2,500선 돌파
4. 출력 지시자(Output Indicator)¶
정의: 원하는 결과의 형식, 길이, 스타일을 명시하는 부분입니다.
명확한 출력 지시자는 모델이 정확히 원하는 형태로 결과를 생성하도록 도와줍니다.
출력 지시자에 포함될 수 있는 요소:
- 형식: JSON, CSV, 마크다운, HTML, 평문 등
- 길이: 단어 수, 문장 수, 단락 수
- 구조: 목록, 테이블, 단락 등
- 톤 및 스타일: 공식적, 친근한, 학술적 등
- 포함할 요소: 이유, 예시, 결론 등
형식 지시자의 종류¶
JSON 형식¶
다음 책 정보를 JSON 형식으로 변환해 주세요:
입력: 2024년에 발행된 '파이썬 완전정복'은
초보자를 위한 프로그래밍 입문서입니다.
출력 형식:
{
"제목": "",
"발행년도": "",
"대상": "",
"분류": ""
}
마크다운 형식¶
블로그 글을 마크다운 형식으로 작성해 주세요:
제목: 생성형 AI의 미래
형식:
# 제목
## 소개
(2-3문장)
## 주요 내용
- 포인트 1
- 포인트 2
- 포인트 3
## 결론
(1-2문장)
CSV 형식¶
길이 제약¶
네 요소의 통합 예제¶
예제 1: 완벽하게 구성된 프롬프트¶
System: 당신은 마케팅 분석 전문가입니다.
소비자의 심리를 이해하고 액션 아이템을 제시합니다.
지시문: 다음 고객 리뷰를 분석해 주세요.
맥락: 우리는 새로운 음료 제품을 출시했습니다.
초기 피드백을 분석하여 개선점을 찾고 있습니다.
입력 데이터:
리뷰 1: "맛이 너무 달아요. 두 번째는 사지 않을 것 같아요."
리뷰 2: "가격은 비싼데 품질이 좋네요. 자주 구매하겠습니다."
리뷰 3: "포장이 세련되었어요. 선물하기 좋을 것 같습니다."
출력 지시자:
다음 형식의 JSON으로 답변해 주세요:
{
"긍정_포인트": [],
"부정_포인트": [],
"개선_제안": []
}
예제 2: 교육용 프롬프트¶
System: 당신은 고등학교 수학 교사입니다.
학생이 이해할 수 있도록 친근하게 설명해 주세요.
지시문: 다음 수학 문제를 풀고 풀이 과정을 설명해 주세요.
맥락: 이것은 2024학년도 대학수학능력시험
기출 문제의 변형입니다.
입력 데이터:
"정사각형의 한 변의 길이가 4cm일 때,
대각선의 길이는 몇 cm인가?"
출력 지시자:
마크다운 형식으로 다음을 포함해 주세요:
1. 문제 이해 (문제가 뭔지 쉽게 설명)
2. 풀이 과정 (단계별로)
3. 답 (최종 답과 단위)
4. 검증 (답이 맞는지 확인)
요소 간의 관계¶
┌─────────────────────────────────────┐
│ 지시문(무엇을 할 것인가?) │
├─────────────────────────────────────┤
│ 맥락(어떤 상황에서?) │
├─────────────────────────────────────┤
│ 입력 데이터(무엇을 가지고?) │
├─────────────────────────────────────┤
│ 출력 지시자(어떤 형태로?) │
└─────────────────────────────────────┘
각 요소가 명확할수록 프롬프트의 효과가 높아집니다.
💡 실전 팁¶
네 가지 요소를 활용한 팁
-
우선순위: 지시문이 가장 중요합니다. 지시문이 명확하면 나머지 요소들을 생략해도 어느 정도 작동합니다.
-
맥락의 역할: 맥락이 충분하면 좀 더 자연스럽고 전문적인 톤의 답변을 얻을 수 있습니다.
-
입력 데이터의 질: 입력 데이터가 명확하고 구조화되어 있으면 더 정확한 결과를 얻습니다.
-
출력 형식의 중요성: 같은 요청이라도 출력 형식을 명시하면 결과를 더 쉽게 활용할 수 있습니다.
-
점진적 추가: 간단한 프롬프트부터 시작해서 필요에 따라 요소를 추가하는 것이 좋습니다.
📝 핵심 정리¶
- 지시문: 명확한 작업 정의 (가장 중요)
- 맥락: 배경 정보와 상황 (톤과 스타일에 영향)
- 입력 데이터: 처리할 구체적인 내용 (정확성에 영향)
- 출력 지시자: 결과의 형식과 구조 (활용성에 영향)
네 가지 요소를 의식적으로 구성하면 원하는 결과를 더 정확히 얻을 수 있습니다.
다음 단계: 실전 예제에서 이 요소들을 실제로 어떻게 사용하는지 배워보세요.