점점 모델들의 토큰 윈도우가 커지고 대부분의 에이전트 설정들이 Markdown을 활용하여 정의 되는 것이 대세가 되고 있는 것 같습니다.
그럼에도 아직 에이전틱 AI 하면 빼놓을 수 없는게 RAG 인 것 같습니다.
좀 더 도메인 영역에 특화된 에이전트를 구축하고자 하면 아직은 RAG 없이는 좀 더 전문적인 역할을 기대하긴 어렵지 않나 싶습니다.
개발자들 사이에서 난리가 난 코딩 영역의 에이전트들은 사실 일종의 프롬프트 엔지니어링 수준의 얕은 레벨로 설정된 것을 활용하는 것이 대다수 입니다.
전문성이 부족한 에이전트의 역할을 높은 성능을 가진 모델과 반복적인 코딩 과정을 통해 문제를 해결하고 있습니다. 물론 이 자체만으로도 매우 놀라운 결과를 가져다 주고 있긴한데요. 여전히 이것은 제가 느끼기에는 글쓰기나 코딩이라는 영역에 한해서 인것 같습니다.
그러나 사업영역, 특히 도메인 특화 영역으로 넘어오게 되면 이와 같은 방식은 동작하기 어렵거나 적용하기 어려운 부분이 많을 것으로 생각이 됩니다.
그래서인지 많은 회사들이 AX를 구축하는 과정에서 Knowledge base를 어떻게 구축하고 운영해야 하는지에 대한 고민이 많아 보입니다.
다행히 여러가지 솔루션들이 나오기 시작했고 요즘은 VectorDB를 활용한 임베딩 및 리랭킹을 통한 심플RAG 구축은 크게 어렵지 않아 보입니다.
물론 RAG 구축에는 심플RAG을 넘어서 다양한 전략과 기술이 접목 될 수 있습니다. (그래서인지 기술 기반이 부족한 소규모팀들은 VectorDB 기반으로만 RAG를 구축하는데도 많은 난관이 있어 보이긴 합니다)
반면 GraphDB의 경우 GraphDB자체가 화제가 된지는 이미 좀 되었지만 팔란티어의 온톨로지와 함께 GraphRAG이 주목을 받았고 특히 데이터간 관계성을 파악해야하는 경우 에이전트에 GraphRAG을 접목하는 것이 꽤 좋은 반응을 얻고 있는 것 같습니다.
최근에 제가 사용해본 솔루션 중에 중국 Tencent에서 오픈소스로 내놓은 WeKnora라는 프로젝트가 있습니다.
Knowledge-base Management System을 표방하고 있습니다.
직접 GraphDB에 임베딩 파이프라인을 만들어 운영하는 것은 분명 간단치 않은 일입니다.
반면 WeKnora를 사용하게 되면 매우 간단하게 GraphRAG을 Knowledge-base의 한 축으로 활용할 수 있게 해줍니다.
중국계 회사에서 내놓은 솔루션이라 그런지 혹은 엔터프라이즈향 프로젝트라 그런지 0.2.0 버전이 작년 12월에 나왔음에도 국내나 서구권에서는 여전히 생각보다는 널리 알려지지 못한것 같습니다. (인도인 컨트뷰터는 꽤 보이네요.)
엔터프라이즈향 오픈소스로 각 회사의 입맛에 맡게 수정해서 사용할 수 있게 되어 있습니다.
현시점 기준 GraphRAG을 저렴한 비용으로 가장 쉽고 간편하게 사내에 적용해 볼 수 있는 솔루션이라고 생각합니다.
다만 저도 아직은 한참 더 써보는 중인데요. 막상 써보는 과정에서 중국어 주석이나 가이드라인이 정말 진땀을 빼게 만들긴 했습니다 ㅎㅎ;;
그래서 제가 AI로 번역을 최대한 돌려보았고 WeKnora Fork에 해당 코드를 올려 놓았습니다. make와 docker만 깔려 있다면 쉽게 로컬에서 실행해보실 수 있습니다.
번역과 더물어 make start-all-local-full 이라는 커맨드를 추가하여 번역된 프론트엔드 및 템플릿도 이용할 수 있게 해놓았습니다. (그냥 make start-all 을 하시게 되면 WeKnora 레포지토리에 만들어져 있는 WeKnora 이미지를 가져다 쓰게 되어 있어서 아직 일부 번역이 안된 중국어 템플릿과 프론트엔드를 이용해야합니다 😅 )
아래 링크 첨부합니다.
