한컴테크를 통해 한컴의 기술을 공유합니다. 한컴의 프로그래밍, 프레임워크, 라이브러리 및 도구 등 다양한 기술을 만나보세요. 한컴 개발자들의 다양한 지식을 회사라는 울타리를 넘어 여러분과 공유합니다. 한컴이 제공하는 기술블로그에서 새로운 아이디어와 도전을 마주하고, 개발자가 꿈꾸는 미래를 실현하세요.

한컴테크

MCP를 통한 지식 그래프와 LLM 연동


요약

이 글은 지식 그래프에 대해 간단히 설명하고, MCP를 통해 LLM이 지식 그래프를 활용하는 MCP 서버 또는 호스트로서의 연동 방안을 소개합니다. 또한, LLM이 지식 그래프를 기반으로 추론하는 방법 중 하나인 Think-on-Graph를 설명하고, 지식 그래프를 탐색하여 정답을 도출하는 과정을 보여줍니다.

1. 개요


대형 언어 모델(Large Language Model, LLM)은 몇 년 사이에 괄목할 만한 발전을 이루었지만, 모델이 학습한 데이터만으로는 최신 데이터나 특정 도메인에 대한 심층 지식이 부족하다는 한계가 있습니다. 이러한 한계를 보완하기 위해, 검색 증강 생성(Retrieval-Augmented Generation, RAG)처럼 LLM이 외부 리소스를 컨텍스트로 활용하여 결과를 생성하는 방식이 주목받고 있습니다.

또한 최근에는 모델이 외부 연동 기능을 통해 획득한 데이터를 기반으로 현재의 맥락에 맞게 활용하는 능력이 인공지능 시스템의 주요 경쟁력으로 부상하고 있습니다. 이렇게 외부 리소스를 활용하는 것은 모델이 단순히 더 많은 데이터를 획득하는 것에 그치지 않고, 인공지능이 능동적으로 실제 세계의 작업을 수행할 수 있도록 하는 것에 그 목적이 있습니다. 이와 같은 능동적인 인공지능인 에이전트는 모델 컨텍스트 프로토콜(Model Context Protocol, MCP)과 같은 LLM 연동 프로토콜이 주도하고 있습니다.

이러한 배경 속에서 MCP와 지식 그래프(Knowledge Graph)를 활용하는 방안이 주요 기술로 부상하고 있습니다. MCP는 LLM의 표준화된 통신 방식, 즉 ‘어떻게’ 연결할 것인가에 대한 방안을 제공하고, 지식 그래프는 구조화된 지식으로 ‘무엇을’ 제공할 것인가에 대한 해답을 제시합니다. 인공지능 시스템이 복잡한 정보를 이해하고 효과적으로 상호작용을 해야 하는 상황에서, 이 두 기술의 조합은 필연적이라고 할 수 있겠습니다.

본 글에서는 지식 그래프가 무엇인지, 그리고 지식 그래프가 MCP를 통해 LLM과 연동하여 어떤 방식으로 사용할 수 있는지 살펴보겠습니다.

2. 지식 그래프란?


MCP에 대해서는 한컴테크 블로그의 다른 글에서 이미 다루었으므로, 이 글에서는 먼저 지식 그래프에 대해 알아보겠습니다.

MCP에 대한 자세한 내용은 아래 블로그를 참고해 주세요.

MCP란 무엇인가: LLM Agent 동작 흐름으로 이해하는 MCP
(인공지능기술팀 최정우님 작성)

지식 그래프는 다음과 같은 특성을 지닙니다.

2-1. 지식 그래프

  • 개체와 개체 사이의 관계로 구성되는 구조의 데이터 표현입니다.
  • 데이터를 그래프 형태로 표현하고 조작할 수 있는 구조의 지식 베이스입니다.
  • 개체, 이벤트, 상황 또는 추상적 개념과 같은 개체의 상호 연결된 설명을 저장할 수 있습니다.
  • AI와 시멘틱 웹에서 복잡한 정보를 조작하고 질의하는 데 사용됩니다.
  • 지식 그래프는 일반적으로 자연어 텍스트나 기존의 관계형 데이터베이스에서 추출, 정제, 연결, 구조화하는 과정을 통해 생성됩니다.
출처: [Technology Toolkit 2021]세상 모든 것들의 연결고리, 지식 그래프 안에 있습니다 | 인사이트리포트 | 삼성SDS

