|
1장 허깅페이스란
1.1 허깅페이스 트랜스포머 라이브러리 1.2 허깅페이스 모델 1.3 허깅페이스 그라디오 파이썬 라이브러리 1.4 허깅페이스 멘탈 모델 이해 1.5 요약 2장 시작하기 2.1 아나콘다 내려받기 __2.1.1 가상 환경 구축하기 __2.1.2 주피터 노트북 시작하기 2.2 트랜스포머 라이브러리 설치 __2.2.1 GPU 지원 확인하기 __2.2.2 파이프라인 객체에서 GPU 활용하기 2.3 허깅페이스 허브 패키지 설치 __2.3.1 파일 내려받기 __2.3.2 허깅페이스 CLI 사용법 안내 2.4 요약 3장 NLP 업무를 위한 허깅페이스 트랜스포머와 파이프라인 사용 3.1 트랜스포머 아키텍처 소개 __3.1.1 토큰화 __3.1.2 토큰 임베딩 __3.1.3 위치 인코딩 __3.1.4 트랜스포머 블록 __3.1.5 소프트맥스 3.2 트랜스포머 라이브러리 다루기 __3.2.1 사전 학습된 트랜스포머 모델이란 __3.2.2 트랜스포머 파이프라인이란 __3.2.3 모델 직접 사용하기 __3.2.4 트랜스포머 파이프라인 사용하기 3.3 NLP 작업에 트랜스포머 활용 __3.3.1 텍스트 분류 __3.3.2 텍스트 생성 __3.3.3 텍스트 요약 __3.3.4 텍스트 번역 __3.3.5 제로샷 분류 __3.3.6 질의응답 작업 3.4 요약 4장 허깅페이스를 컴퓨터 비전 작업에 활용 4.1 허깅페이스 컴퓨터 비전 모델 4.2 객체 탐지 __4.2.1 모델을 직접 사용하기 __4.2.2 트랜스포머 파이프라인 사용하기 __4.2.3 웹캠에 바인딩하기 4.3 이미지 분류 4.4 이미지 분할 __4.4.1 모델을 프로그래밍 방식으로 사용하기 __4.4.2 그라디오에 바인딩하기 4.5 비디오 분류 __4.5.1 필수 소프트웨어 설치하기 __4.5.2 테스트를 위한 비디오 내려받기 __4.5.3 트랜스포머 파이프라인 객체 사용하기 4.6 요약 5장 허깅페이스 데이터셋 탐색, 토큰화, 시각화 5.1 허깅페이스 데이터셋이란 __5.1.1 이용 가능한 데이터셋 목록 얻기 __5.1.2 데이터셋의 가용성 검증 __5.1.3 데이터셋 내려받기 __5.1.4 데이터셋 셔플링 __5.1.5 데이터셋 스트리밍 __5.1.6 데이터셋의 Parquet 파일 얻기 5.2 NLP에서 토큰화 __5.2.1 토큰화 방법의 유형 __5.2.2 데이터셋 토큰화 5.3 데이터셋 시각화 __5.3.1 twitter-financial-news-topic 데이터셋 사용하기 __5.3.2 CIFAR-10 데이터셋 사용하기 5.4 요약 6장 사전 학습된 모델 파인 튜닝과 멀티모달 모델 작업 6.1 사전 학습된 모델 파인 튜닝 __6.1.1 yelp_polarity 데이터셋 로드하기 __6.1.2 yelp_polarity 데이터셋 필터링하기 __6.1.3 축소된 데이터셋 토큰화하기 __6.1.4 시퀀스 분류를 위한 사전 학습된 모델 설정하기 __6.1.5 사전 학습된 모델 파인 튜닝을 위한 트레이너 구성 및 초기화 __6.1.6 파인 튜닝된 모델 사용하기 __6.1.7 다중 클래스 텍스트 분류를 위한 모델 파인 튜닝 6.2 멀티모달 모델 작업하기 __6.2.1 단일 모달 모델 __6.2.2 멀티모달 모델 6.3 요약 7장 랭체인과 라마인덱스를 사용한 LLM 기반 애플리케이션 구축 7.1 LLM 소개 7.2 랭체인 소개 __7.2.1 랭체인 설치하기 __7.2.2 프롬프트 템플릿 생성하기 __7.2.3 LLM 지정하기 __7.2.4 LLM 체인 생성하기 __7.2.5 체인 실행하기 __7.2.6 대화 유지하기 __7.2.7 RunnableWithMessageHistory 클래스 사용하기 __7.2.8 다른 LLM 사용하기 7.3 라마인덱스로 LLM을 개인 데이터에 연결 __7.3.1 패키지 설치하기 __7.3.2 문서 준비하기 __7.3.3 문서 로드하기 __7.3.4 임베딩 모델 사용하기 __7.3.5 문서 인덱싱하기 __7.3.6 임베딩 로드하기 __7.3.7 쿼리를 위해 LLM 사용하기 __7.3.8 질문하기 __7.3.9 OpenAI와 라마인덱스 사용하기 __7.3.10 앱을 위한 웹 프론트엔드 생성하기 __7.3.11 대화 유지하기 __7.3.12 챗봇 UI 생성하기 7.4 요약 8장 랭플로우를 활용한 시각적 랭체인 애플리케이션 구축 8.1 랭플로우란 __8.1.1 pip 명령어를 사용하여 랭플로우 설치하기 __8.1.2 도커를 이용한 랭플로우 설치하기 __8.1.3 클라우드에서 랭플로우 실행하기 8.2 새로운 랭플로우 프로젝트 생성 __8.2.1 프롬프트 컴포넌트 추가하기 __8.2.2 Models 컴포넌트 추가하기 __8.2.3 Chains 컴포넌트 추가하기 __8.2.4 Chat Input 및 Chat Output 컴포넌트 추가하기 __8.2.5 프로젝트 테스트하기 __8.2.6 Chat Memory 컴포넌트를 이용한 대화 유지 8.3 고유 데이터를 활용한 질의응답 __8.3.1 File 컴포넌트를 이용한 PDF 문서 불러오기 __8.3.2 Parse Data 컴포넌트를 이용한 긴 텍스트 분할하기 __8.3.3 Prompt 컴포넌트를 통한 질문 수집 __8.3.4 HuggingFace 컴포넌트 활용하기 __8.3.5 Chat Output 컴포넌트에 연결하기 __8.3.6 프로젝트 테스트하기 __8.3.7 OpenAI 컴포넌트를 활용한 LLM 사용하기 8.4 프로그래밍 방식으로 프로젝트 활용 __8.4.1 cURL 활용하기 __8.4.2 파이썬 코드 8.5 요약 9장 에이전트 프로그래밍 9.1 에이전트란 9.2 스몰에이전트를 사용한 에이전트 개발 __9.2.1 내장 도구 활용: DuckDuckGoSearchTool __9.2.2 내장 도구 활용: PythonInterpreterTool __9.2.3 사용자 정의 도구 작성하기 9.3 랭체인을 사용한 에이전트 개발 __9.3.1 내장 Tool 클래스 활용하기 __9.3.2 사용자 정의 도구 활용하기 9.4 랭그래프를 사용한 에이전트 개발 __9.4.1 랭그래프란 __9.4.2 랭그래프 에이전트 기초 __9.4.3 도구와 함께 랭그래프 사용하기 __9.4.4 사용자 정의 도구와 함께 랭그래프 사용하기 __9.4.5 메모리 기능을 포함한 랭그래프 사용하기 9.5 요약 10장 그라디오를 사용한 웹 기반 UI 구축 10.1 그라디오 기초 __10.1.1 그라디오의 Interface 클래스 사용법 __10.1.2 플래깅(Flagging) 옵션 설정하기 __10.1.3 인증(authentication) 설정하기 __10.1.4 서버 및 포트 커스터마이징 __10.1.5 그라디오 애플리케이션 공유하기 __10.1.6 그라디오 애플리케이션을 허깅페이스 스페이스에 배포하기 10.2 위젯 활용 __10.2.1 Textbox 활용하기 __10.2.2 Audio 활용하기 __10.2.3 Images 활용하기 __10.2.4 선택 위젯(selection widgets) 활용하기 __10.2.5 TabbedInterface 클래스를 사용하여 레이아웃 구성하기 10.3 챗봇 UI 생성 __10.3.1 기본 챗봇 UI 생성하기 __10.3.2 Textbox 전송(submit) 이벤트 연결하기 __10.3.3 챗봇 초기화 기능 구현하기 10.4 요약 11장 GPT4All을 이용한 로컬 실행 LLM 애플리케이션 구축 11.1 GPT4All 소개 11.2 GPT4All 설치 및 사용 __11.2.1 GPT4All 애플리케이션 설치하기 __11.2.2 gpt4all 파이썬 라이브러리 설치하기 __11.2.3 지원 모델 목록 확인하기 __11.2.4 특정 모델 로드하기 __11.2.5 질문하기 __11.2.6 그라디오와 연동하기 11.3 요약 12장 LLM을 이용한 로컬 데이터 쿼리 12.1 GPT4All로 고유 데이터 쿼리 __12.1.1 필수 패키지 설치 및 랭체인 모듈 임포트하기 __12.1.2 랭체인 패키지에서 다양한 모듈 임포트하기 __12.1.3 PDF 문서 로드하기 __12.1.4 텍스트를 청크로 분할하기 __12.1.5 임베딩(embedding)하기 __12.1.6 임베딩 로드하기 __12.1.7 모델 내려받기 __12.1.8 질문하기 __12.1.9 여러 문서 로드하기 __12.1.10 CSV 파일 로드하기 __12.1.11 JSON 파일 로드하기 12.2 LLM을 이용한 데이터 분석 코드 작성 __12.2.1 JSON 파일 준비 및 로드하기 __12.2.2 JSON 파일 로드하기 __12.2.3 Mistral 7B 모델을 사용하여 질문하기 __12.2.4 OpenAI를 사용하여 질문하기 12.3 요약 13장 LLM을 현실 세계와 연결: 모델 컨텍스트 프로토콜 13.1 MCP란 __13.1.1 MCP가 해결하는 문제 __13.1.2 MCP 이해하기 __13.1.3 MCP 서버 배포 및 구성 요소 __13.1.4 MCP 서버의 구성 요소 13.2 MCP 서버 구축 __13.2.1 uv 설치하기 __13.2.2 프로젝트 초기화하기 __13.2.3 패키지 설치하기 __13.2.4 MCP 서버 생성하기 __13.2.5 MCP 서버 점검하기 __13.2.6 Resources 구현하기 __13.2.7 Tools 구현하기 __13.2.8 프롬프트 구현하기 __13.2.9 구성 요소 테스트하기 13.3 클로드 데스크톱을 이용한 MCP 서버 테스트 __13.3.1 MCP 서버를 사용하도록 클로드 데스크톱 구성하기 __13.3.2 날씨 정보 가져오기 __13.3.3 텍스트 파일의 내용 가져오기 __13.3.4 PDF 파일의 내용 가져오기 __13.3.5 MCP 서버 개선하기 13.4 서드파티 MCP 서버 시도 __13.4.1 내 위치 가져오기(Get My Location) __13.4.2 날짜 및 시간 정보(mcp-datetime) 13.5 요약 |
|
이 책은 허깅페이스 생태계로 들어가는 입문서입니다. 트랜스포머의 기본 개념을 소개한 뒤, 자연어 처리와 컴퓨터 비전 업무에 허깅페이스를 활용하는 방법을 안내합니다. 더 나아가 LLM을 외부 세계와 잇는 표준으로 자리 잡은 MCP(Model Context Protocol) 서버를 직접 구축해 보는 실습까지 제공합니다. 여러 프레임워크를 두루 써 보고 장단점을 분석하다 보면, 비즈니스 환경에서 적절한 솔루션을 고르는 안목을 얻게 될 것입니다.
- 박지은 --- 「역자 서문」 중에서 |
|
AI 개발의 표준 플랫폼, 허깅페이스를 가장 실전적으로 배우는 방법!
허깅페이스(Hugging Face)는 AI 엔지니어와 데이터사이언티스트를 위한 대표적인 오픈 소스 생태계로, 수백 개의 사전 학습 모델과 데이터셋, 다양한 도구 및 라이브러리를 제공합니다. 또한 최첨단 AI 연구를 공유하고 협업하는 중심 허브 역할도 수행합니다. 허깅페이스는 방대한 플랫폼이며, 이 책은 그 생태계를 최대한 활용할 수 있도록 안내합니다. 이 책은 허깅페이스 커뮤니티의 다양한 리소스를 활용하여 엔드 투 엔드 AI 시스템을 구축하는 방법을 알려줍니다. 이 책에서는 객체 탐지 모델, RAG 기반 질의응답(Q&A) 애플리케이션, LLM 기반 챗봇 등 다양한 프로젝트를 직접 만들어 봅니다. 또한 랭체인, 라마인덱스, 그라디오와 같은 핵심 기술도 쉽고 명확하게 설명하여 처음 접하는 독자도 자연스럽게 익힐 수 있도록 구성했습니다. |
|
트랜스포머의 기초부터 임베딩, 파인튜닝, 에이전트, 로컬 LLM, MCP까지 자연스럽게 확장되는 구성으로, 허깅페이스 생태계의 전체 흐름을 체계적으로 익힐 수 있었습니다. 전반적으로 허깅페이스 입문부터 최신 AI 기술의 실전 활용까지 한 권으로 폭넓게 경험할 수 있는 유용한 실습서입니다. - 이석곤 (이알컴퍼니 기업부설연구소 팀장)
|
|
이제 허깅페이스가 제공하는 도구들은 인공지능을 공부하거나 관련서비스를 개발하는 사람들에게 거의 필수적인 도구로 여겨지고 있습니다. 기존 매닝출판사의 ‘In Action’ 시리즈와 마찬가지로, 이 책 역시 허깅페이스 도구를 다양한 도메인에서 활용하는 방법과 예제를 실제로 실행할 수 있는 코드와 함께 쉽게 설명합니다.
- 강찬석 (LG전자 소프트웨어 엔지니어(AI 스페셜리스트))
|