15차시. 기본 RAG 앱 만들기
이번 차시에서 배우는 것
출처: 원본 PDF 15차시_기본RAG앱만들기.pdf 1쪽 · 쪽 그림 1쪽
기본 RAG 앱 만들기 — 실험 코드를 제품으로
✓ 흩어진 실험 코드를 역할별 모듈로 나눈다
✓ 모든 설정을 config 한 곳으로 모은다
✓ 검색·생성을 함수 하나로 감싸 외부에 노출한다 ✓ 오류가 나도 앱이 죽지 않게 예외를 처리한다 ✓ 반복 질문이 가능한 인터페이스를 붙인다
✓ 모듈 분리 감각을 익혀 3부를 준비한다
교안 해설: 이 시간에 하는 일
출처: 교안 15_기본RAG앱만들기.md
새 기능은 없습니다. 14차시까지 실험이 끝난 값을 역할별로 나눕니다. config.py는 경로, 청크, k, 모델, 프롬프트 버전만 둡니다. indexer.py는 로드와 인덱스입니다. rag.py의 ask는 검색, 문맥, 생성, 인용 검사를 안에서 하고 밖에는 답과 출처 딕셔너리만 돌려줍니다. app.py는 콘솔 루프이고 web.py는 Streamlit입니다.
질문마다 인덱스를 다시 만들지 않도록 로드는 ask 밖입니다. 빈 질문, 검색 0건, API 오류는 스택 추적 대신 짧은 안내를 돌려줍니다. 개발자용 원인은 로그에 남깁니다.
app.py와 web.py는 입력을 기다리므로 실행 샘플은 예시 대화입니다. rag.py는 API 예시입니다.
강의 PPT 흐름
출처: 강의 PPT 15차시_기본RAG앱만들기.pptx (16장)
| 장 | 꼬리표 | 슬라이드 제목 |
|---|---|---|
| 1 | - | 실습으로 배우는 LangGraph : 내 손으로 RAG 시스템 만들기 |
| 2 | LEARNING GOALS | 이번 차시에서 배우는 것 |
| 3 | THE PROBLEM | 지금 폴더를 열어보면 |
| 4 | FOUR MODULES | 역할별로 딱 네 개면 충분합니다 |
| 5 | KEY TERMS | 핵심 용어 |
| 6 | CONFIG FIRST | 설정은 한 곳에만 |
| 7 | ONE DOOR | 밖에서는 함수 하나만 |
| 8 | DON'T CRASH | 실험 코드와 앱의 가장 큰 차이 |
| 9 | ERROR HANDLING | 예외 처리의 세 가지 원칙 |
| 10 | THE INTERFACE | 화면은 얼마든지 붙일 수 있습니다 |
| 11 | TROUBLESHOOTING | 자주 겪는 문제 |
| 12 | LOOKING AHEAD | 오늘 한 분리가 3부로 이어집니다 |
| 13 | CHECKLIST | 이번 차시 체크리스트 |
| 14 | ASSIGNMENT | 이번 차시 과제 |
| 15 | NEXT | 다음 차시 미리보기 — 16차시 1부 종합정리 |
| 16 | - | 마무리 |