
문서 모음을 지식 그래프로 변환하세요. LLM을 통해 엔터티와 관계를 추출하고, 사용자 승인을 통해 중복을 제거합니다. 도메인을 매핑하고, 숨겨진 연결을 찾고, 문서 간 패턴을 발견하세요 — 지속되고 축적되는 지식, 당신과 당신의 AI 에이전트를 위한 것입니다. 모든 것을 CLI에서 할 수 있습니다.
모든 문서 컬렉션을 지식 그래프로 변환하세요.
코드, 데이터베이스, 인프라 없이 — CLI와 문서만 있으면 됩니다. PDF, 논문, 기사, 기록을 넣으면 — 모든 것이 어떻게 연결되어 있는지 보여주는 탐색 가능한 지식 그래프를 몇 분 만에 얻을 수 있습니다. sift-kg는 LLM을 통해 엔티티와 관계를 추출하고, 승인을 받아 중복을 제거한 후, 브라우저에서 탐색할 수 있는 대화형 뷰어를 생성합니다. 모든 것에 대한 개념 지도를 손끝에서 만나보세요.
시각화를 구동하는 동일한 그래프는 AI 두 번째 뇌로도 작동합니다. 모두가 Notion과 Obsidian에서 지식 베이스를 구축하는 데 몇 달을 보내고 있습니다. 그럴 시간이 누가 있나요? sift-kg는 2년 대신 2분 만에 구축하는 구조화된 메모리입니다. 문서를 가리키기만 하면 AI가 모든 것이 어떻게 연결되어 있는지 구조적으로 이해할 수 있습니다.
라이브 데모 → sift-kg로 완전히 생성된 그래프```bash pip install sift-kg
sift init # create sift.yaml + .env.example sift extract ./documents/ # extract entities & relations sift build # build knowledge graph sift resolve # find duplicate entities sift review # approve/reject merges interactively sift apply-merges # apply your decisions sift narrate # generate narrative summary sift view # interactive graph in your browser sift export graphml # export to Gephi, yEd, Cytoscape, SQLite, etc.
## 작동 방식```
Documents (PDF, DOCX, text, HTML, and 75+ formats)
↓
Text Extraction (Kreuzberg, local) — with optional OCR (Tesseract, EasyOCR, PaddleOCR, or Google Cloud Vision)
↓
Schema Discovery (LLM designs entity/relation types from your data — or use a predefined domain)
↓
Entity & Relation Extraction (LLM, using discovered or predefined schema)
↓
Knowledge Graph (NetworkX, JSON)
↓
Entity Resolution (LLM proposes → you review)
↓
Narrative Generation (LLM)
↓
Interactive Viewer (browser) / Export (GraphML, GEXF, CSV, SQLite)
모든 엔티티와 관계는 원본 문서와 구절로 연결됩니다. 병합할 대상을 사용자가 제어합니다. 그래프는 여러분의 것입니다.
sift.yaml을 넣어 지속적인 설정을 할 수 있습니다.discovered_domain.yaml로 저장합니다. 또는 구조화된 도메인(general, osint, academic)을 사용하여 고정 스키마를 사용하거나 YAML로 직접 정의할 수 있습니다.sift search "SBF"로 이름이나 별칭으로 엔티티를 찾고, 선택적으로 관계 및 설명 출력을 포함합니다.--neighborhood, --top, --community, --source-doc, --min-confidence--ocr 플래그), 선택적 Google Cloud Vision 폴백(--ocr-backend gcv)--max-cost를 설정하여 LLM 비용 상한선 지정sift-kg는 AI 에이전트가 직접 작업할 수 있는 구조화된 지식을 생성합니다.
sift를 문서, 노트 또는 프로젝트 파일에 지정하세요. 출력물인 JSON 지식 그래프는 모든 AI 에이전트에게 여러분 세계의 모든 것이 어떻게 연결되는지에 대한 지속적이고 구조화된 이해를 제공합니다. 수동 정리, 태깅, 위키 링크가 필요 없습니다. 구조는 콘텐츠에서 자연스럽게 나타납니다.```bash sift extract ./my-stuff/ sift build sift topology # structural overview (JSON, for agents) sift query "topic" # entity neighborhood subgraph (JSON, for agents) sift search "X" --json # entity lookup (JSON, for agents) sift info --json # project stats (JSON, for agents)
그래프는 세션 간에 지속되며 점진적으로 성장합니다. 새 문서를 동일한 출력 디렉터리에 추출하고 다시 빌드하세요. 엔터티 중복 제거는 그래프가 성장함에 따라 일관성을 유지하도록 보장합니다.
**이것이 에이전트에 제공하는 것:**
- **구조** — 텍스트 청크뿐만 아니라 엔터티, 관계, 커뮤니티 및 이들이 연결되는 방식
- **토폴로지** — 어떤 지식 클러스터가 존재하는지, 무엇이 이를 연결하는지, 무엇이 고립되어 있는지
- **내구성** — 그래프는 컨텍스트 창 초기화에도 유지됩니다. 에이전트가 매 세션마다 처음부터 시작하지 않게 됩니다.
**번들 에이전트 스킬:** sift-kg는 `.agents/skills/sift-kg/SKILL.md`에 있는 스킬과 함께 제공되며, 이 스킬은 에이전트에게 지식 그래프를 지속적 메모리로 사용하는 방법을 가르칩니다 — 세션 오리엔테이션, 엔터티 탐색, 링크-지식-고립 추론, 그리고 근거 기반 제안 생성.
## 번들 도메인
sift-kg는 즉시 사용할 수 있는 특화된 도메인과 함께 제공됩니다:```bash
sift domains # list available domains
sift extract ./docs/ --domain-name osint # use a bundled domain
sift.yaml 파일에 도메인을 설정하면 매번 플래그를 사용할 필요가 없습니다:```yaml
domain: academic
번들 이름(`schema-free`, `general`, `osint`, `academic`) 또는 사용자 정의 YAML 파일 경로와 함께 작동합니다.
| Domain | Focus | Key Entity Types | Key Relation Types |
|--------|-------|------------------|--------------------|
| `schema-free` | 데이터에서 자동 발견 (기본값) | *(LLM이 말뭉치별로 설계)* | *(LLM이 말뭉치별로 설계)* |
| `general` | 일반 문서 분석 | PERSON, ORGANIZATION, LOCATION, EVENT, DOCUMENT | ASSOCIATED_WITH, MEMBER_OF, LOCATED_IN |
| `osint` | 조사 및 정보공개청구(FOIA) | SHELL_COMPANY, FINANCIAL_ACCOUNT | BENEFICIAL_OWNER_OF, TRANSACTED_WITH, SIGNATORY_OF |
| `academic` | 문헌 검토 및 주제 매핑 | CONCEPT, THEORY, METHOD, SYSTEM, FINDING, PHENOMENON, RESEARCHER, PUBLICATION, FIELD, DATASET | SUPPORTS, CONTRADICTS, EXTENDS, IMPLEMENTS, EXPLAINS, PROPOSED_BY, USES_METHOD, APPLIED_TO, INVESTIGATES |
**academic** 도메인은 연구 분야의 지적 풍경을 매핑합니다 — 논문을 입력하면 이론, 방법, 시스템, 발견, 개념이 어떻게 연결되는지 그래프를 얻습니다. 추상적인 아이디어(THEORY, METHOD)와 구체적인 산출물(SYSTEM — 예: GPT-2, BERT, GLUE)을 구분합니다. 문헌 검토, 주제 매핑, 그리고 아이디어가 서로 일치, 모순 또는 기반을 둔 부분을 이해하기 위해 설계되었습니다.
**schema-free** 도메인(기본값)은 추출 전에 **스키마 발견** 단계를 실행합니다 — 한 번의 LLM 호출이 문서를 샘플링하고 말뭉치에 맞춘 엔터티 및 관계 유형을 설계합니다. 발견된 스키마는 `output/discovered_domain.yaml`에 저장되며 후속 실행에서 재사용되므로 유형이 모든 청크와 문서에서 일관되게 유지됩니다. 파일을 검사, 수동 편집 또는 복사하여 사용자 정의 도메인의 시작점으로 사용할 수 있습니다. `--force`를 사용하여 재발견합니다. ASSOCIATED_WITH와 같은 미리 정의된 범주로 관계를 강제하는 대신, FUNDED, TESTIFIED_AGAINST, ENROLLED_AT와 같은 특정 유형을 생성합니다. 사전에 정의한 고정 스키마를 원할 경우 `general` 또는 `osint`와 같은 구조화된 도메인을 사용하세요.
**general** 도메인은 PERSON, ORGANIZATION, LOCATION, EVENT, DOCUMENT 엔터티 유형과 공통 관계 유형이 포함된 고정 스키마를 제공합니다. 문서 전체에서 예측 가능하고 일관된 유형을 원할 때 유용합니다.
**osint** 도메인은 페이퍼 컴퍼니, 금융 계좌, 역외 관할권에 대한 엔터티 유형과 실질적 소유권 및 자금 흐름 추적을 위한 관계 유형을 추가합니다.
사용자의 승인 없이는 병합되지 않습니다 — LLM이 제안하면 사용자가 확인합니다. 모든 추출은 원본 문서와 구절로 다시 연결됩니다.
개념 그래프로 매핑된 12개의 기본 AI 논문(425개 엔터티, 약 $0.72)은 [`examples/transformers/`](https://github.com/juanceresa/sift-kg/blob/main/examples/transformers)에서, FTX 붕괴(9개 기사에서 431개 엔터티)는 [`examples/ftx/`](https://github.com/juanceresa/sift-kg/blob/main/examples/ftx)에서 확인하세요. [**라이브 데모 살펴보기**](https://juanceresa.github.io/sift-kg/) — 설치 불필요, API 키 불필요.
## Civic Table
포렌식 법적 분석 및 분석가 검증이 포함된 호스팅 플랫폼을 찾고 계신가요?
[**Civic Table**](https://github.com/juanceresa/forensic_analysis_platform)은 sift-kg 파이프라인을 기반으로 구축된 포렌식 인텔리전스 플랫폼입니다. AI가 추출한 사실이 증거로 취급되기 전에 분석가와 법학박사가 검증하는 4단계 검증 시스템, 법적 제출을 위한 LaTeX 문서 생성, 클라이언트 및 가족과 결과를 공유하기 위한 웹 인터페이스를 추가합니다. 재산 반환, 탐사 저널리즘 및 문서 출처가 중요한 모든 상황을 위해 구축되었습니다.
sift-kg는 오픈소스 CLI입니다. Civic Table은 전체 플랫폼이며, 출력물이 증거 가치를 가지기 전에 분석가와 법학박사가 검토하는 곳입니다.
## Installation
Python 3.11+가 필요합니다.```bash
pip install sift-kg
OCR 지원(스캔된 PDF, 이미지)의 경우:```bash
brew install tesseract # macOS sudo apt install tesseract-ocr # Ubuntu/Debian