AI

LLM에게 일을 잘 시키는 법, 프롬프트 엔지니어링

Jinseung's Blog 2026. 10. 14. 20:17

이번 블로그에서는 LLM에게 일을 잘 시키는 법, 프롬프트 엔지니어링에 대한 글을 작성해 보겠습니다.

 

같은 ChatGPT, 같은 Claude를 쓰는데 누군가는 바로 쓸 수 있는 답을 받고, 누군가는 뻔한 일반론만 받습니다.

차이는 모델이 아니라 질문을 설계하는 방식에 있습니다.

 

프롬프트 엔지니어링(Prompt Engineering)은 LLM이 원하는 결과를 안정적으로 내도록 입력을 설계하고 다듬는 일입니다.

이 글에서는 LLM이 텍스트를 어떻게 처리하는지 간단히 살펴본 뒤, 대표적인 프롬프팅 기법을 예시와 함께 정리해 보겠습니다.

 

1. LLM은 어떻게 작동할까?

토크나이저 (Tokenizer)

LLM은 글자를 그대로 읽지 않습니다. 입력 텍스트를 먼저 토큰(token) 단위로 쪼개고, 각 토큰을 정수로 인코딩해서 처리합니다.

"프롬프트 엔지니어링"  →  ["프", "롬", "프트", " 엔", "지니", "어링"]  →  [12345, 678, ...]

 

실제 분할 결과는 모델마다 다릅니다. OpenAI의 Tokenizer 페이지에서 직접 확인해 볼 수 있어요.

 

여기서 알아둘 점은 한국어가 영어보다 토큰을 더 많이 쓰는 경우가 많다는 것입니다. 같은 의미의 문장이라도 한국어는 더 잘게 쪼개지는 경향이 있어서, 비용과 컨텍스트 길이에 영향을 줍니다.

LLM이 잘하는 일

  • 요약 및 통찰 추출: 기사, 책, 제품 리뷰 같은 비정형 데이터를 요약하고 핵심을 뽑아냅니다.
  • 분류와 변환: 강의평 분석, 번역, 필기를 표로 정리하기
  • 생성: 레포트 초안, 이메일, 발표 아이디어 브레인스토밍

환각 (Hallucination)

LLM은 "그럴듯한 다음 토큰"을 예측하는 모델이라, 사실이 아닌 내용을 자신 있게 말할 때가 있습니다. 이를 환각(Hallucination)이라고 부릅니다. 중요한 정보는 반드시 출처를 확인하고, 프롬프트에 "모르면 모른다고 답해줘" 같은 지시를 넣는 것도 도움이 됩니다.

 

2. LLM 설정값 (Settings)

API나 Playground에서 LLM을 쓸 때는 프롬프트 외에도 몇 가지 설정값을 조절할 수 있습니다.

설정 의미 팁
Temperature 출력의 무작위성, 높을수록 다양하고 창의적 사실 기반 답변은 낮게(0~0.3), 창작은 높게(0.7~1.0)
Top P 확률 상위 몇 %의 토큰 안에서 고를지 Temperature와 둘 중 하나만 조절하는 걸 권장
Max Tokens 출력의 최대 길이 너무 짧으면 답이 중간에 잘림
Stop Sequence 이 문자열이 나오면 생성을 멈춤 목록 개수나 형식을 제한할 때 유용

 

3. 프롬프팅 기법

1. Zero-shot Prompting

예시 없이 바로 작업을 요청하는 가장 기본적인 방법입니다. 모델이 사전 학습으로 얻은 일반적인 언어 이해 능력만으로 문제를 해결합니다.

Prompt: 교양 수업 '현대사회와 환경' 기말 레포트 주제 3개만 추천해 주세요.

Output: 1. 대학 캠퍼스의 일회용품 사용 실태와 줄이는 방법
        2. 패스트패션이 환경에 미치는 영향
        3. 배달 음식 문화와 플라스틱 쓰레기 문제

2. Few-shot Prompting

몇 가지 예시(입력-출력 쌍)를 함께 주어서 모델이 패턴을 따라 하게 하는 방법입니다. 원하는 형식과 기준을 설명하는 것보다 보여주는 게 훨씬 정확할 때가 많습니다.

Prompt: 강의평을 보고 '추천 / 비추천 / 보통'으로 분류해 주세요.

        강의평: 교수님이 설명을 진짜 친절하게 해주세요. 꿀강 인정 → 추천
        강의평: 과제가 매주 나오고 출석도 엄격해요. 학점도 짜요. → 비추천
        강의평: 무난해요. 시험만 잘 보면 될 듯 → 보통
        강의평: 팀플 없고 시험 범위도 딱 정해주셔서 너무 좋았어요! →

Output: 추천

 

3. Contextual Prompting

