https://github.com/chiphuyen/aie-book
책 소개
이 책의 내용
기본 모델(Foundation Model)의 등장으로 AI는 전문 분야에서 누구나 사용할 수 있는 강력한 개발 도구로 변모했습니다. 이 책은 기본 모델을 활용하여 실제 문제를 해결하기 위한 엔드 투 엔드 과정과 기존 엔지니어링 분야에서 검증된 기술 및 기본 모델과 함께 등장한 새로운 기술을 다룹니다.
책이 판매되는 곳
- 아마존
- O'Reilly
- Kindle
- 기타 대부분의 기술 서적 판매처
이 책은 튜토리얼 책이 아닙니다. 코드 스니펫이 많지 않습니다.
이 책의 내용
이 책은 대규모 언어 모델(LLM)과 대규모 멀티모달 모델(LMM)을 특정 애플리케이션에 적합하도록 조정하는 프레임워크를 제공합니다. 다양한 AI 애플리케이션 구축 솔루션뿐만 아니라, 필요에 따라 최적의 솔루션을 평가할 수 있는 질문도 제시합니다. 이 책이 도와줄 수 있는 질문은 다음과 같습니다:
- 이 AI 애플리케이션을 만들어야 할까?
- 애플리케이션을 어떻게 평가할까? AI를 사용해 AI 출력을 평가할 수 있을까?
- 헛소리(Hallucination)는 왜 발생하며, 이를 탐지하고 완화하는 방법은?
- 프롬프트 엔지니어링의 모범 사례는?
- RAG(Retrieval-Augmented Generation)는 왜 효과적이며, 전략은?
- 에이전트란 무엇이며, 어떻게 만들고 평가할까?
- 모델을 언제 파인튜닝해야 하고, 언제 하지 말아야 할까?
- 필요한 데이터의 양과 데이터 품질 검증 방법은?
- 모델을 더 빠르고, 저렴하며, 안전하게 만드는 방법은?
- 피드백 루프를 통해 애플리케이션을 지속적으로 개선하는 방법은?
이 책은 또한 복잡한 AI 환경에서 모델 유형, 평가 기준, 다양한 사용 사례와 애플리케이션 패턴을 이해하는 데 도움을 줍니다.
내용은 실제 사례 연구를 바탕으로 설명되며, 풍부한 참고 자료와 다양한 배경의 전문가 검토를 통해 완성되었습니다. 이 책은 2년에 걸쳐 작성되었으며, 지난 10년간의 언어 모델 및 머신러닝 시스템 작업 경험을 토대로 하고 있습니다.
AI 엔지니어링(AIE)와 머신러닝 시스템 설계(DMLS)의 연관성
AIE는 DMLS와 상호 보완적입니다.
- DMLS: 전통적인 머신러닝 모델(주로 표 형식 데이터, 특징 엔지니어링, 모델 훈련)에 초점.
- AIE: 기본 모델에 기반한 애플리케이션(주로 프롬프트 엔지니어링, 컨텍스트 구성, 파라미터 효율적 파인튜닝)에 초점.
두 책은 독립적으로 읽을 수 있으나, 기본 모델과 전통적인 머신러닝 시스템이 모두 포함된 실제 시스템 작업에서는 두 분야에 대한 지식이 필요합니다.
이 책은 누구를 위한 것인가
이 책은 기본 모델을 활용하여 실제 문제를 해결하려는 사람을 대상으로 합니다. 기술적인 내용이 중심이며, AI 엔지니어, ML 엔지니어, 데이터 과학자, 엔지니어링 관리자, 기술 제품 관리자 등 기술적 역할을 가진 독자를 대상으로 합니다.
다음 상황에 해당하는 경우 이 책이 유용할 것입니다:
- AI 애플리케이션을 구축하거나 최적화하려고 하며, 초기 단계 또는 프로덕션 단계로 발전시키고자 함.
- 팀의 AI 개발 프로세스를 체계적이고 빠르며 신뢰할 수 있도록 만들고자 함.
- 조직이 기본 모델을 활용해 비즈니스 성과를 개선하는 방법을 이해하고, 이를 위한 팀을 구축하고자 함.
또한 다음 그룹에도 유익합니다:
- AI 엔지니어링 도구를 개발하며 시장의 니즈를 파악하려는 도구 개발자.
- AI 활용 사례를 더 잘 이해하고자 하는 연구자.
- AI 엔지니어로의 커리어를 준비하며 필요한 기술을 명확히 하고자 하는 구직자.
- AI의 가능성과 한계를 이해하고, AI가 다양한 역할에 미칠 영향을 파악하고자 하는 사람.
리뷰
- "이 책은 생성형 AI 시스템을 구축하기 위한 종합적이고 잘 구조화된 가이드를 제공합니다. 기업에서 AI를 확장하려는 전문가라면 꼭 읽어야 할 책입니다." - Vittorio Cretella
- "Chip Huyen은 생성형 AI의 전문가입니다. 실질적이고 홀리스틱한 가이드를 제공합니다." - Luke Metz
- "현실 세계 애플리케이션을 구축하려는 모든 AI 엔지니어에게 필수적인 책." - Andrei Lopatenko
- "툴과 트렌드가 아닌, 시대를 초월한 기본 지식에 초점을 맞춘 책." - Aileen Bui
- "AI 엔지니어링 분야에 입문하려는 사람들을 위한 결정적인 책." - swyx
- "생성형 AI 시스템을 실제로 구현하는 데 가장 최신 정보를 제공하는 실용적 가이드." - Vicki Reyzelman
더 많은 정보를 Twitter @aisysbooks에서 확인하세요!
자료(Resource)
AI Engineering을 집필하는 동안, 저는 수많은 논문, 사례 연구, 블로그 게시물, 코드 저장소, 도구 등을 참고했습니다. 이 책에는 1,200개 이상의 참고 링크가 포함되어 있으며, 1,000개 이상의 생성형 AI 관련 GitHub 저장소를 추적해왔습니다. 이 문서는 다양한 주제를 이해하는 데 가장 유용했던 자료들을 담고 있습니다.
만약 유용한 자료가 있지만 여기에 포함되지 않았다면, PR(Pull Request)을 통해 자유롭게 추가해주세요.
목차
- ML 이론 기초
- Chapter 1. 기본 모델로 애플리케이션 설계
- Chapter 2. 기본 모델 이해
- 대규모 모델 훈련(Training large models)
- 샘플링(Sampling)
- 문맥 길이와 문맥 효율성(Context length and context efficiency)
- Chapters 3 + 4. 평가 방법론(Evaluation Methodology)
- Chapter 5. 프롬프트 엔지니어링(Prompt Engineering)
- 프롬프트 엔지니어링 가이드(Prompt engineering guides)
- 방어적 프롬프트 엔지니어링(Defensive prompt engineering)
- Chapter 6. RAG와 에이전트(RAG and Agents)
- RAG
- 에이전트(Agents)
- Chapter 7. 파인튜닝(Finetuning)
- Chapter 8. 데이터셋 엔지니어링(Dataset Engineering)
- 공개 데이터셋(Public datasets)
- Chapter 9. 추론 최적화(Inference Optimization)
- Chapter 10. AI 엔지니어링 아키텍처와 사용자 피드백(AI Engineering Architecture and User Feedback)
- 보너스: 조직의 엔지니어링 블로그(Organization Engineering Blogs)
ML 이론 기초
기본 모델을 활용해 애플리케이션을 개발하기 위해 반드시 ML 배경지식이 필요하지는 않지만, AI가 내부적으로 어떻게 작동하는지 대략적으로 이해하면 잘못된 사용을 방지할 수 있습니다. ML 이론에 익숙해지면 훨씬 더 효과적으로 작업할 수 있습니다.
추천 자료
- [강의 노트] Stanford CS 321N: 신경망 기초에 대한 오랜 인기 입문 강의.
- [비디오] 2017년 강의 영상의 1~7강을 추천합니다. AI의 기본 개념을 다루며, 현재까지도 변하지 않은 핵심 내용을 포함하고 있습니다.
- [비디오] Andrej Karpathy의 *"Neural Networks: Zero to Hero"*는 실습 위주의 강의로, 여러 모델을 직접 구현하는 방법을 보여줍니다.
- [도서] Machine Learning: A Probabilistic Perspective (Kevin P Murphy, 2012)
- 기초적이고 포괄적인 내용을 다루며, 다소 난이도가 높을 수 있습니다. 이 책은 연구직 이론 면접 준비를 위한 참고서로 많이 사용되었습니다.
추가 참고 자료
- Aman's Math Primers: 기본적인 미분 계산 및 확률 개념을 다루는 좋은 요약 자료.
- MLOps 자료 목록: ML 및 엔지니어링 기초를 포함한 MLOps 관련 자료 목록 작성.
- 1500자 요약: ML 모델의 학습 과정과 목적 함수(objective function), 학습 절차에 대한 간략한 설명 작성.
AI Engineering에서 다루는 주요 개념
- Transformer 아키텍처 (Chapter 2)
- 임베딩(Embedding) (Chapter 3)
- 역전파(Backpropagation)와 학습 가능한 파라미터 (Chapter 7)
이 개념들은 논의와 직접적으로 관련이 있는 중요한 내용입니다. ML에 대한 기초 지식을 쌓으면 더욱 깊이 있는 AI 활용이 가능할 것입니다.
Chapter 1. 기본 모델을 활용한 애플리케이션 설계
GPTs are GPTs: 대규모 언어 모델의 노동 시장 영향에 대한 초기 분석 (OpenAI, 2023)
OpenAI(2023)는 다양한 직업군이 AI에 얼마나 노출되어 있는지에 대한 우수한 연구를 수행했습니다.
- 노출된 작업: AI 및 AI 기반 소프트웨어가 작업 소요 시간을 50% 이상 단축할 수 있는 작업으로 정의.
- 예: 80% 노출도는 해당 직업군 작업 중 80%가 AI에 의해 영향을 받을 수 있음을 의미.
- 연구에 따르면, 100% 또는 거의 100% 노출된 직업군은 통역사와 번역가, 세무사, 웹 디자이너, 작가 등이 포함됩니다.
- 반대로, AI에 전혀 노출되지 않는 직업군은 요리사, 석공, 운동선수 등이 있습니다.
이 연구는 AI가 적합한 사용 사례가 무엇인지에 대해 유용한 통찰을 제공합니다.
Applied LLMs (Yan et al., 2024)
Eugene Yan과 연구진이 LLM 애플리케이션을 1년간 배포한 경험에서 얻은 교훈과 실용적인 팁을 공유합니다.
생성형 AI 제품 개발에 대한 고찰 (Juan Pablo Bottaro 및 Karthik Ramgopal 공저, LinkedIn, 2024)
제가 읽은 LLM 애플리케이션 배포 관련 보고서 중 최고 수준으로 꼽을 만한 자료입니다.
- 주요 내용:
- 구조화된 출력(structured output) 설계
- 지연 시간(latency) vs 처리량(throughput) 간의 트레이드오프
- 평가의 어려움(특히 주석 가이드라인 작성)
- 생성형 AI 애플리케이션 구축 시 마지막 단계에서의 과제
Apple의 ML 애플리케이션 디자인을 위한 인간 인터페이스 가이드라인
AI와 인간의 역할을 어떻게 정의할 것인지에 대한 사고방식을 제시하며, 이는 인터페이스 설계에 중요한 영향을 미칩니다.
LocalLlama 서브레딧
생성형 AI 및 LLM과 관련하여 사람들이 무엇을 하고 있는지 확인하기에 유용한 커뮤니티입니다.
State of AI Report (매년 업데이트됨)
AI의 현재 상태를 포괄적으로 다룬 보고서로, 놓친 부분을 점검하는 데 유용합니다.
16 Changes to the Way Enterprises Are Building and Buying Generative AI (Andreessen Horowitz, 2024)
기업들이 생성형 AI를 구축하고 구매하는 방식에서 나타난 16가지 변화에 대한 통찰.
"Like Having a Really Bad PA": 대화형 에이전트 사용자 경험의 기대와 현실의 격차 (Luger and Sellen, 2016)
- 대화형 에이전트의 사용자 경험에 대해 시대를 앞선 논문으로, 대화 인터페이스의 가치와 이를 유용하게 만들기 위해 필요한 요소들을 잘 설명합니다.
- 주요 인사이트: "대화 인터페이스의 진정한 가치는 작업 복잡성이 가장 높은 곳에서 나타난다."
Stanford Webinar: AI가 코딩과 교육을 어떻게 변화시키는가 (Andrew Ng & Mehran Sahami, 2024)
스탠포드 CS 학과에서 미래의 CS 교육에 대해 논의한 훌륭한 세미나입니다.
- 주요 인용: "컴퓨터 과학은 코드를 작성하는 것이 아니라 체계적 사고를 다루는 것이다."
전문 예술가: AI 아트가 1년 후 당신의 경력에 어떤 영향을 미쳤나요? (r/ArtistLounge)
많은 사람들이 AI가 자신의 일에 미친 영향을 공유한 내용.
- 한 예시:
- "가끔 매니저들이 코더, 작가, 비주얼 아티스트를 AI로 대체할 수 있다는 꿈을 꾸는 회의에 참석하게 됩니다. 그런 회의를 싫어해서 피하려고 노력하지만, 가끔은 어쩔 수 없이 참여하게 됩니다. 제 평생 코딩과 예술을 사랑해왔습니다. 그런데 요즘은 종종 마음속에 이상한 슬픔이 느껴집니다."
Chapter 2. 기본 모델 이해
대규모 모델 훈련
중요한 모델의 훈련 과정을 다룬 논문들은 귀중한 자원입니다. 가능한 모두 읽어보길 추천하지만, 세 가지를 선택해야 한다면 다음을 추천합니다: Gopher, InstructGPT, Llama 3.
- [GPT-2] Language Models are Unsupervised Multitask Learners (OpenAI, 2019)
- [GPT-3] Language Models are Few-Shot Learners (OpenAI, 2020)
- [Gopher] Scaling Language Models: Methods, Analysis & Insights from Training Gopher (DeepMind, 2021)
- [InstructGPT] Training language models to follow instructions with human feedback (OpenAI, 2022)
- [Chinchilla] Training Compute-Optimal Large Language Models (DeepMind, 2022)
- Qwen 기술 보고서 (Alibaba, 2022)
- Qwen2 기술 보고서 (Alibaba, 2024)
- Constitutional AI: Harmlessness from AI Feedback (Anthropic, 2022)
- LLaMA: Open and Efficient Foundation Language Models (Meta, 2023)
- Llama 2: Open Foundation and Fine-Tuned Chat Models (Meta, 2023)
- Llama 3 Herd of Models (Meta, 2024): 합성 데이터 생성 및 검증에 대한 섹션이 특히 중요합니다.
- Yi: Open Foundation Models by 01.AI (01.AI, 2024)
스케일링 법칙(Scaling Laws)
- From bare metal to high performance training: Infrastructure scripts and best practices (imbue)
- 대규모 모델 훈련을 위해 컴퓨팅 자원을 스케일링하는 방법을 논의.
- 511대의 컴퓨터, 총 4,092개의 H100 GPU를 사용.
- Scaling Laws for Neural Language Models (OpenAI, 2020): 초기 스케일링 법칙 논문.
- Training Compute-Optimal Large Language Models (Hoffman et al., 2022): Chinchilla 스케일링 법칙으로 잘 알려짐.
- Scaling Data-Constrained Language Models (Muennighoff et al., 2023):
- 데이터 제한 환경에서 훈련 시 반복된 데이터의 효과를 분석.
- Scaling Instruction-Finetuned Language Models (Chung et al., 2022):
- 지시 데이터의 다양성 중요성을 논의.
- Beyond Chinchilla-Optimal (Sardana et al., 2023): 추론 과정까지 고려한 스케일링 법칙.
- AI 모델의 에너지 소비 감소 도구 (MIT Lincoln Laboratory, 2023): 데이터 센터가 이를 채택할 경우 가능.
- 데이터 부족의 한계 (Villalobos et al., 2022): 인간 생성 데이터 기반 LLM 스케일링의 한계.
재미있는 연구들
- Evaluating Feature Steering (Anthropic, 2024):
- 사회적 편향을 완화하기 위한 연구. 예상치 못한 '비의도적 효과(off-target effects)'도 발생할 수 있음을 보여줌.
- Scaling Monosemanticity (Anthropic, 2024): Claude 3 모델에서 해석 가능한 특징 추출.
- GitHub - ianand/spreadsheets-are-all-you-need:
- GPT-2의 순전파 과정을 Excel로 구현.
- BertViz: NLP 모델(BERT, GPT-2, BART 등)의 어텐션을 시각화.
샘플링(Sampling)
- A Guide to Structured Generation Using Constrained Decoding (Aidan Cooper, 2024): 구조화된 출력 생성을 다룬 상세 가이드.
- Fast JSON Decoding for Local LLMs (LMSYS, 2024).
- How Fast Can Grammar-Structured Generation Be? (Brandon T. Willard, 2024).
문맥 길이와 문맥 효율성
- Everything About Long Context Fine-tuning (Wenbo Pan, 2024).
- Data Engineering for Scaling Language Models to 128K Context (Yu et al., 2024).
- The Secret Sauce behind 100K Context Window in LLMs (Galina Alperovich, 2023).
- Extending Context is Hard...but not Impossible (kaioken, 2023).
- RoFormer: Enhanced Transformer with Rotary Position Embedding (Su et al., 2021).
- RoPE 기법은 위치 임베딩을 처리하며 더 긴 문맥 길이를 지원하도록 설계됨.
Chapters 3 + 4. 평가 방법론 (Evaluation Methodology)
AI 시스템 평가의 어려움 (Anthropic, 2023)
- 일반적인 AI 벤치마크의 한계를 논의하며, 평가가 왜 어려운지 설명.
Holistic Evaluation of Language Models (Liang et al., Stanford, 2022)
- 언어 모델을 다각적으로 평가하기 위한 접근법 제안.
Beyond the Imitation Game: Quantifying and Extrapolating the Capabilities of Language Models (Google, 2022)
- 언어 모델의 역량을 정량화하고 확장하는 방법을 논의.
Open-LLM 성능의 정체, 리더보드를 다시 활성화하자 (Hugging Face, 2024)
- Hugging Face가 리더보드에 특정 벤치마크를 선택한 이유를 설명하며, 개인 프로젝트 리더보드 설정에 유용한 참고 자료.
Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena (Zheng et al., 2023)
- MT-Bench와 Chatbot Arena를 활용한 LLM 평가 연구.
LLM 작업별 평가: 작동하는 것과 작동하지 않는 것 (Eugene Yan, 2024)
- LLM 작업별 평가에서 유효성과 비유효성을 구분.
AI 제품에 필요한 평가 (Hamel Hussain, 2024)
- AI 제품 설계에 있어 평가의 중요성과 방법 제시.
테스트 데이터를 일반 텍스트로 업로드하지 마세요: 데이터 오염 완화 전략 (Google & AI2, 2023년 5월)
- 평가 벤치마크로 인한 데이터 오염 방지를 위한 실용적인 전략.
alopatenko/LLMEvaluation (Andrei Lopatenko)
- 다양한 평가 리소스 모음집. 평가 관련 슬라이드 자료도 포함.
Discovering Language Model Behaviors with Model-Written Evaluations (Perez et al., 2022)
- AI가 다양한 AI 행동을 발견하도록 활용된 재미있는 논문. 154개의 다양한 행동 평가 세트를 생성하기 위한 자동화된 방법 사용.
Siren's Song in the AI Ocean: A Survey on Hallucination in Large Language Models (Zhang et al., 2023)
- 대규모 언어 모델에서의 헛소리(Hallucination)에 대한 연구 및 조사.
OpenRouter의 LLM 랭킹
- 플랫폼 상의 인기(토큰 사용량 기준) 오픈 소스 모델 랭킹 제공.
- 오픈 소스 모델의 평가 시 유용.
- 더 많은 추론 서비스가 이러한 통계를 공개하기를 바람.
Chapter 5. 프롬프트 엔지니어링 (Prompt Engineering)
프롬프트 엔지니어링 가이드
- Anthropic의 프롬프트 엔지니어링 인터랙티브 튜토리얼
- 실용적이고 포괄적이며 재미있는 가이드입니다.
- Google Sheets 기반의 인터랙티브 연습을 통해 다양한 프롬프트를 실험하고, 즉시 작동 여부를 확인할 수 있습니다.
- 다른 모델 제공업체도 이런 가이드를 제공하지 않는 것이 의외입니다.
- Brex의 프롬프트 엔지니어링 가이드
- Brex 내부에서 사용하는 예제 프롬프트 리스트를 포함.
- Meta의 프롬프트 엔지니어링 가이드
- Google의 Gemini 프롬프트 엔지니어링 가이드
- dair-ai/Prompt-Engineering-Guide
- OpenAI, Anthropic, Google에서 제공하는 프롬프트 예제 모음.
- Larger Language Models do In-Context Learning Differently (Wei et al., 2023)
- How I Think About LLM Prompt Engineering (Francois Chollet, 2023)
방어적 프롬프트 엔지니어링
- Offensive ML Playbook
- 적대적 머신러닝(Adversarial ML)과 시스템 방어 방법을 다룬 자료. 텍스트 및 이미지 공격 방어를 포함.
- The Instruction Hierarchy (OpenAI, 2024)
- OpenAI가 프롬프트 계층 구조를 주입하여 모델이 'Jailbreaking'을 방지하도록 훈련한 방법을 설명하는 논문.
- Not What You've Signed Up For: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection (Greshake et al., 2023)
- 간접적인 프롬프트 주입 사례가 부록에 상세히 나열되어 있음.
- Exploiting Programmatic Behavior of LLMs: Dual-Use Through Standard Security Attacks (Kang et al., 2023)
- Scalable Extraction of Training Data from (Production) Language Models (Nasr et al., 2023)
- How Johnny Can Persuade LLMs to Jailbreak Them (Zeng et al., 2024)
- 설득을 통해 AI 안전성을 도전하는 새로운 접근법을 제안.
LLM 보안(LMM Security)
- LLM Security Papers: LLM 보안 관련 논문 모음.
- 보안 점검 자동화 도구:
- PyRIT, Garak, persuasive_jailbreaker, GPTFUZZER, MasterKey.
- Llama Guard (Meta, 2023):
- 인간-AI 대화를 위한 입력-출력 보호 도구.
- AI Security Overview (AI Exchange):
- AI 보안 개요 자료.
Chapter 6. RAG와 에이전트
RAG (Retrieval-Augmented Generation)
- Reading Wikipedia to Answer Open-Domain Questions (Chen et al., 2017)
- 질문 응답과 같은 지식 집약적인 작업을 지원하기 위해 RAG 패턴을 소개.
- Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks (Lewis et al., 2020)
- Retrieval-Augmented Generation for Large Language Models: A Survey (Gao et al., 2023)
- Introducing Contextual Retrieval (Anthropic, 2024)
- RAG 시스템에서 데이터를 준비하는 방법에 대해 논의.
- RAG와 긴 문맥(long context) 사용 시기를 결정하는 실용적인 팁 제공.
- Chunking 튜토리얼 (Pinecone 및 Langchain)
- The 5 Levels of Text Splitting for Retrieval (Greg Kamradt, 2024)
- GPT-4 + Streaming Data = Real-Time Generative AI (Confluent, 2023)
- RAG 애플리케이션에서 실시간 데이터를 검색하는 패턴을 상세히 설명.
- Everything You Need to Know about Vector Index Basics (Zilliz, 2023)
- 벡터 검색 및 벡터 데이터베이스에 대한 뛰어난 시리즈.
- A Deep Dive into the World's Smartest Email AI (Hiranya Jayathilaka, 2023)
- 제목을 제외하고 보면, RAG 패턴을 활용해 이메일 비서를 구축하는 상세 사례 연구.
- [도서] Introduction to Information Retrieval (Manning, Raghavan, and Schütze, 2008)
- 정보 검색은 RAG의 핵심으로, 텍스트 데이터를 조직화하고 쿼리하는 다양한 기술을 심도 있게 다룬 책.
에이전트 (Agents)
- [2304.09842] Chameleon: Plug-and-Play Compositional Reasoning with Large Language Models (Lu et al., 2023)
- LLM 플래너와 도구 사용 방식, 실패 사례에 대한 연구.
- 다양한 LLM이 서로 다른 도구 선호를 보인다는 흥미로운 발견.
- Generative Agents: Interactive Simulacra of Human Behavior (Park et al., 2023)
- Toolformer: Language Models Can Teach Themselves to Use Tools (Schick et al., 2023)
- Berkeley Function Calling Leaderboard 및 Gorilla 논문: Large Language Model Connected with Massive APIs (Patil et al., 2023)
- ChatGPT의 함수 호출에서 발생하는 네 가지 일반적인 실수를 다룸.
- THUDM/AgentBench: 에이전트로서의 LLM을 평가하기 위한 벤치마크 (ICLR'24)
- WebGPT: Browser-assisted Question-Answering with Human Feedback (Nakano et al., 2021)
- ReAct: Synergizing Reasoning and Acting in Language Models (Yao et al., 2022)
- Reflexion: Language Agents with Verbal Reinforcement Learning (Shinn et al., 2023)
- Voyager: An Open-Ended Embodied Agent with Large Language Models (Wang et al., 2023)
- [도서] Artificial Intelligence: A Modern Approach (Russell and Norvig, 2020, 4th Edition)
- 플래닝은 검색과 밀접하게 연관되어 있으며, 이 고전 도서는 검색에 대한 심도 있는 챕터를 다룹니다.
Chapter 7. 파인튜닝 (Finetuning)
GPT-3 텍스트 분류를 위한 파인튜닝 베스트 프랙티스 (OpenAI)
- OpenAI가 작성한 초안으로, GPT-3에 초점을 맞추지만 대부분의 기술이 전반적인 파인튜닝에 적용 가능.
- 내용:
- GPT-3 파인튜닝 작동 방식.
- 훈련 데이터 준비 방법.
- 모델 평가 방법 및 일반적인 실수.
Easily Train a Specialized LLM: PEFT, LoRA, QLoRA, LLaMA-Adapter, and More (Cameron R. Wolfe, 2023)
- 파라미터 효율적인 파인튜닝(PEFT) 관련 기사로, 어댑터 기반 파인튜닝의 발전과 LoRA가 인기 있는 이유 및 작동 원리를 설명.
- 7,000단어의 심층 분석 기사.
Fine-Tuning or Retrieval? Comparing Knowledge Injection in LLMs (Ovadia et al., 2024)
- "파인튜닝 vs RAG"에 대한 질문에 답을 제시하는 흥미로운 결과.
Parameter-Efficient Transfer Learning for NLP (Houlsby et al., 2019)
- PEFT 개념을 소개한 논문.
LoRA: Low-Rank Adaptation of Large Language Models (Hu et al., 2021)
- 필독 논문.
QLoRA: Efficient Finetuning of Quantized LLMs (Dettmers et al., 2023)
- 양자화된 LLM의 효율적인 파인튜닝 방법.
Direct Preference Optimization with Synthetic Data on Anyscale (2024)
- 합성 데이터를 활용한 선호도 최적화에 대한 논의.
Transformer Inference Arithmetic (kipply, 2022)
- 트랜스포머 추론 과정의 수학적 계산.
Transformer Math 101 (EleutherAI, 2023)
- 메모리 사용량 계산 등 훈련 과정에 초점.
Scaling Down to Scale Up: A Guide to Parameter-Efficient Fine-Tuning (Lialin et al., 2023)
- 다양한 파인튜닝 방법을 포괄적으로 분석한 연구.
- 모든 기술이 현재 사용되는 것은 아니지만, 유용한 참고 자료.
My Experience on Starting with Fine Tuning LLMs with Custom Data (r/LocalLLaMA, 2023)
- 맞춤 데이터를 사용해 LLM 파인튜닝을 시작한 경험 공유.
Train With Mixed Precision (NVIDIA Docs)
- 혼합 정밀도(Mixed Precision)로 훈련하는 방법 안내.
Chapter 8. 데이터셋 엔지니어링 (Dataset Engineering)
고품질 데이터셋 구축을 위한 주석 작성 모범 사례 (Grammarly, 2022)
Scaling Instruction-Finetuned Language Models (Chung et al., 2022)
The Curse of Recursion: Training on Generated Data Makes Models Forget (Shumailov et al., 2023)
The Llama 3 Herd of Models (Meta, 2024)
- 전체 논문이 유익하지만, 합성 데이터 생성 및 검증에 대한 섹션이 특히 중요.
Instruction Tuning with GPT-4 (Peng et al., 2023)
- GPT-4를 사용해 LLM 파인튜닝을 위한 지시 데이터를 생성하는 방법.
Best Practices and Lessons Learned on Synthetic Data for Language Models (Liu et al., DeepMind 2024)
[UltraChat] Enhancing Chat Language Models by Scaling High-quality Instructional Conversations (Ding et al., 2023)
Deduplicating Training Data Makes Language Models Better (Lee et al., 2021)
Can LLMs Learn from a Single Example? (Jeremy Howard and Jonathan Whitaker, 2023)
- 한 가지 예제로도 모델 성능이 개선될 수 있음을 보여주는 흥미로운 실험.
LIMA: Less Is More for Alignment (Zhou et al., 2023)
공개 데이터셋 (Public Datasets)
다음은 공개 데이터셋을 검색할 수 있는 몇 가지 주요 리소스입니다. 공개된 데이터를 활용하는 것은 유용하지만, 항상 데이터를 철저히 검사하고 검증해야 합니다.
- 데이터셋 라이선스를 확인하세요.
- 상업적 사용이 가능한 라이선스가 있더라도, 일부 데이터가 원 출처에서 허용되지 않을 수 있습니다.
주요 데이터셋 리소스
- Hugging Face와 Kaggle: 수십만 개의 데이터셋 보유.
- Google Dataset Search: 훌륭하지만 저평가된 검색 도구.
- 정부 데이터 제공처:
- Data.gov: 약 수십만 개의 데이터셋 제공.
- Data.gov.in: 약 수만 개 데이터셋 제공.
- University of Michigan's ICPSR: 사회 연구 데이터 수만 개 보유.
- UC Irvine's Machine Learning Repository와 OpenML: 오래된 데이터셋 저장소로, 각각 수천 개의 데이터셋 보유.
- Open Data Network: 수만 개의 데이터셋 검색 가능.
- AWS Open Data: 소규모의 공개 데이터셋 제공.
- ML 프레임워크 데이터셋: TensorFlow와 같은 프레임워크에서 미리 구축된 데이터셋 제공.
- 평가 벤치마크 도구: PEFT 파인튜닝에 적합한 평가 데이터셋 호스팅.
- 예: Eleuther AI의 lm-evaluation-harness는 400개 이상의 벤치마크 데이터셋 제공, 평균 2,000개 이상의 예제를 포함.
- Stanford Large Network Dataset Collection: 그래프 데이터셋을 위한 훌륭한 저장소.
Chapter 9. 추론 최적화 (Inference Optimization)
Mastering LLM Techniques: Inference Optimization (NVIDIA Technical Blog, 2023)
- 다양한 최적화 기법에 대한 훌륭한 개요를 제공.
Accelerating Generative AI with PyTorch II: GPT, Fast (Pytorch, 2023)
- 여러 최적화 기법을 적용해 성능 향상을 이룬 사례 연구.
Efficiently Scaling Transformer Inference (Pope et al., 2022)
- Jeff Dean 팀에서 발표한 심도 있는 논문으로, 특히 지연 시간(latency) vs 비용(cost) 등 트레이드오프에 집중해야 할 항목들을 논의한 섹션이 주목할 만함.
Optimizing AI Inference at Character.AI (Character.AI, 2024)
- 기술적인 논문이라기보다는 Character.AI 팀이 성취한 결과를 보여주는 사례 연구.
- 주제: 어텐션 설계, 캐시 최적화, int8 훈련.
[비디오] GPU 최적화 워크숍
- OpenAI, NVIDIA, PyTorch, Voltron Data 공동 진행.
[비디오] Essence VC Q1 Virtual Conference
- LLM 추론 관련 주제(vLLM, TVM, Modal Labs 포함).
Techniques for KV Cache Optimization in Large Language Models (Omri Mallis, 2024)
- 트랜스포머 추론에서 메모리 소모가 큰 KV 캐시 최적화에 대한 훌륭한 설명.
- João Lages의 KV 캐시 시각화 자료도 매우 유익함.
Accelerating Large Language Model Decoding with Speculative Sampling (DeepMind, 2023)
DistServe: Disaggregating Prefill and Decoding for Goodput-Optimized Large Language Model Serving (Zhong et al., 2024)
The Best GPUs for Deep Learning in 2023 — An In-depth Analysis (Tim Dettmers, 2023)
- 딥러닝용 GPU에 대한 상세 분석.
- Stas Bekman의 가속기 평가 관련 메모도 유용함.
Analysis of Large-Scale Multi-Tenant GPU Clusters for DNN Training Workloads (Jeon et al., 2019)
- 다중 테넌트 환경에서 DNN 훈련용 GPU 클러스터를 분석한 연구.
- 2개월 동안 Microsoft GPU 클러스터에서 수집한 데이터를 기반으로, 갱 스케줄링, 지역성 제약, GPU 사용률, 작업 실패 등 주요 문제를 다룸.
AI Datacenter Energy Dilemma - Race for AI Datacenter Space (SemiAnalysis, 2024)
- 데이터센터 비즈니스와 병목현상에 대한 뛰어난 분석.
A Friendly Introduction to Machine Learning Compilers and Optimizers (Chip Huyen, 2018)
- 머신러닝 컴파일러와 최적화에 대한 친절한 입문 글.
Chapter 10. AI 엔지니어링 아키텍처와 사용자 피드백 (AI Engineering Architecture and User Feedback)
Google SRE Book: Chapter 4 - Monitoring
- 시스템 안정성과 성능을 유지하기 위한 모니터링 관행을 다룬 챕터.
Guidelines for Human-AI Interaction (Microsoft Research)
- Microsoft가 제안한 인간-AI 상호작용을 위한 18가지 디자인 가이드라인:
- 개발 이전 단계.
- 개발 중 결정.
- 문제가 발생했을 때.
- 시간 경과에 따른 상호작용 설계.
Peering Through Preferences: Unraveling Feedback Acquisition for Aligning Large Language Models (Bansal et al., 2023)
- 피드백 프로토콜이 모델 훈련 성능에 미치는 영향을 연구한 논문.
Feedback-Based Self-Learning in Large-Scale Conversational AI Agents (Ponnusamy et al., Amazon 2019)
- 대규모 대화형 AI 시스템에서 **암묵적 사용자 피드백(Implicit User Feedback)**을 학습하는 확장 가능한 프레임워크.
Learning from Implicit User Feedback (Park et al., Amazon 2020)
- 자연어 이해를 개선하기 위한 대규모 대화형 AI 시스템에 초점.
대화형 AI의 사용자 피드백 디자인
- 이 분야는 연구가 충분히 이루어지지 않은 상태로, 향후 더 많은 리소스가 나오길 기대.
보너스: 조직 엔지니어링 블로그
좋은 기술 블로그를 읽는 것을 즐깁니다. 다음은 자주 방문하는 엔지니어링 블로그들입니다:
- LinkedIn Engineering Blog
- Engineering Blog - DoorDash
- Engineering | Uber Blog
- The Unofficial Google Data Science Blog
- Pinterest Engineering Blog – Medium
- Netflix TechBlog
- Blog | LMSYS Org
- Blog | Anyscale
- Data Science and ML | Databricks Blog
- Together Blog
- Duolingo Engineering
'소식' 카테고리의 다른 글
OnlyFans 모델들이 AI를 활용해 DM(다이렉트 메시지)을 관리하다 (1) | 2024.12.18 |
---|---|
Khoshnus - 아름다운 손글씨 SVG 텍스트 애니메이션 만들기 (0) | 2024.12.18 |
니혼코츠(Nihon Kotsu)와 GO와 함께하는 첫 번째 국제 로드 트립 (waymo 국제 진출) (2) | 2024.12.18 |
Imagen 3 (1) | 2024.12.18 |
Veo 2 (1) | 2024.12.18 |