15차시. 기본 RAG 앱 만들기
먼저 큰 그림부터
새 집에 이사하면 처음엔 상자를 아무 데나 둡니다. 당장은 필요한 것을 꺼내 쓰면 되니까요. 그런데 물건이 늘면 "내 충전기 어디 있지?"를 매번 찾게 됩니다. 수업 자료는 14차시까지 쌓인 src 폴더가 지금 그 상태라고 말합니다. 오늘은 새 기능 없이, 흩어진 실험 코드를 config, indexer, rag, app 네 개의 방으로 정리합니다.
오늘 챙겨 갈 것은 세 가지입니다. "이 파일은 언제 바뀌는가"로 파일을 나누는 기준, 밖에서는 ask() 하나만 부르고 성공이든 실패든 같은 모양의 딕셔너리를 받는 약속, 그리고 빈 질문이나 API 오류에도 앱이 죽지 않게 하는 예외 처리입니다. 오늘 나눈 _search, ask, 반환 딕셔너리는 3부에서 Retriever Node, Generator Node, State로 그대로 옮겨 갑니다. 16차시에서는 1부 전체를 정리합니다.