책소개
단순한 활용을 넘어 원리부터 구축까지,AI 에이전트 개발을 위한 모든 지식지능형 AI 에이전트의 시대, 이 책은 LLM 블랙박스 속 원리를 체계적으로 분석합니다. 현대 인공지능의 뼈대인 트랜스포머 아키텍처를 원리부터 상세히 분석하여, 모델이 어떻게 문맥을 이해하고 정교한 답변을 생성하는지 명확히 설명합니다. 셀프 어텐션과 강화학습의 이론적 토대부터 랭체인과 랭그래프를 활용한 실전 에이전트 구축까지의 전 과정을 한 권에 담았습니다. 특히 이론 학습에 그치지 않고 Streamlit을 이용한 서비스 배포, RAG, 그리고 외부 시스템과의 표준화된 연결을 돕는 최신 MCP 기술까지 폭넓게 다룹니다. 단순히 응용 코드를 따라 하는 수준을 넘어, 모델 구조를 정확히 이해함으로써 나만의 차별화된 AI 솔루션을 설계하고 기술 트렌드의 변화 속에서 스스로 판단할 수 있는 능력을 길러보세요.
목차
CHAPTER 1 실습 환경 구축하기_1.1 비주얼 스튜디오 설치_1.2 미니콘다를 활용한 가상 환경 구축_1.3 CPU 환경 - 파이썬 라이브러리 설치_1.4 GPU 환경 - 파이썬 라이브러리 설치CHAPTER 2 자연어 처리 기초_2.1 자연어 처리의 개념__2.1.1 자연어 처리의 발전__2.1.2 word2vec__2.1.3 토큰화__2.1.4 임베딩__2.1.5 청킹_2.2 기초 수학__2.2.1 스칼라, 벡터, 행렬__2.2.2 내적__2.2.3 외적__2.2.4 편미분__2.2.5 그래디언트 디센트CHAPTER 3 강화학습 기초_3.1 강화학습의 개념__3.1.1 강화학습의 정의__3.1.2 강화학습의 구성 요소_3.2 상태가 변하지 않을 경우의 보상 추정__3.2.1 다중 슬롯 머신 문제__3.2.2 행동에 따른 가치 추정 방법__3.2.3 점진적 업데이트 방식_3.3 마르코프 결정 프로세스__3.3.1 마르코프 결정 프로세스의 정의__3.3.2 누적 보상__3.3.3 정책과 가치 함수_3.4 몬테카를로 방법__3.4.1 몬테카를로 방법의 개념__3.4.2 몬테카를로 방법을 활용한 상태 가치 예측__3.4.3 상태 가치 예측 실습_3.5 시간차 학습__3.5.1 TD(0)의 개념__3.5.2 TD(0) 실습__3.5.3 Sarsa의 개념__3.5.4 Sarsa 실습__3.5.5 Q-learning의 개념__3.5.6 Q-learning 실습__3.5.7 Q-learning을 활용한 자연어 처리 강화학습CHAPTER 4 시퀀스 모델_4.1 순환 신경망의 개념__4.1.1 순환 신경망 기초__4.1.2 손실 함수의 그래디언트_4.2 LSTM__4.2.1 LSTM의 개념__4.2.2 LSTM 구조__4.2.3 양방향 LSTM__4.2.4 넘파이를 활용한 LSTM 실습_4.3 seq2seq__4.3.1 seq2seq의 개념__4.3.2 빔 서치CHAPTER 5 어텐션_5.1 어텐션의 기본 원리__5.1.1 어텐션의 정의__5.1.2 어텐션의 구조__5.1.3 Query, Key, Value_5.2 셀프 어텐션__5.2.1 셀프 어텐션의 개념__5.2.2 입력 벡터 기준으로 보는 셀프 어텐션 구조__5.2.3 입력 행렬 기준으로 보는 셀프 어텐션 구조_5.3 멀티 헤드 어텐션__5.3.1 멀티 헤드 어텐션의 개념__5.3.2 멀티 헤드 어텐션의 구조_5.4 크로스 어텐션__5.4.1 크로스 어텐션의 개념__5.4.2 크로스 어텐션의 구조CHAPTER 6 트랜스포머_6.1 트랜스포머의 개념_6.2 포지셔널 인코딩__6.2.1 포지셔널 인코딩의 개념__6.2.2 포지셔널 인코딩의 구조_6.3 트랜스포머 아키텍처__6.3.1 전체 구조__6.3.2 트랜스포머의 인코더__6.3.3 트랜스포머의 디코더_6.4 트랜스포머를 활용한 학습 및 추론__6.4.1 트랜스포머를 활용한 학습__6.4.2 트랜스포머를 활용한 추론CHAPTER 7 LLM의 발전_7.1 LLM의 개념__7.1.1 LLM의 유형__7.1.2 LLM 기술 발전 연대기_7.2 강화학습을 적용한 LLM__7.2.1 기존 언어 모델의 문제점__7.2.2 사용자 피드백을 활용한 강화학습__7.2.3 PPO 알고리즘의 등장__7.2.4 강화학습에 적용된 PPO 알고리즘__7.2.5 few-shot, one-shot, zero-shot 학습 방법__7.2.6 InstructGPT__7.2.7 유익하고 안전한 언어 모델_7.3 LLM의 종류__7.3.1 GPT__7.3.2 LLaMA__7.3.3 BERTCHAPTER 8 LLM 에이전트 개발 도구_8.1 Ollama__8.1.1 Ollama 소개__8.1.2 Ollama 기본 실습_8.2 트랜스포머 라이브러리__8.2.1 허깅페이스 소개__8.2.2 트랜스포머 라이브러리 소개__8.2.3 트랜스포머 라이브러리의 두 가지 활용 방법__8.2.4 Low Level API 기본 실습__8.2.5 High Level API 기본 실습__8.2.6 Low Level API & High Level API 혼합 방식_8.3 Llama_cpp 라이브러리__8.3.1 Llama_cpp 라이브러리 소개__8.3.2 GGUF 모델 다운로드__8.3.3 Llama_cpp 라이브러리 기본 실습_8.4 랭체인 라이브러리__8.4.1 랭체인 라이브러리 소개__8.4.2 LangChain Expression Language(LCEL)__8.4.3 랭체인 + 트랜스포머 기본 실습__8.4.4 랭체인 + Ollama 실습__8.4.5 Ollama를 활용한 REST API 방식__8.4.6 메모리 기능을 활용한 대화형 에이전트_8.5 랭그래프 라이브러리__8.5.1 랭그래프 라이브러리 소개__8.5.2 랭그래프 구성 요소__8.5.3 랭그래프 기본 실습__8.5.4 랭그래프 + 랭체인 + 트랜스포머 실습__8.5.5 랭그래프 + 랭체인 + Ollama 실습CHAPTER 9 파인튜닝과 로컬 LLM_9.1 Full fine-tuning__9.1.1 Full fine-tuning의 개념__9.1.2 기본 분류 실습__9.1.3 Full fine-tuning 실습__9.1.4 Full fine-tuning된 모델을 불러온 후 추가 학습__9.1.5 Full fine-tuning된 모델을 불러온 후 예측_9.2 PEFT__9.2.1 PEFT의 필요성__9.2.2 PEFT의 공통 개념__9.2.3 PEFT의 종류_9.3 Adapter__9.3.1 Adapter의 개념__9.3.2 Adapter의 내부 구조__9.3.3 Adapter의 종류_9.4 AdapterFusion__9.4.1 AdapterFusion의 개념__9.4.2 AdapterFusion의 내부 구조_9.5 LoRA__9.5.1 LoRA의 개념__9.5.2 LoRA의 내부 구조__9.5.3 LoRA 실습__9.5.4 LoRA를 활용해 학습된 모델을 불러온 후 예측_9.6 QLoRA__9.6.1 양자화의 개념__9.6.2 QLoRA의 개념__9.6.3 QLoRA 실습__9.6.4 QLoRA를 활용해 학습된 모델을 불러온 후 예측CHAPTER 10 RAG_10.1 RAG의 개념__10.1.1 RAG의 등장 배경__10.1.2 RAG의 특징_10.2 RAG 아키텍처__10.2.1 RAG 전체 구조__10.2.2 RAG-Sequence 모델__10.2.3 RAG-Token 모델__10.2.4 Retriever__10.2.5 Generator_10.3 벡터 DB 기초__10.3.1 벡터 DB의 개념__10.3.2 벡터 DB의 종류__10.3.3 임베딩 실습__10.3.4 ChromaDB 실습__10.3.5 CSV to ChromaDB 실습__10.3.6 청킹 실습_10.4 RAG 기초 실습__10.4.1 트랜스포머 사용을 위한 ChromaDB 구축__10.4.2 트랜스포머를 활용한 RAG 실습_10.5 RAG 응용 실습__10.5.1 랭체인 사용을 위한 ChromaDB 구축__10.5.2 트랜스포머, 랭체인을 활용한 무기억성 RAG 실습__10.5.3 트랜스포머, 랭체인을 활용한 대화형 RAG 실습__10.5.4 트랜스포머, 랭체인, 랭그래프를 활용한 RAG 실습__10.5.5 Llama_cpp, 랭체인, 랭그래프를 활용한 RAG 실습__10.5.6 Ollama, 랭체인, 랭그래프를 활용한 RAG 실습_10.6 Iterative RAG__10.6.1 Iterative RAG의 개념__10.6.2 Iterative RAG 실습_10.7 Adaptive RAG__10.7.1 Adaptive RAG의 개념__10.7.2 Adaptive RAG 실습CHAPTER 11 멀티 에이전트_11.1 멀티 에이전트의 개념__11.1.1 싱글 에이전트와 멀티 에이전트__11.1.2 A2A_11.2 MCP__11.2.1 MCP의 개념__11.2.2 MCP 실습CHAPTER 12 Streamlit으로 나만의 AI 에이전트 만들기_12.1 Streamlit 기초__12.1.1 Streamlit 소개__12.1.2 VS Code 설치 및 파이썬 가상 환경 연동_12.2 Streamlit을 활용한 AI 에이전트 개발__12.2.1 누구나 쉽게 만드는 전래동화 AI 에이전트__12.2.2 대화 내용을 기억하는 채팅 에이전트__12.2.3 랭그래프 기반 AI 에이전트__12.2.4 RAG 기반 AI 에이전트