요즘 워낙 핫한 ChatGPT.
나도 스터디도 해보고 몇번 써보긴 했는데.. 막상 .. 어디에 써야할지 감을 못잡았다. 시대의 빠른 발전에 적응하지 못하는 아재 개발자에게 신기술은 우와 + 많은 고민을 주는 것 같다.
그러다가, 최근 고민하고 있던 이슈를 해결하기 위해서 너무 좋은 파트너가 아닐까 생각이 들어서 한번 테스트를 해보았다.
바로 “기획보조” 업무를 같이 하는 것 이었다.
지난 2월 초부터 내가 판매하고 있는 SPUM 어셋을 활용한 예제게임 제작 프로젝트인 “스펌매치” 를 진행중에 있었는데 갑작스럽게 2월 말부터 기획을 함께 도와주시고 있던 똥믈리에님이 이탈하게 되어서 여러모로 좀 고민중이었던 상태.
물론, 내가 그 역할을 도맡아서 할 수도 있고, 갖고 있는 레퍼런스도 원래 내 스타일로 여러개 있는 편이지만.. 오래간만에 누군가와 협업을 하고 후진양성을 한다는 느낌으로 일하던 방식이 꽤 즐거워서 진행을 제대로 못하고 있었다.
업무 특성상 카톡 메신저를 기반으로 의견을 나누고, 이를 똥믈리에님이 작성해주시면 같이 고민해보고 검토해보고 이런 작업을 해봤던 건데, 과거였으면 아주 어색한 작업이었겠지만.. 코로나 시대를 겪으며 온라인 커뮤니케이션이 익숙해지자 꽤나 재밌는 + 과거 사설 bbs 통신 시절이 생각나는 매력적인 작업 방식이기도 했다.
그래서 내가 혼자 다시 작업을 하느냐 + 새로운 팀원을 구해서 교류해보냐.. + 기존 팀원들의 롤을 바꿔서 작업을 해보냐.. 하는 선택지점에서…
‘ 어? 그러면 활용성을 잘 못느끼던 ChatGPT 와 함께 해볼 수 있지 않을까? ‘
때마침 ChatGPT 는 써본적이 있었고, 작년부터 틈틈히 인공지능 분야 스터디는 해와서 약간의 이해도는 갖춘 상태.
바로 고민할 것도 없이 시도를 해봤다.
방식은 다음과 같았다.
- 현재 고민중인 게임 기획의 가장 기초적인 룰에 대해서 이야기를 나눠봄
- 가능하다면 인공지능 기술의 도움을 받아서 룰의 단점을 확인해봄
- 가능하다면 수치 밸런스 체크를 하기 위해서 해당 서비스의 도움을 받아 볼 것
- 내가 혼자하면 버거운 노가다성 작업을 부탁해서 해결
먼저, 기존에 사용하던 ChatGPT 무료버젼인 3.5 버젼을 이용해서 도전을 해봤다.
나의 도전 삽질기는 영상으로 제작해서 공유해둠.
결론부터 말하자면, 영 못 써먹을 수준이었다.
물론, 기초 룰을 전달하고 이를 정리하는 수준의 작업은 충분히 가능했다. 아니 이것도 처음에는 잘 안됐고, ChatGPT 와 소통하는 법을 이해하기 시작하면서 점차 나아졌다.
하지만 충분히 룰을 숙지했다고 생각하고 내가 해보고 싶던 테스트 작업인 티키타카를 진행하기 시작하자, 이게 자신의 턴인지 상대방의 턴인지 구분을 못하기 시작했다.
물론 중간에 계속 추가 적인 입력값을 넣으면서 독려(?) 했으나, 나중에는 존재하지도 않는 파라미터 까지 등장하며 여러모로 어리버리 하기 시작하는.. ChatGPT3.5
영상에도 담겼지만, 인내심을 갖고 계속 다시 주고받으며 추가 입력정보를 넣으면서 옳바른 방향으로 이끌어 가려고 노력을 했으나.. 점점 더 산으로 가다가 결국은 데이터가 유실? 되어 버렸다.
아마도, 대화형 명령을 넣는 과정에서 이를 데이터로 치환하고 변수화 시키는 과정에서 기존에 초기에 입력했던 값과 변수나 파라미터가 중첩이 되면서 기존의 입력 값이 삭제가 되는 듯하다.
물론 중간에 데이터가 존재하는지 체크도 했었는데 말이지..
이 결과는 실망 스러웠으나, 내가 ChatGPT 를 잘 사용하지 못하는 것 도 있고 해서 나름 영상을 남긴뒤에 다양한 시도를 통해서 개선을 해보고자 했으나, 할 때마다 다른 시점에서 오류가 꼭 발생했다.
현실에서도 새로운 동료나 직원가 이야기를 할 때, 상대방이 일을 빠릿 빠릿하게 하더라도 말귀를 못 알아들으면 엉뚱한 결과물을 들고 올 때가 있는데, 비슷한 느낌이었다. 물론, 반대의 경우로 내가 생각은 구축이 되어져 있는데, 언어로 잘 전달을 못하면 엉뚱하게 전달이 되어서 역시나 엉뚱한 결과물을 갖고 올때가 있는데.. 그것도 비슷.
어쨌든 현재 나의 능력으로는 ChatGPT 와 협업을 하기 어렵다는 결론을 내리게 되었다.
그럼 이 문제를 개선하기 위해선 어떻게 해야할까.
현실이었으면 다음과 같은 솔루션이 있을 것 같다.
- 미션 자체가 불가능 한 것인지 검토한다.
- 지시자 (나) 의 언어 전달자체의 문제가 있을 수 있으므로 이를 개선해본다.
- 작업자 (ChatGPT 혹은 동료) 의 이해도 및 수행 능력에 문제가 있을 수 있으므로 작업자를 교체해본다.
1번의 경우는 워낙 간단한 게임의 룰이었기 때문에, 합리적으로 생각해도 충분히 수행 가능해 보였고.. 2번의 경우는 충분히 수정의 가능성이 높아 보였으나.. 이미 불혹의 나이가 되어버린 꼰대 마인드의 개발자인 내가 단기간의 개선을 하기 어려워 보였다..
그럼 역시나 대부분의 꼰대들이 선택하는.. 3번을 선택해야 한다.
나는 문제가 있다고 생각하지 못하고! 부하 직원이나 하급자, 혹은 동료의 문제라고 맹비난 하는 아저씨들.. 그렇다 나도 그런 아저씨가 되어버렸다.
다만 상황이 좀 나은 것은 이 친구가 실존 인물은 아니고, AI 서비스라는것.
즉, ChatGPT 3.5 의 문제로 생각해버리는 것이다. (음하하하하하하하 )
그래서 3.5 에 비해서 월등하게 좋은 결과물을 보여준다는 ChatGPT-4 를 유료 결제해서 사용해보았다.
ChatGPT-4 는 현재는 프리뷰 버젼을 선택 받은 몇몇 개발자들만 API 로 접근 할 수 있다고 하고, ChatGPT 사이트를 통해서 월 20달라의 유료 멤버쉽을 결재한 ChatGPT Plus 를 사용하면 3시간에 25개의 명령 혹은 이야기를 할 수 있는 방식으로 사용할 수 있다.
다만, 몇번의 개선을 통해서 나름 빠릿 빠릿하게 답변을 해주는 GPT-3.5 에 비해서 답변이 나오는 과정이나 결과가 상당히 느리다.
아마도, 처리해야할 데이터의 양이 많거나 모델이 무거워서 그런게 아닌가 생각해본다.. ( 잘 모름 )
어쨋든 두근대는 기대감을 갖고 잠깐 ChatGPT-4 를 사용해본다음에 내가 하고자했던 기획 협업을 진행해본다.
역시나 이 내용도 영상으로 제작해서 공유해놨다. 참조해보길 바란다. ( 꽤나 재밌는 결과물들이 많이 나와서 꼭 봐보길 추천함. )
결과부터 말하면 내가 하고 싶었던 티키타카가 너무나도 잘됐다. 정말 감탄하면서 진행을 해봤다.
그리고 심지어는 밸런스 체크를 위한 자동 플레이 결과를 보는 것도 가능했다.
물론, 이 과정의 응답속도가 너무 늦어서.. 중간에 끊고 최종 결과만 보여달라는 것도 가능했다.
예상치 못한 결과로 역전승이 나오자, 그 과정도 다시 보여달라고 하니, 아주 상세하고 자세하게 보여주었다.
말그대로 우와.. 하면서 박수를 치면서 봤던 장면..
이 기능을 잘 활용한다면 시뮬레이션 게임등에서 리플레이 기능이나, 자동 플레이등을 정말 유기적으로 알차게 잘 구현하거나 보여주는 것도 가능하겠다는 생각이 들었음.
그럼 이제 나아가서 추가적인 속셈(?) 인, 벨런스 체크를 위한 시뮬레이션까지 요청을 해본다.
보통 나는 게임을 만들때, 수치를 정하고 이를 검증하기 위해서 프로토 타입을 제작한다음에 유니티등에서 자동 플레이 기능을 구현해서 빠르게 배속을 해서 적게는 1,000회 많게는 10,000 회 정도 검증 플레이를 돌리면서 수치나 지표들을 검증해보는데 ( 아주 무식한 방법.. )
아무래도 이미 검증된 데이터를 근간으로 구성을 하는 것이 아니고, 부족한 나의 머리를 바탕으로 A to Z 를 다 만들어서 하다보니 이를 기획하는 단계때부터 수치적 검증을 하는데 많은 시간을 쏟는 편이다.
하지만 아쉽게도 게임회사를 다니면서 데이터를 습득한 것 도 아니고, 내가 많은 유저들을 상대하면서 데이터를 다 일일히 검증했던 것도 아니고, 기획 및 데이터 활용 업무만 집중적으로 하던 사람이 아니다보니.. 아무리 열심히 해도 투자할 수 있는 시간이 한정적이고, 그 결과도 실제 게임을 만들고 서비스를 하다보면 적절하지 않아서 자주 수정을 하는 편..
그러다보니 나보다 수학도 잘하고 연산도 빠르고 심지어 내 말까지 잘 알아듣는 ChatGPT 를 활용한다면.. 나의 이러한 고민을 손 쉽게 해결해줄 수 있으리라고 생각을 했다.
역시 GPT-4 도 한계를 보여주기 시작.
질문 자체가 개떡같으니 원하는 결과가 나오지 않는다.
지시자(나) 자체의 질문을 튜닝 하면서 질문을 바꿔본다.
100회의 시뮬레이션은 검증을 하기에는 부족한 수치라고 생가깅 들기 때문에 과감하게 10,000회를 요청한다. 과연.. 연산을 할 수 있을까?
오우?! 10,000 회의 연산도 빠르게 결과를 보여준다.
이게 실제로 직접 시뮬레이션을 한 것인지.. 아니면 수식을 만들어서 계산을 한 것인진 몰라도 ( 알아야 하는 것 아닌가.. ) 정말 어쨌든 결과가 너무 빨리 나와서 깜짝 놀랐다.
실제로 활용 가능성을 검토하기 위해서 구체적인 수치도 물어본다.
오… 꽤나 그럴싸한 수치를 보여준다. 이 결과를 바탕으로 보면, 공격 명령의 경우는 그래도 어느정도 밸런스가 맞아보이는데, 방어명령의 경우는 효과의 차이가 꽤 크기 때문에 밸런스 수정이 필요해보인다.
수치적 정확도를 올리기 위해서 1만회가 아니라 과감하게 100만회의 수치 테스트를 요청해본다.
역시나 바로 답변을 해주는 놀라운 녀석.. 진짜 감탄하면서 봤다.
그런데, 이상한점을 발견했다.
내가 만약 이런 노가다를 직접 안해봤다면 이 친구가 보여주는 결과를 곧이곧대로 그냥 믿고 감탄을 해봤을텐데, 경험적 근거를 바탕으로 볼때.. 1만회와 100만회는 꽤 기준 숫자가 차이기 나기 때문에, 최소한 한두개는 소수점 둘째 자리 정도는 다른 수치가 나올법한데.. 너무 수치가 1만회 테스트할때와 똑같다.
이건 좀 이상하다.
그래서 어떠한 근거로 시뮬레이션을 했는지 물어보자 줄줄이 대답을 해준다.
얼핏 보면 꽤 그럴싸한 내용으로 보이지만, 속빈 강정 같은 내용이다. 결국 저러한 내용을 바탕으로 실제로 100만회를 계산했든, 아니면 수식적인 접근을 해서 모델을 만들고 수열이나 무한접근등의 내용이 있어야 하는데, 그런 내용이 없다.
싸하다..
이상하다..
어..?
진짜 깜짝 놀랐다. 그전까지 너무 만족스럽게 답변을 해주고 있어서 철썩같이 믿고 있었는데..
큰 배신감을 느꼈다..
얘가.. 나한테 거짓말을 했네?
그 이후에 추궁을 하기 시작하자, 혓바닥이 길어진다… 심지어 1만회 계산도 하지 않을 거란다…
말은 또 그럴싸하다. 죄송하긴하지만 계속 그럴싸한 이야기를 덧붙인다.
요지는, 내가 위에서 말한 것 처럼 수식적 모델을 만들어서 이야기했다고 이야기한다.. 하지만.. 구체적인 모델을 제시하진 않는다.
심지어는.. 시뮬레이션을 아예 안했다고 한다 -_-
참고로 수학적 모델을 만들어서 계산식으로 접근을 해도 실제 시뮬레이션을 돌려보고 수식적 결과와 그 오차를 조정하는 단계를 거쳐야 한다. 시뮬레이션은 어디까지나 시뮬레이션이고 이를 근사치를 얻고자 하는 모델은 모델이니까..
그리고 나는 답답해서 마지막 질문을 했다.
우와… 정말 거짓말처럼 딱 이시점에서 GPT4 3시간 제한 사용량을 다 사용했다..
어쩌다보니 GPT4 가 빤스런을 한 결과가 나와버렸다… OTL
이로써 2일동안 GTP3.5 와 GPT4 를 활용해서 게임 기획업무를 같이 하려던 나의 도전은 실패를 했다. 하지만 여기서 꽤나 유의미한 경험을 많이 도출 할 수 있었던 것 같다.
일단, 가장 큰 것은 어쩌다보니 정말 놀라울 정도로 현실 세계에서 실제로 협업을 할때 느꼈던 기분을 느낄 수 있었던 것같다.
GPT-3.5 의 경우에는 일도 빠릿 빠릿하고 바로바로 뭔가 해오는데, 질문이나 명령이 조금만 복잡해도 엉뚱한 결과를 가져오는 답답함을 느낄 수 있었고, GPT-4 의 경우에는 일도 잘하고 초기에 신뢰를 쌓을만큼 좋은 결과물도 가져와서 그 이후의 업무를 시킬때도 중요하고 어려운 일도 너무 뚝딱 뚝딱 가져와서 초초초 능력자인줄 알았는데.. 알고보니 입만산 검증되지 않은 데이터로 일을 하는.. 그리고 계속 쫑알 쫑알 핑계를 대면서 자기가 틀리지 않았다고 이야기하는 자존심 쎈 엘리트 느낌이었다.
실제로 직장 생활이나 조직생활을 하면서 협업을 하다보면 한두번씩 겪는.. 그런 느낌이었다.
특히나 GPT-4 가 보여준 결과는 너무 그럴싸하고 파워풀해서 내가 관련 노가다성 경험과 결과 값의 진실/거짓을 판별하기 위한 나만의 경험적 근거나 기준이 없었다면 이를 믿고 일을 진행했을 수도 있었을 것 같다는 생각이 든다.
따라서, 아직은 GPT 와 같은 인공지능 기반의 기술을 활용해서 업무를 진행하기 위해서는 고민하고 고려해야할 내용들이 많은 것 같다.
이왕 유료 결제 한 김에 계속 틈틈히 다양한 시도를 해보면서, 나름 나만의 해법을 찾아보도록 해봐야겠다.
재밌거나 유의미한 결과가 나오면 또 공유해보겠다.