25년 10월 4주차 그래프 오마카세
Introducing GraphQA: An Agent for Asking Graphs Questions

- 기업의 복잡한 클라우드 아키텍처 관리를 돕기 위해 AI 기반의 도구와 추천 기능을 제공하는 기술 기업(Tech Company), "Catio" 라는 그룹은 주력 분야인 클라우드 아키텍처를 기반으로 AI 코파일럿을 만드는 회사로 잘 알려져 있습니다. 최근 Catio 그룹은 클라우드 시스템을 그래프로 보고 추론하는 기술(GraphQA)을 개발하여 이 코파일럿에 적용한 테크니컬 레포트를 공식 블로그에 게재하였습니다.
- 최근 인공지능 분야는 스스로 문제를 해결하는 에이전트(Agent) 개발에 집중하고 있습니다. 하지만 복잡한 시스템의 구조를 분석하고 추론하는 문제에서는 기존 LLM의 한계가 명확했습니다.
- 클라우드 아키텍처, 공급망, 소셜 네트워크 등 세상의 많은 시스템은 본질적으로 서비스, 데이터베이스, API 등이 복잡하게 연결된 그래프(Graph) 구조로 얽혀 있습니다. 시스템을 최적화하거나 문제를 해결하려면 이러한 관계를 이해해야 합니다. 하지만 이러한 그래프 구조를 분석하고 추론하는 능력은 여전히 특수 쿼리 언어와 전문가 영역에 머물러 있었습니다.
- 이러한 간극을 메우기 위해 만들어진 오픈소스 에이전트, GraphQA에 대해서 이번 주 오마카세로 가볍게 소개해드리고자 합니다.
- LLM은 텍스트 추론에 강력하여 요약, 설명, 심지어 계획까지 수행할 수 있습니다. 하지만 그래프 경로 추적, 종속성 계산, 영향 분석 등 시스템의 구조적 관계에 있어서는 취약합니다. 즉, 서비스 간의 관계를 설명할 수는 있지만, 특정 데이터베이스에서 시작되는 모든 종속 경로를 계산할 수는 없습니다.
- 그래프는 경로, 종속성, 계층 구조 등 시스템에 형태를 부여하는 모든 요소를 명시적이고 계산 가능하게 만듭니다. 수십 년간 그래프 이론이 해결해 온 이 구조적 추론 능력을 AI 에이전트에게 제공하는 것이 GraphQA의 핵심 목표입니다.
- 그래프를 단순한 텍스트로 변환하여 RAG를 시도하는 방식으로는 정확한 구조 분석이 불가능했습니다. GraphQA는 시스템을 단순한 텍스트가 아닌 그래프로 취급하고, 실제 그래프 알고리즘을 사용하여 추론합니다.
- 기존 방식과의 차별점: 그래프를 분석할 텍스트로 처리하거나, LLM이 불안정한 쿼리 언어(Cypher/Gremlin)를 생성하게 하는 대신, 에이전트가 그래프 알고리즘 도구에 직접 접근하여 구조를 파악하게 합니다.
- 에이전트는 언어 추론과 함께 근거리 탐색, 영향 추적, 병목 현상 감지와 같은 알고리즘을 사용하여 문제를 해결할 수 있습니다. 즉, 아키텍처가 무엇인지 이해할 뿐만 아니라, 무언가가 변경될 때 어떻게 동작할지까지 예측할 수 있습니다.
- GraphQA는 새로운 쿼리 언어가 아닌, 그래프 추론을 위한 모듈식 에이전트 인터페이스로 제공됩니다.
- LangGraph가 추론 루프를 조율하며 도구 호출, 메모리, 중간 결과를 관리하는 오케스트레이션(orchestration) 역할을 담당합니다.
- 다음 LLM (e.g. GPT)은 사용자의 질문을 해석하고 그 의도를 파악하여, LangGraph를 통해 적절한 알고리즘을 호출, 다음에 실행할 그래프 작업을 결정하는 역할을 수행합니다.
- NetworkX (선택적으로 cuGraph를 통한 GPU 가속)을 통해 Searching, Shortest Path, Centrality analysis 등의 그래프 도구들을 제공하는 알고리즘 코어를 담당합니다.
- 에이전트 로직 변경 없이도 사용자가 직접 정의한 알고리즘이나 다른 그래프 백엔드로 쉽게 확장할 수 있도록 설계되었습니다.
- 이러한 요소들이 결합되어, GraphQA는 백엔드에 관계없이 그래프에 대한 알고리즘 추론을 위한 깔끔하고 보편적인 인터페이스를 에이전트에게 제공합니다. GraphQA는 클라우드 아키텍처, 공급망, 소셜 네트워크, 생물 시스템 등 구조가 중요한 모든 영역에서 에이전트의 능력을 한 단계 끌어올릴 잠재력을 가지고 있다고 평가받고 있습니다.
- 현재 GraphQA는 Catio의 추천 및 채팅 모듈에 활용되고 있으며, LLM에게 '텍스트만 읽는 능력'을 넘어 '시스템의 구조를 계산하는 능력'을 제공함으로써 폭넓은 적용 분야로 확장될 수 있음을 밝힙니다.
- 마이크로 서비스 : 서비스 간 종속성 맵핑
- 데이터 거버넌스 : 데이터 흐름 및 계보(Lineage) 분석
- 공급망 위험 분석 등
- 현재 해당 프로젝트는 오픈 소스로 공개되어 있으니 참고해보시면 좋을 것 같습니다.
[Contact Info]
Gmail: jhbae1184@akane.waseda.jp
Twitter (X): @jhbae1184