SharePoint Syntex and Viva Topics were born at Microsoft as part of codename Project Cortex. The aim was to use advanced AI to deliver insights and expertise in the apps you use every day, to harness collective knowledge and to empower people and teams to learn, upskill and innovate faster.

Two products came out of Project Cortex – SharePoint Syntex (October 2020) and Viva Topics (Q2 2021) along with a lots of other behind the scenes improvements to SharePoint to support Project Cortex. Two examples were modernising the Content Type Hub & the Termstore (Managed Metadata) and this wasn’t just putting them into the Modern UI. Content Types are heavily used in SharePoint Syntex as each model (Document Understanding & Forms Processing) along with Content Assembly templates are stored within content types. There was significant improvements both to improve the reliability and speed of syndicating Content Types to other sites/libraries as this how the models are pushed to them. The term store was given several performance tweaks under the hood in preparation for Syntex. It now works very well with the term store for extracted values – synonyms, adding to open terms & for Viva Topics to create Topics from Terms.

If you have been reading my blog you will have noticed that I’ve took quite an interest in SharePoint Syntex but havent blogged much about Viva Topics – so thought it was good to share some learnings.

Over the past few months there have been a number of SharePoint Syntex updates with the purpose to more closely integrate with Viva Topics. Before this the two products have been quite separated which has been odd especially as they were born from the same Project (Cortex). This blog will focus on using Syntex to generate Viva Topics.

First a quick intro to SharePoint Syntex and Viva Topics:

SharePoint Syntex is an addon to Microsoft 365 to use AI to organise and manage content, optimize search and compliance, to automate and improve your most critical business processes. Introducing AI to content throughout Microsoft 365 with no-code models that interpret and label structured and unstructured content and images. Bring critical organizational content into the flow of work with AI-driven process automation, driving workflows, security and compliance. Reduce manual labour and avoid human error by automatically tagging, labelling and organising content.

Viva Topics is another addon to Microsoft 365 that helps organisations to transform information into knowledge. Viva Topics is also part of Microsoft’s Viva Suite which is Microsoft’s employee experience platform that brings together communications, knowledge, learning, resources, and insights in the flow of work. There are currently four products that make up the Viva Suite: Viva Topics, Viva Learning, Viva Insights and Viva Connections but more products are being added frequently i.e. Viva Sales.

Viva Topics uses Microsoft AI technology to bring knowledge to your users in the Microsoft 365 apps they use everyday. Viva Topics helps to address a key business issue in many companies — providing the information to users when they need it. Viva Topics uses AI to automatically search for and identify topics in your organization. It compiles information about them, such as a short description, people working on the topic, and sites, files, and pages that are related to.

Using Syntex Taxonomy to Generate Viva Topics

The scenario I want to walkthrough is extracting companies from documents processed by a Syntex document understanding model, adding the clients to a term set (if they dont exist) then turning them into Viva Topics. I have a document understanding model with an entity extractor linked to a “Clients” term set in the term store.

This takes advantage of two recently updates (#93239) for SharePoint Syntex to add extracted entities to an open term set if no match has found. Then (#82049) improvements to the managed metadata (term store) service for Syntex to be able to select terms in a term set and turn them into Viva Topics.

(#82049 Microsoft Viva: Use Syntex taxonomy to generate topics)
  1. Create a Clients term set in Tenant level term store
  1. Create a Document Understanding Model (Create a classifier in Microsoft SharePoint Syntex – SharePoint Syntex | Microsoft Docs). I used the PnP Syntex Samples repo to download and deploy the Services Agreement document understanding model which has example files featuring different client names.
  2. Deleted the existing Client extractor in the Services Agreement document understanding model
  3. In order to use Managed Metadata type fields in Syntex models they will first need to be created as a Site Columns. So I created a Site column called ClientTaxonomy and linked it to the client term set I just created. Ensuring Allow Fill-In choices was specified as Yes so the term set was open i.e. will allow users to add additional terms.
  1. After the site column has been added it can be associated to an entity extractor using Use a existing column (see image below).
  1. Create explanation rules to train the extractor to pick out clients that always occurs between the words BETWEEN: and of.
Before explanation
After explanation
Extractor trained to extract Client with before and after explanation.
  1. Deploy the model from a content centre to a library
  1. Navigate to the library the model has been deployed to and the ClientTaxonomy field will now be in the model. Add some training files (I copied them over from the training files for the model in the content centre).
  1. Syntex then added any Clients as terms that were not terms already in my clients term set in this case 6 new clients!
  1. Now navigate to a term to be turned into a Viva Topic and go to Usage Settings then in the Create Topic from this term section click the Request Topic link.
  1. The topic request is then sent for processing from Viva Topics. The topic will either be created in the Topic centre if it does not exist already or will be merged with an existing topic if similar.
  1. In my case after a few days the Adventure Works Topic was created.


I’m impressed by this update of being able to go to the tenant level term store and turn terms into Viva Topics. Many organisations may already have a organisation taxonomy already defined perhaps departments and business functions/activities so this update will be welcome to easily create Topics from existing term sets. What I’m most excited about is this working hand in hand with Syntex & the upcoming MS Roadmap update #93230 (SharePoint Syntex: Add extracted entities to open term set if no match found). This updates means in a Syntex model you will be able to create an Entity extractor with a Managed Metadata field and extract “Client” names, if there is no matching term set client name found from the documents processed it will create the new Client term in term store. Then a term store admin could then come in and see a new client has been added and create a Viva Topics Topic from it.

With the pattern above I demonstrated how Syntex and Viva Topics can now work well together. Viva Topics will benefit from Topics being created from terms harvested using Syntex and Viva Topics will also benefit from Syntex metadata enriched documents for better suggested files.

Leave a Reply