rahulnyk/knowledge_graph
Convert any text to a graph of knowledge. This can be used for Graph Augmented Generation or Knowledge Graph based QnA
해결하는 문제
이 프로젝트는 텍스트 코퍼스(예: PDF)를 개념의 구조화된 지식 그래프로 변환합니다. 단순한 엔티티 추출을 넘어서 의미 있는 개념과 그 관계를 포착하여, 텍스트를 더 깊이 있게 분석하거나 Graph Retrieval Augmented Generation (GRAG)을 구현할 수 있는 더 나은 방법을 제공합니다.
작동 방식
시스템은 다음의 파이프라인을 통해 텍스트를 처리합니다:
- 체킹: 텍스트가 더 작은 세그먼트로 나뉩니다.
- 개념 추출: 로컬 LLM(Mistral 7B via Ollama)이 각 청크에서 개념과 그 의미적 관계를 추출합니다.
- 관계 매핑: LLM이 식별한 명시적 의미 관계와 문맥적 근접성(동일한 청크에 나타나는 개념)을 기반으로 엣지가 생성됩니다.
- 가중치 및 집계: 유사한 쌍이 그룹화되고, 가중치가 합산되며, 관계가 연결되어 서로 다른 개념 간의 단일 엣지가 생성됩니다.
- 분석 및 시각화: 도구는 노드의 차수와 커뮤니티를 계산하여 크기와 색상에 사용하고, NetworkX와 Pyvis를 사용하여 인터랙티브한 웹 기반 시각화를 생성합니다.
대상 사용자
비구조화된 텍스트를 아이디어의 시각적 네트워크로 변환하고 싶은 사용자, 연구자가 작업 내 개념의 연결성을 분석하고 싶은 경우, 그리고 로컬에서 비용 효율적인 LLM을 사용해 Graph RAG 시스템을 구축하고 싶은 개발자.
주요 특징
- 로컬 실행: Ollama와 Mistral 7B를 사용하여 프로세스가 무료이며 개인 컴퓨터에서 완전히 실행됨을 보장합니다.
- 개념 중심: 단순한 명명된 엔티티가 아니라 '개념'을 추출하여 더 의미 있는 그래프를 생성합니다.
- 인터랙티브 시각화: 웹에서 호스팅할 수 있는 자바스크립트 기반 그래프를 생성합니다.
- 그래프 분석: 중심성과 커뮤니티 계산을 지원하여 텍스트 내에서 가장 중요한 개념과 클러스터를 식별할 수 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch