챗GPT API를 활용한 챗봇 만들기 - : 5일만에 배우는 AI 챗봇 개발의 모든것(LLM,프롬프트 엔지니어링, 오픈AI API, 에이전트, 벡터DB)
이승우 지음 / 한빛미디어 / 2024년 3월
평점 :
장바구니담기


매월 25일. 챗 GPT 유료 결제가 갱신되는 날이다. 챗 GPT는 작년부터 간간이 사용하고 있었는데, 올해 들어서 그 필요성이 더 많아졌고 결국 지난 3월부터 정식 결제를 하고 사용하기 시작했다. 사실 유료 결제까지 해서 쓰고 있다고는 해도, 당장 업무에 필요한 부분들만 사용하고 있다 보니 챗 GPT의 모든 기능들을 다 쓰고 있지는 않다. 페르소나를 설정하고 간단한 프롬프트 엔지니어링 정도만 하고 있기에 제대로 쓰고 있는 사람들이 보기엔 유료 결제가 아깝다고 생각할 수도 있겠다. 다만 이것을 업무에 접목한 것만으로도 이미 충분히 매월 결제 비용 그 이상의 값어치를 뽑아내고 있다는 것은 장담할 수 있다. 그러니까 이달 결제도 해지하지 않고 그대로 진행하지 않았겠는가!


사실 챗 GPT가 화제가 된 만큼, 그에 관련된 서적들은 많이 나왔었는데 사용법에 관련된 것에 그쳐서 구글링에 좀 더 공을 들이고 시간을 들이면 배울 수 있는 것들이라 책까지 구매해야 한다는 필요성을 느끼지 못했는데, 그 와중에 이런 쓸모 있어 보이는 책이 나타났다.



나만의 챗봇을 챗 GPT의 도움을 받아 바닥부터 만들어 카톡 배포까지 해볼 수 있는 재미있는 책! '챗GPT API를 활용한 챗봇 만들기' 되겠다.



책은 개발 환경 구축부터 시작해서 멀티모달 기능 적용까지 총 18개의 챕터로 진행된다.


작가의 말에 따르면 프로그램에 대한 기초 지식이 있는 독자는 하루에 3시간씩 5일 동안 몰입하면, 그러니까 총 15시간이면 이 책을 90% 이상 이해할 수 있는 것을 목표로 잡았고, 프로그램에 지식이 없는 사람이라면 조금 더 걸릴 수 있다고 한다.



플로우를 통해 이 책의 학습 스택에 대해 안내해 주며, 실습 코드 역시 마찬가지로 화살표를 따라가면서 내용이 추가되는 구조로 작성되어 있어 실습을 할 때 보다 편리하게 따라갈 수 있다.



누구나 쉽게 API를 활용하여 원하는 서비스를 개발하는 것이 이 책의 취지인 만큼, 개발 환경을 구축하는 것도 쉽게 진행할 수 있도록 준비했다. 모두가 알다시피 프로그램 언어를 배우거나 무언가를 만들면서 실습하기 위해서 경험이 없는 사람이든 있는 사람이든 일단 환경을 구축을 해야 하는데, 프로그램 경험이 없는 사람 입장에서는 순서대로 따라 하면 된다고 하지만, 책에 없는 오류 사항을 맞닥뜨렸을 때, 특히나 작가의 컴퓨터에서는 문제가 없었는데 내 컴퓨터 환경 때문에 생기는 문제에 당면했을 때 크게 좌절하고 만다. (이 X 같은 윈도우...)


이 책은 그런 초보자들도 쉽게 개발 환경을 만들 수 있도록 클라우드형 개발 환경을 선택했다. 클라우드 IDE goorm을 사용해서 개발 환경을 구축한다.



2 챕터에서는 파이썬을 다루고 있는데, 이 부분도 흥미롭다. 정말 딱 이 책에서 다루는 것을 구현하는 데에 필요한 만큼의 지식만 가르쳐 준다. 기초 기식 + 기초 지식이 아니더라 더도 이 책에 나오는 특정 기능이나 문법을 같이 다룬다. 파이썬을 더 배우고 싶다면 파이썬 책을 사서 공부하면 그만이다. 하지만 파이썬은 모르는데 이 책을 따라서 챗봇을 만들겠다면..? 2 챕터를 열심히 보면 그만이다. 작가의 이런 접근이 정말 흥미로웠다.



환경도 구축했고 책에서 쓸 만큼만 파이썬을 배웠다면, 이제 챗 GPT와 API로 대화를 해 볼 시간이다. 입문자에게는 API라는 용어 자체가 뭔가 싶을 수 있어 일단 API 개념에 대해 살짝 짚고 넘어가 주고, 이어서 챗 GPT API와 원활한 대화를 해보기 위해 대화 흐름에 대해서 알아본다. 참고로 API를 통해 사용하는 모델은 '챗GPT'가 아닌 'GPT'로 불리는 것이 정확하지만, 책은 직관적인 이해를 위해 '챗GPT'로 표기하고 있으며 책 내용에서 그 사실을 짚어주고 넘어간다.


API 사용에는 돈이 든다. 이 책의 주력 모델은 gpt3.5이고 토큰 1000개당 0.001달러가 과금된다. 최초 가입 시 5달러의 무료 크레디트가 지급된다. 언어에 따라 토큰 사용 수가 다르며, 한글은 1글자당 2~3개의 토큰, 영어는 평균 4글자당 1개의 토큰을 사용하기 때문에 고유명사를 제외하고는 프롬프트를 영어로 번역해서 사용하는 것이 토큰을 절약할 수 있는 방법이다.



