파이썬 AI 애플리케이션 개발 [LLM과 벡터 데이터베이스로 구현하는 맞춤형 지능형 서비스]
- 원서명Building AI Intensive Python Applications: Create intelligent apps with LLMs and vector databases (ISBN 9781836207252)
- 지은이라셸 파머(Rachelle Palmer), 벤 펄머터(Ben Perlmutter), 아쉬윈 강가다르(Ashwin Gangadhar), 니콜라스 라루(Nicholas Larew), 시그프리도 나르바에스(Sigfrido Narváez), 토마스 뤼크슈티스(Thomas Rueckstiess), 헨리 웰러(Henry Weller), 리치먼드 알라케(Richmond Alake), 슈밤 란잔(Shubham Ranjan)
- 옮긴이테크 트랜스 그룹 T4
- 감수자아레크 보루츠키(Arek Borucki), 크리스 부시(Chris Bush), 콜린 데이(Colleen Day), 로뱅 타코네(Robin Taconet)
- ISBN : 9791194409502
- 33,000원
- 2025년 12월 26일 펴냄
- 페이퍼백 | 396쪽 | 188*235mm
- 시리즈 : 데이터 과학
책 소개
책 소개
"LLM API만 연동하면 끝일까? 진짜 문제는 그다음부터 시작된다."
MongoDB에서 AI와 벡터 검색을 직접 만들고 운영하는 전문가 9명이 전하는 실전 노하우
ChatGPT가 세상을 바꾸고 있다는 건 누구나 안다. 덕분에 너도나도 LLM API를 자사 서비스에 도입하기 시작했다. 그런데 막상 출시하고 나면 뭔가 이상하다. 분명 똑같은 LLM을 쓰는데, 왜 우리 서비스에서는 엉뚱한 답변이 나오고, 없는 정보를 지어내고, 예상치 못한 오류가 발생하는 걸까?
API를 호출하는 건 어렵지 않다. 하지만 그것만으로 실제 서비스에 투입할 수 있는 AI 애플리케이션을 만들 수 있다고 생각한다면, 조만간 한계에 부딪히게 될 것이다. 이 책은 바로 그 한계를 넘는 방법을 알려준다.
이 책의 강점은 저자진에 있다. MongoDB 머신러닝 연구 그룹을 이끄는 토마스 뤼크슈티스, 아틀라스 벡터 검색을 총괄하는 헨리 웰러, 매주 수천 명이 사용하는 MongoDB AI 챗봇을 직접 구축한 벤 펄머터와 니콜라스 라루 등 MongoDB에서 AI와 벡터 검색을 실제로 만들고 운영하는 전문가 9명이 함께 집필했다. 이론이 아닌, 실제 서비스 현장에서 검증된 노하우가 담겨 있다.
Python 기초 지식만 있으면 충분하다. 생성형 AI 시대에 단순한 API 사용자를 넘어, AI 애플리케이션의 구조를 이해하고 직접 구축할 수 있는 개발자로 성장하고 싶다면 이 책에서 시작해보자.
내용 소개
AI 애플리케이션을 만드는 모범 사례와 실전 기술 완전 정복
이 책은 LLM, 벡터 데이터베이스, 파이썬 프레임워크로 구성된 생성형 AI 스택의 작동 원리를 처음부터 끝까지 설명한다. 단순히 개념을 나열하는 데 그치지 않고, 각 기술이 실제 애플리케이션에서 어떻게 맞물려 돌아가는지를 보여준다.
데이터를 어떻게 준비해야 하는지, 어떤 모델을 선택해야 하는지, 미세 조정은 어떻게 해야 하는지 등 현장에서 바로 적용할 수 있는 모범 사례를 익힌다. 환각 현상이나 데이터 유출 같은 골치 아픈 문제를 해결하기 위해 검색 증강 생성(RAG)을 MongoDB Atlas와 함께 구현하는 방법도 단계별로 안내한다.
무엇보다 이 책은 많은 입문서가 다루지 않는 영역까지 파고든다. LLM이 내놓은 결과를 어떻게 평가해야 하는지, AI 오류는 어떻게 진단하고 수정하는지, 성능은 어떻게 최적화하는지를 구체적으로 설명한다. 이 부분을 알아야 실제 서비스에서 안정적으로 작동하는 AI 애플리케이션을 만들 수 있다.
이 책을 읽고 나면 실제 가치를 제공하는 AI 애플리케이션을 직접 구축할 역량을 갖추게 될 것이다.
이 책에서 다루는 내용
• LLM, 벡터 데이터베이스, 파이썬 프레임워크로 구성된 생성형 AI 스택의 구조와 작동 원리
• 벡터 데이터베이스의 역할과 AI 애플리케이션 성능 향상을 위한 활용법
• MongoDB Atlas를 활용한 벡터 검색과 RAG 구현
• LLM 출력 품질을 측정하고 개선하는 평가 방법
• 환각, 데이터 유출 등 자주 발생하는 문제와 해결 전략
목차
목차
- 1장. GenAI 시작하기
- 기술적 요구 사항
- 용어 정의
- GenAI 스택
- ____파이썬과 GenAI
- ____OpenAI API
- ____벡터 검색을 사용한 MongoDB
- GenAI의 중요 기능
- ____왜 GenAI를 사용하는가?
- ____GenAI의 윤리와 위험
- 요약
- 2장. 지능형 애플리케이션의 블록 구축
- 기술적 요구 사항
- 지능형 애플리케이션 정의
- ____지능형 애플리케이션 블록 구축
- LLM - 지능형 애플리케이션의 추론 엔진
- ____LLM 추론 엔진의 사용 사례
- ____LLM의 다양한 기능
- ____멀티모달 언어 모델
- ____AI 개발의 패러다임 이동
- 임베딩 모델과 벡터 데이터베이스 - RAG를 위한 외부 지식 저장소
- ____임베딩 모델
- ____벡터 데이터베이스
- ____모델 호스팅
- 사용자 지능형 애플리케이션
- ____샘플 애플리케이션 - RAG 챗봇
- ____소프트웨어 엔지니어링의 지능형 애플리케이션 관련 시사점
- 요약
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- 1부. AI의 기초: LLM, 임베딩 모델, 벡터 데이터베이스, 애플리케이션 설계
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- 3장. 대규모 언어 모델
- 기술적 요구 사항
- 확률적 프레임워크
- ____n-그램 언어 모델
- 언어 모델링의 머신러닝
- ____인공 신경망
- ____인공 신경망 훈련
- 자연어 처리의 ANN
- ____토큰화
- ____임베딩
- ____확률 분포 예측
- 순차적 데이터 처리
- ____순환 신경망
- ____트랜스포머 아키텍처
- LLM의 모범 사례
- ____LLM의 진화 분야
- ____프롬프트, 미세 조정 및 RAG
- 요약
- 4장. 임베딩 모델
- 기술적 요구 사항
- 임베딩 모델이란?
- ____임베딩 모델은 LLM과 어떻게 다를까?
- ____임베딩 모델과 LLM을 사용해야 하는 경우
- ____임베딩 모델의 종류
- 임베딩 모델 선택하기
- ____작업 요구 사항
- ____데이터 세트 특성
- ____계산 리소스
- ____벡터 표현
- ____임베딩 모델 리더보드
- ____임베딩 모델 개요
- ____항상 임베딩 모델이 필요한가?
- ____LangChain에서 코드 실행
- 모범 사례
- 요약
- 5장. 벡터 데이터베이스
- 기술적 요구 사항
- 벡터 임베딩이란?
- ____벡터 유사도
- ____정확한 검색과 대략적인 검색 방법
- ____검색 측정
- 그래프 연결성
- ____작은 세계 탐색
- ____탐색이 가능한 작은 세계를 검색하는 방법
- ____계층적 탐색이 가능한 작은 세계
- 벡터 데이터베이스의 필요성
- ____벡터 검색이 AI 모델을 개선하는 방법
- 사례 연구 및 실제 적용 사례
- ____Okta - 자연어 액세스 요청(시맨틱 검색)
- ____One AI - 언어 기반 AI(비즈니스 데이터를 사용한 RAG)
- ____Novo Nordisk - 자동 임상 연구 생성(고급 RAG/RPA)
- 벡터 검색 모범 사례
- ____데이터 모델링
- ____적용
- 요약
- 6장. AI/ML 애플리케이션 설계
- 기술적 요구 사항
- 데이터 모델링
- ____임베딩을 사용한 데이터 보강
- ____검색 사용 예 고려하기
- 데이터 스토리지
- ____데이터베이스 클러스터의 유형 판별
- ____IOPS 결정
- ____RAM 결정
- ____최종 클러스터 구성
- ____성능과 가용성 대 비용
- 데이터 흐름
- ____정적 데이터 원본 처리
- ____벡터 임베딩으로 보강한 운영 데이터 저장하기
- 신규성과 유지
- ____실시간 업데이트
- ____데이터 수명주기
- ____새로운 임베딩 모델 채택
- 보안 및 RBAC
- AI/ML 애플리케이션 설계를 위한 모범 사례
- 요약
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- 2부. 사용자 파이썬 애플리케이션 만들기: 프레임워크, 라이브러리, API, 벡터 검색 엔진
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- 7장. 유용한 프레임워크, 라이브러리, API
- 기술적 요구 사항
- AI/ML 파이썬
- AI/ML 프레임워크
- ____LangChain
- ____유사도 점수를 사용한 LangChain 시맨틱 검색
- ____사전 필터링을 사용한 시맨틱 검색
- ____LangChain으로 기본 RAG 솔루션 구현하기
- ____LangChain 프롬프트 템플릿과 체인
- 주요 파이썬 라이브러리
- ____pandas
- ____PyMongoArrow
- ____PyTorch
- AI/ML API
- ____OpenAI API
- ____허깅 페이스
- 요약
- 8장. AI 애플리케이션에서 벡터 검색 구현하기
- 기술적 요구 사항
- MongoDB 아틀라스 벡터 검색을 사용한 정보 검색
- ____파이썬의 벡터 검색 튜토리얼
- ____LangChain을 사용한 벡터 검색 튜토리얼
- RAG 아키텍처 시스템 구축
- ____청크와 문서 분할 전략
- ____간단한 RAG
- ____고급 RAG
- 요약
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- 3부. AI 애플리케이션의 최적화: 확장, 미세 조정, 문제 해결, 모니터링 및 분석
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- 9장. LLM 출력 평가
- 기술적 요구 사항
- LLM 평가란?
- ____LLM 구성 요소와 엔드 투 엔드 평가
- 모델 벤치마킹
- ____평가 데이터 세트
- ____기준선 정의
- ____사용자 피드백
- ____합성 데이터
- 평가 메트릭
- ____어설션 기반 메트릭
- ____통계 메트릭
- ____LLM 기반 평가
- ____RAG 메트릭
- ____인적 검토
- ____가드레일로서의 평가
- 요약
- 10장. 시맨틱 데이터 모델을 개선해 정확도 향상하기
- 기술적 요구 사항
- 임베딩
- ____다양한 임베딩 모델로 실험하기
- ____임베딩 모델 미세 조정
- 임베딩 메타데이터
- ____메타데이터 형식 지정
- ____정적 메타데이터 포함
- ____프로그래밍 방식의 메타데이터 추출
- ____LLM으로 메타데이터 생성
- ____쿼리 임베딩 및 수집 콘텐츠 임베딩에서 메타데이터 포함하기
- 검색 증강 생성 최적화
- ____쿼리 변형
- ____사전 필터링을 위한 쿼리 메타데이터 추출
- ____수집된 데이터 형식 지정
- ____고급 검색 시스템
- 요약
- 11장. GenAI의 일반적인 실패
- 기술적 요구 사항
- 환각
- ____환각의 원인
- ____환각의 의미
- 아첨
- ____아첨의 원인
- ____아첨의 의미
- 데이터 유출
- ____데이터 유출의 원인
- ____데이터 유출의 의미
- 비용
- ____비용 유형
- ____토큰
- GenAI 애플리케이션의 성능 문제
- ____계산 부하
- ____모델 제공 전략
- ____높은 I/O 작업
- 요약
- 12장. GenAI 애플리케이션 수정 및 최적화
- 기술적 요구 사항
- 기준선
- ____훈련과 평가 데이터 세트
- ____퓨샷 프롬프팅
- ____검색과 순위 재지정
- ____늦은 상호작용 전략
- ____쿼리 재작성
- 테스트와 레드 팀 구성
- ____테스트
- ____레드 팀 구성
- 정보 후처리
- 다른 해결 방법
- 요약


