Dynamics 365 Business Central: Using Semantic Search from AL
Dynamics 365 Business Central now exposes embedding-based semantic search as a native AL capability that understands meaning and context instead of relying on exact keyword matches. This feature uses vector embeddings stored in Azure SQL Database and is currently available for on-premises deployments through the System.Search.Semantic Search codeunit.

post Stefano Demiliani
"Semantic search understands the meaning of your query, not just keywords. It finds results based on intent and context rather than exact word matches."
Key points
- Semantic search converts text into numerical embeddings that capture meaning, allowing searches to find results based on intent and similarity rather than exact word matches
- The implementation stores vectors in Azure SQL Database and caches embeddings in the tenant database with background processing for metadata
- Developers access semantic search via System.Search.Semantic Search codeunit with methods to set search targets, max results, and perform similarity searches on specified fields
- Currently limited to on-premises deployments with target OnPrem, with plans to extend to SaaS in version 29
Quotes
- “Semantic search understands the meaning of your query, not just keywords. It finds results based on intent and context rather than exact word matches.” (Explains the fundamental advantage of semantic search over traditional keyword-based approaches, which is essential for understanding why this feature matters for users)
- “Dynamics 365 Business Central now stores vectors in tthe Azure SQL Database and queries them via vectors functionalities provided by the SQL platform.” (Describes the technical implementation approach that makes semantic search performant at scale using native database capabilities)
AL objects mentioned
As named in the post. A name that matches one object page by exact type and name links to it; the others stay as named.
- codeunit “System.Search.Semantic Search”
- table “Similarity Result”
Not found in BC28-30: codeunit “System.Search.Semantic Search”, table “Similarity Result”.
Context
- Features: Embedding-based semantic search, Vector embeddings in SQL, Background embedding generation, Similarity result ranking, Field-specific search targeting, Search result limiting
- Versions: v29
Source: Stefano Demiliani, community blog. Summary, key points and quotes are derived (CONTENT-NOTICE.md); read the original for the full text.