생성 AI TIP

프롬프트 엔지니어의 AI에게 질문 잘하는 기술 - 기초

Neehoot 2023. 7. 4.

프롤로그

혹시 ChatGPT를 어떻게 사용하는지 아시나요? 생성 AI와 관련된 블로그를 작성하고, 대기업에서 사내 ChatGPT 강의를 진행하면서 생각보다 많은 사람들이 ChatGPT에 대한 관심은 많지만 이를 어떻게 활용해야 할지 잘 모른다는 것을 알게 되었습니다. AI와 대화하는 방법만 익히더라도 많은 상황에서 시간을 아낄 수 있다는 점이 굉장한 메리트라고 생각하는데요. 이번시간부터 프롬프트 엔지니어링에 대한 기본기부터 심화까지 제 모든 노하우와 간단한 프롬프트 샘플을 제공할 계획입니다. 아마 저의 블로그 내용을 쭉 따라오시면 여러분도 일상에서 ChatGPT를 '잘' 활용하는 법을 익히실 수 있을 거예요.

 

오늘은 프롬프트 엔지니어링의 기본에 대해 이야기하는 시간으로 저의 '프롬프트 엔지니어의 AI에게 질문 잘하는 기술' 시리즈를 시작해 볼 까 합니다. 그럼 하나씩 천천히 따라 해 주세요!

 

환경 세팅하기

제 블로그는 ChatGPT를 활용합니다. ChatGPT는 OpenAI에서 만든 GPT기반의 채팅 애플리케이션으로, 손쉽게 AI를 사용할 수 있는 환경을 제공합니다. 만약 ChatGPT를 이미 활용하실 줄 아신다면 다음 단락으로 넘어가주세요!

1. ChatGPT 접속하기

ChatGPT 로그인 화면

먼저 ChatGPT 홈페이지에 접속합니다. 만약 아이디가 없으신 분들은 Sign Up 버튼을 클릭하셔서 회원가입 진행해 주세요.

2. 회원가입하기

회원가입은 Email, Google, MS, Apple 이렇게 가입할 수 있습니다. 본인이 자주 사용하시는 ID로 가입해 주시고 ChatGPT에 로그인해 주세요. 회원가입은 무료입니다. 서비스도 기본 무료로 제공되니 안심하고 회원가입 하셔도 괜찮습니다.

 

3. ChatGPT 접속하기

잘 따라오셨습니다. 이제 ChatGPT를 활용할 준비가 되셨네요. ChatGPT는 기본적으로 GPT3.5 기반으로 무료로 사용 가능합니다. 월 20$를 내고 유료로 사용하게 되면 GPT3.5 Turbo(속도가 빠름), GPT4(답변이 더 좋음) 두 가지 모델을 사용 가능합니다. 요금과 관련한 내용은 아래 블로그를 참고해 주세요.

 

GPT 유료버전은 얼마일까? 꼭 써야하나 (API, ChatGPT Plus)

인공지능(AI) 기술의 발전에 따라, 이를 활용한 다양한 서비스들이 등장하고 있습니다. 그중에서도 GPT(Generative Pre-trained Transformer) 기반의 서비스는 많은 관심을 받고 있으며, 다양한 언어 관련 업

neeeez.com

 

프롬프팅 기초

이제 환경 세팅이 되었다면 직접 프롬프트를 입력해 볼 시간입니다. AI에게 직접 질문해 본 경험이 많이 없으시다면 어색하실 수 있습니다. 당연하게도 우리는 지금까지 사람과 사람 간 대화에 집중했기 때문이죠. ChatGPT는 등장한 지 1년도 채 되지 않았습니다. 만약 컴퓨터와 대화를 해본 경험이 있다면 심심이정도의 간단한 ChatBot과 이야기해 본 것이 전부일지도 모르겠네요. ChatGPT의 가장 큰 특징은 내가 말한 문장을 이해(?) 한다는 것에 있습니다. 내 문장의 의도를 파악하고, 이에 맞는 적절한 답변을 생성해서 보여주게 되지요. 이로써 우리는 실제 사람과 대화하는 듯한 느낌을 AI로부터 받게 됩니다. 그렇다면 실제 AI와 대화하는 방법을 보도록 하겠습니다.

 

1. 글의 의도를 명확하게 전달해라

# 프롬프트

오늘은

# 답변

2023년 7월 4일입니다. 무엇을 도와드릴까요?

