Expand description
LLM-free GraphRAG primitives over mnem’s AdjacencyIndex.
This crate fuses two experiments onto one substrate:
- E1 (Leiden) -
communityprovides modularity-optimising community detection producing a deterministic, content-addressableCommunityAssignmentfrom anyAdjacencyIndex(authored, KNN, or hybrid). - E4 (Summarize) -
summarizeprovides an extractive Centroid+MMR summarizer over community members, reusingmnem_embed_providers::Embedder. - Gap 16 (Calibration) -
calibrationemits scale-free per-query score quantiles and a categorical distribution-shape label so agents can interpret dense-retrieval scores without a trained cross-embedder scaler.
§Non-goals
- No LLM: summarization is extractive, returning existing sentences.
- No BM25 .
- No network, no heavy deps beyond mnem-core / mnem-embed-providers.
§Determinism
Every public entry point in this crate is seeded. Given the same input and seed, two independent runs produce byte-identical output.
Re-exports§
pub use calibration::K_MIN;pub use calibration::ScoreDistribution;pub use calibration::ShapeLabel;pub use calibration::WILSON_WIDTH_TARGET;pub use calibration::WILSON_Z;pub use calibration::derive_k_min;pub use calibration::distribution_shape;pub use calibration::node_score_quantiles;pub use calibration::score_quantiles;pub use community::CommunityAssignment;pub use community::CommunityId;pub use community::compute_communities;pub use confidence::K_MIN_SHAPE_GATE;pub use confidence::RankAgreement;pub use confidence::median_topk_margin_pct;pub use confidence::normalized_entropy;pub use confidence::rank_agreement;pub use summarize::Summary;pub use summarize::SummaryItem;pub use summarize::summarize_community;
Modules§
- calibration
- Score calibration - scale-free per-query interpretability for dense retrieval.
- community
- Leiden-style community detection over an
AdjacencyIndex. - confidence
- Within-query confidence signals over retrieval score distributions (Gap 05, LD-primary).
- summarize
- Centroid + MMR extractive community summarizer.