11차시. Retriever 기초 실습
먼저 큰 그림부터
집안 가전은 냉장고, TV, 청소기처럼 종류가 다 다르지만 플러그 모양은 똑같아서 어느 콘센트에나 꽂힙니다. 수업 자료는 Retriever를 이 표준 플러그에 빗댑니다. FAISS든 Chroma든 안에서 무엇이 돌아가든, 부르는 쪽은 retriever.invoke(질문) 한 줄만 쓰면 됩니다. 반찬 세 개를 고르라는데 김치만 셋 고르면 곤란하듯, 비슷한 조각만 세 개 오는 것을 막는 방법이 MMR입니다. 참고서를 30권 주면 오히려 판단이 흐려지듯, k도 크다고 좋은 것이 아닙니다.
오늘 챙겨 갈 것은 세 가지입니다. 검색 방식(similarity, mmr, 점수 기준)을 search_type 하나로 바꾸는 법, k를 감이 아니라 점수 표로 정하는 법, 검색 결과에 번호와 출처를 붙여 문맥으로 조립하는 법입니다. 특히 build_context가 붙이는 [1], [2] 번호는 13차시에서 인용 검사의 재료가 됩니다. 12차시에서는 이렇게 만든 RAG가 왜 가끔 틀리는지를 정면으로 다룹니다.