Prompt란?
Prompt는 메시지 또는 명령으로, 특히 컴퓨터 분야에서 사용되는 용어입니다.
기존에는 연극이나 TV프로그램에서 진행자가 특정 행동이나 대사를 지시하는 메시지를 의미했습니다.
하지만 컴퓨터 분야에서는 사용자가 컴퓨터에게 명령을 내릴 때 사용하는 명령어를 나타냅니다.
예를 들어, 터미널에서는 입력창 글고 GPT에서는 질문을 입력하는 곳이 Prompt입니다.
GPT - Promt
Prompt Engineering란?
Prompt engineering은 생성형 인공지능 모델을 사용할 때 중요한 개념으로, 적절한 입력 프롬프트를 설계하고 최적화하는 작업을 가리킵니다. 프롬프트 엔지니어링을 잘 할수록 모델이 원하는 결과물을 생성하고 사용자의 의도를 정확하게 이해시킬 수 있습니다. 즉, 생성형 AI 모델을 효과적으로 활용하기 위한 방법입니다.
GPT를 사용한다고 가정하면, 사용자는 GPT에게 내가 원하는 답을 얻기 위해 사용자의 의도를 파악시켜야합니다. 이를 위해 어떤 질문부터 해야할지 그리고 어떤 어휘와 문맥을 사용할지 고려해야하고 최적화해야합니다. 결과가 나온 후에도 더 나은 출력 값을 얻기 위해 조정해야할 필요도 있을 것입니다. 이러한 것들을 Prompt Engieering이라고 부릅니다.
##ChatGPT를 활용하는 방법.
1. 페르소나 패턴
GPT에게 질문하기 전 GPT에게 내가 어떤 질문을 할 것인지 알려주거나 어떤 역할을 해달라고 요청하는 방법입니다. 예시는 다음과 같습니다.
1
“여러분은 회사 선임 엔지니어인 척을 할 것입니다. 보안과 성능에 주의를 기울여 다음 코드를 검토하세요.”
위와 같은 Prompt를 입력한다면 GPT는 특정 관점이나 견해을 일관되게 답변을 해줄 것입니다. 즉, 내가 원하는 결과를 세밀하게 있을 수 있습니다.
2. 레시피 패턴
이 패턴은 달성하고 싶은 목표가 있고 어떤 것을 이용해야하는지 알고 있을 때 사용하면 좋습니다. 즉, 내가 서비스를 만드는데 필요한 재료는 알고 있으나 순서와 방법을 모를 때 사용하면 좋은 방법입니다. 예시는 다음과 같습니다.
1
2
3
4
5
"데이터를 암호화하는 Rust 프로그램을 작성하려고 합니다.
사용자 입력을 읽고 유효성을 검사하고 암호화하고 암호화된 데이터를 반환해야 한다는 것을 알고 있습니다.
이를 위해 전체 단계 순서를 알려주고 누락된 단계를 채우고 불필요한 단계가 있으면 알려주세요."
3. 리플렉션 패턴
GPT 답변의 근거를 알고 싶다면 다음과 같이 입력하세요.
1
2
3
"답변을 제공할 때는 답변의 근거와 가정을 설명하세요.
선택한 사항을 설명하고 제한 사항이나 엣지 케이스를 설명하시오"
4. 거부 차단기 패턴
GPT를 사용하다보면 GPT가 질문을 거부할 때가 있습니다. 그럴때 대체 답변을 얻고 싶다면 다음과 같이 입력하세요.
1
2
3
"질문에 답할 수 없을 때마다, 질문에 답할 수 없는 이유를 설명하세요.
답변할 수 있는 질문의 대체 표현을 하나 이상 제공하세요."
5. 뒤집힌 상호작용 패턴
뒤집힌 상호작용 패턴이란 말 그대로 상호작용이 뒤집힌 것입니다. 원하는 것은 있지만 어떤식으로 질문 해야할지 모를 때 사용하면 유용합니다. 다음과 같이 질문하면 원하는 답변이 나올 때까지 GPT가 질문해줄 것입니다.
1
2
3
"AWS에 있는 웹 서버에 Rust 바이너리를 배포하기 위한 질문을 나에게 하세요.
필요한 정보를 모두 얻으면 배포를 자동화하는 bash 스크립트를 작성하세요"
ChatGPT 를 200% 활용하는 방법! feat. 프롬프트 엔지니어링
위 패턴들은 위 영상의 도움을 받아 작성한 것들입니다.