L2 중급

프롬프트·컨텍스트 엔지니어링

무엇을 어떻게 말하고 무엇을 보게 할지 원리부터 실무까지.

39챕터
1부(部)
4시간총 분량
첫 챕터 시작 →

챕터

01프롬프트 엔지니어링이란 무엇인가 02LLM이 텍스트를 다루는 방식 03프롬프트 vs 컨텍스트 엔지니어링 04좋은 프롬프트의 공통 속성 05명확하고 구체적인 지시 06역할과 페르소나 부여 07예시로 가르치기 (zero/one/few-shot) 08출력 형식 지정 09단계적 사고 유도 (chain-of-thought) 10제약과 금지의 명시 11구분자와 구조화 (XML 태그 등) 12컨텍스트 윈도우란 무엇인가 13무엇을 넣고 무엇을 뺄까 14긴 컨텍스트와 중간 소실 15대화 누적과 컨텍스트 관리 16관련 자료를 효과적으로 제공하기 17컨텍스트 엔지니어링 실전 사고법 18환각을 줄이는 법 19모호함과 과잉생성 다루기 20검증 가능한 출력 만들기 21거절과 실패 다루기 22일관성과 재현성 높이기 23평가(eval)의 기초 — 좋은 프롬프트인지 어떻게 아는가 24프롬프트 체이닝과 분해 25자기 비판과 자기 수정 유도 26검색·도구와 결합하기 (RAG·도구 사용) 27시스템 프롬프트 설계 28멀티턴과 에이전트 맥락의 프롬프트 29도메인별 적용 — 대표 사례 30버전 관리·재사용·템플릿화 31비용·길이·지연 트레이드오프 32안전과 민감정보 주의 33모델 이전(migration) 시 프롬프트 점검 ·부록 A. 기법 치트시트 — 상황 → 기법 매핑 ·부록 B. 안티패턴·미신 목록 ·부록 C. 좋은/나쁜 프롬프트 예시 모음 ·부록 D. 개발자 부록 ·부록 E. 용어집 ·부록 F. 추가 학습 링크

개요

LLM에게 무엇을 어떻게 말할지(프롬프트 엔지니어링)와 무엇을 보게 할지(컨텍스트 엔지니어링)를 설계하는 기술을, 원리부터 실무까지 체계적으로 다루는 학습 안내서입니다.

이 안내서는 "그럴듯한 프롬프트 템플릿을 베끼는" 수준을 넘어, 왜 그 기법이 통하는지(모델 동작에 기반한 직관)와 언제 무엇을 써야 하는지(판단 기준)를 함께 다룹니다. 개발자뿐 아니라 기획자·작가·분석가·연구자 등 비개발 직군도 코드 없이 따라올 수 있도록 썼고, 개발자용 심화 내용은 개발자 노트로 분리해 표시했습니다.

이 안내서를 읽는 법

  • 순서대로 읽기를 권장합니다. 1부의 직관이 이후 모든 기법의 근거가 됩니다. 기법만 골라 읽으면 "언제 쓰면 안 되는지"를 놓치기 쉽습니다.
  • 각 장 끝의 ✍️ 확인 문제, 특히 "이 프롬프트를 개선해보라" 식 실습은 꼭 직접 해보세요. 읽는 것과 쓰는 것은 다른 능력입니다.
  • 🧪 직접 검증법 콜아웃을 만나면, 자신이 실제로 쓰는 모델에 그 프롬프트를 넣어 확인해보세요. 이 분야는 "남이 그렇다더라"가 가장 위험합니다.
  • 개발자가 아니라면 개발자 노트는 건너뛰어도 흐름이 끊기지 않습니다.

콜아웃 기호 안내

기호의미
💡 팁바로 써먹을 수 있는 실용적 조언
⚠️ 흔한 실수·미신자주 빠지는 함정, 검증 안 된 통념
📌 핵심그 절에서 꼭 가져갈 한 가지
🧪 직접 검증법직접 돌려보고 확인하는 방법
🔧 개발자 노트API·코드·자동화 관련 심화 (비개발자는 건너뛰어도 됨)

전체 그림

이 안내서가 다루는 두 가지 기술과 그 관계는 다음과 같습니다.

flowchart TB
    subgraph PE["프롬프트 엔지니어링: 무엇을 어떻게 말할까"]
        direction LR
        instr["명확한 지시"]
        ex["예시 제공"]
        fmt["출력 형식"]
        role["역할 부여"]
    end
    subgraph CE["컨텍스트 엔지니어링: 무엇을 보게 할까"]
        direction LR
        what["넣을 것 / 뺄 것 선택"]
        order["배치 순서"]
        mgmt["대화·자료 관리"]
    end
    model["LLM<br/>(다음 토큰 예측기)"]
    out["원하는 출력"]

    PE --> model
    CE --> model
    model --> out

    classDef technique fill:#dbeafe,stroke:#3b82f6,color:#1e3a8a
    classDef context fill:#ede9fe,stroke:#8b5cf6,color:#4c1d95
    classDef modelcls fill:#cffafe,stroke:#06b6d4,color:#164e63
    classDef good fill:#dcfce7,stroke:#22c55e,color:#14532d
    class instr,ex,fmt,role technique
    class what,order,mgmt context
    class model modelcls
    class out good
