---
description: "Semantic relations: how Jotaid finds notes and concepts related by meaning even when they share no words, and why it labels shared-node, similar and near-duplicate separately."
---
<!--
  Markdown representation of https://docs.jotaid.com/en/guide/semantic-relations
  Generated by scripts/gen-markdown-variants.mjs — do not edit by hand.
  Served from the canonical URL under `Accept: text/markdown`.
-->

# Semantic Relations

Every layer so far reads **what you wrote**: literal matches, link structure, co-occurrence counts. This one reads **meaning** — it can tell that two notes are about the same thing even when they share no words at all.

## It Is Free and On by Default

By default it runs **entirely on your device**, using Apple's built-in model: no network, no cost, and your note text never leaves the machine. That is why this whole layer works on the free tier.

You can switch to a remote model under **Agent Behaviors → Semantic Index** (OpenAI, Gemini, or a custom endpoint) for possibly better accuracy, at the cost of sending your text to that provider. Moving from on-device to remote asks for confirmation once — that is the moment your note text starts leaving the device.

> **Switching rebuilds the index**
>
> Two different models do not judge closeness the same way, and mixing their results is **noise with no symptoms** — results merely become inexplicable, with no error to go on. So the old index is discarded and rebuilt when you switch.

## Related Notes Come From Three Sources

A note's info panel lists **Related Notes**, and crucially it **labels where each came from** — because the three differ completely in how much they should be trusted:

| Source | Based on | How to read it |
|--------|----------|----------------|
| **Shares N nodes** | Backlink structure you built | **Fact** — you did connect both to the same concepts |
| **Similar** | Closeness in meaning | **The model's judgement** — worth a look, but it may only share a topic |
| **Near-duplicate** | Almost the same text | Effectively two copies of the same content, usually a double clipping or a double import |

Mixed together without labels, there would be no way to tell *why* Jotaid thinks two notes are related. The source label is not decoration — it is what makes the feature usable.

> **Why no similarity number is shown**
>
> A figure like `0.62` means nothing to you and only invites the question "where did that number come from". What actually helps is the **source**: shared backlinks are yours, closeness in meaning is a guess.

## Similar Nodes

The [graph](https://docs.jotaid.com/en/guide/graph)'s node panel carries a **Similar Nodes** section: concepts close in meaning to the current node **that have never co-occurred with it**.

It hunts the same quarry as [link prediction](https://docs.jotaid.com/en/guide/predictions) — connections not yet made — on different evidence: prediction reads a node's position in your network, similar nodes read meaning. A pair flagged by both deserves attention first.

The section loads only **after the panel is pinned**, because it looks across your whole library — running that every time the pointer paused would make the graph sluggish.

## Tag Suggestions

The same understanding of meaning drives tag suggestions: the tags on your most closely related notes are treated as votes on "what should this note be tagged". Entirely local, with no model call — see [Tags](https://docs.jotaid.com/en/guide/tags).

## Next Steps

- [Link Predictions](https://docs.jotaid.com/en/guide/predictions) — Missing connections by structure
- [AI Interpretation](https://docs.jotaid.com/en/guide/ai-suggestions) — The layer that needs Pro
- [AI Setup](https://docs.jotaid.com/en/guide/ai-setup) — Switching the index backend
