emarco177/langchain-course

A project-based course repository for developing AI agents using LangChain v1+ and LangGraph: search agents, RAG systems, reflection agents, and code interpreters.

이것이 무엇인가

이 저장소는 LangChain 및 LangGraph 라이브러리(Python, README에 따르면 LangChain 1.0+ 버전)를 사용하여 AI 기반 애플리케이션을 구축하는 방법을 가르치는 과정입니다. 과정 자료는 장난감 예제가 아닌 실제 프로젝트 구축을 중심으로 구성되어 있습니다. 실제 API와 실제 사용 사례로 작업합니다.

무엇을 구축할 것인가

README에는 10개의 프로젝트가 나열되어 있습니다(한 섹션에 7개, 다른 섹션에 몇 개 더). 일부는 이 저장소의 git 브랜치(예: project/hello-world)로 존재하고, 일부는 별도의 외부 저장소에 존재합니다. 샘플:

  • Hello World — 첫 번째 기본 AI 에이전트.
  • Modern Search Agent — 검색 도구와 사용자 정의 도구를 사용하고 구조화된 출력을 가진 에이전트.
  • RAG Gist — 검색 증강 생성의 기본(답변 전에 AI에 관련 문서 제공).
  • System One Models — 모델 라우팅 및 도구 게이팅을 통한 빠른 의사 결정.
  • Code Interpreter — 코드를 실행할 수 있는 AI 에이전트.
  • Reflection Agent / Reflexion Agent — 자기 비판 및 자기 수정을 수행하는 에이전트.
  • Agentic RAG — 에이전트가 계획하고 메모리를 갖는 고급 검색 증강 시스템.

또한 Ice Breaker(소셜 미디어 프로필 분석기), Blog Analyzer(콘텐츠 분석), Documentation Helper에 대한 언급도 있습니다.

학습 경로

README는 세 단계를 제시합니다:

  1. 기초 — Hello World 체인, 그 다음 Code Interpreter.
  2. 실제 응용 — Ice Breaker, Documentation Helper.
  3. 고급 — Blog Analyzer, Agentic RAG.

사용 방법

  • 전제 조건: 초보자용이 아닙니다. git, Python, 환경 변수, 클래스, 테스트, 디버깅에 이미 익숙해야 합니다. Python 3.10+가 필요합니다. LLM에 대한 액세스가 필요합니다(로컬 예: Ollama 또는 클라우드 예: OpenAI, Anthropic, Gemini). 머신 러닝 경험은 필요하지 않습니다.
  • 설정: 저장소를 클론한 다음 특정 프로젝트 브랜치를 체크아웃하고 실행합니다(예: git checkout project/hello-world, 그 다음 uv sync 및 uv run python main.py). 외부 프로젝트는 별도로 클론합니다.
  • 학습 방법: 각 git 커밋은 레슨을 나타냅니다. README는 커밋 기록(git log --oneline)을 확인하고 커밋을 단계별로 살펴보며 코드가 어떻게 진화하는지 이해할 것을 권장합니다.

배우게 될 것

과정이 끝나면: 처음부터 에이전트 구축, 외부 API 호출, 벡터 데이터베이스로 RAG 시스템 구축, 다단계 추론 워크플로 설계, 에이전트 배포, 자기 수정 처리, 비용/성능 최적화.

주요 세부 사항

  • 언급된 기술 스택: LangChain v0.3+, LangGraph, Pinecone, FAISS, Streamlit.
  • 패키지 관리자: README는 uv, poetry 또는 pipenv를 사용하라고 합니다. 명시적으로 conda는 안 됩니다.
  • 라이선스: Apache 2.0.
  • 저자: Eden Marco. 이 과정은 Udemy에도 있습니다(README에 쿠폰 링크가 언급됨).

이것이 아닌 것

README는 이 저장소를 완성된 소프트웨어 제품으로 설명하지 않습니다. 이는 학습 리소스(과정 콘텐츠, 브랜치, 외부 연결 저장소)입니다. 또한 위에 나열된 것 이상의 기능을 주장하지 않습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트