핵심 요약
브라질 농업부의 화학 제품 데이터를 활용하여 하이브리드 검색과 리랭킹을 적용한 고성능 RAG 시스템을 구축한 사례이다.
배경
브라질 농업부에 등록된 모든 화학 제품 정보를 효율적으로 검색하고 답변하기 위해 Agrofit API 데이터를 기반으로 RAG 파이프라인을 설계하고 구현했다.
의미 / 영향
이 프로젝트는 특정 도메인의 공공 데이터를 활용한 RAG 시스템 구축의 실무적 가이드라인을 제시한다. 특히 하이브리드 검색과 리랭킹, 그리고 에이전트 기반의 추가 정보 수집 계획은 복잡한 문서 검색 시스템의 발전 방향을 보여준다.
커뮤니티 반응
프로젝트의 구체적인 구현 방식과 사용된 기술 스택에 대해 긍정적인 반응을 보였으며, 특히 청크 크기 결정 과정에 관심을 나타냈다.
합의점 vs 논쟁점
합의점
- RAG 시스템에서 데이터 전처리와 청킹 전략이 성능에 결정적인 영향을 미친다.
- 하이브리드 검색 방식이 단일 검색 방식보다 검색 누락을 줄이는 데 효과적이다.
실용적 조언
- RAG 시스템 구축 시 데이터 특성에 따라 700-800자 정도의 청크 크기와 18%의 오버랩을 테스트해볼 것
- 벡터 검색과 어휘 검색을 결합한 하이브리드 검색 방식을 도입하여 검색 누락을 방지할 것
언급된 도구
LangChain추천
LLM 워크플로 오케스트레이션
Postgres중립
벡터 및 텍스트 데이터 저장
FastAPI추천
백엔드 API 서버 구축
Pydantic추천
데이터 스키마 검증
섹션별 상세
데이터 전처리 과정에서 Embrapa의 Agrofit API를 통해 수집한 데이터를 Pydantic으로 검증하고, 제어 대상 해충, 성분, 적용 기술 등을 포함한 컨텍스트 문서를 생성했다. 실험을 통해 18%의 오버랩과 700~800자 사이의 청크 크기가 가장 효율적임을 확인했다. 이러한 세밀한 청킹 전략은 검색 시 문맥의 손실을 방지하고 정확도를 높이는 데 기여했다.
검색 성능을 극대화하기 위해 하이브리드 검색 방식을 채택했다. intfloat/e5-large-v2 모델을 사용하여 임베딩을 수행했으며, MMR(Max Marginal Relevance) 기반의 벡터 검색과 websearch_to_tsquery를 이용한 어휘 검색을 결합했다. 검색된 결과는 필터링과 리랭킹(Reranking) 과정을 거쳐 LLM에 주입되어 답변의 정확도를 보장하도록 설계됐다.
시스템은 Python, LangChain, Postgres, FastAPI를 기반으로 구축됐으며, 모든 답변에 제품 라벨 링크 등 출처를 명시하여 신뢰성을 확보했다. 향후 계획으로 LangGraph를 도입하여 시스템이 스스로 추가 정보 필요 여부를 판단하게 할 예정이다. 필요시 제품 라벨을 자동으로 다운로드하고 상세 정보를 추출하는 에이전트 기능을 추가하여 시스템의 자율성을 높일 계획이다.
이미지 분석

실제 시스템이 어떻게 작동하는지 시각적으로 보여주며, 답변과 함께 출처(라벨 링크)가 어떻게 표시되는지 확인할 수 있는 근거 자료로 활용된다.
구축된 RAG 시스템의 사용자 인터페이스 또는 데이터 처리 흐름을 보여주는 스크린샷이다.
실무 Takeaway
- 데이터 특성에 맞는 최적의 청크 크기(700-800자)와 오버랩(18%) 설정이 RAG 성능의 핵심이다.
- 벡터 검색(MMR)과 어휘 검색을 결합한 하이브리드 방식이 검색 품질을 보장한다.
- 답변의 신뢰성을 위해 원본 소스(제품 라벨 링크) 인용 기능을 구현했다.
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료