위의 프롬프트를 한 번 볼까요? 만약 사람이라면 저런 질문을 했을 때 어떤 답변을 했을지 생각해 보세요. 여기에서 보셔야 할 것은 질문의 의도입니다. 저는 저 질문의 의도가 오늘의 날짜를 물어보는 게 아닐 수 있지만, 답변은 오늘의 날짜를 답변합니다. 만약 제 의도가 "오늘은 어딜 가는 게 좋을까" 였다면 저의 의도를 잘못 추론한 답변을 내놓은 것이지요.

이 프롬프트를 보고 중요한 것은 의도를 명확하게 전달해야 정확한 답변을 얻을 수 있다는 것입니다. 그럼 의도를 적절하게 추가해서 질문해 볼까요?

 

# 프롬프트

오늘은 어딜 가는게 좋을까?

# 답변

어디를 가는 것이 좋을지는 여러 가지 요소에 따라 달라집니다. 저는 여러분이 어떤 종류의 활동을 선호하는지, 현재 위치 및 날씨 조건을 고려하는 것이 좋다고 생각합니다. 일반적으로 다음과 같은 활동을 고려할 수 있습니다:

1. 공원이나 자연보호구역 방문: 날씨가 좋은 경우 공원이나 자연보호구역에서 산책이나 피크닉을 즐길 수 있습니다. 신선한 공기를 마시면서 자연의 아름다움을 감상할 수 있습니다.
2. 박물관이나 미술관 방문: 문화와 역사에 관심이 있다면 박물관이나 미술관을 방문해 보세요. 다양한 예술 작품이나 역사적인 유물을 관찰하고 배울 수 있습니다.
3. 상점이나 쇼핑몰 방문: 쇼핑이나 윈도쇼핑을 즐기는 분들은 시간을 보내기 좋은 장소로 상점이나 쇼핑몰을 방문해 보세요. 최신 유행품을 살펴보거나 선물을 사는 등 다양한 활동을 즐길 수 있습니다.
4. 영화관이나 극장 방문: 영화나 연극을 좋아한다면 영화관이나 극장을 방문해보세요. 최신 영화를 관람하거나 뮤지컬, 연극 등 다양한 공연을 감상할 수 있습니다.
5. 카페나 레스토랑 방문: 휴식이 필요하거나 맛있는 음식을 즐기고 싶다면 카페나 레스토랑을 방문해보세요. 여러 종류의 음식과 음료를 맛볼 수 있으며, 여유롭게 대화나 독서를 즐길 수 있습니다.

이러한 활동 중에서 여러분의 취향과 관심사에 맞는 것을 선택하여 즐거운 시간을 보내시기 바랍니다.

이처럼 의도를 명확하게 AI에게 전달하는 것이 답변의 방향을 잡아주는데 중요한 키가 될 수 있습니다. 만약 ChatGPT에게 질문할 때에 답변이 이상하게 나올 경우 내 의도가 잘 전달되었는지 다시 확인해 보시는 것이 어떨까요?

 

2. 첫 문장에 역할과 의도를 부여해라

글을 작성하실 때에 두괄식으로 작성해 본 경험이 있으실 것입니다. 특히 면접을 보거나, 상사에게 보고를 하는 등 비즈니스 글을 다룰 때 주로 사용되는 기법이지요. 두괄식으로 작성하는 가장 큰 이유 중 하나는 내가 전달하고자 하는 의도와 방향을 빠르게 파악할 수 있다는 점입니다. 이로써 면접관이나 상사가 어떤 내용을 들을지 미리 준비하여 내 글에 집중할 수 있게 되지요. AI에게 질문을 할 때에도 마찬가지입니다. 프롬프트를 작성할 때에 두괄식으로 의도를 부여한다면 AI가 해당 글에 더 집중할 수 있게 됩니다.

여기에서 한 가지 더 팁이 있습니다. AI는 어떤 답변을 여러분에게 해야 하는지 모르기 때문에 AI가 더 정확한 답변을 하기 위해서 역할을 지정해 주시는 것이 좋습니다. 가령 내가 상사에게 보고를 한다고 가정한다면, 상사는 여러분의 상급자로서 해당 업무에 대한 결정을 하는 역할을 자동으로 부여받게 되고, 이에 따른 답변(피드백, 결정)을 여러분에게 제공할 것입니다. AI도 마찬가지로 첫 문장에 역할을 부여한다면 더 정확한 답변을 여러분에게 제공할 수 있게 됩니다.

아래 프롬프트를 한 번 볼까요?

 

# 프롬프트

