A Practitioner’s Guide to Graphs - Tim Ainge, Good Collective
📺 원본 영상: A Practitioner’s Guide to Graphs - Tim Ainge, Good Collective
🎙️ 채널: AI Engineer
📅 정리 일자: 2026-07-19
⚠️ Note: 본 리포트는 영상의 음성을 텍스트로 변환(STT)하여 정리한 것입니다. 화면에 표시된 자료, 코드, 슬라이드, 차트는 포함되지 않을 수 있습니다.
개요
Tim Ainge는 이 강연에서 그래프가 AI 애플리케이션을 더 똑똑하고, 더 저렴하고, 더 신뢰성 있게 만들 수 있는 실무적 도구라고 설명한다. 다만 그는 GraphRAG나 에이전트 메모리 그래프 자체를 깊게 다루기보다, 그 밑바탕에 있는 그래프 자료구조와 그래프 네이티브 알고리즘의 기본 패턴에 초점을 맞춘다.
강연의 핵심은 그래프를 “멋져 보이는 시각화”나 “유행하는 데이터베이스 선택지”로 소비하지 말자는 데 있다. 그래프는 노드와 엣지라는 단순한 구조에서 출발하지만, 스키마, 온톨로지, 엔티티 매칭, 탐색 알고리즘이 결합될 때 검색, 추천, 코드 이해, 법률 문서 분석 같은 문제에서 독특한 가치를 만든다.
그래프는 만능 도구가 아니라 관계를 다루는 도구다
강연자는 먼저 그래프가 컴퓨터 과학에서 오랫동안 강력한 기반이었다고 말한다. 노드 또는 정점(Vertex), 그리고 노드를 연결하는 엣지(Edge) 또는 관계(Relationship)만 있으면 가장 기본적인 그래프가 된다. 여기에 노드와 엣지의 타입, 속성, 라벨, 방향성이 더해지면 단순한 연결망이 아니라 의미를 담은 구조가 된다.
그러나 Tim Ainge가 강조하는 출발점은 그래프가 항상 정답은 아니라는 점이다. Obsidian의 그래프 뷰나 데이터 사이언스 시각화처럼 그래프는 직관적으로 매력적이기 때문에, GraphRAG나 그래프 데이터베이스를 성급하게 도입하고 싶은 유혹이 생긴다. 하지만 관계 자체가 핵심 문제가 아닌 상황에서 그래프를 도입하면 기대했던 즉각적인 성과를 얻기 어렵고, 결국 실망의 골짜기에서 프로젝트가 멈출 수 있다.
따라서 이 강연은 “그래프를 써야 하는가”보다 “그래프가 잘 맞는 문제는 무엇이며, 어떻게 만들어야 쓸모 있는가”에 가깝다. 특히 AI 시대의 검색, 패턴 인식, 검색 증강, 지식 기반 문제는 그래프의 장점과 잘 맞닿아 있기 때문에, 그래프의 기본기를 이해하면 새로운 AI 애플리케이션 아이디어를 발견할 가능성이 커진다.
좋은 그래프는 추출 방식에서 결정된다
강연자는 비정형 텍스트에서 그래프를 추출하는 사례로 팬케이크 레시피를 든다. 처음에는 subject, predicate, object로 구성된 단순 트리플(Triple)을 정의하고, 에이전트에게 핵심 정보를 이 형식으로 뽑아내라고 지시한다. 이 방식만으로도 일종의 그래프는 만들 수 있지만, 강연자는 이 결과가 실제 활용 단계에서는 금방 한계에 부딪힌다고 지적한다.
문제는 트리플이 지나치게 열려 있는 형식이라는 데 있다. 에이전트가 자유롭게 관계를 추출하면 겉보기에는 정보가 담긴 것처럼 보이지만, 노드와 엣지 타입이 일관되지 않아 질의하거나 비교하기 어렵다. 즉, 그래프는 생겼지만 의미 있는 그래프가 되지는 못한다.

