책 소개
챗GPT, 아직도 ‘사용’만 하나요?
생성형 AI 실무 개발자가 알려주는 챗GPT 200% 활용하기
이 책은 비전공자, 비개발자도 LLM을 기반으로 챗봇을 개발하는 과정을 짧은 기간 안에 효과적으로 체험하도록 고안되었습니다. 딱 필요한 만큼 다루는 파이썬, 프롬프트 엔지니어링, API를 통한 언어 모델과의 대화, 자율적 에이전트 구현, 기억 장치 사용을 단계별로 다루었습니다. 그리고 이러한 지식을 바탕으로 2023년 11월에 발표된 Assistants API 및 GPTs의 동작 원리와 구현 방식 그리고 이 모든 것을 카카오톡에 탑재하는 방법까지 낱낱이 다루었습니다.
LLM, GPT API, GPTs, 벡터DB…
가장 최신 기술로 나만의 챗봇을 만드는 가장 쉬운 방법
실습 예제를 나열해 단순히 따라만 하는 게 아닌 원리와 동작 방식을 그림과 자료를 활용해 세세하게 설명했습니다. 낯선 단어도, 막막한 기능도 어디서 어떻게 쓰이는지 바닥부터 다질 수 있도록 꼼꼼하게 살펴봅니다. 생성AI를 응용해 내 서비스를 개발해 보고 싶은 개발자, AI 프로덕트가 만들어지는 과정이 궁금한 기획자, AI를 더 깊이 그리고 더 넓게 학습해 보고 싶은 누구나 이 책을 통해 무겁지 않게 시작할 수 있을 것입니다.
GPT의 원리부터 LLM, 벡터DB, GPTs까지
‘챗봇’을 만들다 보면 AI의 밑바닥부터 배포까지 빠르게 익혀 보세요!
ㅇ 1단계 | 비전공자도 가능! 파이썬 & goorm IDE로 쉽게 시작하기
프로그래밍이 처음이어도 막힘 없이 진행 가능하도록 쓸 만큼만 파이썬을 학습하고 goorm IDE로 개발 환경을 설정합니다.
ㅇ 2단계 | 기초부터 심화까지, 고급 프롬프트 엔지니어링
챗GPT와 친해지면서 GPT, LLM 등 생성 AI의 기반 개념을 익히고 챗봇을 설계합니다.
ㅇ 3단계 | Function Calling으로 만드는 자율적 에이전트
에이전트를 손쉽게 구현하기 위해 Function Calling에 대한 이론을 학습하고 실습합니다.
ㅇ 4단계 | 벡터 DB로 챗봇에 기억 불어넣기
벡터 공간, 임베딩에 대한 개념을 익히고 실습하면서 챗봇의 기능을 고도화합니다.
ㅇ 5단계 | Assistants API, GPTs 완벽하게 이해하기
Assistants API의 데이터 구조를 학습하고 실습합니다. 여기에 API, Assistants API, GPTs의 사용 전략에 대해서도 간략히 살펴봅니다.
ㅇ 6단계 | 카카오톡에서 내가 만든 챗봇과 대화하기
카카오 채널과 연동하는 챗봇 개발 도구를 활용해 카카오톡에서 내가 만든 챗봇을 만날 수 있습니다.
이 책의 대상 독자
ㅇ 챗GPT, LLM, API 등 생성 AI를 활용한 응용 기술에 관심이 있는 누구나
ㅇ 직접 챗봇을 설계하고 개발하면서 AI를 개발해 보고 싶은 개발자
ㅇ AI를 활용한 서비스의 전체 흐름을 파악하고 싶은 PM, 엔지니어, 기획자
이 책의 예제 코드 & 커뮤니티
이 책에서 다루는 모든 예제 코드는 다음 URL에서 내려받을 수 있습니다.
ㅇ 깃허브 링크: github.com/minji337/jjinchin
묻고 답하는 공간
이 책과 관련한 질의응답은 다음 URL에서 할 수 있습니다.
ㅇ 네이버 카페: cafe.naver.com/minji337
작가 소개
이승우
금융 회사에서 인공지능 전문가로 경험을 쌓아온 소프트웨어 개발자입니다. 현재 LLM 모델을 활용한 코칭 솔루션을 개발하고 있으며 소프트웨어 개발 외에도 위키독스에서 <자세히 쓰는
제미나이 API>를 연재하는 등 IT 분야 저자로 활동하고 있습니다. 인공지능 분야 특허발명, 주요 경제신문 혁신 대상 수상, 스타트업 경진대회 1위 수상 등의 이력이 있으며, 대화형 스토리 생성 서비스 개발을 준비하고 있습니다.
목 차
추천사
개발을 시작하기 전에
베타리더의 한마디
이 책의 목표
이 책의 구성
이 책 사용 설명서
Chapter 01 개발 환경 쉽게 구성하기
1. 클라우드 IDE goorm 사용하기
2. 파이썬 버전 업그레이드하기
3. 카카오톡 챗봇 신청하기
Chapter 02 쓸 만큼만 배우는 파이썬
1. 파이썬이 쉬운 이유
2. 기본 타입 데이터
3. 컬렉션 데이터
4. 조건문과 반복문
5. 함수
6. 사물처럼 프로그래밍 하기
7. 예외 처리 작성하기
8. 그 밖에 알아 둘 기능
Chapter 03 챗GPT와 API로 대화하기
1. API 이해하기
2. API 사용 신청하기
3. API로 질의 응답하기
Chapter 04 프롬프트 엔지니어링의 기초
1. ‘프롬프트’와 ‘엔지니어링’의 의미
2. 프롬프트의 구성
3. 플레이그라운드
4. 언어 모델의 매개변수
Chapter 05 프롬프트 엔지니어링의 핵심 기법
1. 프롬프트를 잘 만드는 방법
2. LLM과 인-컨텍스트 러닝
3. Few-shot Prompting
4. CoT 기법
5. SC 기법
6. ToT 기법
7. ReAct 기법
8. RAG 기법
Chapter 06 프롬프트 엔지니어링으로 챗봇 설계하고 구현하기
1. 대화형 언어 모델에서의 컨텍스트
2. 챗봇 시스템 설계하기
3. 프롬프트 만들기
4. 프롬프트 실행하기
5. 생성 결과 개선하기
Chapter 07 웹 애플리케이션에서 챗봇과 대화하기
1. 서버 프로그램의 동작 살펴보기
2. 서버 구동 과정 손에 익히기
3. application.py 살펴보기
4. 웹 리소스 적용하기
5. 화면에서 대화 주고받기
6. Chatbot 객체와 연결해서 대화하기
Chapter 08 프롬프트 엔지니어링으로 챗봇 꾸미기
1. 시스템 역할을 통한 페르소나 구축
2. 시스템 역할 성능 개선하기
3. 내 찐친으로 탈바꿈하기
4. 컨텍스트 용량 관리하기
5. 공통사항을 미리 반영하기
Chapter 09 인간의 언어로 함수 호출하기
1. 언어 모델이 함수를 호출하는 방법
2. Function Calling 활용해서 인터넷 검색하기
3. 병렬적 Function Calling
Chapter 10 에이전트 구현과 프롬프트 분할
1. 에이전트 개념 잡기
2. 자율적 에이전트가 동작하는 원리
3. 자율적 에이전트 구현하기
4. 복잡한 Task 분할하기
5. 찐친에게 에지를 주는 방법
6. WarningAgent 구현하기
7. WarningAgent 사용하기
Chapter 11 대화 내용 저장하기
1. 도큐먼트 DB
2. MemoryManager 구현하기
3. MemoryManager 사용하기
Chapter 12 기억을 위한 준비
1. 컴퓨터가 언어를 이해하는 방법
2. 인간이 임베딩을 대하는 방법
3. 임베딩 모델 사용해 보기
4. 벡터DB의 필요성
5. PineconeDB 맛보기
Chapter 13 기억을 동작시키는 방법
1. 대화 일괄 생성
2. 기억을 구조화하는 방법
3. 데이터베이스에 기록하기
4. 실시간으로 기억 검색하기
5. 실시간으로 기억해 내기
6. 백그라운드에 기억 저장하기
Chapter 14 Assistants API 개념 잡기
1. Assistants API 핵심 콘셉트
2. Assistants API 사용해 보기
3. Assistants API로 Chatbot 클래스 구현하기
Chapter 15 Assistants API 심화 학습
1. 도구 사용하면서 상담하기
2. 플레이그라운드에서 Assistants 사용하기
3. 불필요해진 메서드들과 그 밖의 고려 사항
Chapter 16 GPTs와 API 사용 전략
1. GPTs 출시 배경과 의미
2. GPTs로 챗봇 만들어 보기
3. Assistants API와 GPTs 기능 비교하기
Chapter 17 카카오톡에 챗봇 올리기
1. 카카오톡 챗봇 훑어보기
2. 30분 만에 개발하는 카카오톡 챗봇
3. 5초 룰을 뚫어라
4. Assistants API 연결하기
Chapter 18 멀티 모달 기능 적용하기
1. 모달리티와 멀티 모달의 의미
2. 이미지 인식하기
3. 이미지 생성하기
4. 음성으로 응답하기
개발을 마무리하면서
부록 업그레이드에 대응하는 방법
오픈AI 블로그 확인
모델 업그레이드 확인
가격 확인
컨텍스트 윈도우 사이즈
역자 소개
- 단순 변심인 경우 : 상품 수령 후 7일 이내 신청
- 상품 불량/오배송인 경우 : 상품 수령 후 3개월 이내, 혹은 그 사실을 알게 된 이후 30일 이내 반품 신청 가능
반품사유 | 반품 배송비 부담자 |
---|---|
단순변심 | 고객 부담이며, 최초 배송비를 포함해 왕복 배송비가 발생합니다. 또한, 도서/산간지역이거나 설치 상품을 반품하는 경우에는 배송비가 추가될 수 있습니다. |
고객 부담이 아닙니다. |
진행 상태 | 결제완료 | 상품준비중 | 배송지시/배송중/배송완료 |
---|---|---|---|
어떤 상태 | 주문 내역 확인 전 | 상품 발송 준비 중 | 상품이 택배사로 이미 발송 됨 |
환불 | 즉시환불 | 구매취소 의사전달 → 발송중지 → 환불 | 반품회수 → 반품상품 확인 → 환불 |
- 결제완료 또는 배송상품은 1:1 문의에 취소신청해 주셔야 합니다.
- 특정 상품의 경우 취소 수수료가 부과될 수 있습니다.
결제수단 | 환불시점 | 환불방법 |
---|---|---|
신용카드 | 취소완료 후, 3~5일 내 카드사 승인취소(영업일 기준) | 신용카드 승인취소 |
계좌이체 |
실시간 계좌이체 또는 무통장입금 취소완료 후, 입력하신 환불계좌로 1~2일 내 환불금액 입금(영업일 기준) |
계좌입금 |
휴대폰 결제 |
당일 구매내역 취소시 취소 완료 후, 6시간 이내 승인취소 전월 구매내역 취소시 취소 완료 후, 1~2일 내 환불계좌로 입금(영업일 기준) |
당일취소 : 휴대폰 결제 승인취소 익월취소 : 계좌입금 |
포인트 | 취소 완료 후, 당일 포인트 적립 | 환불 포인트 적립 |
- 단순변심으로 인한 반품 시, 배송 완료 후 7일이 지나면 취소/반품 신청이 접수되지 않습니다.
- 주문/제작 상품의 경우, 상품의 제작이 이미 진행된 경우에는 취소가 불가합니다.
- 구성품을 분실하였거나 취급 부주의로 인한 파손/고장/오염된 경우에는 취소/반품이 제한됩니다.
- 제조사의 사정 (신모델 출시 등) 및 부품 가격변동 등에 의해 가격이 변동될 수 있으며, 이로 인한 반품 및 가격보상은 불가합니다.
- 뷰티 상품 이용 시 트러블(알러지, 붉은 반점, 가려움, 따가움)이 발생하는 경우 진료 확인서 및 소견서 등을 증빙하면 환불이 가능하지만 이 경우, 제반 비용은 고객님께서 부담하셔야 합니다.
- 각 상품별로 아래와 같은 사유로 취소/반품이 제한 될 수 있습니다.
상품군 | 취소/반품 불가사유 |
---|---|
의류/잡화/수입명품 | 상품의 택(TAG) 제거/라벨 및 상품 훼손으로 상품의 가치가 현저히 감소된 경우 |
계절상품/식품/화장품 | 고객님의 사용, 시간경과, 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우 |
가전/설치상품 | 전자제품 특성 상, 정품 스티커가 제거되었거나 설치 또는 사용 이후에 단순변심인 경우, 액정화면이 부착된 상품의 전원을 켠 경우 (상품불량으로 인한 교환/반품은 AS센터의 불량 판정을 받아야 합니다.) |
자동차용품 | 상품을 개봉하여 장착한 이후 단순변심의 경우 |
CD/DVD/GAME/BOOK등 | 복제가 가능한 상품의 포장 등을 훼손한 경우 |
상품의 시리얼 넘버 유출로 내장된 소프트웨어의 가치가 감소한 경우 | |
노트북, 테스크탑 PC 등 | 홀로그램 등을 분리, 분실, 훼손하여 상품의 가치가 현저히 감소하여 재판매가 불가할 경우 |