프롬프트에 맥락(배경 정보)을 추가해서 더 정확하고 개인화된 답을 얻는 방법입니다.

Prompt: 시험 기간 공부 계획 좀 짜주세요.
        저는 대학교 2학년이고, 시험은 다음 주 월요일(전공), 수요일(교양), 금요일(전공)이에요.
        평일엔 저녁 6~10시에 알바가 있고, 아침형 인간이에요.

Output: 알바가 저녁에 있으니 오전~오후에 집중하는 계획을 추천해요.
        주말에는 월요일 전공 과목을 집중적으로 공부하고...

4. Task-specific Prompting

특정 작업이나 분야에 맞게 역할, 형식, 제약 조건을 명확히 지정하는 방법입니다.

Prompt: 너는 꼼꼼한 조교야. 아래 강의 필기를 시험 대비용으로 3줄 요약해 줘.
        각 줄은 한 문장이고, 교수님이 "시험에 나온다"고 한 내용은 꼭 포함해 줘.

        [강의 필기 내용]

Output: 1. ...
        2. ...
        3. ...

5. Chain-of-Thought (CoT) Prompting

모델이 단계별로 추론 과정을 거쳐 답을 내도록 유도하는 방법입니다. 수학, 논리 문제처럼 중간 과정이 필요한 작업에서 정확도가 크게 올라갑니다.

Prompt: 이번 학기 평균 학점을 단계별로 계산해 주세요.
        전공A 3학점 A+(4.5), 전공B 3학점 B+(3.5), 교양 2학점 A0(4.0)

Output: 1단계: 과목별 (학점 × 평점)을 구합니다.
               3 × 4.5 = 13.5 / 3 × 3.5 = 10.5 / 2 × 4.0 = 8.0
        2단계: 모두 더합니다. → 13.5 + 10.5 + 8.0 = 32.0
        3단계: 총 이수 학점(8)으로 나눕니다. → 32.0 ÷ 8 = 4.0
        답: 평균 학점은 4.0입니다.

6. Zero-shot CoT

예시 없이 프롬프트 끝에 "단계별로 생각해 보자(Let's think step by step)" 한 줄만 추가하는 방법입니다.

Prompt: 이번 달 용돈 30만 원을 받았어요. 교재를 4만 원 주고 샀고,
        동아리 회비로 2만 원을 냈어요. 그 뒤 알바비 10만 원이 들어왔고,
        학식으로 하루 5천 원씩 20일을 썼어요. 남은 돈은 얼마인가요?
        단계별로 생각해 봅시다.

Output: 1. 처음 용돈은 30만 원입니다.
        2. 교재 구입: 30만 - 4만 = 26만 원
        3. 동아리 회비: 26만 - 2만 = 24만 원
        4. 알바비 입금: 24만 + 10만 = 34만 원
        5. 학식비: 5천 원 × 20일 = 10만 원 → 34만 - 10만 = 24만 원

        따라서 남은 돈은 24만 원입니다.

7. 프롬프트 튜닝: 반복해서 다듬기

좋은 프롬프트는 한 번에 나오지 않습니다. 결과를 보고 프롬프트를 고치고, 다시 실행하는 과정을 반복하면서 다듬어야 합니다.

v1: 교수님께 메일 써줘.
    → 무슨 용건인지 몰라서 뻔한 인사말만 길게 나옴

v2: 교수님께 과제 제출 기한 연장을 부탁하는 메일 써줘.
    → 용건은 맞지만 이유가 없어서 성의 없어 보임

v3: 교수님께 과제 제출 기한 연장을 부탁하는 메일 써줘.
    이유는 예비군 훈련 때문이고, 증빙 서류도 첨부할 수 있어.
    정중하지만 5문장 이내로 짧게 써줘.
    → 바로 보낼 수 있는 메일 완성

한눈에 정리

기법 핵심 언제 쓰는지
Zero-shot 예시 없이 바로 요청 간단하고 명확한 작업
Few-shot 입력-출력 예시 제공 형식이나 분류 기준이 까다로울 때
Contextual 배경 정보 추가 개인화된 답이 필요할 때
Task-specific 역할·형식·제약 지정 결과물 형식이 정해져 있을 때
CoT 단계별 추론 유도 수학, 논리, 다단계 문제
Zero-shot CoT "단계별로 생각해 보자" 추가 예시 없이 추론 정확도를 높이고 싶을 때
프롬프트 튜닝 결과를 보고 반복 개선 항상

 

 

이것으로 LLM에게 일을 잘 시키는 법인 프롬프트 엔지니어링에 대한 글을 마치겠습니다. 감사합니다!

'AI' 카테고리의 다른 글

AI 모델이 검색을 하는 방법  (0) 2026.10.07
Jev (TypeSafe AI의 System One 모델)  (0) 2026.09.23
Claude Code Guide  (0) 2026.09.16