03:26 - 팬케이크 레시피를 subject-predicate-object 트리플로 추출한 초기 그래프 예시
그래서 강연자가 제시하는 첫 번째 원칙은 추출기에게 채워 넣을 스키마(Schema)를 제공하는 것이다. 레시피라는 노드가 있고, 레시피에는 재료가 있으며, 재료에는 수량이 있다는 구조를 미리 정의하면 에이전트의 출력은 훨씬 정돈된다. 여기서 중요한 변화는 정보가 단순 문장 조각이 아니라 질의 가능한 구조로 바뀐다는 점이다.
스키마 다음에는 온톨로지가 필요하다
스키마가 그래프의 그릇이라면, 온톨로지(Ontology)는 그 그릇에 무엇을 어떻게 담을지 정하는 규칙이다. 강연자는 레시피 그래프를 조금 더 확장해, 레시피가 재료뿐 아니라 조리 단계(Step)를 가지고, 각 단계가 특정 조리 기법(Cooking technique)의 적용이라고 설명한다. 이렇게 되면 그래프는 단순히 “무엇이 포함되어 있는가”를 넘어서 “어떤 절차와 기술이 연결되어 있는가”를 표현하기 시작한다.

04:10 - 레시피, 재료, 수량, 단계, 조리 기법으로 구성된 스키마 기반 그래프
이때 온톨로지는 추출 지침의 형태로 중요해진다. 예를 들어 재료 이름을 모두 소문자로 표준화하고, 단위를 미터법(Metric system)으로 통일하라고 지시하면 이후 매칭과 변환이 쉬워진다. 강연자는 이러한 추출 지침이 스키마만큼이나 중요하다고 말한다. 구조만 정해도 에이전트의 출력은 좋아지지만, 실제 운영 가능한 그래프를 만들려면 명명 규칙과 단위 체계까지 다뤄야 하기 때문이다.
다만 가장 좋은 프롬프트도 완벽하지는 않다. 모델이 매번 동일한 표현을 쓰리라 기대할 수 없고, 특히 자연어에서 같은 대상을 여러 이름으로 부르는 일은 흔하다. 그래서 강연자는 다음 단계로 엔티티 매칭(Entity matching)의 필요성을 제시한다.
엔티티 매칭은 그래프의 품질을 좌우한다
강연자는 garlic cloves, minced garlic, garlic처럼 사실상 같은 계열의 재료가 여러 노드로 분리되는 문제를 예로 든다. cumin과 cumin seeds, vegetable oil과 oil 역시 비슷한 문제를 만든다. 이런 중복 노드가 그대로 남으면 같은 재료를 공유하는 레시피 사이의 관계가 약해지고, 그래프의 연결 구조도 실제 의미를 반영하지 못한다.

05:43 - garlic, cumin, oil처럼 중복 표현된 재료 노드를 매칭하고 통합하는 문제
가장 단순한 해결책은 사전에 정의한 매핑 테이블을 적용해 중복 표현을 하나의 노드로 합치는 것이다. 이 방식은 노드 중복을 줄이고, 같은 재료를 공유하는 레시피 간 관계를 강화한다는 점에서 효과가 있다. 하지만 강연자는 이 접근이 사후적이며, 잘 작동하려면 가능한 모든 재료명을 미리 알고 있어야 한다는 한계를 지적한다.
여기서 AI 기술이 그래프 기술과 결합된다. 임베딩 모델(Embedding model)을 사용하면 사전에 모든 표현을 알지 못하더라도 의미적으로 가까운 항목을 더 유연하게 매칭할 수 있다. 강연자는 이를 그래프 기법과 AI 기법이 하이브리드로 작동할 때 더 좋은 결과가 나오는 사례로 제시한다. 결국 좋은 그래프는 단지 데이터를 많이 넣는 것이 아니라, 같은 것을 같은 것으로 인식하게 만드는 정규화 과정을 포함해야 한다.
그래프 질의가 빛나는 순간은 관계를 깊게 따라갈 때다
잘 구조화된 그래프가 만들어지면 가장 먼저 할 수 있는 일은 단순 질의다. 강연자는 garlic이 들어간 레시피를 찾는 예시를 들며, 위쪽에는 Cypher(그래프 데이터베이스 질의어), 아래쪽에는 관계형 SQL 질의를 놓고 비교한다. 음성만으로 화면의 실제 코드를 확인할 수는 없지만, 강연의 설명에 따르면 그래프 질의는 관계를 따라가는 작업에서 더 자연스럽고 간결하게 표현된다.

