5단계: AI 응용 시나리오 탐색

DeepLearning.AI에서 제공하는 RAG 시스템 개발 과정으로, 벡터 데이터베이스와 LLM을 사용하여 생산 수준의 검색 증강 생성 애플리케이션을 구축하는 방법을 배우고, 아키텍처 설계부터 배포 평가까지 전체 프로세스를 다룹니다.

RAGVectorDatabaseLLMApplicationWebSiteVideoFreeEnglish

검색 증강 생성(RAG) 과정 상세 소개

과정 개요

이 과정은 DeepLearning.AI에서 제공하는 포괄적인 검색 증강 생성(RAG) 시스템 과정으로, 학습자들이 아키텍처 설계부터 배포 및 평가에 이르는 프로덕션 수준의 RAG 애플리케이션 개발 지식을 습득하도록 돕기 위해 고안되었습니다.

과정 플랫폼: DeepLearning.AI / Coursera
강사: Zain Hasan (Together AI 선임 AI/ML 엔지니어, 토론토 대학교 강사)
과정 기간: 5시간 비디오 + 20시간 이상 코딩 실습
과정 수준: 중급
학습 방식: 자율 학습

강사 소개

Zain Hasan은 거의 10년 경력의 AI 엔지니어이자 교육자로, 다음 기관에서 근무했습니다:

  • Together AI: AI/ML 개발 관계 엔지니어
  • Weaviate: 벡터 데이터베이스 및 정보 검색 업무
  • 토론토 대학교: 머신러닝 시스템 강사
  • 학계, 스타트업, 기술 산업 전반에 걸쳐 풍부한 경험 보유
  • 오픈 소스 소프트웨어, 교육 및 커뮤니티 구축에 열정적

그의 강의 스타일은 전통적인 강의보다는 경험 많은 팀원과 함께 배우는 것에 가깝습니다.

과정 핵심 내용

세 가지 주요 학습 목표

  1. 실제 RAG 애플리케이션

    • 검색과 생성이 어떻게 협력하는지 학습
    • 신뢰할 수 있고 유연한 RAG 시스템을 구축하기 위한 각 구성 요소 설계
  2. 검색 기술 및 벡터 데이터베이스

    • 키워드 검색 (Keyword Search)
    • 시맨틱 검색 (Semantic Search)
    • 하이브리드 검색 (Hybrid Search)
    • 청킹 기술 (Chunking)
    • 쿼리 파싱 (Query Parsing)
    • 헬스케어 및 전자상거래 등 다양한 분야의 애플리케이션 지원
  3. 프롬프트 설계, 평가 및 배포

    • 검색 컨텍스트를 최대한 활용하는 프롬프트 엔지니어링
    • RAG 시스템 성능 평가
    • 프로덕션 환경을 위한 파이프라인 준비

과정 개요 (5개 모듈)

Module 1: RAG 소개

주제:

  • RAG 애플리케이션 시나리오
  • RAG 아키텍처 개요
  • LLM 기본 소개
  • Python 소개
  • LLM 호출 방법
  • 정보 검색 기초

실습 프로젝트:

  • 검색 및 프롬프트 증강 함수 작성
  • 첫 번째 RAG 시스템 구축
  • 구조화된 입력을 LLM에 전달

Module 2: 정보 검색 및 검색 기초

주제:

  • 검색기 아키텍처 개요
  • 메타데이터 필터링 (Metadata Filtering)
  • 키워드 검색 (TF-IDF 및 BM25)
  • 시맨틱 검색 (Semantic Search)
  • RAG의 벡터 임베딩
  • 하이브리드 검색 (Hybrid Search)
  • 검색 평가 및 지표

실습 프로젝트:

  • 시맨틱 검색, BM25 및 상호 순위 융합(Reciprocal Rank Fusion) 구현 및 비교
  • 다양한 검색 방법이 LLM 응답에 미치는 영향 관찰

Module 3: 벡터 데이터베이스를 이용한 정보 검색

주제:

  • ANN (근사 최근접 이웃) 알고리즘
  • 벡터 데이터베이스
  • Weaviate API 소개
  • 청킹 기술 (Chunking)
  • 쿼리 파싱 (Query Parsing)
  • 크로스 인코더 (Cross-encoders) 및 ColBERT
  • 재순위화 (Reranking)

실습 프로젝트:

  • Weaviate와 실제 뉴스 데이터셋을 사용하여 RAG 시스템 확장
  • 문서 청킹, 인덱싱 및 검색 수행

Module 4: RAG의 대규모 언어 모델

주제:

  • 트랜스포머 아키텍처
  • LLM 샘플링 전략
  • LLM 능력 탐색
  • 적절한 LLM 선택
  • 프롬프트 엔지니어링 (Prompt Engineering)
  • 환각 문제 처리
  • LLM 성능 평가
  • 에이전트 RAG (Agentic RAG)
  • RAG vs. 미세 조정 (Fine-tuning)

실습 프로젝트:

  • 가상 의류 매장을 위한 도메인 특정 챗봇 개발
  • 사용자 지정 데이터셋을 기반으로 일반적인 질문에 답변하고 제품 추천 제공
  • Together AI에서 호스팅하는 오픈 소스 LLM 사용

Module 5: 프로덕션, 평가 및 배포

주제:

  • 프로덕션 환경의 과제
  • RAG 평가 전략 구현
  • 로깅, 모니터링 및 관찰 가능성
  • RAG 시스템 추적
  • 사용자 지정 평가
  • 양자화 기술 (Quantization)
  • 비용 vs. 응답 품질 트레이드오프
  • 지연 시간 vs. 응답 품질 트레이드오프
  • 보안
  • 멀티모달 RAG