너는 수학강사로 나에게 수학의 재미를 느끼게 해줘야 해. 수학을 잘하려면 어떻게 해야 할까?

# 답변

수학은 재미있는 분야이며, 수학을 잘하려면 몇 가지 방법을 따라가면 됩니다. 아래에는 수학을 재미있게 공부하고 능숙해지기 위한 몇 가지 조언을 제시해 드리겠습니다:
1. 호기심 가지기: 수학은 문제를 해결하는 과정에서 호기심과 탐구 정신이 중요합니다. 문제에 대해 궁금해하고, 그 해결 방법을 찾아보는 과정에서 즐거움을 느낄 수 있습니다.
2. 기초 다지기: 수학에서 중요한 것은 기초를 탄탄하게 다지는 것입니다. 기초 개념과 공식을 이해하고 익숙해지는 것이 중요합니다. 이를 위해 교과서를 참고하거나 인터넷에서 온라인 강의를 듣는 등 다양한 학습 자료를 활용할 수 있습니다.
3. 문제 해결 연습하기: 수학에서 문제를 푸는 것은 매우 중요합니다. 문제 해결 과정을 반복하면서 다양한 유형의 문제에 익숙해지고, 독창적인 해결 방법을 찾을 수 있습니다. 문제를 해결하며 성취감을 느낄 수 있으며, 이는 수학의 재미를 더욱 높여줄 것입니다.
4. 협력과 토론: 수학은 혼자 공부하는 것뿐만 아니라 다른 사람들과의 협력과 토론을 통해 배울 수 있는 분야입니다. 동료나 선생님과 수학 문제를 함께 풀고, 아이디어를 공유하며 더 흥미로운 방식으로 문제를 접근할 수 있습니다.
5. 게임과 애플리케이션 활용: 수학을 재미있게 공부하기 위해 게임이나 애플리케이션을 활용할 수 있습니다. 수학적인 논리나 문제 해결 능력을 키우는 게임이나 앱들이 많이 개발되어 있습니다. 이를 통해 게임을 즐기면서 수학적 사고를 향상할 수 있습니다.
6. 실패에 대해 긍정적으로 생각하기: 수학은 때로 어려울 수 있습니다. 하지만 실패는 성공의 핵심 요소입니다. 어려운 문제를 풀다가 실패하더라도 긍정적으로 생각하고 오류를 분석하며 배우는 자세를 가지면, 수학적인 지식과 문제 해결 능력을 향상시킬 수 있습니다.
이러한 방법을 적용하여 수학을 공부하고 능숙해질 때, 수학의 매력과 재미를 느끼게 될 것입니다. 수학은 창의적 사고와 문제 해결 능력을 키워주는 도구로서, 일상생활에서도 유용하게 활용될 수 있습니다.

같은 질문을 역할을 바꿔서 해볼까요?

 

# 프롬프트

너는 논문을 작성하는 연구원이고 아래 질문과 관련된 논문을 작성해야 해. 수학을 잘하려면 어떻게 해야 할까?

# 답변

논문 제목: 수학 학습의 효율성 향상을 위한 전략 및 방법론
요약: 이 논문은 수학 학습의 효율성을 향상하기 위한 다양한 전략과 방법론에 대해 탐구한다. 수학을 잘하기 위해서는 단순히 공식과 개념을 암기하는 것 이상의 노력과 접근이 필요하다. 본 연구에서는 수학 학습을 위한 몇 가지 주요 전략과 방법론을 제안하고, 이를 통해 학습자들이 더욱 효과적으로 수학을 습득할 수 있는 방안을 제시한다.

