Custom GPT는 직접 나의 데이터를 이용해서 챗봇을 만들 수 있다.
GPT 지식 확인하기
gpt4-turbo 모델이 2023년 4월 데이터까지 학습을 했기 때문에 왠만한 지식은 대부분 알고 있다. 물론 정신의학, 심리학도 마찬가지. 또한 웹검색을 하기 때문에 오은영 박사님에 대해 알고 있을 것이다.
역시나, 금쪽이 방송에서 활동하는 정신과의사로 정확히 대답을 해주었다.
오은영 박사님의 화법을 적용시키고 싶어서 오박사님의 인터뷰나 강연이 필요했다. 먼저 웹검색을 할 줄 아는 gpt4에게 인터뷰를 찾아오라고 요청했다.
한국어로 대답하라고 할걸. 그래도 6개나 찾아왔다.
그냥 GPT4에게 오은영 박사님 말투를 따라할수 있는지 물어보았더니, 흔쾌히 알겠다고 한다. 대중에 알려진 그녀의 말투를 기반으로 한다라… 내 머리속에 있는 바로 그 목소리와 말투이길 기대하며 테스트를 해본다.
음.. 이악물고 오은영 박사님 목소리로 머리속에서 흉내내며 읽으면 그럴싸하지만, 확 와닿지 않고 게다가 어색하다.
그래, GPT4가 할 수 없는 것을 Custom GPT로 만들자.
준비물
정신의학, 심리학 전공 서적 파일들
오은영 박사님 강연 대본
ChatGPT Pro
1. 정신의학, 심리학 전공서적
자체적으로 학습한 데이터 도 있겠지만, 보다 전문적이고 특화된 챗봇을 만들기 위해 전공서적을 넣어주기로 한다. 난 이 분야에 대해서 아무것도 몰라서 역시나 gpt4에게 물어보았다.
좋았어. 이 책들을 찾아 넣으면 되겠다.
저작권 이슈에서 머뭇하는 gpt4. 그래 니 손에 피는 묻히기 싫다는거지. 더러운 일은 내가 직접 하기로 하고 구글에 검색어를 입력한다.
레딧에서 pdf 파일을 다운 받을 수 있었다 .
저작권이 안전한 서적을 찾고 싶다면 Open Textbook Library 웹사이트를 이용할 수 있다. 이곳은 무료로 자유롭게 이용할 수 있다.
이것저것 많이 다운로드 받았다.
⚠️ GPTs 에는 파일 개수의 제한이 있다. 20개 까지 업로드 가능하며, 각 파일의 최대 용량은 512MB이다.
무지성으로 와다다 올리지 말고, pdf 파일들의 용량이 굉장히 적으니 모든 책을 하나의 pdf 파일로 합치기로 한다. 나는 Adobe Acrobat을 이용해서 작업했다.
✔️ 첫번째 준비물 완료.
오은영 박사님 강연 대본
오은영 박사님의 말투와 화법을 적용 시키기 위해, 실제 오박사님께서 말씀하시는 영상의 대본을 넣어주기로 한다. 금쪽이가 가장 메인 프로그램이지만, 여러명이서 영상을 보면서 대화하기 때문에, 오영은 박사님이 혼자 말씀하시는 강연 위주로 영상을 찾았다
유튜브 오디오 추출
유튜브에서 생성되는 한국어 자막은 정말이지 끔찍하다. 클로바 노트를 이용하기 위해 원하는 영상들의 오디오를 다운로드 받기로 한다. 이런걸 해주는 무료 웹페이지들도 많지만, 직접 코드를 돌려서 하기로 했다. 유튜브 오디오 추출방법은 네이버 블로그와 노션에 정리해두었다.
네이버 클로바 노트
다운로드 받은 오디오 파일들을 클로바노트에 업로드해서 노트를 생성한다.
다섯개의 파일의 노트를 모두 만들었다. 바로 텍스트파일을 다운로드 받지 말고, GPT가 알아보기 쉽게 하기 위해서 몇가지 작업을 손봐주기로 한다.
먼저 참여자 이름을 명시한다. 강연 파일들이라 대부분 오박사님이 말씀하시지만 간혹 사회자나 인터뷰가 있는 경우를 위해.
그리고 무엇보다 어떤 파일에서는 오은영박사님이 참여자1, 다른파일에서는 참여자2 이런식으로 랜덤한 번호를 부여받기위해서, 모든 파일에서 “오박사”라고 통일 시킨다. 그러면 GPT가 혼란없이 오박사라고 표시된 문장들만 읽을 것이다.
이렇게 5개의 txt파일이 생성되었다. 하지만
⚠️ GPTs 에는 파일 개수의 제한이 있다. 20개 까지 업로드 가능하며, 각 파일의 최대 용량은 512MB이다.
하나의 텍스트 파일로 합쳐서 올리기로 한다. 이 작업도 앞으로의 자동화를 위해 직접 combine_txt 코드를 작성했다.
✔️ 이로서 두번째 준비물 완료.
3. ChatGPT Pro
Configration
자 이제 직접 Custom GPT를 만들어보자.
먼저 이름을 지어주고, 프로필 사진을 업로드 했다. 이 과정을 gpt와 대화하면서 해도 되는데 귀찮아서 난 그냥 직접 해버리는 편.
합쳐서 만들어준 전공서적들과 오박사님 강연 모음 파일을 업로드한다. 그리고 이미지 생성할 일은 없으므로 Dall-E는 해제하였다.
Create
이제 대화로 내가 원하는것을 요목조목 설명해주어야 한다.
계속 새로고침 왔다갔다하면서 명령했더니 대화 내용이 다 없다. 기억에 의존해서 써본다.
you should talk as if you are 오영은 박사님 based on ‘오박사님 강연 모음.txt’
always check ‘DSM-5.pdf’ first.
극존칭은 쓰지마.
사용자를 부를때는 ‘금쪽이’ 라고 해.
한국어로 대답해.
대략 이정도 생각이 난다. 계속 미리보기에서 테스트를 해보면서 원하는 입맛대로 튜닝을 할 수 있다.
그러면 Configration의 Instructions 가 그에 맞게 변경된다.
마지막으로 conversation starter 4개를 입력했다.
Publish!
By 짱구 라고 나온다. GPT가 결제정보를 가져왔다고하는데, 내 카드가 짱구그림이 그려져있어서 카드네임을 짱구로 해놨더니 그걸 가져와버렷다.
급하게 openai 설정으로 가서 이름을 huhsame으로 바꿔보았지만 GPTs 엔 반영이 안된다. 영원히 짱구로 살아야하는걸까 ? 나쁘지 않을지도
Result
어쨋든 완성된 오운영 챗봇이다.
“회사 사람이 너무 싫어요”
Insight
모델을 새로 학습시키는 것은 아니다. gpt가 내가 올린 자료를 참고만 할뿐
openai가 가지지못한 자체적인 데이터가 있는 회사라면 GPTs Store를 통해 많은 수익을 낼 것이라 본다.
개인사용자에게는 custom instruction의 확장이라고 볼 수 있다. 내가 원하는 기능별로 GPT가 어떻게 해줄지 에이전트로 활용할 수 있다.
공부한 노트나 일기 자료들을 올려서 활용하는게 아직까지는 가장 쓸모있을 것같다.
이후에는 GPTs Actions 기능을 추가해서 확장성있는 Custom GPT를 만들어보고 가능성을 알아보도록 한다.
끝.
@huhsame