- Entities — extracted information nodes from documents (e.g., people, organizations, concepts).
- Relationships — links between entities that define how they relate.
- Communities — LLM-generated clusters of related entities identified through Leiden clustering.
- Document Mappings — records of which documents contributed to the graph’s knowledge base.
Key Features
Git-like Model
- Each Collection has an independent, associated Graph.
- Graphs can diverge and evolve separately from their parent collection.
- The pull operation syncs knowledge from documents into the graph.
- Supports experimental changes without impacting the base Collection or source data.
Knowledge Organization
- Automatic entity and relationship extraction from documents.
- Community detection enables hierarchical knowledge structures.
- Support for manual creation and editing of entities, relationships, and communities.
- Rich metadata and property management for nodes and edges.
Access Control
- Graph operations inherit Collection-level permissions.
- Certain operations (e.g., community generation) require superuser privileges.
- Document-level access checks are enforced when pulling or synchronizing data.
Core Graph Operations
| Method | Endpoint | Description |
|---|---|---|
| GET | /graphs/ | Retrieve an overview of available graphs. |
| POST | /graphs//pull | Synchronize documents and extract their knowledge into the graph. |
| POST | /graphs// | Retrieve details of a specific collection’s graph. |
Entity Management
| Method | Endpoint | Description |
|---|---|---|
| GET | /graphs//entities | List entities within a collection’s graph. |
| POST | /graphs//entities | Create a new entity. |
| GET | /graphs//entities/ | Retrieve details for a specific entity. |
/relationships) and communities (/communities).