실습 프로젝트:

  • 동적 가격 책정 등 실제 문제 처리
  • 모니터링 및 디버깅을 위한 사용자 상호 작용 기록
  • 챗봇 신뢰성 향상

기술 스택 및 도구

핵심 도구

  • 벡터 데이터베이스: Weaviate
  • LLM 플랫폼: Together AI (오픈 소스 LLM)
  • 모니터링 도구: Phoenix (Arize)
  • 개발 언어: Python

관련 기술

- Vector Embeddings (벡터 임베딩)
- Semantic Search (시맨틱 검색)
- BM25 Keyword Search (BM25 키워드 검색)
- Hybrid Search (TF-IDF + Semantic) (하이브리드 검색)
- Reciprocal Rank Fusion (상호 순위 융합)
- Cross-encoders (크로스 인코더)
- ColBERT
- Chunking Strategies (청킹 전략)
- Query Parsing (쿼리 파싱)
- Reranking (재순위화)
- Prompt Engineering (프롬프트 엔지니어링)
- Quantization (양자화)

실제 적용 분야

이 과정은 다음 분야의 실제 데이터셋을 사용합니다:

  • 📰 미디어: 뉴스 데이터셋
  • 🏥 헬스케어: 의료 문서
  • 🛍️ 전자상거래: 제품 데이터, 가격 정보
  • 📊 금융: 재무 문서

학습 성과

과정을 완료하면 다음을 수행할 수 있습니다:

✅ 완전한 RAG 시스템의 각 부분을 설계하고 구현
✅ 사용 사례에 적합한 아키텍처 선택
✅ Weaviate와 같은 벡터 데이터베이스 사용
✅ 프롬프트 및 검색 전략 실험
✅ Phoenix와 같은 도구를 사용하여 성능 모니터링
✅ 주요 트레이드오프 이해:

  • 하이브리드 검색을 언제 사용할지
  • 컨텍스트 윈도우 제한을 관리하는 방법
  • 지연 시간과 비용의 균형을 맞추는 방법

✅ RAG 파이프라인 평가 및 반복 개선
✅ 새로운 방법과 생태계 진화에 적응
✅ 개념 증명(POC)에서 실제 배포로 전환

선수 요구 사항

  • 필수: 중급 Python 기술
  • 권장: 생성형 AI 기초 지식
  • 권장: 고등학교 수학 수준

과정 특징

🎯 실습 지향

  • 5개의 점진적인 코딩 실습
  • 간단한 프로토타입부터 프로덕션 수준 구성 요소까지
  • 실제 데이터셋

📚 체계적인 학습

  • 구성 요소 수준 및 시스템 수준 기술 포함
  • 기본 원리와 실제 트레이드오프 이해
  • 빠르게 발전하는 RAG 생태계에 적응

🏆 인증 획득

과정을 완료하면 DeepLearning.AI에서 발급하는 수료증을 받아 실제 도구와 기술을 사용하여 RAG 시스템을 구축하고 평가하는 기술을 증명할 수 있습니다.

RAG의 중요성

RAG가 필요한 이유?

대규모 언어 모델은 강력하지만, 올바른 정보가 없으면 종종 오류를 범합니다. RAG는 다음을 통해 이 문제를 해결합니다:

  1. 응답 접지: 모델 응답을 관련성 있고, 종종 비공개 또는 최신 데이터에 기반을 둠
  2. 외부 지식 접근: LLM 훈련 시 포함되지 않은 관련 정보 검색
  3. 정확성 향상: 도메인 특정, 비공개 또는 최신 지식 기반 사용

RAG의 적용 시나리오

  • 🔧 내부 도구: 기업 지식 기반 쿼리
  • 💬 고객 서비스 도우미: 제품 문서를 기반으로 한 지원
  • 🎯 전문 애플리케이션: 의료, 법률, 금융 등 분야의 전문 시스템
  • 📱 개인화된 도우미: 사용자 데이터를 기반으로 한 맞춤형 서비스

학습 조언

DeepLearning.AI의 조언에 따르면:

  1. 전용 학습 공간 만들기: 조용하고 정돈되며 방해받지 않는 작업 공간 설정
  2. 일관된 학습 계획 수립: 고정된 학습 시간 설정, 습관 형성
  3. 정기적인 휴식: 포모도로 기법 사용 (25분 학습 + 5분 휴식)
  4. 커뮤니티 참여: 포럼, 토론 그룹 및 커뮤니티 활동 참여
  5. 능동적인 학습: 필기, 요약, 다른 사람 가르치기 또는 실제 프로젝트에 적용

과정 접근

관련 과정 추천

RAG에 관심이 있다면 다음 과정도 학습할 수 있습니다:

  • Building and Evaluating Advanced RAG Applications
  • Knowledge Graphs for RAG
  • LangChain: Chat with Your Data
  • Building Multimodal Search and RAG
  • Building Agentic RAG with LlamaIndex

요약

이 과정은 다음을 희망하는 사람들에게 적합한 포괄적이고 심층적인 RAG 과정입니다:

  • POC에서 프로덕션 환경으로 전환하려는 엔지니어
  • 신뢰할 수 있고 확장 가능한 LLM 애플리케이션을 구축하려는 개발자
  • RAG 시스템 설계 트레이드오프를 이해하려는 AI 실무자
  • 최신 RAG 기술과 도구를 마스터하려는 학습자

이 과정은 기술 구현뿐만 아니라 시스템 사고 및 엔지니어링 의사 결정 능력을 함양하는 데 중점을 두어, 학습자들이 끊임없이 진화하는 RAG 생태계에서 경쟁력을 유지하도록 돕습니다.