두 기술은 별개가 아니라 같은 목표("모델이 원하는 행동을 하게 만들기")의 두 측면입니다. 프롬프트가 말의 내용이라면, 컨텍스트는 말이 놓이는 환경 전체입니다.

목차

1부 · 기초와 직관

제목한 줄 요약
01프롬프트 엔지니어링이란 무엇인가정의, 그리고 "마법 주문"이 아니라는 것
02LLM이 텍스트를 다루는 방식토큰·확률·컨텍스트 의존에 대한 최소 직관
03프롬프트 vs 컨텍스트 엔지니어링두 개념의 구분과 연결
04좋은 프롬프트의 공통 속성모델·제공자를 가로지르는 원칙

2부 · 핵심 프롬프트 기법

제목한 줄 요약
05명확하고 구체적인 지시명확함을 6항목으로 분해해 점검하기
06역할과 페르소나 부여마법이 아니라 정보 압축, 그리고 한계
07예시로 가르치기 (zero/one/few-shot)형식·기준을 보여주기, 편향 전이 피하기
08출력 형식 지정형식과 내용 품질은 별개 축
09단계적 사고 유도 (chain-of-thought)"단계별로 생각해"의 역효과와 판단 기준
10제약과 금지의 명시부정→긍정 전환, 제약은 보장이 아님
11구분자와 구조화 (XML 태그 등)경계 긋기, 일관성이 핵심

3부 · 컨텍스트 엔지니어링

제목한 줄 요약
12컨텍스트 윈도우란 무엇인가용량은 효과가 아니다
13무엇을 넣고 무엇을 뺄까고신호 최소집합 골라내기
14긴 컨텍스트와 중간 소실같은 정보도 위치가 결과를 바꾼다
15대화 누적과 컨텍스트 관리누적·오염·부패와 그 대응
16관련 자료를 효과적으로 제공하기구분·출처·근거·자료 우선
17컨텍스트 엔지니어링 실전 사고법select·compress·isolate·배치 통합

4부 · 신뢰성과 품질

제목한 줄 요약
18환각을 줄이는 법"그럴듯함"의 부작용과 4단계 대응
19모호함과 과잉생성 다루기멋대로 가정·시키지 않은 것까지
20검증 가능한 출력 만들기정확한 답에서 검증 가능한 답으로
21거절과 실패 다루기네 가지 실패 유형 진단과 대응
22일관성과 재현성 높이기들쭉날쭉함 다스리기
23평가(eval)의 기초느낌이 아니라 측정으로

5부 · 고급·워크플로우

제목한 줄 요약
24프롬프트 체이닝과 분해한 단계 한 책임으로 쪼개기
25자기 비판과 자기 수정 유도효과와 자기 환각 재확인의 한계
26검색·도구와 결합하기 (RAG·도구 사용)모델=추론 엔진, 도구=감각·손발
27시스템 프롬프트 설계딱 맞는 "고도"로 쓰기
28멀티턴과 에이전트 맥락의 프롬프트자율성이 커질수록 커지는 위험

6부 · 실무 적용과 운영

제목한 줄 요약
29도메인별 적용 — 대표 사례같은 원리, 도메인마다 다른 강조점
30버전 관리·재사용·템플릿화프롬프트를 자산으로 다루기
31비용·길이·지연 트레이드오프품질과 비용·속도의 균형
32안전과 민감정보 주의넣지 않기, 여러 겹 방어
33모델 이전(migration) 시 프롬프트 점검영원한 건 원리와 검증

부록

부록제목한 줄 요약
A기법 치트시트상황→기법 매핑, 자가 점검
B안티패턴·미신 목록검증 안 된 통념과 흔한 실수
C좋은/나쁜 예시 모음before/after 15선
D개발자 부록구조화 출력·API·RAG·평가 자동화
E용어집본문 용어 정리(원어 병기)
F추가 학습 링크공식 가이드 우선·학습법

이 안내서가 다루지 않는

  • 특정 모델의 "비밀 주문" 목록. 그런 것은 대개 검증되지 않았고, 모델이 바뀌면 무력화됩니다. 이 안내서는 원리를 주어 스스로 판단하게 하는 것을 목표로 합니다.
  • 모델 내부 구조의 정밀한 설명. 트랜스포머 아키텍처를 깊이 다루지 않습니다. "왜 통하는지"를 이해할 만큼의 최소 직관만 제공합니다.
  • 항상 최신인 모델명·가격·기능. 이런 사실은 빠르게 변합니다. 구체적 수치가 필요하면 본문의 안내에 따라 각 제공자의 공식 문서를 확인하세요.
  • 이미지·음성 등 멀티모달 프롬프팅 심화. 텍스트 프롬프트에 집중합니다.

한 가지 약속

이 분야에는 검증되지 않은 통념이 많습니다. 이 안내서는 효과가 모델·맥락에 따라 달라지는 기법을 단정하지 않습니다. 대신 "왜 통할 법한지의 직관 + 한계·반례 + 직접 검증 권장"으로 제시합니다. 어떤 조언을 만나든, 마지막 판단 기준은 당신이 실제로 쓰는 모델에서의 결과입니다.

다음 → 01. 프롬프트 엔지니어링이란 무엇인가