PM 공부하기

ChatGPT Prompting Methods

mtepg924 2025. 5. 26. 13:15

<키워드>

  • zero-shot, one-shot, few-shot prompting
  • Prompt template: [역할], [작업 내용], [형식], [제약조건]
  • 프롬프트 최적화 기법: Iterative Prompting, Chain-of-Thought Prompting
  • 소크라테스 프롬프트
  • Hyper parameter 활용: temperatue, tone, writing style 등 

🔷 학습내용

1. Zero-shot, One-shot, Few-shot Prompting

여기서 Shot은 GPT에게 제공하는 예시의 수를 의미한다.

GPT가 문맥을 더 고려해야할수록, 즉 복잡한 맥락을 다뤄야 할 수록 예시를 많이 제공하면 답변의 퀄리티가 높아진다.

 

2. Prompt template 활용

”넌 [역할]야. [작업내용]을 해야해. [형식]으로 만들되, [제약조건]을 고려해서 만들어줘”

 

이 템플릿을 활용하면 더 전문가 관점에서, 원하는 형식이면서 현실적인 제약까지 고려한 답을 끌어낼 수 있다. 

예시) 
[역할]- 넌 디지털 마케팅 전문가야.
[작업내용]- 신제품 출시를 위한 마케팅 전략을 수립해야 해.
[형식]- 소셜 미디어 캠페인 기획서 형식으로 만들되,
[제약조건]- 타겟 고객층이 20~30대이며, SNS에서 효과적으로 공유될 수 있도록 시각적 요소 활용과 참여 유도 전략을 포함하는 것을 고려해서 만들어줘.

 

 

3. 프롬프트 최적화 기법

(1) Iterative Prompting

: 평소에 내가 하고 있는 방식. MVP 처럼 점점 답안을 구체적으로 발전시키는 방법

 

(2) Chain-of-Thought Prompting

: 복잡한 문제에 대한 답이 필요할 때 유용한 방식, 문제를 여러 단계로 쪼개서 순차적으로 해결하는 방식이다.

이차방정식 x2−4x+3=0 을 풀고 싶은 상황이라고 가정
1단계: “x2−4x+3을 인수분해해 줘.”출력: “(x-1)(x-3)”
2단계: “인수분해를 통해 방정식의 해를 도출해 줘.”출력: “x = 1 또는 x = 3”

 

4. 소크라테스 프롬프트

어떤 개념을 공부할 때 쓰기 좋은 방식의 프롬프팅 기법 >  답을 직접 알려주지 않고, 질문을 통해 사고를 유도하는 방법

Role을 정해놓고 시작하면 된다. 

당신은 항상 소크라테스 방식으로 답변하는 튜터입니다.
- 당신은 학생에게 절대 정답을 알려주지 않고, 학생이 스스로 사고할 수 있도록 돕는 적절한 질문을 던지려고 합니다.
- 학생의 관심사와 지식 수준에 맞춰 질문을 조율하고, 문제를 더 단순한 부분으로 나누어 학생에게 적절한 수준이 될 때까지 안내해야 합니다.

 

 

5. Hyperparameter 활용 

(1) Hyperparameter란?

하이퍼 파라미터(hyper parameter)는 딥러닝 모델의 성능을 조절하는 매개변수 입니다. 쉽게 말하자면 사용자가 설정하는 성능 조절값 이라고 생각하시면 되요. 챗지피티는 이 값을 따로 입력해서 출력되는 답변을 좀더 다양하게 만들어 볼수 있어요!

 

(2) Hyperparameter를 조정하는 방법

예시)
가전제품을 주문했는데 작동을 안해. 이 점에 대해서 제조사에 컴플레인을 하고 싶어. 컴플레인을 하는 이메일을 써줘.
[hyper parameter]
tone: humorous writing
style : persuasive

 

(3) 참고: Hyperparameter의 종류

  • 글쓰기 스타일/톤 관련 하이퍼 파라미터 
