기업에서의 활용 사례는 아니지만,
GPT를 활용하는 좋은 방법인 듯 하여 공유드리고자 합니다.
GPT로 여러가지 영어 시험 문제를 출제해 보고, 자동화까지 해 보겠습니다.
1) 일단 그냥 만들어 달라고 하기
6개월 전쯤에 이렇게 비슷하게 시도해 본 적 있습니다.
그 때는 5지선다 문제에서 정답이 2개인 경우가 많았고,
제가 2개라고 지적을 하면 “미안합니다. 제가 헷갈렸네요”라고 하면서도
끝내 정답이 1개이도록 제대로 고쳐주지를 못했었습니다.
그래서 아직은 한계가 있구나 하고 넘었갔었죠.
대형 영어학원에 강의를 갈 일이 있어서 혹시나 싶어 다시 시켜보니,
역시나 달라졌네요 우리 GPT.
무엇보다 이제 GPT-4o로 했더니 문제도 잘 만들고 대답도 엄청 빨라서 너무 편합니다.
프롬프트 : 영어 시험 문제 3개를 출제해줘
대충 말한 프롬프트인데 종류별로 참 잘 만들어주네요.
GPT가 실수 좀 하고 그러면 제가 프롬프트 노하우 좀 발휘하려고 했는데
처음부터 예상을 벗어나버리는 엄청 대단 GPT~
그래도 이건 너무 랜덤이니까,
학원 선생님의 니즈와 의도에 맞게 나름 프롬프트를 만들어봅니다.
2) 문제 유형, 구조, 형식을 프롬프트로 지정하기
시제 문제 3개 출제를 지시했고,
문제의 구조, 형식, 표현 방법, 4지선다, 정답 갯수 등을 지정해줬습니다.
깔끔하네요.
더 이상의 설명이 필요없네요.
3) 지문을 활용한 독해 문제 만들기
이번에는 지문 독해 문제를 만들어봅니다.
아까와는 형식이 많이 다른 문제이니 새로운 대화창을 엽니다.
(아까 나눴던 대화가 다른 유형의 문제 출제에도 계속 영향을 미칠까봐)
우선 독해에 활용한 영어 뉴스 기사 하나를 지문으로 만듭니다.
저는 핵심 요약 문장을 선택하는 문제를 만들거라서,
이 뉴스 기사의 핵심 요약 문장을 ‘정답’으로 먼저 하나를 만듭니다.
이제 이 지문과 정답을 활용해서 전체 시험 문제를 만들었습니다.
지문 - 문제 - 보기 - 정답
정리가 잘 된 것 같아요. 생각보다 쉽네요.
4) 대량 생성하기
일단 비슷한 문제 5개를 시켰습니다.
그럴듯하게 잘 만드는 것 같았는데, 자세히 보니 같은 문제를 여러번 만들고 있네요.
뉴스 기사 제목을 차례대로 준다거나 하는 프롬프트를 좀 써서 잘 가르쳐야 하겠네요.
이번에는 GPT 대화창에서 하지 않고, 구글 시트로 가서
대량 생성 자동화 까지 시도해 보려고 합니다.
5) 대량 생성 자동화
구글 시트에는 ‘부가 기능’을 설치할 수 있습니다.
구글 워크스페이스는 사용자가 아주 많은 SaaS이고,
제3자 개발자들이 좋은 프로그램을 만들어서 배포할 수 있는 플랫폼 역할도 합니다.
부가기능 설치하기 들어가서 GPT 라고 검색을 합니다.
아주 많은 프로그램들이 있지만,
1번, 2번에 나오는 두 프로그램이 다운로드 수가 압도적입니다.
저는 GPT for Google Sheets and Docs를 사용하고 있습니다.
원래 무료라서 엄청난 인기를 끌었었는데,
근래에 유료화가 되어서 아마 지금은 사용하시는 분이 거의 없을 겁니다.
저는 가끔 콘텐츠 대량생성이 필요할 때만 유료로 쓰고 있습니다.
이 부가기능을 설치하면 ‘확장 프로그램’ 메뉴바에 추가가 됩니다.
마우스 올려서 ‘Open’을 눌러주면 우측에 사이드바 형태로 실행창이 뜹니다.
구글시트에서 GPT의 생성 기능을 사용하려면 두 곳에 돈을 내야 합니다.
1) 오픈AI (ChatGPT Open API를 발급받아서 연결해야 함, 글 쓸때마다 API 사용료 발생)
2) GPT for Sheets and Docs 개발사 (선불로 20$ 정도 결제를 해야 함)
저는 우측 하단에 $13.07가 남아있네요.
$20 결제해놓고 잘 쓰고 있습니다.
우측 사이드바에서 모든 GPT 관련 함수들을 친절하게 설명해줍니다.
사용하기는 아주 쉽습니다.
(자세한 설명은 생략할게요. 함수가 많아서 이거 설명하는데만 따로 글 하나 나올 듯 합니다)
우선 A1 셀에서 GPT_LIST 함수를 써서 영어 뉴스 기사 제목을 만들었습니다.
=GPT 함수를 쓰면 하나의 셀 안에 모든 출력이 다 들어가고,
=GPT_LIST 함수를 쓰면 GPT의 응답이 여러 줄인 경우에는 여러 행으로 나눠서 넣어줍니다.
A1셀 프롬프트 : =gpt_list("영어 뉴스 기사 제목 10개")
이제 B1 셀에는 =GPT 함수를 이용해서 뉴스기사 본문을 씁니다.
B1셀 프롬프트 : =gpt("이 뉴스기사 제목에 어울리는 다섯줄짜리 뉴스 기사 본문 작성해줘",A1)
C1 셀에는 영어 시험 문제를 만듭니다.
C1셀 프롬프트 : =gpt("이 뉴스 기사를 읽고 핵심 문장을 선택하는 영어 문제 출제해줘. 문제는 '이 기사의 핵심을 요약한 문장으로 가장 올바른 것은?', 보기로 4개의 문장을 만들어줘. 정답은 반드시 1개여야 한다. 정답은 별도로 마지막에 표시해줘",B1)
이제 준비가 끝났네요.
A1셀의 뉴스 제목을 참고해서 B1셀에 뉴스 본문이 만들어지고,
B1셀 뉴스 본문을 참고해서 C1셀에 시험문제가 만들어집니다.
구글 시트 같은 스프레드시트는 이런 데이터 구조화가 강점이죠.
이제 아래와 같은 모습으로 준비가 되었습니다.
데이터 구조화가 잘 되었으니 이제 함수를 복사해서 구조를 반복 실행시킵니다.
A1셀부터 A10셀까지 뉴스 제목은 준비되어 있으니,
B1셀과 C1셀을 복사해서 그대로 B10, C10셀까지 붙여넣기 해줍니다.
그러면 아래와 같이 모든 칸에서 GPT 함수가 작동하며 뉴스 본문을 만들고 시험문제를 만듭니다.
좀 기다리니 이렇게 구글 시트를 가득 채워주네요.
이 과정에서 저의 오픈AI API 비용이 발생했을 것이고,
GPT for Sheets and Docs에서는 잔고가 줄어들었을겁니다.
하지만 그 단가가 워낙 저렴해서 이 정도 자동화 실행으로는 몇십원도 안 나오는 것 같습니다.
자~ 오늘은 이렇게 영어 과목의 여러가지 시험 문제 출제와 대량생성 자동화를 알아봤습니다.
비슷한 과정을 통해서 또 어떤걸 생성하고 자동화 할 수 있을까요?
좋은 영감을 얻으셨길 바랍니다.
감사합니다.
PS.
생성된 문제의 수준과 디테일은 별로 언급하지 않았습니다.
대량 생성 자동화를 하게 되면 하나의 고정된 프롬프트가
여러 문제에 대해서 수십번 수백번의 생성을 하게 됩니다.
Chat 대화창에서는 수십번 대화하며 딱 한번만 좋은 글이 나오면 우리가 선택하면 됐죠.
하지만 API를 활용하고 대량으로 생성할 때는 반복적으로 일정하게 좋은 품질의 글이 나와야 합니다.
그래서 프롬프트를 다듬는 시간이 더 길어지고 중요해집니다.
더 완성도 높은 수준의 문제를 자동으로 대량으로 만들어내려면
문제를 만들도록 지시하는 프롬프트를 더 갈고 닦아야겠죠.
그래서 생성형 AI가 온 세상에 보급되더라도,
결국 사람이 할 일이 남아있고, 오히려 그 남아있는 부분이 점점 더 중요해지는 것 같아요.
프롬프트를 만들고, 고치고, 다듬는 그 고민의 시간이 중요합니다.