728x90
프롬프트를 쓸 때 "명확하고 구체적으로 써라!"는 말은 많이 듣는데, 도대체 어떻게 해야 구체적으로 쓰는 건지 막막할 때가 있다. 오늘은 프롬프트를 짤 때 도움이 될 만한 꿀팁들을 정리해 보았다.
1. 복잡한 문제는 단계별로 쪼개서 해결하기
긴 프롬프트 하나로 모든 걸 해결하려 하지 말자. 특히 문제가 복잡할수록 여러 단계로 나눠서 프롬프트에 담는 게 좋다.
- 나쁜 예시: "이 텍스트의 핵심 내용을 3문장으로 요약하고 이 요약을 기반으로 질문을 3개 만들어줘."
- 좋은 예시:
- 이 텍스트의 핵심 내용을 3문장으로 요약해 줘.
- 1단계에서 요약한 내용에 빠진 중요한 정보가 있는지 확인하고, 필요하면 보완해 줘.
- 2단계에서 완성된 요약을 바탕으로 관련 질문 3개를 만들어 줘.
- 3단계에서 만든 질문들을 초급, 중급, 고급 수준으로 각각 조절해 줘. (초급: 간단한 사실 확인, 중급: 이유 설명, 고급: 비판적 사고 질문)
2. 프롬프트 템플릿 활용하기
아래와 같은 템플릿을 활용하면 프롬프트를 훨씬 구체적으로 만들 수 있다.
"넌 [역할]이야. [작업 내용]을 해야 해. [형식]으로 만들어주되, [제약 조건]을 고려해서 만들어 줘."
3. 생각 사슬 프롬프트(Chain of Thought Prompting) 활용하기
이 테크닉은 AI가 바로 정답을 내기 어려운 복잡한 추론 문제에서 빛을 발하는데 AI가 스스로 추론 과정을 거치도록 몇 가지 예시를 주거나, 문제를 푸는 단계를 상세히 알려주는 방식이다. 흔히 "왜 그런가"를 깊이 파고들어야 하는 전략 수립이나 데이터 해석 같은 문제에 특히 유용하다. 몇 가지 예를 들어보면
- 캠페인 실패 원인 분석:
- 나쁜 예시: "이 캠페인이 실패한 이유에 대해서 알려줘."
- 좋은 예시: "이 캠페인의 목표는 무엇이었고, 핵심 지표는 무엇이었는지 먼저 정리해 보고, 그 다음 실제 성과 데이터를 보고 기대와 얼마나 차이가 있는지 확인해. 그리고 어떤 요인들이 이 차이를 만들었는지 추론해 줘."
- 기능 우선순위 결정:
- 나쁜 예시: "기능의 우선순위를 결정해 줘."
- 좋은 예시: "우선 고려 중인 기능/요구사항의 목적을 정리해보자. 각 기능이 어떤 핵심 지표에 영향을 줄 수 있는지 생각해보자. 각 기능의 개발 난이도와 리스크를 비교해 보자. 이제 목적-효과-비용 관점에서 우선순위를 정해 보자."
- 고객 불만사항 정리:
- 나쁜 예시: "고객의 불만사항을 정리해 줘."
- 좋은 예시: "우선 고객이 말한 주요 불편사항을 정리하자. 이 불편이 언제, 어떤 맥락에서 발생했는지 파악하자. 이 불편이 지표/행동에 어떤 영향을 주는지 가정해 보자. 근본적인 원인(why behind why)은 무엇인지 찾아보자."
4. 하이퍼 파라미터 활용
chatGPT에서 하이퍼 파라미터를 활용할 수 있는 방법이 있다. 간단하게 질문의 앞이나 뒤에 붙혀주기만 하면 되는데
| Hyper parameter |
가능한 값
|
설명
|
| temperture |
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개의 가능한 단어 후보 중에서 적절한 단어를 선택해서 문장을 완성합니다.
|
위의 수치 관련된 하이퍼 파라미터 중 temperture 와 글쓰기 스타일(writing style)/톤(tone) 이 자주 사용된다.
예를들면 아래와 같은 프롬프팅으로 엄청난 퀄의 결과를 얻을 수 있었다.
prompt:
[hyperparameter]
temperature : 0.2
tone : neutral
writing style : persuasive
max_token: 500
나는 PM이야.
현재 프로젝트 변경사항이 있어서 외부 협력사들의 설득을 해야하는데
협조를 구하는 이메일을 작성해줘
[Subject] 프로젝트 변경사항 안내 및 협조 요청드립니다
안녕하세요,
[회사명]의 프로덕트 매니저 [당신 이름]입니다.
먼저, 당사와의 협업에 지속적인 관심과 지원을 보내주셔서 진심으로 감사드립니다.
이번에 진행 중인 [프로젝트명] 관련하여 일부 방향성과 일정에 변경이 발생하게 되어, 협력사 여러분께 그 내용을 공유드리고자 합니다.
변경의 주요 사유는 [시장 상황 변화 / 사용자 피드백 / 내부 전략 조정 등], 그리고 이를 반영한 기능 우선순위 재조정에 있습니다.
변경 사항 요약은 아래와 같습니다:
기존 일정: [기존 일정]
변경 일정: [변경 일정]
주요 변경 포인트:
[변경 내용 1 (예: 기능 A → 기능 B로 우선순위 변경)]
[변경 내용 2 (예: 일정 조정에 따른 마일스톤 수정)]
이러한 변경은 제품의 완성도와 시장 적합성을 높이기 위한 결정으로, 장기적으로는 협력사 여러분께도 더 큰 기회로 이어질 수 있다고 판단하고 있습니다.
이에 따라, 협력사 측에서도 일정 및 리소스에 일부 조정이 필요할 수 있음을 사전에 안내드리며, 귀사의 유연한 협조를 부탁드립니다.
혹시 이 변경사항에 대해 추가적으로 논의가 필요하신 부분이 있으시면, 언제든지 연락 주시면 성실히 설명드리겠습니다.
가급적 이번 주 [요일]까지 의견 회신을 주시면 감사하겠습니다.
앞으로도 좋은 파트너십을 이어갈 수 있도록 최선을 다하겠습니다.
감사합니다.
감사합니다.
[당신 이름 드림]
[회사명] / Product Manager
[연락처 / 이메일]
chat gpt 에서는 하이퍼 파라미터를 조절 할 수 없을 줄 알았는데 생각보다 간단한 방식으로 적용할 수 있었다.
728x90
'인공지능 > 직접 해보기' 카테고리의 다른 글
| 🦥 Unsloth로 "영화 리뷰 특화" LLM으로 파인튜닝해주기 (4) | 2025.07.04 |
|---|---|
| 대규모 언어 모델(LLM) 양자화해보기 (0) | 2025.06.27 |
| 데이터 추출 시스템 만들어보기 (0) | 2025.06.26 |
| 일론 머스크 트윗 생성 챗봇 개발기: Fine-tuning부터 LangSmith (1) | 2025.06.26 |
| GPT turbo 3 모델로 파인튜닝 해본썰 (0) | 2025.06.25 |