Skip to content

hellonearthis/graphifyish

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 Graphifyish

Transforming disjointed notes into a persistent, evolving knowledge graph.

Graphifyish is a professional-grade, local-first knowledge engine. It moves beyond simple "chat" interactions by distilling raw text into structured concepts and relationships, automatically merging synonyms, and inferring hidden logical connections—all while keeping your data 100% private via LM Studio.


💎 The Philosophy: Layered Distillation

Building a knowledge graph is hard because AI is inconsistent. Graphifyish solves this through a 4-layer distillation process:

  1. Layer 1: Raw Ingestion – Drop any .txt or .md file into the system.
  2. Layer 2: Extraction & Refinement – AI extracts entities and relationships. We then run a Normalization Pass (lowercase/dedupe) and an optional Refinement Pass to prune "junk" connections.
  3. Layer 3: Shadow Deduping – The system uses string similarity and Semantic Reasoning to realize that "Solar PV" and "Photovoltaics" are the same thing, merging them into canonical concepts.
  4. Layer 4: Multi-hop Inference - The engine analyzes clusters of nodes (GraphRAG-ish) to discover relationships that weren't explicitly stated but logically follow.

🚀 Quick Start

1. Prerequisites

  • Node.js (v18+)
  • LM Studio (Server started at http://localhost:1234)

2. Setup

npm install
npm run setup  # Interactively pick your loaded LM Studio model

3. Continuous Ingestion

Drop your files into the /raw directory and start the watcher:

node scripts/ingest.js

4. Build & Infer

node scripts/buildGraph.js --rebuild   # Assemble the global graph
npm run infer                          # Discover hidden connections (Multi-hop)
node scripts/updateWiki.js --rebuild   # Generate the human-readable Markdown Wiki

⚙️ Advanced Configuration (config.json)

You can tune the "intelligence" of your engine in config.json:

  • refinementPass: (Boolean) Enables a second-pass "cleanup" LLM call for every extraction.
  • inference.enabled: (Boolean) Enables the multi-hop reasoning stage.
  • inference.maxClusterSize: (Number) Controls the size of the graph neighborhoods analyzed by the AI.

📁 Architecture & Provenance

  • raw/: Your original source documents.
  • processed/: Layer 2 artifacts. JSON extractions with full provenance (linked back to filenames).
  • graph/: The canonical "Truth" store (nodes.json, edges.json).
  • wiki/: Navigable Markdown pages with Obsidian-style [[links]].
  • prompts/: The "Brain." Highly-tuned prompts for extraction, refinement, and inference.

🔄 The "Undo" Workflow

We don't trust the AI blindly. Every automated merge is saved in graph/merges.json. If the AI makes a mistake:

  1. Open merges.json and delete the incorrect mapping.
  2. Re-run buildGraph.js.
  3. The entities are separated, and the system learns your preference.

Based on architectural patterns from Safi Shamsi and Andrej Karpathy.

About

Graphifyish is a local-first knowledge engine. It moves beyond simple "chat" interactions by distilling raw text into structured concepts and relationships, automatically merging synonyms, and inferring hidden logical connections—all while keeping your data 100% private via LM Studio.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors