---
title: Semantic Procedures
url: https://nexyron.tech/docs/cypher/procedures/semantic
description: This family is about semantic retrieval and diversity oriented semantic retrieval.
---

# Semantic Procedures

This family is about semantic retrieval and diversity-oriented semantic retrieval.

The `score` column is a cosine-similarity relevance score where higher values are better. Use `ORDER BY score DESC` when you want to preserve relevance ordering after joining hits back to graph data.

The canonical user-facing semantic procedure is `nexyron.semantic.search`. It searches one unified semantic ANN index containing graph-node embeddings, graph-edge embeddings, abstractions, and abstraction artifacts in one call and returns one unified row shape:

-   `result_kind`
-   `item_id`
-   `node_id`
-   `edge_id`
-   `source`
-   `name`
-   `score`
-   `text`
-   `metadata_json`

Normal semantic search should use one procedure:

-   [nexyron.semantic.search](https://nexyron.tech/docs/cypher/procedures/semantic/nexyron-semantic-search)
-   [nexyron.semantic.registry\_expand](https://nexyron.tech/docs/cypher/procedures/semantic/nexyron-semantic-registry-expand) expands abstraction and artifact hits into typed anchors and sampled graph observations when a retrieval result has to be inspected or converted into assistant context.

Assistant, Client, wiki, and report search surfaces consume these procedures through the service-owned graph context retriever. That retriever adds bounded graph expansion, source references, observed-data snippets, score components, provenance, and temporal hints while preserving the same canonical Cypher/cluster read path.

Semantic retrieval requires the unified derived ANN index to be hot. If indexed semantic vectors exist but ANN is cold, semantic procedures return an error instead of falling back to brute-force vector scanning. Check `/admin/{db}/semantic/status` and require `ann_ready: true` before treating semantic search as available.

Low-level index debugging references:

-   [nexyron.semantic.nodes](https://nexyron.tech/docs/cypher/procedures/semantic/nexyron-semantic-nodes)
-   [nexyron.semantic.edges](https://nexyron.tech/docs/cypher/procedures/semantic/nexyron-semantic-edges)
-   [nexyron.semantic.mmrNodes](https://nexyron.tech/docs/cypher/procedures/semantic/nexyron-semantic-mmrnodes)
-   [nexyron.semantic.mmrEdges](https://nexyron.tech/docs/cypher/procedures/semantic/nexyron-semantic-mmredges)
-   `nexyron.abstraction.knowledge` searches abstraction, abstraction-edge, knowledge-assertion, analysis-run, and report semantic text through the abstraction/artifact slice of the unified semantic index. Prefer `nexyron.semantic.search` unless you are debugging only that filtered view.
-   `nexyron.semantic.mmrKnowledge` exposes the same knowledge-only vector surface for diversity-oriented retrieval.
