brunch

You can make anything
by writing

C.S.Lewis

by pangol Apr 11. 2023

chatGPT 실험기

쓸까? 말까?

구구컬리지에서 MAT - 검정고시 온라인 학습사이트에는 인공지능 기능이 들어가 있다. 인공지능 메튜는검정고시 기출문제를 학습과 분류를 담당하고 있는데.. 그런 와중에 chatGPT가 나타났다... 사실 GPT가 존재한다는 사실을 알고 있는지는 꽤 되었다. GPT를 개발한 OpenAI에서 제공하는 Copilot(프로그래밍을 도와주는 인공지능)을 사용한지 오래되었고 좋은데? 라는 생각이 들어서 OpenAI에서 제공하는 여러 가지 틈틈히 둘러보고 있었는데.. chatGPT가 나왔다.


가장 먼저 궁금해서 해본건 검정고시 수학을 잘 풀까? 였다. 이 때는 GPT버전이 3.5 였다. 잘 못풀었다. GPT4는 잘 푼다. ^^;

 https://youtu.be/HVhAfS6qEVs

인공지능은 검정고시 수학을 풀 수 있을까?

검정고시 학습 사이트를 만들면서 동영상도 엄청 만들었는데 기출문제 해설 콘텐츠를 만들고 템플릿 제작 후에 프로그래밍해서 자동으로 영상을 생성할 수 있게 자동화해놨다. 그렇게 거의 3~4개월동안 하루에 1개 또는 2개 씩 영상으로 업로드 할 수 있었다.

https://www.youtube.com/@mat_99college

chatGPT를 이런 콘텐츠를 만드는 걸 자동화하는데 써볼 수 있을까? 유투브에 보면 블로그 글 100개 10분만에 만들었다는 영상도 많으니까.. 그런데 유투브 영상 보면서 사용한게 아니라


먼저

실험을 해봤다.


첫 번째 실험은 동일한 주제에 유사한 퀄리티를 가진 글을 계속 생성할 수 있을까? 였다. 유사한 퀄리티를 가진 글을 계속 만들어줘야 내가 원하는 퀄리티의 글을 만들어낼 수 있다고 생각했고 평가기준을 뒀다.


평가기준은 유사도. 두 개의 글의 유사도를 평가했을 때 일관적으로 비슷하게 나오는지 보고 싶었다. 유사도는 코사인 유사도(문자 안에 동일한 단어가 어느정도 포함되어 있냐)를 바탕으로 했고 chatGPT한테 시켜서 프로그램으로 작성해달라고 했다.

chatGPT가 만들어준 코사인 유사도 프로그램 동일한 문장을 집어넣으면 유사도가 100% 나온다


평가기준을 잡았으니 이제 첫 번째 실험을 해봤다.

chatGPT 버전은 4, 프롬프트에는 '딥러닝'만 입력했다. 딥러닝을 입력할 때는 하나의 세션에 입력하고 닫고 다른 세션을 열어서 입력해서 결과를 받는 식으로 진행했다.

동일 주제 유사도 실험

첫 번째와 두 번째, 세 번째는 입력 했던 날짜가 다르다. 그래서 보면 1번과 2번,3번의 유사도는 24%정도로 완전히 다르지만 같은 날짜에 입력한 2번과 3번은 유사도는 46%로 올라가는 것을 확인할 수 있었다. 이 후에는 동일한 실험을 몇 번 진행했었는데 같은 날짜에 시도했을 때 유사도가 50%정도 되는 걸 확인할 수 있었다. (이게 GPT의 차이인지 세션이 종료되도 기록이 남아서 비슷한 콘텐츠를 출력되는 건지는 확인불가)

이 실험의 결과는 동일한 주제(인풋)일 때 비슷한 퀄리티가 유지 된다는 걸 확인할 수 있었다.


