Useful private search begins with a corpus and access contract, not a chat box. Every indexed span needs a stable source identity, permission treatment, update path, and place in a relevance test set.
Define the corpus before choosing retrieval software
Start with an inventory of repositories, document types, versions, attachments, identifiers, timestamps, owners, permission principals, update feeds, deletion signals, and extraction limits. Decide which record is canonical when the same material appears in several places. Preserve the original file, checksum, extraction tool version, and span offsets so every search result can be traced back to the exact source state that produced it.
A corpus contract also identifies material that should not enter the index, including expired records, unsupported file types, duplicate working copies, and collections without confirmed access authority. Record these exclusions instead of quietly dropping them. Search quality cannot compensate for a missing or misleading source inventory, and a polished interface should not conceal gaps in extraction or coverage.
Index passages with identity, metadata, and access controls
Extract text while retaining document identity, section headings, page or paragraph coordinates, language, dates, authorship, and collection metadata. Chunk boundaries should follow the source's semantic structure where possible, but each passage still needs a stable parent document and exact display span. Build keyword and semantic representations because identifiers, names, and quoted phrases behave differently from paraphrased questions.
Treat authorization as part of retrieval rather than an interface decoration. Microsoft's document-level access guidance describes indexing permission metadata and applying authorization filters when a query runs. Test both allowed and denied users across every permission class. If the source access model cannot map cleanly, hold those documents outside the searchable surface until the buyer approves an explicit treatment.
Return inspectable evidence and operate the index
A result should show the document title, collection, date, matched passage, stable source link, and enough surrounding text to inspect the match. If the interface generates a short synthesis, keep each material statement tied to a visible source span. Retain the raw ranked list so a maintainer can distinguish an extraction failure from a filtering, ranking, or presentation failure.
Operate freshness as a first-class path: ingest new and changed documents, process deletions, detect failed updates, and measure the delay between a source change and search visibility. ExactSpan, operated by Reality Contact, LLC, implements this machinery for the confirmed corpus. The buyer owns access policy and substantive use; the service does not promise exhaustive retrieval or certify that every relevant document was found.
Where the service stops
Reality Contact, LLC implements and evaluates search but does not determine who should have access, certify confidentiality or legal privilege, make substantive professional judgments from retrieved material, or represent that a result set is complete. The buyer confirms lawful corpus access, approves permission mappings and evaluation cases, reviews failed and ambiguous results, and decides whether the system is acceptable for the team's operational search workflow. Do not send private material through the public form. Secure intake and written deletion terms are established before files, links, credentials, or sensitive records are transferred. This is technical search implementation and evaluation; it does not replace the buyer's legal, privacy, security, records, privilege, or substantive professional review. Search results are limited by the confirmed corpus, extraction, metadata, permissions, index version, queries, and evaluation set; the service does not promise that every relevant document or passage will be found.
Sources: Microsoft Azure AI Search document-level access overview; Microsoft Azure AI Search hybrid search overview.