LLM 시작과 끝, 프롬프트 엔지니어링

O(logn)·2023년 10월 7일
1
post-thumbnail
post-custom-banner

사진: UnsplashPineapple Supply Co.

프롬프트 엔지니어링이란?!

말은 거창하지만 ChatGPT에 최대 성능을 끌어내기 위해 다양한 대사로 말을 거는 것이다.

프롬프트 예시 링크
이런 프롬프트 질문지는 온라인 ai교육 사이트 수강 사은품으로 제공하는 등 유료 버전도 있고 자동으로 생성해주는 사이트도 있고 다양하다.

프롬프트 엔지니어링은 LLM모델의 성능을 검증하는 데 사용되기도 한다.

프롬프트 엔지니어링 방법론

먼저 가장 공신력 있는 OpenAI의 ChatGPT사용 설명서가 있다. 링크
다양한 방법이 있지만 일상에서 시도해볼법한 방법을 선별해 아래서 소개할 것이다. 예시는 openai에서 제공된 예시이지만 조금 각색 및 의역해서 적어놨다. 만약 playground를 사용해 직접 실험해보고자 한다면 한글이 아닌 영어로 질문해야 한다.

1. 지시 형식에 따라 질문하기

  • 최대한 구체적으로 질문하기

  • 시스템에 인격 부여하기

    system부분에 답변에 대한 지시사항을 적을 수 있다. 미국식 농담이라(이해가 안돼서) 하나도 안 웃기지만 formal한 느낌이랑은 거리가 있다는 것을 알 수 있다.

  • 구분기호 사용하여 입력 부분(초록과 제목) 명확히 구분하기

  • 답변 형식 예시 가르쳐 주기

    GPT를 은유적이고 수려한 문체로 답변하게 할 수 있다. System에 인격 부여하기 과정에서도 가능하지만, 예시가 있다면 더욱 원하는 답에 가까운 답변을 얻을 수 있다.

2. 참조할 수 있는 자료를 제공하고 그 자료를 기반으로 질문하기

아래는 openai에서 제공하는 playground에서 실험한 내용이다.

규칙과 참고 자료를 제시한 뒤 질문을 하고, 그 질문에 대한 답을 자료에서 찾아 인용하도록 시킬 수도 있다.

고객의 정형화된 문의에 대해 단계적으로 답변할 수 있도록 지시할 수 있다.

3. GPT가 능동적으로 답을 풀어나갈 수 있도록 단계적으로 질문하기

gpt는 정답을 기반으로 답변을 생성할 때 더욱 정확한 답변을 생성한다.

아래는 학생의 수학시험 답안을 채점하라는 지시문이다.

gpt는 맞다고 대답했지만 사실을 오답이다.

다음과 같이 수정하면 답변이 정확해 진 것을 확인할 수 있다.

  • Better

    먼저 gpt에게 문제를 풀어보라고 한 다음, 그 풀이를 기반으로 채점해보라고 제시함으로써 gpt의 실수를 방지할 수 있다.

더 공부해볼 내용

  1. 임베딩
profile
는 내 성장의 시간 복잡도!!
post-custom-banner

0개의 댓글