상세정보
미리보기
랭체인과 랭그래프로 구현하는 RAG·AI 에이전트 실전 입문
- 저자
- 니시미 마사히로,요시다 신고,오시마 유키 공저/최용 역
- 출판사
- 위키북스
- 출판일
- 2025-07-04
- 등록일
- 2025-10-20
- 파일포맷
- PDF
- 파일크기
- 14MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
RAG 설계부터 AI 에이전트 디자인 패턴과 패턴별 AI 에이전트 실습까지 완벽 마스터!OpenAI, Google, Anthropic 등 다양한 LLM API 서비스 덕분에 애플리케이션 개발자들은 AI 시스템을 쉽게 구축할 수 있게 되었다. 하지만 사람과 상호작용하는 단순한 챗봇을 넘어 자율적으로 업무를 처리하는 진정한 AI 에이전트를 구현하는 것은 새로운 도전이다. 이 책은 OpenAI의 Chat API와 랭체인 기초에서 시작해 랭그래프를 활용한 고급 AI 에이전트 시스템 구축까지 단계별로 안내한다.단순 RAG(검색 증강 생성) 시스템을 넘어 복잡한 워크플로를 자율적으로 수행하는 AI 에이전트 디자인 패턴과 구현 코드를 통해 미래 AI 기술의 발전에 대응할 수 있는 기초를 탄탄하게 다질 수 있다.
저자소개
주식회사 사이다스 이사 CTO/주식회사 섹션나인 대표이사 CEO. 일본 챗GPT 커뮤니티를 주최한다. HCM Suite ‘CYDAS PEOPLE’의 개발 및 운영을 맡고 있다. 서버리스 기술 커뮤니티를 주최해 일본에서의 서버리스 보급을 촉진하고 있다.
목차
01장: LLM 애플리케이션 개발의 기초 1.1 활용되기 시작한 생성형 AI 1.2 Copilot vs AI 에이전트 1.3 모든 것이 AI 에이전트가 된다 1.4 AI 에이전트의 지식 지도 1.5 요약 02장: OpenAI 챗 API의 기초 2.1 OpenAI의 챗 모델 __ChatGPT의 모델 __OpenAI API에서 사용 가능한 챗 모델 __모델 스냅숏 2.2 OpenAI의 챗 API 기본 __Chat Completions API __Chat Completions API 요금 __발생한 요금 확인 2.3 입출력 길이 제한과 요금에 영향을 미치는 토큰 __토큰 __Tokenizer와 tiktoken 소개 __한국어의 토큰 수에 대해 2.4 Chat Completions API 테스트 환경 준비 __Google Colab이란 __Google Colab 노트북 생성 __OpenAI API 사용을 위한 등록 __OpenAI API 키 준비 2.5 Chat Completions API 실습 __OpenAI 라이브러리 __Chat Completions API 호출 __대화 이력을 고려한 응답 얻기 __스트리밍으로 응답 얻기 __기본 파라미터 __JSON 모드 __Vision(이미지 입력) 2.6 Function calling __Function calling 개요 __Function calling 샘플 코드 __tool_choice 파라미터 2.7 요약 03장: 프롬프트 엔지니어링 3.1 프롬프트 엔지니어링의 필요성 3.2 프롬프트 엔지니어링이란 3.3 프롬프트의 기본 구성 요소 __주제: 레시피 생성 AI 앱 __프롬프트의 템플릿화 __명령과 입력 데이터 분리 __문맥 제공 __출력 형식 지정 __프롬프트 구성 요소 요약 3.4 프롬프트 엔지니어링의 대표적인 기법 __Zero-shot 프롬프팅 __Few-shot 프롬프팅 __Zero-shot Chain of Thought 프롬프팅 3.5 요약 04장: LangChain 기초 4.1 LangChain 개요 __왜 LangChain을 배워야 하는가 __LangChain 전체 구조 __LangChain의 다양한 컴포넌트를 제공하는 패키지 그룹 __LangChain 설치 __LangSmith 설정 __LangChain의 주요 컴포넌트 4.2 LLM/Chat model __LLM __Chat model __스트리밍 __LLM과 Chat model의 상속 관계 __LLM/Chat model 요약 4.3 Prompt template __PromptTemplate __ChatPromptTemplate __MessagesPlaceholder __LangSmith의 Prompts __Prompt template 요약 4.4 Output parser __Output parser 개요 __PydanticOutputParser를 사용한 Python 객체 변환 __StrOutputParser __Output parser 요약 4.5 Chain?LangChain Expression Language(LCEL) 개요 __LangChain Expression Language(LCEL)란 __prompt와 model 연결 __StrOutputParser를 연결에 추가 __PydanticOutputParser를 사용한 연결 __Chain 요약 4.6 LangChain의 RAG 관련 컴포넌트 __RAG(Retrieval-Augmented Generation) __LangChain의 RAG 관련 컴포넌트 개요 __Document loader __Document transformer __Embedding model __Vector store __LCEL을 사용한 RAG Chain 구현 __LangChain의 RAG 관련 컴포넌트 요약 4.7 요약 05장: LangChain Expression Language(LCEL) 심층 해설 5.1 Runnable과 RunnableSequen__LCEL의 가장 기본적인 구성 요소 __Runnable의 실행 방법invokestreambatch __LCEL의 |로 다양한 Runnable 연결하기 __LangSmith에서 Chain의 내부 작동 확인 5.2 RunnableLambda임의의 함수를 Runnable로 만들기 __chain 데코레이터를 사용한 RunnableLamda 구현 __RunnableLambda 자동 변환 __Runnable의 입력 타입과 출력 타입에 주의 5.3 RunnableParallel여러 Runnable을 병렬로 연결하기 __RunnableParallel의 출력을 Runnable의 입력으로 연결하기 __RunnableParallel 자동 변환 __RunnableLambda와의 조합itemgetter를 사용한 예시 5.4 RunnablePassthrough - 입력을 그대로 출력하기 __assignRunnableParallel의 출력에 값 추가하기 5.5 요약 06장: Advanced RAG 6.1 Advanced RAG 개요 6.2 실습 준비 6.3 검색 쿼리 기법 __HyDE(Hypothetical Document Embeddings) __복수 검색 쿼리 생성 __검색 쿼리 기법의 요약 6.4 검색 후 기법 __RAG-Fusion __리랭크 모델 개요 __Cohere 리랭크 모델 사용 준비 __Cohere 리랭크 모델 도입 __검색 후 기법의 요약 6.5 복수 Retriever를 활용하는 기법 __LLM에 의한 라우팅 __하이브리드 검색 예시 __하이브리드 검색 구현 __복수 Retriever를 활용하는 기법의 요약 6.6 요약 07장: LangSmith를 활용한 RAG 애플리케이션 평가 7.1 7장에서 다룰 평가 개요 __오프라인 평가와 온라인 평가 7.2 LangSmith 개요 __LangSmith 요금 플랜 __LangSmith 기능 전체 구조 7.3 LangSmith와 Ragas를 활용한 오프라인 평가 구성 예시 __Ragas란 __이 장에서 구축할 오프라인 평가 구성 7.4 Ragas를 활용한 합성 테스트 데이터 생성 __Ragas의 합성 테스트 데이터 생성 기능 개요 __패키지 설치 __검색 대상 문서 로드 __Ragas를 활용한 합성 테스트 데이터 생성 구현 __LangSmith의 Dataset 생성 __합성 테스트 데이터 저장 7.5 LangSmith와 Ragas를 활용한 오프라인 평가 구현 __LangSmith의 오프라인 평가 개요 __사용 가능한 Evaluator(평가기) __Ragas의 평가 메트릭 __커스텀 Evaluator 구현 __추론 함수 구현 __오프라인 평가 구현실행 __오프라인 평가 주의사항 7.6 LangSmith를 활용한 피드백 수집 __이 절에서 구현할 피드백 기능 개요 __피드백 버튼을 표시하는 함수 구현 __피드백 버튼 표시 7.7 피드백 활용을 위한 자동 처리 __Automation rule을 활용한 처리 __좋은 평가의 트레이스를 자동으로 Dataset에 추가하기 7.8 요약 08장: AI 에이전트란 8.1 AI 에이전트를 위한 LLM 활용의 기대 8.2 AI 에이전트의 기원과 LLM을 활용한 AI 에이전트의 변천 __LLM 기반 AI 에이전트 __WebGPT __Chain-of-Thought 프롬프팅 __LLM과 외부 전문 모듈을 조합한 MRKL Systems __Reasoning and Acting(ReAct) __Plan-and-Solve 프롬프팅 8.3 범용 LLM 에이전트 프레임워크 __AutoGPT __BabyAGI __AutoGen __crewAI __crewAI의 유스케이스 8.4 멀티 에이전트 접근법 __멀티 에이전트의 정의 __멀티 에이전트로 Text-to-SQL의 정확도 향상하기 __멀티 에이전트로 소프트웨어 개발 자동화하기 __Self-Organized Agents: 초대규모 코드 생성 및 최적화를__LLM 기반 다중 에이전트 프레임워크 8.5 AI 에이전트가 안전하게 보급되기 위해 8.6 요약 09장: LangGraph로 만드는 AI 에이전트 실전 입문 9.1 LangGraph 개요 __LangGraph란 무엇인가 __LangGraph 그래프 구조 접근법 9.2 LangGraph의 주요 컴포넌트 __스테이트: 그래프의 상태 표현 __노드: 그래프를 구성하는 처리 단위 __에지: 노드 간의 연결 __컴파일된 그래프 9.3 실습: Q&A 애플리케이션 __LangChain과 LangGraph 설치 __OpenAI API 키 설정 __역할 정의 __스테이트 정의 __Chat model 초기화 __노드 정의 __그래프 생성 __노드 추가 __에지 정의 __조건부 에지 정의 __그래프 컴파일 __그래프 실행 __결과 표시 9.4 체크포인트 기능: 스테이트의 영속화와 재개 __체크포인트의 데이터 구조 __실습: 체크포인트 작동 확인하기 9.5 요약 10장: 요구사항 정의서 생성 AI 에이전트 개발 10.1 요구사항 정의서 생성 AI 에이전트 개요 __요구사항 정의란 무엇인가 __선행 연구의 접근법 참고하기 __LangGraph의 워크플로로 설계하기 10.2 환경 설정 10.3 데이터 구조 정의 10.4 주요 컴포넌트 구현 __PersonaGenerator __InterviewConductor __InformationEvaluator __RequirementsDocumentGenerator 10.5 워크플로 구축 10.6 에이전트 실행과 결과 확인 10.7 전체 소스 코드 10.8 요약 11장: 에이전트 디자인 패턴 11.1 에이전트 디자인 패턴의 개요 __디자인 패턴이란 __에이전트 디자인 패턴이 해결하는 과제 영역 __에이전트 디자인 패턴의 위치 정의 __에이전트 디자인 패턴의 전체도 11.2 18가지 에이전트 디자인 패턴 __1. 패시브 골 크리에이터(Passive Goal Creator) __2. 프로액티브 골 크리에이터(Proactive Goal Creator) __3. 프롬프트/응답 옵티마이저(Prompt/Response Optimizer) __4. 검색 증강 생성(Retrieval-Augmented Generation: RAG) __5. 싱글 패스 플랜 제너레이터(Single-Path Plan Generator) __6. 멀티 패스 플랜 제너레이터(Multi-Path Plan Generator) __7. 셀프 리플렉션(Self-Reflection) __8. 크로스 리플렉션(Cross-Reflection) __9. 휴먼 리플렉션(Human-Reflection) __10. 원샷 모델 쿼리(One-Shot Model Querying) __11. 인크리멘탈 모델 쿼리(Incremental Model Querying) __12. 투표 기반 협력(Voting-Based Cooperation) __13. 역할 기반 협력(Role-Based Cooperation) __14. 토론 기반 협력(Debate-Based Cooperation) __15. 멀티모달 가드레일(Multimodal Guardrails) __16. 툴/에이전트 레지스트리(Tool/Agent Registry) __17. 에이전트 어댑터(Agent Adapter) __18. 에이전트 평가기(Agent Evaluator) 11.3 요약 12장: LangChain/LangGraph로 구현하는 에이전트 디자인 패턴 12.1 이 장에서 다룰 에이전트 디자인 패턴 12.2 환경 설정 __각 패턴의 구현 코드에 관해 12.3 패시브 골 크리에이터(Passive Goal Creator) __구현 내용 해설 __실행 결과 12.4 프롬프트/응답 최적화(Prompt/Response Optimizer) __구현 내용 해설 __프롬프트 최적화 __응답 최적화 12.5 싱글 패스 플랜 제너레이터 __구현 내용 해설 __실행 결과 12.6 멀티 패스 플랜 제너레이터 __구현 내용 해설 __실행 결과 12.7 셀프 리플렉션(Self-Reflection) __구현 내용 해설 __실행 결과 12.8 크로스 리플렉션(Cross-Reflection) __구현 내용 해설 __실행 결과 12.9 역할 기반 협력(Role-Based Cooperation) __구현 내용 해설 __실행 결과 12.10 요약 부록A: 각종 서비스 가입과 각 패턴의 구현 코드 A.1 각종 서비스 가입 __LangSmith 가입 __Cohere 가입 __Anthropic 가입 A.2 각 패턴의 구현 코드 __1. 패시브 골 크리에이터(Passive Goal Creator) __2. 프롬프트/응답 최적화(Prompt/Response Optimizer) __3. 싱글 패스 플랜 제너레이터(Single-Path Plan Generator) __4. 멀티 패스 플랜 제너레이터(Multi-Path Plan Generator) __5. 셀프 리플렉션(Self-Reflection) __6. 크로스 리플렉션(Cross-Reflection) __7. 역할 기반 협력(Role-Based Cooperation)