지식 그래프의 구성 요소는 다음과 같습니다.

  • 노드(Node) : 개체 (예: 사람, 장소, 사물 등)
  • 에지(Edge) : 개체 간의 관계 (예: “작가다”, “위치하다”, “형제다” 등)
  • 속성(Property) : 개체가 가진 정보 (예: 생년월일, 국가, 직업 등)
  • 속성값(Value) : 속성에 대한 데이터 (예: “알버트 아인슈타인”의 “출생 연도” 속성값은 “1879년” 등)

노드와 에지, 속성값을 주어, 술어, 목적어의 관계로 하여 삼중 구조(triple)로 구성하기도 합니다.

2.2 지식 그래프의 장단점

지식 그래프 장점
  1. 지식을 명시적으로 제공합니다.
  2. 해석 가능한 결과를 도출할 수 있습니다.
  3. 지속적인 지식 확장이 가능합니다.
  4. 도메인에 특화된 지식 그래프를 잘 구축하면, 신뢰할 수 있는 도메인 지식을 제공할 수 있습니다.
지식 그래프 단점
  1. 제대로 구축하기가 어렵습니다.
    • 과거에는 도메인 특화 지식 그래프는 도메인 전문가가 직접 개체의 관계를 설정해야만 했으므로 시간과 비용이 많이 소모되었습니다.
    • 비교적 최근에는 자동화 도구를 사용하여 구축하게 되는데, 자동화 도구는 비교적 빠른 지식 그래프 구축이 가능하나 생성된 관계의 정확성이나 일관성이 낮아 정제, 검증, 스키마를 강제하는 등의 수작업이 필요하여 여전히 시간과 비용을 소모합니다.
  2. 관계를 표현할 수 없는 모호한 정보는 저장하기 어려운 구조입니다.
  3. 규모가 커지면 변동이 있을 때마다 관계가 설정된 모든 엔티티들을 갱신해야 하므로, 지식 그래프의 규모가 커질수록 동적으로 변하는 지식 그래프의 특성을 처리하기 어려워집니다. 

2.3 지식 그래프 응용

지식 그래프는 다양한 산업 분야에서 데이터를 연결하고 분석하는 데 활용됩니다. 특히 자연어 처리(NLP), 검색, 추천 시스템, 챗봇 등에서 정확도와 품질을 향상시키는 데 기여하고 있습니다. 주요 응용 사례는 다음과 같습니다.

검색 엔진 및 추천 시스템

지식 그래프는 검색 결과를 개선하고 개인화된 추천을 제공할 수 있습니다. 즉, 사용자가 원하는 정보를 빠르게 찾고, 상품 판매 서비스라면 관련 상품을 쉽게 발견할 수 있도록 합니다.

  • 예시 : 구글의 지식 그래프(Google Knowledge Graph)는 검색 시 관련 정보를 요약하여 표시하며, 아마존의 프로덕트 그래프(Amazon Product Graph)는 상품 추천에 지식 그래프를 활용하여 사용자 경험을 향상시킵니다.
질의응답 시스템

사용자의 자연어 질의에 대해 지식 그래프에서 정확한 답변을 추출하여 제공함으로써 서비스의 사용자 상호작용을 더 자연스럽고 효과적으로 형성할 수 있습니다.

  • 예시 : 챗봇이나 Siri, Alexa와 같은 어시스턴트는 지식 그래프를 활용하여 사용자의 자연어 질의에 정확한 답변을 제공합니다.
문서 관리

문서 관리 시스템에서 문서 간의 관계를 연결하여 의미적 검색과 분석을 가능하게 할 수 있어, 사용자가 문서 검색과 분석에 걸리는 시간을 단축하고 더 깊은 통찰을 제공할 수 있습니다.

  • 예시 : 법률 문서 관리 시스템에서 관련 법률, 규정, 사례를 연결하여 관련된 정보를 쉽게 검색하게 함으로써 법률 문서 분석의 효율성을 증대시킵니다.

3. 지식 그래프와 MCP의 연동


지식 그래프는 MCP 프로토콜을 통해 LLM과 연동하여 시너지를 발휘할 수 있습니다. 지식 그래프가 MCP 서버로서 사용되는 방안과, MCP 호스트 내에서 사용되는 방안을 설명하겠습니다.

3.1 지식 그래프를 MCP 서버로 활용