Hyper parameter 종류 가능한 값
tone authoritative(권위적인), angry(화가 난), clinical(냉담한), cold(차가운), confident(자신감에찬), cynical(냉소적인), emotional(감정적인), empathetic(공감하는), formal(격식있는), friendly(친근한), happy(행복한), humorous(유머있는), informal(비격식적인), ironic(역설적인), optimistic(낙관적인), pessimistic(비관적인), nagative(부정적인), neutral(중립적인), sarcastic(빈정대는), serious(심각한), sympathetic(동조적인), tentative(머뭇거림), warm(따뜻한)
writing style academic(학술적인), analytical(분석적), argumentative(논쟁적인), conversational(대화적인), creative(창의적인), critical(비판적인), descriptive(설명적인), epigrammatic(풍자적인), epistolary (편지체), expository(설명적인), informative(자세한), instructive(유익한), journalistic(신문체), metaphorical(은유적인), narrative(서술적인), persuasive(설득적인), poetic(시적인), satirical(풍자적인), technical(기술적)
  • 수치 관련 파라미터
Hyper parameter 종류 가능한 값 설명
temperature 0 ~ 1 까지의 실수 값
(e.g. 0.1, 0.2, 0.45, 0.8..)
출력의 다양성을 조절합니다.
더 높은 값은 더 다양한(예측불가능한) 답변을 생성합니다.
max_tokens 0 ~ 4,096까지의 정수 값 생성된 출력의 최대 길이를 제한합니다.
숫자는 토큰의 숫자를 나타냅니다
top_p 0 ~ 1 까지의 실수 값 모델이 확률 분포 상위의 토큰만 선택하도록 합니다.
갚이 높을 수록 더 희귀한 단어를 사용합니다.
frequency_penalty 0 부터 양수의 실수 값 값이 높을수록 주어진 문맥에서 더 자주 나타나는 단어를 선택합니다.
presence_penalty 0 부터 양수의 실수 값 값이 높을수록 주어진 문맥에서 특정 단어를 자주 생성하지 않도록 합니다.
stop_sequence 문자열
(e.g., "\n" 또는 "STOP")
출력을 생성하는 동안 특정 문자열을 만나면 중지하도록 설정합니다.
max_history 양의 정수 값
(e.g., 1, 2, 3)
모델이 이전 대화를 얼마나 기억하는지 제한합니다. 예를 들어 2로 설정하면 이전 2턴의 대화를 기억하고 그를 기반으로 답변합니다.
beam_width 0 ~ 10 양의 정수값 값이 높을 수록 다양한 문장을 생성합니다. 만약 3을 입력하면 3개의 가능한 단어 후보 중에서 적절한 단어를 선택해서 문장을 완성합니다.

 

(4) 하이퍼 파라미터 활용하기

이중에 자주사용되는 하이퍼 파라미터는 3가지(temperature, tone, writing style)이다.

활용예시)
- Temperature: 0.2 정도의 값으로 설정하여, 다양성은 유지하면서도 너무 예측 불가능한 답변을 생성하지 않도록 합니다.
- Tone: 아무래도 공문이기 때문에 formal(격식있는)을 사용합니다.
- Writing Style: Writing Style은 다양한 선택지가 있지만 그 중 journalistic(신문체)를 사용해보겠습니다.
---------------

나는 건설사 직원이야. 건설의 진행상황이나 변경사항 등을 협력사나 고객에게 알리기 위한 공문을 작성해줘
[hyperparameter]
temperature : 0.2
tone : formal
writing style : journalistic

[프로젝트 정보]서울 재개발 프로젝트
*** 아래 생략 ***

 


✅ 인사이트

  • ChatGPT 활용은 하고 있었지만 이렇게 다양한 프롬프팅 기법이 있는 줄은 몰랐다. 특히 Hyperparameter를 조정할 수 있다는 것은 처음 알았다. 메일 작성이나 보고서를 작성할 때 유용한 기법같다. 
  • Garbage in, garbage out이라는 말이 있듯이, 은근 프롬프트 잘 쓰는 것이 중요하다는 것을 요즘 많이 느꼈다. 배운 내용을 활용하면 좀 더 퀄리티 높은 답을 얻을 수 있겠다.
  • AI를 많이 활용할수록 Hallucination을 경계해야 하는 상황이 많아지는데, 프롬프팅을 잘하는 것이 Hallucination을 줄이기 위한 하나의 방법이 될 수 있겠구나라는 생각이 들었다. (물론 Reference check가 제일 중요하다.)