07:09 - garlic이 포함된 레시피를 찾는 Cypher 질의와 SQL 질의 비교
관계형 데이터베이스에서도 조인을 통해 같은 결과를 얻을 수는 있다. 그러나 5개, 10개, 20개의 엣지를 따라가야 하는 상황이 되면 SQL은 빠르게 복잡해질 수 있다. 반면 그래프 데이터 구조는 애초에 노드 사이의 관계 탐색을 중심으로 설계되어 있기 때문에, 이런 종류의 질의에서 구조적 이점을 가진다.
이 차이는 단순한 문법 취향의 문제가 아니다. AI 애플리케이션에서 필요한 컨텍스트는 종종 단일 문서나 단일 엔티티에 있지 않고, 여러 관계를 따라가며 형성된다. 따라서 그래프 질의는 “무엇과 무엇이 연결되어 있는가”를 빠르게 탐색해야 하는 문제에서 검색 시스템의 표현력을 확장한다.
Personalized PageRank는 관계의 중요도를 계산한다
다음으로 강연자는 Personalized PageRank(PPR)를 소개한다. PageRank는 1998년 Google 검색의 기반으로 유명해진 알고리즘이며, PPR은 특정 시작 노드에 개인화된 변형이다. 강연자는 이를 작은 캐릭터가 그래프를 돌아다니며 지나간 노드에 표시를 남기는 방식으로 비유한다.
이 과정에서 캐릭터는 일정 횟수 이동한 뒤 시작 노드로 되돌아가며, 이것이 개인화의 핵심이 된다. 같은 과정을 반복하면 어떤 노드는 다른 노드보다 더 많은 표시를 받게 되는데, 이는 해당 노드가 시작 노드와 더 강한 관계를 가진다는 뜻으로 해석할 수 있다. 즉 PPR은 단순히 연결 여부를 보는 것이 아니라, 연결망 전체에서 상대적으로 중요한 이웃을 찾는 방법이다.
강연자는 Pinterest의 Pixie 논문을 PPR의 대표적 사례로 언급한다. Pinterest는 사용자의 관심사와 핀 사이의 관계망에서 추천을 수행해야 했고, 이때 그래프 기반 탐색이 유용했다. 더 현대적인 사례로는 HippoRAG가 언급되며, 질문과 답변, 기억을 연결하는 데 그래프 기법이 쓰일 수 있음을 보여준다.

08:34 - Personalized PageRank와 Pinterest Pixie, HippoRAG 사례 연결
이 알고리즘은 눈으로 봐도 관계가 명확한 작은 예제에서는 다소 당연해 보일 수 있다. 하지만 노드와 엣지가 조밀하게 얽힌 현실의 그래프에서는 어떤 노드가 정말 중요한지 직관만으로 판단하기 어렵다. 이때 PPR 같은 알고리즘은 관계의 밀도와 경로를 반영해 중요한 후보를 끌어올리는 역할을 한다.
법률 인용 그래프와 코드 그래프에서 드러나는 탐색의 힘
강연자는 Personalized PageRank의 현실적 예로 미국 연방대법원 판례 인용 그래프를 든다. 어떤 사건이 직접 Miranda v. Arizona를 인용하지 않더라도, 인용 관계 그래프를 따라가면 그 사건이 Miranda v. Arizona에 의존하는 구조를 발견할 수 있다는 설명이다. STT상 “Canvas v Sheba”처럼 들린 판례명은 문맥상 Kansas v. Cheever로 보는 것이 자연스럽지만, 여기서는 강연자가 제시한 법률 인용 그래프의 원리를 중심으로 이해하는 것이 적절하다.
중요한 점은 그래프가 단지 관련 문서를 찾는 데 그치지 않는다는 것이다. 그래프는 한 사건이 다른 사건과 어떻게 연결되는지, 중간에 어떤 판례들이 경로를 구성하는지도 보여줄 수 있다. 이는 검색 결과의 설명 가능성을 높인다. AI 시스템이 어떤 답변을 반환할 때 근거 경로를 함께 제시할 수 있다면, 사용자는 결과를 더 쉽게 검증할 수 있다.
비슷한 논리가 코드베이스에도 적용된다. 강연자는 checkout 코드가 basket constructor 변경 이후 깨졌는데 이유를 모르는 상황을 예로 든다. 코드 그래프에서 두 노드 사이의 최단 경로(Shortest Path)를 찾으면, 직접 검색으로는 찾기 어려운 중간 심볼, 참조, 요약 정보를 컨텍스트로 제공할 수 있다. 이 경우 그래프는 단순 검색 엔진이 아니라 원인 관계를 추적하는 탐색 도구가 된다.