지식 그래프 데이터베이스 자체를 감싸는 MCP 서버를 구축하는 방식입니다.

이 서버는 지식 그래프의 개체, 관계, 속성 정보를 리소스(Resources)로 노출하거나, 특정 개체 찾기, 관계 탐색, 추론 수행 등 지식 그래프에 대한 질의 기능을 제공하는 도구(Tools)로 사용될 수 있습니다

MCP를 통한 LLM과 지식 그래프 연동 (출처: LLM, MCP, 지식 그래프)

동작 방식은 다음과 같습니다.

  1. AI 에이전트는 사용자 질의나 필요한 정보에 따라 지식 그래프 MCP 서버에 연결하고, 특정 개체나 관계를 리소스로 요청하거나, 복잡한 질의나 추론을 수행하는 도구를 호출합니다.
  2. MCP 서버는 지식 그래프에서 해당 정보를 검색하거나 필요한 연산을 수행한 후, 결과를 표준화된 MCP 응답 형식으로 클라이언트에게 반환합니다.

MCP 서버로 활용하는 방안은 LLM이 MCP라는 표준화된 인터페이스를 통해 복잡하게 상호 연결된 도메인 지식에 접근하고 활용하는 것이 용이해집니다. 다시 말해, 관계형 데이터베이스보다 복잡한 데이터 모델링과 추론에 강점이 있는 지식 그래프를 LLM의 외부 지식 기반으로 제공하여, 더욱 정확하고 심층적인 답변 생성을 가능하게 할 수 있습니다. 예를 들어, MCP 서버가 기업 내부 지식 그래프를 제공한다면, LLM은 특정 프로젝트, 관련 인력, 사용된 기술, 관련 문서 등의 복잡한 관계를 파악하여 사용자 질문에 답하거나 추천할 수 있습니다.

실제 사례 :

Neo4j는 자사의 그래프 데이터베이스를 연동한 MCP 서버 구현체인 mcp-neo4j를 공개하여, MCP 기반의 지식 그래프 연동 예시를 제공합니다.

3.2 지식 그래프를 MCP 에이전트 내에서 활용

MCP 클라이언트 또는 호스트 애플리케이션(에이전트) 내부에 지식 그래프 기능을 통합하는 방식입니다. 외부 MCP 서버들로부터 수집된 데이터를 통합하고 AI 에이전트가 사용할 컨텍스트를 구조화하며 추론을 수행하는 과정에서 기억장치로 활용되며, 특히 세션에 상관없이 컨텍스트를 유지할 수 있는 영구 기억장치 역할을 수행할 수 있습니다.

지식 그래프를 MCP 호스트 내에서 활용

동작 방식은 다음과 같습니다.

  1. AI 에이전트는 이메일, 파일 시스템 서버 등 다양한 MCP 서버로부터 필요한 리소스나 도구 실행 결과를 제공받습니다.
  2. 이메일 내용, 파일 정보 등 MCP 서버로부터 수집된 이질적인 데이터를 내부의 임시 또는 영구적인 지식 그래프로 모델링하여 저장합니다.
  3. 통합된 지식 그래프를 통해 데이터 간의 연결성을 파악하고, 명시되지 않은 사실을 추론하며, LLM에게 제공할 최종 컨텍스트를 구성합니다.

이 과정 중 AI 에이전트가 다음에 어떤 MCP 서버의 어떤 도구나 리소스를 사용해야 할지 결정하는 데 필요한 추론 과정에도 지식 그래프가 활용될 수 있습니다.

이러한 방식은 사용자의 이전 사용 기록을 포함한 여러 소스의 데이터를 통합하여 더 깊이 있는 분석이나 복합적인 추론을 가능하게 하며, 데이터 간의 숨겨진 관계를 발견하고 LLM이 새로운 정보를 추론할 수 있게 합니다. 예를 들면, 캘린더 서버에서 회의 일정을 가져오고, 이메일 서버에서 해당 회의와 관련된 대화 내용을 가져온 후, 이를 지식 그래프로 연결하여 회의의 배경, 참여자들의 역할, 논의될 핵심 주제 등을 추론하고 LLM에게 제공하여 더욱 유용한 회의 요약이나 후속 조치 제안을 생성하게 할 수 있습니다.

실제 사례 :

Anthropic이 공개한 Knowledge Graph Memory MCP Server는 지식 그래프를 LLM의 영구 기억장치로 활용한 MCP 서버 예시입니다.