1. 개인화된 학습 계획 수립: 수학 학습은 각 개인의 학습 스타일과 능력 수준에 맞춰져야 한다. 이를 위해 학습자들은 개인화된 학습 계획을 수립하고 목표를 설정해야 한다. 개인의 강점과 약점을 파악하고 이를 바탕으로 학습자들이 수학에 대한 동기부여를 유지할 수 있는 방법을 연구한다.
2. 문제 해결과 응용 중심의 학습: 수학은 문제 해결과 응용력을 키우는 과정이다. 따라서 학습자들은 이론적인 개념 습득에만 집중하는 것이 아니라 실제 문제를 풀어보고 응용하는 경험을 쌓아야 한다. 이를 통해 학습자들은 수학의 응용 가능성을 보다 명확하게 이해하고, 문제 해결 능력을 향상할 수 있다.
3. 개념의 깊은 이해를 위한 비주얼화와 상호작용: 수학은 추상적인 개념들로 이루어져 있기 때문에 학습자들은 개념을 비주얼 화하고 상호작용할 수 있는 도구와 자료를 활용해야 한다. 이를 위해 그래픽스, 애니메이션, 시뮬레이션 등의 기술을 활용하여 개념을 시각적으로 이해할 수 있는 방안을 제시한다.
4. 협력적 학습과 토론: 수학은 개인적인 학습뿐만 아니라 협력과 토론을 통해 더욱 풍부한 학습 경험을 제공한다. 학습자들은 그룹 활동이나 토론을 통해 문제 해결에 대한 다양한 접근법과 해석을 공유하고 토의함으로써 수학적인 사고력을 발전시킬 수 있다.
5. 지속적인 연습과 피드백: 수학은 반복적인 연습을 통해 개선되는 과정이다. 학습자들은 꾸준한 연습을 통해 문제 해결 능력을 강화하고, 피드백을 받으며 자신의 오류를 분석하고 개선할 수 있어야 한다. 이를 위해 자동화된 평가 도구와 피드백 시스템을 활용하여 학습자들의 학습 과정을 지속적으로 모니터링하고 지원하는 방안을 연구한다.

이 논문은 수학 학습의 효율성 향상을 위해 다양한 전략과 방법론을 제시하고, 이를 통해 학습자들이 수학에 대한 자신감과 이해력을 향상할 수 있는 기반을 마련하는 데 기여할 것으로 기대된다.

답변을 보니 문체나 형식 등이 주어진 역할과 목적에 따라 바뀌는 것을 확인할 수 있습니다. 하나의 질문에 대해 특정 관점에서 서술하도록 하고 싶다면 이렇게 역할과 의도를 명확하게 명시하는 것이 글을 작성하는데 도움이 됩니다. 

 

3. 프롬프트의 구성을 맞춰라

AI가 인지하는 말은 특정 구성이 존재합니다. 인간의 경우 대화의 맥락을 읽고 추론을 통해 어느 정도 유추가 가능하지만, AI의 경우 종종 맥락과 벗어나는 답변을 하는 경우가 있지요. 따라서 AI에게 제공해 아하는 형식과 구성을 맞추어서 질문하는 것이 좋습니다.

 

1. 역할 - 모델이 작성할 답변이 어떤 관점에서 서술하는지 지정합니다.

2. 명령 - 모델이 수행할 특정 작업 또는 명령

3. 문맥 - 외부 정보나 추가 맥락이 포함될 수 있으며 이는 모델이 더 나은 응답을 하도록 돕습니다.

4. 입력 데이터 - 응답받고자 하는 입력이나 질문

5. 출력 지시자 - 출력의 유형이나 형식을 나타냅니다.

 

일반적으로 프롬프트는 위와 같은 구성을 따라갑니다. (물론 위 구성을 맞추지 않아도 역할과 의도가 명확하면 대체로 좋은 정답을 줍니다.)

따라서 위 구성의 순서대로 AI에게 지시하면 대체로 좋은 정답을 얻을 수 있습니다.

 

아래는 프롬프트 예시입니다.

# 프롬프트

너는 블로그를 작성하는 블로거로 나를 도와서 블로그 포스팅 글을 작성하면 돼.

시간관리에 관해 블로그 포스팅을 작성해 줘. 아래 정보 참고해주고 아래 내용을 포함하여 작성해줘.

```
시간관리 매트릭스는 긴급성과 중요도에 따라 4가지 사분면으로 나누어 우선순위를 정하는 방법입니다. 이 방법은 미국의 대통령이었던 아이젠하워가 제안하고 코비가 발전시킨 것입니다. 이 방법을 사용하려면 할 일 목록을 작성하고 각 일의 긴급성과 중요도를 판단하여 4가지 사분면에 배정합니다. 그리고 각 사분면에 따라 일을 처리합니다. 제2사분면에 속하는 일은 장기적으로 가장 큰 가치를 창출하므로 많은 시간을 투자해야 하고, 제4사분면에 속하는 일은 무의미하고 불필요한 일이므로 삭제하거나 줄여야 합니다. 시간관리 매트릭스는 생산성과 행복을 높이는 도구입니다.
```
블로그 포스팅은 서론, 본론, 결론으로 나누어져 있으며, 서론은 200자, 본론은 2개의 단락으로 500자, 결론은 200자로 작성해줘.

출력은 SEO 형식에 맞게 작성해줘.

# 답변