두 번째 실험은 어떤 것(인풋)이 결과에 영향을 많이 미치는 걸까?를 알고 싶었다. 두 번째 실험의 평가기준은 유사도와 만족도로 두었다. 유사도를 평가기준으로 둔이유는 입력에 변경을 주었을 때 결과가 많이 달라진다면, 즉 유사도가 떨어진다면, 그 입력이 영향을 많이 미친다고 판단할 수 있다고 생각했다. 만족도는 주관적인 지표로 0 부터 1사이의 값을 매겼다.


먼저, 입력 프롬프트에 주제와 목적을 같이 기입했다. 예를 들어 딥러닝을 설명해줘 또는 딥러닝에 대해 기사를 써줘와 같이 설명, 기사를 써줘와 같은 목적을 작성했다. 결과는 아래와 같다. 딥러닝이라는 주제만 입력했을 때도 만족도 0.7정도로 우수했고(아마도 딥러닝이라는 주제는 이미 많은 학습 데이터가 있어서 그랬을 것 같다.) 주제만 입력했을 때와 목적을 같이 입력했을 때 유사도가 매우 달랐다. 즉 영향령 있는 요인이라고 판단했다.

목적도 같이 쓰면 달라짐


다음은 길이을 같이 작성해 봤다. 처음은 10문단을 써달라고 했고 두 번째는 1000자를 입력했다. 길이를 같이 써주는 것도 유사도가 매우 달랐으며 10문단 보다는 1000자를 입력했을 때 더 만족도가 좋았다. 여기서 유효한 파라미터로 목적, 길이라는 것을 얻을 수 있었다.

문단보다는 글자수가 따봉이다.

다음은 역할을 지정하면 더 좋아진다 길래, 초등학생, 인공지능 교수, 프로그래머, 고등학생을 각각 넣어서 실험을 해봤는데 역할, 사람 명사가 들어가면 글의 퀄리티가 훨씬 좋아지는 걸 체감할 수 있었다. 그리고 인공지능 교수와 프로그래머의 글이 상당히 비슷하다는 걸 유사도에서 확인할 수 있었고 이에 따라 역할을 지정하는 건 전문가와 같은 단어만을 사용해도 원하는 글의 퀄리티를 얻을 수 있겠다는 생각이 들었다.

일단 전문가 집어넣고 시작하세요

프로그래밍을 할 때 copilot을 잘 사용하려면 해당 프로젝트의 구조를 내가 설계하고 작성을 요청할 때 좋은 퀄리티의 프로그래밍을 하는 것을 토대로 글도 내가 구조를 설계하고 작성을 요청하면 더 좋은 퀄리티가 나오지 않을까 싶어서 그렇게 햅봤더니.. 역시나 제일 퀄리티가 좋았다. 아래는 입력한 프롬프트다. 위에서 실험 결과를 토대로 글자수, 사람, 목적까지 다 작성하고 글의 문단들의 주제를 잡아줬다.


전문가가 딥러닝을 소개하는 뉴스기사를 아래 조건에 맞게 작성해
- 제목: 딥러닝 영향을 강조하는 제목
- 도입 문단, 100자 이내: 딥러닝 최신 활용 사례
- 본문 문단, 500자 이내: 딥러닝의 원리
- 본문 문단, 300자 이내: 딥러닝의 한계
- 결론 문단, 100자 이내: 딥러닝의 미래


개인적으로 이렇게 입력시킨 결과의 만족도는 0.9가 나왔고 유사도도 다른 것과 매우 달랐다

인공지능도 다 알려줘야 한다.


이렇게 짧은 실험으로 어떻게 프롬프트를 작성해야 하는지 감을 잡을 수 있었고 목적, 길이, 역할, 문단 구조 짜놓기 라는 중요 파라미터를 도출해 낼 수 있었습니다. 여기서 더 실험을 진행을 하기도 했는데 너무 글이 길어지는 것 같아 이만 갈무리 할까 합니다.


여러분들도 실험해보면서 한번 써보셨으면 좋겠습니다.

저는 이만 매튜 성능 올리러 갑니다. :)

매거진의 이전글 강의를 기획하면서 (의견 주세요^^) 
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari