파편화된 복합 모달 사내 지식을 정교하게 통합 제어하는 AI 에이전트 아키텍처의 실전 설계 노하우
본 아티클은 복잡하고 유기적인 사내 데이터를 효과적으로 검색하기 위해 Agentic Search 시스템을 설계하고 구현한 실무 과정을 소개합니다. 단순 Chat 형태를 넘어 실행 흐름을 DAG 관점으로 바라보고, 다양한 맞춤형 Tool 설계와 LangGraph 프레임워크를 연계하여 성능 및 모니터링 가시성을 모두 잡은 에이전트 구축 여정을 다룹니다.
단순 RAG 도입 이후 컨텍스트 과부하나 파편화된 데이터 검색 한계에 부딪힌 AI 서비스 기획자 및 백엔드 개발자분들께 추천합니다. 실무에서 바로 적용할 수 있는 에이전트 노드 설계 패턴과 런타임 최적화에 대한 훌륭한 나침반이 될 것입니다.
사내 지식 데이터가 DB, 문서, 이미지 등 다양한 형태로 파편화되어 존재함에 따라, 기존의 조건식 검색이나 맥락이 배제된 단순 임베딩 기반 검색으로는 다중 모달 정보를 효과적으로 탐색하는 데 한계가 있었습니다.
에이전트의 실행 흐름을 DAG 구조로 재정의하여 CoT 기반 단일 Reasoning으로 통합하고, SLM 기반 문서 분석을 통한 컨텍스트 핸들링, 사용자 상호작용 및 MCP 인터페이스 기반 리소스 툴을 구현한 뒤, 이들을 안정적으로 구동하기 위한 런타임으로 LangGraph를 도입했습니다.
다양한 검색 결과 속에서도 컨텍스트 크기를 안정적으로 유지할 수 있게 되었으며, 멀티턴 확장 및 Scale-out 배치 시스템 구축 환경을 마련하고 Langfuse 연계를 통해 노드 단위 모니터링 용이성을 확보했습니다.
Trade-off
에이전트 노드를 극도로 세분화할 경우 노드 간 홉과 LLM 호출 횟수가 늘어나 Latency 및 비용이 상승하고 복잡도가 증가하는 한계가 있어, 일부 서브 태스크를 단일 Reasoning 프롬프트로 병합하는 최적화 절충안을 택해야 했습니다.
정적인 검색 파이프라인에 의존하지 않고, LLM이 주어진 목표에 맞춰 스스로 도구(Tool)를 선택하고 판단하여 최적의 검색 및 요약 전략을 수행하는 지능형 검색 아키텍처입니다.
방향성은 존재하지만 순환하지 않는 그래프 구조로, 복잡한 작업들 사이의 선후 관계와 의존성을 체계적으로 정의하고 실행할 수 있도록 돕는 모델입니다.
상태 머신 구조를 기반으로 하여 에이전트의 멀티턴 대화나 복잡한 루프 동작을 안정적인 그래프 형태로 모델링하고 실행할 수 있도록 지원하는 프레임워크입니다.