제목: 시간관리 매트릭스: 우선순위를 정하고 생산성과 행복을 높이는 방법
서론 (200자): 시간은 우리 모두에게 제한적인 자원입니다. 효율적으로 시간을 관리하는 것은 개인과 조직의 성공을 위해 중요합니다. 이를 위해 아이젠하워가 제안하고 코비가 발전시킨 시간관리 매트릭스는 긴급성과 중요도를 고려하여 우선순위를 정하는 유용한 도구입니다. 이 방법을 사용하면 일의 가치와 시간 투자를 평가하여 일을 분류할 수 있습니다. 이 글에서는 시간관리 매트릭스의 작동 방식과 효과에 대해 알아보겠습니다.

본론 (2개의 단락, 각 500자):
1. 시간관리 매트릭스: 우선순위를 정하는 방법 시간관리 매트릭스는 할 일 목록을 효과적으로 관리하기 위해 긴급성과 중요도를 고려해 사분면으로 나누는 방법입니다. 사분면은 다음과 같이 구성됩니다.

제 1 사분면: 긴급하고 중요한 일
제 2 사분면: 중요하지만 긴급하지 않은 일
제 3 사분면: 긴급하지만 중요하지 않은 일
제 4 사분면: 긴급하지도 중요하지도 않은 일

먼저, 할 일 목록을 작성한 후 각 일의 긴급성과 중요도를 평가합니다. 그리고 사분면에 따라 일을 배정하고 처리합니다. 제1사분면에 속하는 긴급하고 중요한 일은 즉각적인 조치가 필요하므로 우선 처리해야 합니다. 제2사분면에 속하는 중요하지만 긴급하지 않은 일은 장기적인 가치를 창출하기 때문에 충분한 시간을 투자해야 합니다. 제3사분면에 속하는 긴급하지만 중요하지 않은 일은 가능하다면 다른 사람에게 위임하거나 최소한의 시간을 투자해야 합니다. 마지막으로, 제4사분면에 속하는 무의미하고 불필요한 일은 삭제하거나 줄여야 합니다.

2. 생산성과 행복을 높이는 효과 시간관리 매트릭스는 단순히 우선순위를 정하는 도구에 머무르지 않습니다. 올바르게 사용한다면 생산성과 행복을 높이는 데 도움을 줄 수 있습니다. 이 방법을 통해 우선순위가 높은 일에 집중하고, 중요한 일에 충분한 시간을 할애함으로써 성과를 향상할 수 있습니다. 또한, 제2사분면에 속하는 장기적 가치를 창출하는 일에 충분한 시간을 투자하면서도 긴급성을 낮추어 스트레스를 줄일 수 있습니다.
시간관리 매트릭스는 개인과 조직의 성공을 위한 강력한 도구입니다. 올바르게 활용하면 일의 우선순위를 명확하게 정하고, 효율적인 시간 분배를 통해 생산성과 행복을 극대화할 수 있습니다.

결론 (200자): 시간관리 매트릭스는 긴급성과 중요도를 고려하여할 일을 분류하는 효과적인 방법입니다. 이 도구를 사용하면 우리는 제한적인 시간 내에서 우선순위를 명확히 정하고 일을 처리할 수 있습니다. 긴급하고 중요한 일에 집중하고, 장기적 가치를 창출하는 일에 충분한 시간을 할애함으로써 생산성과 행복을 높일 수 있습니다. 시간관리 매트릭스를 적용하여 더 효율적으로 일을 처리하고 개인과 조직의 성공을 이루어 나가는 데 도움을 받아보세요.

마치며

오늘은 프롬프트 엔지니어의 AI에게 질문 잘하는 기술 첫 시간 기초 기술에 대한 포스팅을 작성하였습니다. 앞으로 제가 주로 사용하는 프롬프트 작성 기술을 예시와 사례를 들어서 설명할 예정이니 프롬프트 엔지니어링에 관심이 있거나 업무에서 ChatGPT를 활용하시는 분들에게 유용한 노하우를 전달드리겠습니다. ChatGPT의 활용은 앞으로 더 많은 분야에 적용될 것으로 보입니다. 인간의 지식노동의 일부를 AI가 대체하는 게 두렵다면 이를 잘 활용해서 앞서 나가는 것은 어떨까요?

오늘도 긴 글 읽어주셔서 감사합니다.

 

강의 요청과 같은 문의가 있다면 비공개 댓글로 남겨주시면 감사드리겠습니다.

댓글

💲 추천 글