✍️
Prompt Engineering
프롬프트 설계로 LLM 능력을 최대한 끌어내기
Prompt Engineering은 LLM의 가중치를 수정하지 않고, 입력 텍스트(프롬프트)의 구조와 내용을 최적화하여 원하는 응답을 이끌어내는 기술입니다. Zero-shot(예시 없이 지시만), Few-shot(몇 개의 예시 제공), Chain-of-Thought(단계별 추론 유도) 등 다양한 전략이 있습니다. 시스템 프롬프트로 역할과 규칙을 정의하고, 출력 형식을 명시하며, 모호함을 줄이는 것이 핵심입니다. Fine-tuning 없이도 성능을 크게 향상시킬 수 있어, LLM 활용의 가장 접근성 높은 방법입니다.
핵심 개념
1
목표 정의 — LLM에 정확히 무엇을 시키고 싶은지 명확화
2
시스템 프롬프트 설계 — 역할, 규칙, 출력 형식 지정
3
Few-shot 예시 추가 — 입력-출력 쌍으로 패턴 제시 (선택)
4
제약 조건 명시 — "JSON으로 출력", "3문장 이내" 등
5
반복 테스트 및 개선 — 응답 품질을 확인하고 프롬프트 수정
6
프롬프트 버전 관리 — 효과적인 프롬프트를 문서화하고 관리
장점
- ✓ 모델 수정 불필요 — 가장 빠르고 저렴한 방법
- ✓ 즉시 적용 가능
- ✓ 실험과 반복이 쉬움
- ✓ Fine-tuning 대비 유연함
단점
- ✗ 프롬프트 길이 제한 (context window)
- ✗ 모델마다 최적 프롬프트가 다름
- ✗ 복잡한 태스크에는 한계
- ✗ 프롬프트 주입(injection) 보안 위험
사용 사례
ChatGPT/Claude 활용 극대화
API 기반 AI 서비스 개발
자동화 파이프라인의 LLM 호출
코드 생성/리뷰 자동화