Semantic search finds text by meaning rather than exact words, by comparing numeric embeddings of the query and the stored content.
Keyword search matches strings. Semantic search matches ideas. It converts the query and every stored chunk into embeddings (vectors of numbers) and returns the chunks whose vectors are closest, usually by cosine similarity. A search for 'how do we handle refunds' can find a paragraph that says 'returns are processed within 14 days' even though no word overlaps. This is what makes it useful for notes and documents written by different people in different words.
Semantic search has limits. It is fuzzy by nature, so it can return plausible but wrong passages, and it struggles with exact identifiers such as error codes, part numbers or names. Most practical systems pair it with exact text search and let the user or agent choose. Results should also carry their source, so a hit can be verified in the original file rather than trusted on similarity alone.
How Central Brain handles semantic search
search_text tool covers the exact-match case.