4. 지식 그래프를 활용한 LLM 추론 예시


LLM 단독으로는 환각(hallucination) 등 잘못된 답변을 할 가능성이 있으며, RAG 등으로 컨텍스트를 제공받지 않으면 학습하지 않은 최신 정보에 대한 답을 할 수 없는 것은 잘 알려져 있습니다.

RAG는 문서에서 정보를 검색하여 답변을 생성할 수 있게 하나, 연관성으로 묶인 정보가 아닌, 독립된 정보 조각(chunk)을 검색하는 형식이므로 복잡한 관계를 명확히 설명하기 어려운 문제가 있습니다.

물론 지식 그래프는 그 자체만으로는 추론 기능이 없지만, 잘 구축된 지식 그래프를 LLM 추론에 활용하면, LLM이 복잡한 관계를 명확히 설명하는 것이 가능해집니다.

여기에서는 LLM 추론에 지식 그래프를 활용하는 방안 중 한 가지인 Think-on-Graph를 소개하겠습니다.

4.1 LLM과 지식 그래프를 결합한 추론 방법 : Think-on-Graph

Think-on-Graph는 다음과 같은 단계로 추론합니다.

  1. 그래프 탐색 초기화
    • 질문에 대한 토픽 개체(topic entity)를 N개 식별합니다. 이 토픽 개체로부터 그래프 탐색이 시작되므로 N개의 추론 경로 설정 단계로 볼 수 있습니다.
  2. 탐색(Exploration)
    • 지식 그래프에서 beam search 방법으로 다양한 관계를 탐색하며, 질문에 적합한 관련 정보를 동적으로 추출합니다.
    • 탐색은 여러 경로 중에서 LLM이 가장 가능성이 높다고 추정한 N개의 경로만 유지하며 탐색을 반복해 최적의 결과를 도출하게 됩니다.
  3. 추론(Reasoning)
    1. 현재까지 탐색한 정보를 바탕으로 질문에 답할 수 있는지 평가합니다.
    2. 충분한 추론 경로가 확보될 때까지 탐색과 추론 과정을 반복하며, 최종적으로 LLM이 확보한 경로를 평가해 답변을 생성합니다.
    3. 만약 최대 탐색 깊이에 도달해도 적절한 답변을 찾지 못할 경우, LLM의 자체 지식을 활용해 답변을 생성합니다.

다음은 Think-on-Graph로 추론하는 예시입니다.

출처 Think-on-Graph: Deep and Responsible Reasoning of Large Language…
  • 질문 : 캔버라가 있는 나라의 여당은 어디인가요?
  • 답변 도출 과정
    • “캔버라”, “나라”, “여당”이 질문의 토픽 개체, 즉 핵심 키워드로 식별됩니다.
    • 키워드 “캔버라”, “나라”, “여당”과 관련된 데이터를 단계적으로 탐색합니다.
      • “캔버라는 호주의 수도다”라는 정보를 찾습니다.
      • 위 결과를 기반으로 “호주의 총리는 앤서니 알바니즈다”라는 다음 단계의 데이터를 찾아냅니다.
    • 답변 : 앤서니 알바니즈

Think-on-Graph 방법 외에도 Reasoning-on-Graph, GraphRAG, Chain-of-Knowledge 등 LLM이 지식 그래프를 기반으로 추론하는 다양한 기법들이 존재합니다.
이들은 지식 그래프 탐색, 서브 그래프 추출, LLM의 계획 수립 등의 세부 방식에 차이가 있을 뿐, 본질적으로는 유사한 접근법을 통해 추론을 수행합니다.

5. 결론


MCP와 지식 그래프의 통합은 LLM의 현재 한계를 극복하고 차세대 지능형 애플리케이션을 구현하는 데 있어 각광받는 접근방식 중 하나입니다.

물론, 실제 시스템 구현 시에는 통합 과정의 복잡성, 지식 그래프 데이터의 품질 유지, 민감 정보 처리 등 해결해야 할 문제점들이 존재합니다.

이러한 문제점들을 인지하고, 단계적이고 체계적인 접근 전략을 수립하여 점진적으로 구축해 나간다면 기존 방식보다 손쉽게 사용자 경험을 향상시키는 AI 서비스를 만들 수 있을 것으로 생각합니다.

Reference


Scroll to Top