먼저, 제가 좀 사서 고생하는 스타일입니다.
다들 Coursera 과정 열심히 정주행하지만, 저는 대안에서 주어진 논문을…
… 읽진 않았습니다. 저에겐 대신 읽어주고 이해시켜줄 GPT가 있으니까요.
그래도 저는 프롬프트 엔지니어링 개선 사례를 통한 색다른 주제를 선정해서 여러분들께 공유하려 합니다.
페이커가 승리했을 때 열광했던 것 처럼, 우리는 게임을 직접 참여하지 않고, 관망할 생각입니다.
그래서 저는 게임 관전 컨셉을 잡았습니다.
그전에, 논문에 제시된 프롬프트 개선 기법을 훑어보도록 했습니다.
하지만 단순히 고급 데이터 분석을 쓰기엔 세션 시간의 한계 때문에, 일종의 템플릿스러운 개념의 GPTs 를 세팅했습니다.
조만간 풀버전을 단톡방에 공유하도록 하겠습니다. 방패를 이미 내려놨으니 방패를 뚫을 이유는 없으니까요.(?)
채팅 내역을 공유하도록 하겠습니다.
https://chat.openai.com/share/84b588d9-08ad-445e-a5df-d1a23b335107
처음에 한글로 했는데, GPT-3.5 및 GPT-4 모두 계속 틀려서 계속 교정해 봤으나 한계를 느껴서 영어로 했습니다. 유창하지 않지만 몇번 고친 끝에 일단 원하는 대로 나왔습니다.
내용은 대충 이렇습니다.
369 게임을 한다. 369 규칙은 다들 아실 테니 규칙은 설명하지 않습니다.
나는 주최자, GPT는 심판, 그리고 4명의 플레이어 배치
플레이어가 말한 숫자 및 박수소리 결과물을 GPT가 나에게 답변으로 전달
전달 시 4명의 플레이어가 한 세트씩 말하고 그 결과를 GPT가 답변.
나는 ‘시작’ 하면 게임 시작, ‘다음’ 하면 다음 세트…
플레이어는 언젠가 실수할 수 있음 (물론 이렇게 말해봐야 ‘니네들 랜덤’ 이말하는 꼴이지만
플레이어가 규칙을 어긴 말을 했을 때, 심판은 이를 캐치하고 벌칙을 줄 준비
만약 플레이어가 틀렸는데 심판 이 발견하지 못할 경우, 심판이 벌칙을 받는다.
벌칙 이름은 다들 ‘인디안~밥 오예’ 아시죠? 벌칙은 제가 줍니다.
플레이어가 패배하면 게임 종료
여기서 사용한 기법을 논문이 제시한 기법에서 두가지 발견했네요.
게임 플레이("Game Play") 패턴
출력 자동화("Output Automater") 패턴
그래서 제가 논문에 정의를 읽어달라 했더니…
에휴… 그냥 제가 곰국을 마시고 말죠…
먼저 게임 플레이 패턴의 의도를 논문 기술한 부분을 DeepL로 번역했습니다.
1) 의도와 맥락: 이 패턴의 의도는 게임을 만드는 것입니다. 이 패턴은 시각화 생성기와 시각화 생성기와 결합하여 게임에 이미지를 추가할 수 있습니다. 게임은 특정 주제를 중심으로 진행되며 LLM 이 게임 플레이를 안내합니다. 이 패턴은 특히 효과적입니다. 게임 규칙의 범위가 상대적으로 제한되어 있지만 게임 콘텐츠의 범위가 광범위할 것으로 예상되는 경우에 특히 효과적입니다. 사용자는 사용자는 제한된 규칙 세트를 지정할 수 있으며, 그러면 LLM은 게임 플레이를 위한 콘텐츠 본문을 자동으로 생성할 수 있습니다.
그다음, 논문에 소개한 출력 자동화 패턴도 같이 번역해 보았습니다.
의도 및 컨텍스트: 이 패턴의 의도는 LLM이 스크립트 또는 기타 자동화 아티팩트를 생성하여 스크립트 또는 기타 자동화 아티팩트를 생성하는 것입니다. 목표는 LLM 출력 권장 사항을 구현하는 데 필요한 수작업을 줄이는 것이 목표입니다.
네?
하시는 분들을 위해 쉽게 읽어드리면, ‘GPT야 너에게 출력 형식을 제안할 테니, 대답할 때 이런 형식으로 출력해 줘’ 입니다. 전문직들이 GPT를 사용할 때 흔하게 사용하는 방식이죠.
예를 들면, 웹 개발자가 원하는 목적과 구현 방안을 GPT에게 요구한 뒤, 예시를 요구하면 소스 코드를 제공해 달라는 패턴이 있고,
통계 분석 시, 쉽게 말하면 GPT에게 통계 그래프를 그려달라 입니다. 네, 그려 줍니다.
음악 작곡 시, 필요할 때마다 코드를 알려달라 할 수 있고,
기타 등등…
논문을 원하신다면 기꺼이 공유해 드리겠습니다:
A Prompt Pattern Catalog to Enhance Prompt Engineering with ChatGPT곰국은 링크 미리보기가 되는데 GPT 공유 링크는 미리보기가 안되나 봅니다.
물론, 내가 사용한 프롬프트 개선 기법을 GPT에게 알려달라 했고,
GPT가 알려준 토대로 기법을 읊었습니다.
문서에 따르면 프롬프트에 사용된 기술은 프롬프트 엔지니어링의 "게임 플레이" 패턴과 "출력 자동 생성기" 패턴의 요소를 조합한 것입니다.
"게임 플레이" 패턴에는 게임 형태로 출력을 생성하는 대규모 언어 모델(LLM)이 포함됩니다. 이는 "369" 게임의 규칙을 설명하고 게임 컨텍스트 내에서 LLM이 특정 역할을 하는 시나리오를 설정할 때 프롬프트에서 분명하게 드러납니다.
또한 프롬프트에 설명된 대로 특정 로직이나 규칙을 따르는 일련의 단계 또는 출력을 생성하는 "출력 자동 생성기" 패턴의 요소도 있습니다. 이 패턴은 일반적으로 자동화 작업과 대화에서 일련의 단계가 생성되는 시나리오에 사용됩니다. 게임이 작업을 엄격하게 자동화하지는 않지만, 게임의 규칙에 따라 논리적 순서를 따르며 이 패턴에 느슨하게 부합합니다.
두 패턴 모두 프롬프트가 단순한 질의응답 형식을 넘어 LLM에서 특정 상호작용이나 출력을 생성하도록 구조화할 수 있는 방법을 강조합니다.
이것으로 저의 진도 인증 겸해서 이상 마치도록 하겠습니다.
제가 전에 이런 소식을 접했습니다. “게임을 직접 즐기는 것보다 시청을 선호한다”.
통계청 블로그에 소개한 바 있습니다:
아직도 게임, '직접'하세요? 전 '봅니다'!이걸 응용해서 “야바위” 같은 확률형 게임도 적용시켜서 “강건너 불구경”도 가능하다 하겠습니다.
GPT한테 게임 알아서 시키고 나는 순서대로 진행하는 구경을 합니다.
물론 아예 완전히 진행 상황을 구경할 수는 있지만… 해봤지만 개인적으로 추천하기 어려웠습니다. 직접 해보셔도 됩니다.
이제 진짜 마치도록 하겠습니다.