챗GPT 열풍과 함께 '프롬프트 엔지니어'가 떠오르는 고연봉 직군으로 소개되면서, 여기저기 민간 자격증을 발급하는 곳들도 생겼다. 나도 한 때 저런 자격증이 있으면 좋지 않을까 하여 작년에 잠시 알아보았는데, 강의만 수강하고 결제하면 발급되는 여타 '평생 교육 자격증'과 별 차이 없어 보여서 그냥 접었다.


챗GPT API를 활용해 챗봇을 만들어야 하기 때문에 이 책에서도 프롬프트 엔지니어링의 기초를 배우고 프롬프트 엔지니어링으로 챗봇 설계와 구현을 한다.


사실 이 책을 따라 챗봇을 만들지 않는다고 하더라도, 이미 챗GPT를 결제해서 쓰고 있는 내 입장에서는 굳이 시간을 내서 구글링해서 배우지 않더라도 어느 정도 프롬프트 엔지니어링을 배울 수 있어서 이 챕터의 내용이 매우 유용했다. 특히 플레이그라운드!


순서대로 따라 하면 어느새 웹 앱 형태로 전환하여 웹앱에서 챗봇과 대화할 수 있는 단계에까지 이른다.



이제 챗봇을 친구로 만들기 위해 프롬프트 엔지니어링으로 페르소나를 구축한다. 이 챕터에서는 챗봇이 정말 내 친구처럼 보이게 하기 위해 프롬프팅하는 전략을 찾아볼 수 있다. 하지만 여기에 너무 많은 분량을 담으면 제대로 동작하지 않기 때문에, 인스트럭션을 적용하는 전략을 병행할 필요가 있으며, 그와 함께 컨텍스트의 용량을 관리하는 방법에 대해서도 배울 수 있다.


이어지는 챕터에서는 인간의 언어로 함수를 호출할 수 있도록 하고, 챗 GPT가 그럴싸한 거짓말을 지어내는 것을 어느 정도 개선하기 위한 에이전트 구현과 프롬프트 분할에 대해서 다룬다. 정말이지 필요한 것들만 쏙쏙 뽑아서 다룬 책이 아닐 수 없다. 다만, 비 전공자는 이 부분에서 아주 조금 어렵게 느껴질 수도 있겠다는 생각이 들었다. 이어서 대화 내용을 저장하여 자연스럽게 대화를 이어갈 수 있는 방법까지 배운다면, 그다음은 '기억'이다.



사람을 사람처럼 만드는 힘은 '기억'에 있다. (나는 사실 타인과 대화하면서 그 '기억'을 잘 못하는 편이라 인간미가 없다는 이야기를 종종 듣곤 해서 이걸 사람 머리에도 적용할 수 있으면 참 좋을 텐데라는 자조 섞인 생각을 잠시 했다.) 챗봇을 사람 친구처럼 만들기 위해서 '기억'을 가르친다. 12챕터와 13챕터에서는 기억을 어떻게 가르칠지 와 기억을 어떻게 동작시키는지를 배운다. 이게 또 나름 감동적이다. 모르고 만나서 이야기를 한다면, 정말로 내 친구 챗봇에게 감정 이입하기 딱 좋은 그런 것이 아닌가!


이어서 세 개의 챕터는 Assistants API의 개념을 잡고, 심화 학습을 하며, GPTs와 API의 사용 전략을 배운다. 요는 이것으로 돈을 버는 쏠쏠한 방법도 여기에서 살짝 보고 넘어갈 수 있다. 그리고 대망의 카카오톡!!



여기까지 따라온 우리는 이제 우리가 만든 챗봇을 카카오톡에 올릴 수 있게 되었다. 17챕터를 차근차근 따라 하면서 내가 만든 친구를 카카오톡에 올려보자! 정말 안 어렵다. 책에 하라는 대로 따라 하기만 하면 된다. 솔직히 이 책 내용 그대로 회사 사람들한테 알려주면 우리 모두 1인 1챗봇을 할 수 있을 정도로 내용을 따라 하기가 정말 쉬웠다. 더군다나 우리 회사는 게임 개발사고 프로그램이나 서비스 이해도가 다른 직군들 보다 높은 편이라 더욱더 쉬울 것 같다.



17 챕터까지 따라 하면서 카카오톡에 내 친구 챗봇을 올리고 대화하는 것까지 성공했다면, 이제 더 나아가 볼 차례다. 마지막 18 챕터에서는 모달리티와 멀티모달을 통해 이미지 인식, 이미지 생성, 음성 변환 API를 활용하여 멀티모달 챗봇을 개발하는 방법을 배운다. 이를 위해서 GPT-4 비전 모델을 활용해야 한다. (내가 실무에서 쓰고 있는 그것)


이제 내 친구 챗봇은 그림으로 대화할 수 있으며, 음성으로 대화도 할 수 있게 되었다. 이쯤 되면 그냥 내 친구 챗봇이 아니고 게임기획자 챗봇을 만들어, 내 일을 대신 시키는 것도 가능할 것 같다는 생각이 들었다.(한창 일하기 싫은 12년차)


간단하지만 탄탄하게, 책 한 권만으로 따라 만드는 AI 챗봇! 한빛미디어의 이 책은 수많은 챗GPT 실용서 중에서 가장 쏠쏠하고 쓸만하고 실용적인 책이 아닐까!! 회사에 가져가서 다른 사람들에게도 소개해 주고 같이 '나는 나는 친구를 만들죠-♪ 내가 만든 재미있는 친구들 요술쟁이!(feat.만들어볼까요)'를 해볼 수도 있겠다.



"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo