목차

[1부] LLM의 기초 뼈대 세우기 1장 LLM 지도 1.1 딥러닝과 언어 모델링 __1.1.1 데이터의 특징을 스스로 추출하는 딥러닝 __1.1.2 임베딩: 딥러닝 모델이 데이터를 표현하는 방식 __1.1.3 언어 모델링: 딥러닝 모델의 언어 학습법 1.2 언어 모델이 챗GPT가 되기까지 __1.2.1 RNN에서 트랜스포머 아키텍처로 __1.2.2 GPT 시리즈로 보는 모델 크기와 성능의 관계 __1.2.3 챗GPT의 등장 1.3 LLM 애플리케이션의 시대가 열리다 __1.3.1 지식 사용법을 획기적으로 바꾼 LLM __1.3.2 sLLM: 더 작고 효율적인 모델 만들기 __1.3.3 더 효율적인 학습과 추론을 위한 기술 __1.3.4 LLM의 환각 현상을 대처하는 검색 증강 생성(RAG) 기술 1.4 LLM의 미래: 인식과 행동의 확장 1.5 정리 2장 LLM의 중추, 트랜스포머 아키텍처 살펴보기 2.1 트랜스포머 아키텍처란 2.2 텍스트를 임베딩으로 변환하기 __2.2.1 토큰화 __2.2.2 토큰 임베딩으로 변환하기 __2.2.3 위치 인코딩 2.3 어텐션 이해하기 __2.3.1 사람이 글을 읽는 방법과 어텐션 __2.3.2 쿼리, 키, 값 이해하기 __2.3.3 코드로 보는 어텐션 __2.3.4 멀티 헤드 어텐션 2.4 정규화와 피드 포워드 층 __2.4.1 층 정규화 이해하기 __2.4.2 피드 포워드 층 2.5 인코더 2.6 디코더 2.7 BERT, GPT, T5 등 트랜스포머를 활용한 아키텍처 __2.7.1 인코더를 활용한 BERT __2.7.2 디코더를 활용한 GPT __2.7.3 인코더와 디코더를 모두 사용하는 BART, T5 2.8 주요 사전 학습 메커니즘 __2.8.1 인과적 언어 모델링 __2.8.2 마스크 언어 모델링 2.9 정리 3장 트랜스포머 모델을 다루기 위한 허깅페이스 트랜스포머 라이브러리 3.1 허깅페이스 트랜스포머란 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 트레이너 API를 사용해 학습하기 __3.4.3 트레이너 API를 사용하지 않고 학습하기 __3.4.4 학습한 모델 업로드하기 3.5 모델 추론하기 __3.5.1 파이프라인을 활용한 추론 __3.5.2 직접 추론하기 3.6 정리 4장 말 잘 듣는 모델 만들기 4.1 코딩 테스트 통과하기: 사전 학습과 지도 미세 조정 __4.1.1 코딩 개념 익히기: LLM의 사전 학습 __4.1.2 연습문제 풀어보기: 지도 미세 조정 __4.1.3 좋은 지시 데이터셋이 갖춰야 할 조건 4.2 채점 모델로 코드 가독성 높이기 __4.2.1 선호 데이터셋을 사용한 채점 모델 만들기 __4.2.2 강화 학습: 높은 코드 가독성 점수를 향해 __4.2.3 PPO: 보상 해킹 피하기 __4.2.4 RLHF: 멋지지만 피할 수 있다면… 4.3 강화 학습이 꼭 필요할까? __4.3.1 기각 샘플링: 단순히 가장 점수가 높은 데이터를 사용한다면? __4.3.2 DPO: 선호 데이터셋을 직접 학습하기 __4.3.3 DPO를 사용해 학습한 모델들 4.4 정리 [2부 LLM 길들이기] 5장 GPU 효율적인 학습 5.1 GPU에 올라가는 데이터 살펴보기 __5.1.1 딥러닝 모델의 데이터 타입 __5.1.2 양자화로 모델 용량 줄이기 __5.1.3 GPU 메모리 분해하기 5.2 단일 GPU 효율적으로 활용하기 __5.2.1 그레이디언트 누적 __5.2.2 그레이디언트 체크포인팅 5.3 분산 학습과 ZeRO __5.3.1 분산 학습 __5.3.2 데이터 병렬화에서 중복 저장 줄이기(ZeRO) 5.4 효율적인 학습 방법(PEFT): LoRA __5.4.1 모델 파라미터의 일부만 재구성해 학습하는 LoRA __5.4.2 LoRA 설정 살펴보기 __5.4.3 코드로 LoRA 학습 사용하기 5.5 효율적인 학습 방법(PEFT): QLoRA __5.5.1 4비트 양자화와 2차 양자화 __5.5.2 페이지 옵티마이저 __5.5.3 코드로 QLoRA 모델 활용하기 5.6 정리 6장 sLLM 학습하기 6.1 Text2SQL 데이터셋 __6.1.1 대표적인 Text2SQL 데이터셋 __6.1.2 한국어 데이터셋 __6.1.3 합성 데이터 활용 6.2 성능 평가 파이프라인 준비하기 __6.2.1 Text2SQL 평가 방식 __6.2.2 평가 데이터셋 구축 __6.2.3