ChatGPT가 우리에게 충격을 주었던 까닭은 ‘대화’라는 형식을 사용했기 때문이다. 인간이 사고하거나 세상과 소통하는 수단이 바로 언어이기 때문에 AI는 챗봇 형태로 발전할 가능성이 크다. 이 책은 자신만의 챗봇을 만들어가면서 Agent, Memory, Assistant API, 그리고 GPTs와 같은 기술들을 활용하여 자신만의 학습 스택을 구축해 나갈 수 있는 내용을 다룬다.
파이썬 기초
나만의 챗봇 만들기에 적합하게 쓸 만큼만 배우는 파이썬에 걸맞게 최소한의 파이썬 문법만 알려주고 있다.
- 간단한 데이터 타입 및 포맷팅
- 리스트, 딕셔너리, 셋, 튜플과 같은 컬렉션
- 조건문과 반복문, 함수, 클래스
- 그 밖의 데코레이터와 어노테이션, 타입 힌트 등을 설명하고 있다.
프롬프트 엔지니어링의 기초
- 프롬프트의 구성 요소인 지시, 문맥, 입력 데이터, 출력 지시자에 대해 설명한다.
- OpenAI에서 제공하는 플레이그라운드에 대해 소개한다. 언어 모델이 우리의 의도대로 반응하는지를 확인할 수 있는 여러 실험을 진행할 수 있다.
- Temperature, Top P, Maximum length 등 언어 모델을 사용할 때 상황에 맞게 조정할 수 있는 매개변수를 소개한다.
프롬프트 엔지니어링의 핵심 기법
- 조금 더 나아가 좀 더 이론적이고 실무적인 관점에서의 프롬프트 엔지니어링을 소개한다.
- 가장 기초적인 기법인 Few-shot Prompting, Zero-shot Prompting부터 CoT(Chain-of-Thought), SC(Self-Consistency), ToT(Tree of Thoughts) 등의 다양한 기법을 설명하고 있다.
챗봇을 설계하고 구현하기
- 챗봇은 여러 차례 대화를 주고받는 멀티턴 방식으로 동작한다.
- 챗봇 시스템의 설계도를 작성하고, 프롬프트 엔지니어링을 통해 이를 구현한다.
- 위에서 구현된 챗봇 프로그램을 Flask를 이용하여 웹 어플리케이션으로 만들고, 브라우저에서 대화형으로 동작하게 한다.
또한, 이 책은 대화 내용을 저장하는 DB 활용법, GPTs를 활용한 간편한 챗봇 구축 방법, 그리고 카카오톡을 통해 챗봇을 만들고 멀티모달 챗봇을 구축하는 과정을 소개하며 마무리된다.
마치며
이 책은 간단한 파이썬 기초와 함께 API, SDK, HTTP 등 프로그래밍을 처음 시작하는 사람들과 비전공자들을 위해 어려울 수 있는 용어들을 쉽게 설명하고 있다. 또한, Function Calling, Tavily API를 이용한 인터넷 검색, 과거의 기억을 기반으로 검색하는 등 다양한 기능들을 설명하고 있다.
실제로 프롬프트 엔지니어링부터 벡터 DB, LLM 등의 한 가지 주제만으로도 책 한 권을 쓸 만큼 깊고 방대한 내용을 다루는 것은 쉽지 않은 일이다. 이러한 주제들은 각각 복잡하고 깊은 이해가 필요한데, 이를 간결하고 이해하기 쉽게 한 권의 책으로 정리한다는 것은 매우 대단하다고 할 수 있다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
댓글