A new prebuilt (and pre-trained) Syntex model has been available in Microsoft Syntex for processing Contracts. The prebuilt contracts model recognises contracts in a variety of different formats and extracts key contract fields such as contract date, client name, execution date etc..!

What’s special about the Syntex prebuilt models is that they have already pre-configured to recognise documents and structured information within the documents. In the case of the Contracts model the Syntex team have pre-trained the model with likely 1000s of differently formatted contracts and trained the model to pick out common contract fields.

Below are the contract fields currently available to be extracted:

  • ContractTitle
  • ExecutionDate
  • Party1 Address
  • Party1 Name
  • Party1 ReferenceName
  • Party2 Address
  • Party2 Name
  • Party2 ReferenceName
  • ContractDuration
  • EffectiveDate
  • Jurisdiction

Click to see the Requirements and limitations for Contracts prebuilt in Microsoft Syntex. The main limitations I can see are only currently PDF and image files are supported (so no Word documents) and the model at present only supports English language contracts from the United States.

Road-testing the new Syntex Contracts prebuilt model

I will now walk you through the process of setting up the Syntex contract prebuilt model and add some analysis.

To create the model go to you Syntex content centre site and go to Models then click the Create a model button.

You are then presented with a list of both custom and prebuilt models that can be created through Microsoft Syntex. Select the Contracts Processing icon.

A screen will now be displayed with more details regarding the new Contracts model – displayed is an example contract and the fields auto-extracted from it are shown on the right hand side. Review this and then select Next.

Name the model to be created something i.e. Contracts (Pre-Built), optionally enter a description and/or visit the collapsed section for Advanced settings if you would like to associate the model to an existing content type. Check all details entered and then click Create.

Your contracts model is then available and some sample contracts now need to be added. Click Add a file.

Upload some example contracts to to the training library – in my case I used some contracts I’d previously generated using Syntex Content Assembly for my session last year at the Commsverse conference. All my contracts are motor racing themed as the conference is at Mercedes Benz world and has a race track!

I added the files to the library.

I noticed only 7 out of my 9 contracts were uploaded. I then tried to re-upload the two missing contracts but realised they were Word documents so were unsupported.

Once the file were uploaded I clicked Next.

The prebuilt model then scanned the contract I uploaded as a training file and then identified common contract fields. Now I needed to go through a process of selecting all of the extractors (identified fields) I want to extract from my contract. I did this by go to each extractor identified and then confirming Yes or No whether I wanted to use the extractor. There is the option to not extract identified extractors if you dont want to extract Jurisdiction for example.

Once complete I selected Save and exit. There is the

Next the model needs to be applied to a library so it can be triggered whenever a contract is added and metadata extracted. Click the Apply model button on the taskbar.

Select the SharePoint site and library to add the model to.

Confirm the library and select Add.

A confirmation is then displayed to confirm the model has been applied to the library. Click Go to library which will take you directly to the library.

I will now add some contract files to the library and await auto processing of the contracts

After a minute or two the contracts I uploaded were processed and the files were decorated with metadata.

I will now analyse the results – circled in purple are two Word documents uploaded be these have not been processed which is as expected. Circled in blue the Jurisdiction has not been populated despite me visually confirming the value “California” is in that contract and it having the same format as the others where jurisdiction has been picked up. Party1 Name highlighted in Yellow has picked out the correct names but it also seems to have picked up the next word after the name of i.e. McClaren of. Party1 ReferenceName highlighted in light green has picked out the correct word used to identify party 1’s role in the contract but has also brought accross the speech marks and closing bracket i.e. “Client”) – it would have been great to have removed them.


I have just tested the contracts model and can see it being great with companies who deal with a large volume of contracts to pick out key information from contracts. Especially as a tool to do the pre-processing i.e. route the contracts to the correct owner by using metadata i.e. Party1/Party2 or identify expiring contracts. It’s great for just picking up metadata values and saving time/effort.

I think however at the moment in time you will still need a human eye to read every contract after they have been processed by the contracts prebuilt as it wasn’t 100% accurate. Additional words &symbols were picked up and even some values were missed altogether. Contracts reading generally needs a very high level of accuracy so I’d only recommend at the moment it is used for pre-processing and not for the final check if great accuracy is needed.

This contracts prebuilt focuses on extracting common text found in contracts but I can see great potential in the future when Language Learning Models (LLM) can read the contract and interpret the text and tense etc. A common request I have received from law firms is to auto-review contracts and ensure a particular clause is included. One lawyer may have a different writing style to another. So may word the same clause differently so you would not be able to use AI to do pattern matching on the words used in the clause. Here’s where LLMs would come in handy imagine asking Syntex to summarise the contract. Then asking Syntex Copilot questions i.e. what clauses used in the contract & other questions saving you from reading the 100 page contract and Syntex Copilot would understand and/or can be taught all the subtleties of language (wording).

It’s an exciting world we are heading into with Syntex Copilot as a plugin for Microsoft 365 Copilot and I can wait to see it start to reason over content and provide summaries and analysis. I can really see it being powerful if it has a high degree of accuracy for processing contracts and saving people time/effort reading huge contracts. Maybe even day Syntex Copilot could generate contracts by using your prompt and using all the information it can see about the client in the SharePoint site or Team. It could then offload the Contract production to Syntex Content Assembly it could then produce the contract in Word or PDF format.

Leave a Reply