10:43 - 코드 그래프에서 최단 경로를 찾아 에이전트에게 하위 그래프 컨텍스트를 제공하는 사례
강연자는 .NET 코드베이스 평가에서 이런 기법을 사용했을 때 코드 검색을 위한 도구 호출이 40% 감소했다고 언급한다. 이 수치는 그래프가 검색의 정확도만이 아니라 비용과 효율성에도 영향을 줄 수 있음을 보여준다. 에이전트가 필요한 컨텍스트를 찾기 위해 반복적으로 도구를 호출하는 대신, 그래프가 관련 하위 그래프를 먼저 좁혀주면 전체 작업이 더 저렴하고 빠르게 진행된다.
Subgraph Matching은 모양을 찾는 알고리즘이다
강연 후반부에서 가장 흥미로운 부분은 Subgraph Matching(부분 그래프 매칭)이다. 앞선 예시들이 특정 노드에서 출발해 관계를 탐색하거나 두 노드 사이의 경로를 찾는 방식이었다면, Subgraph Matching은 관계의 “모양” 자체를 질의한다. 강연자는 eShop 코드베이스에서 데코레이터 패턴(Decorator pattern)을 찾는 예를 든다.

12:04 - eShop 코드베이스에서 데코레이터 패턴을 Subgraph Matching으로 찾는 장면
데코레이터 패턴은 기존 클래스를 감싸 기능을 확장하는 구조다. 강연자의 설명에 따르면, 찾고자 하는 모양은 target class를 감싸거나 그 메서드를 소비하는 wrapper class가 있고, wrapper와 target이 같은 interface를 구현하는 형태다. 여기서 핵심은 “cached” 같은 이름을 검색하는 것이 아니라, 코드 구조의 패턴을 찾는다는 점이다.
실제 예시에서는 catalog view model service와 그 캐시 버전이 같은 API를 구현하고, 같은 클래스를 호출하는 구조가 발견되었다고 설명한다. 만약 캐싱 클래스를 찾는다는 것을 이미 알고 있었다면 키워드 검색으로도 접근할 수 있었겠지만, 보안 취약점, 악성 거래 패턴, 법률 논증 구조처럼 이름을 미리 알 수 없는 경우에는 이야기가 달라진다. 이때 Subgraph Matching은 특정 인스턴스를 모르는 상태에서도 관계의 형태를 기준으로 대상을 찾아낼 수 있게 한다.
강연자는 이 기법을 단순 최적화가 아니라 “가능하게 만드는 알고리즘”에 가깝다고 평가한다. 즉, 이미 할 수 있는 일을 조금 더 빠르게 하는 수준이 아니라, 다른 도구로는 하기 어려운 종류의 질의를 가능하게 한다는 뜻이다. AI 애플리케이션 관점에서는 이 차이가 중요하다. 좋은 검색 증강 시스템은 더 많은 문서를 가져오는 시스템이 아니라, 문제 해결에 필요한 구조적 맥락을 찾아내는 시스템이기 때문이다.
그래프가 AI 애플리케이션을 더 저렴하고 신뢰성 있게 만드는 방식
강연의 전체 흐름을 관통하는 주제는 그래프가 AI의 추론을 대체한다는 것이 아니라, AI가 사용할 컨텍스트를 더 잘 구성해준다는 것이다. LLM은 비정형 텍스트에서 구조를 추출하는 데 유용하고, 임베딩은 유사한 엔티티를 매칭하는 데 유용하다. 그러나 일단 구조화된 그래프가 만들어지면, 경로 탐색, 중요도 계산, 패턴 매칭 같은 전통적인 그래프 알고리즘이 매우 강력한 역할을 맡을 수 있다.
이 조합은 비용 측면에서도 의미가 있다. 에이전트가 무작정 검색하고, 다시 검색하고, 부족한 컨텍스트를 보완하기 위해 도구를 반복 호출하는 방식은 쉽게 비싸진다. 반면 그래프가 관계 기반으로 후보 컨텍스트를 좁혀주면, 모델은 더 작은 입력으로도 더 관련성 높은 정보를 받을 수 있다. 강연자가 언급한 40% 도구 호출 감소 사례는 이 접근이 실제 시스템 비용에도 영향을 줄 수 있음을 시사한다.
신뢰성 측면에서도 그래프는 중요한 역할을 한다. 벡터 검색은 의미적으로 비슷한 텍스트를 찾는 데 강하지만, 중간 관계를 설명하는 데는 약할 수 있다. 그래프는 어떤 노드가 왜 관련되는지, 어떤 경로를 통해 연결되는지를 보여줄 수 있기 때문에, AI 시스템이 반환하는 답변에 더 검증 가능한 근거를 붙일 수 있다.
참고할 만한 개념들
강연자는 시간 관계상 전통적인 flow, cost, search 알고리즘과 prediction, similarity, clustering 같은 주제는 깊게 다루지 않았다고 말한다. 이 영역들은 의존성 모델링, 네트워크 분석, 동적 그래프, schemaless graph, GraphRAG와도 이어지는 주제다. 따라서 이 강연은 그래프의 전체 지도를 완성하기보다는, AI 빌더가 실무에서 바로 떠올릴 수 있는 핵심 패턴을 압축적으로 보여준 입문에 가깝다.
강연 내용과 별개로 더 공부할 만한 자료로는 PageRank와 Personalized PageRank의 기본 원리, Pinterest Pixie 논문, 그래프 데이터베이스의 Cypher 질의, 코드 지식 그래프(Code knowledge graph), Subgraph Isomorphism과 Graph Pattern Matching 개념이 있다. 특히 AI 애플리케이션 개발자라면 그래프를 데이터 저장소로만 볼 것이 아니라, 검색 계획을 세우고 컨텍스트를 구성하는 알고리즘적 도구로 이해하는 편이 더 실용적이다.
마무리 / 핵심 정리
Tim Ainge의 강연은 그래프를 유행어가 아니라 실무 도구로 다시 바라보게 만든다. 그래프의 가치는 예쁜 시각화가 아니라, 관계를 명시적으로 표현하고, 그 관계를 따라 탐색하며, 중요도를 계산하고, 특정 구조의 패턴을 찾아낼 수 있다는 데 있다. 이 능력은 검색, 추천, 코드 이해, 법률 문서 분석처럼 복잡한 맥락을 다루는 AI 애플리케이션에서 특히 중요해진다.
다만 좋은 결과는 그래프를 도입하는 순간 자동으로 생기지 않는다. 먼저 스키마를 정하고, 온톨로지를 세밀하게 설계하며, 엔티티 매칭으로 노드 품질을 관리해야 한다. 그 위에서 Personalized PageRank, Shortest Path, Subgraph Matching 같은 그래프 네이티브 알고리즘을 적용할 때, 그래프는 AI 시스템을 더 똑똑하고 저렴하며 신뢰성 있게 만드는 기반이 된다.
📚 출처 및 참고
| 구분 | 내용 |
|---|---|
| 원본 영상 | A Practitioner’s Guide to Graphs - Tim Ainge, Good Collective |
| 채널 | AI Engineer |
| 리포트 작성 | 2026-07-19 |
| 작성 방식 | YouTube 영상 STT 변환 후 에디팅 |
💬 본 리포트는 영상 내용을 바탕으로 재구성되었습니다. 정확한 내용은 원본 영상을 참조해 주세요.