# EdgeQuake

> Open-source Rust Graph-RAG framework that turns documents into knowledge graphs and answers queries with sources on PostgreSQL.

EdgeQuake is an Apache 2.0 licensed Graph-RAG framework written in Rust, built by Elitizon and maintained in the raphaelmansuy/edgequake repository. It ingests PDFs, markdown, and raw text, extracts entities and relationships into a knowledge graph, and answers questions with sources. It implements the LightRAG algorithm and runs on PostgreSQL with pgvector and Apache AGE.

## What It Is

EdgeQuake is a retrieval-augmented generation platform that goes beyond similarity search. Documents are chunked, an LLM extracts entities and relations, and the results are stored in pgvector (embeddings) and Apache AGE (graph). At query time it combines vector search with graph traversal and returns answers with sources.

It ships as a web UI, REST API with Swagger, and a set of Rust crates (core, api, storage, pipeline, query, llm, pdf, graph) that can be adopted together or separately.

## Query Modes and Retrieval

The README documents the modes naive, local, global, hybrid (default), mix, and bypass (direct LLM, no retrieval). Local targets specific entities and their neighbours, global targets themes and high-level questions, and mix blends vector and graph results weighted.

## Model and Provider Flexibility

EdgeQuake is not tied to one vendor. It supports OpenAI, Anthropic, Gemini, and Mistral, as well as local options such as Ollama, LM Studio, oMLX, MLX-LM, llama.cpp, and vLLM-MLX, plus any OpenAI- or Anthropic-compatible gateway. Each workspace can assign different models to roles such as extract, query, keyword, summary, embedding, and vision. An `edgequake doctor` command and a provider test endpoint check what is reachable.

## Setup and Deployment

A Docker quickstart script starts the stack, with the web UI on port 3000 and the API on 8080. Self-hosting on Docker, Kubernetes, or air-gapped environments is documented, along with multi-tenant workspace isolation, built-in auth, SSO via Keycloak/OIDC, audit logging, and a PDF vision pipeline for tables and complex layouts. Database migrations are run explicitly with `edgequake migrate`.

## Integrations and Benchmarks

Official SDKs cover Python, TypeScript, Rust, Go, Java, Kotlin, C#, PHP, Ruby, and Swift, along with an MCP server, OpenWebUI, and LangChain integrations. In its own GraphRAG-Bench comparison, the README reports answer accuracy statistically tied with LightRAG and faster warm-cache queries, and notes LightRAG ahead on evidence recall.

## Features
- Knowledge graph extraction from PDFs, markdown, and text
- Six retrieval modes: naive, local, global, hybrid, mix, bypass
- PostgreSQL storage with pgvector and Apache AGE
- PDF vision pipeline for tables, scans, and complex layouts
- Multi-tenant workspace isolation
- Built-in auth, SSO (Keycloak/OIDC), and audit logging
- Per-workspace model roles and encrypted provider connections
- REST API with OpenAPI, SSE streaming, and batch ingestion
- Web UI for uploading documents and exploring the graph
- MCP server
- Explicit database migrations and doctor diagnostics
- Multi-arch Docker images (amd64, arm64)

## Integrations
OpenAI, Anthropic, Gemini, Mistral, Ollama, LM Studio, oMLX, MLX-LM, llama.cpp, vLLM, PostgreSQL, pgvector, Apache AGE, MCP, OpenWebUI, LangChain, Keycloak

## Platforms
WEB, API, CLI, DEVELOPER_SDK, LINUX, MACOS

## Pricing
Open Source

## Version
0.35.0

## Links
- Website: https://edgequake.com
- Documentation: https://edgequake.com/docs
- Repository: https://github.com/raphaelmansuy/edgequake
- EveryDev.ai: https://www.everydev.ai/tools/edgequake
