This article will walk you through how to set up a custom AI property for Smart Import and AI Suggestions in the Repository.
A property is a structured metadata field that stores key information about workflows and records. Properties help you categorize, search, and report on contract data efficiently. Custom AI properties use AI to automatically extract unique contract details using Smart Import and Extract Metadata. You can train Ironclad AI properties to improve their accuracy using examples.
Part 1: Prepare Data for a Custom AI Property
Before adding a Custom AI Property, you must ensure your data is structured for accurate AI extraction. For each new property you plan to add, do the following:
- Verify Language: Currently, our system only supports English language extraction.
-
Verify the Data Type: Currently, our system supports all data types for custom properties. Below are two examples:
-
Duration: Extract out a piece of text from the contract.
- Example: License Grant Period
- Clause Text: The license shall be granted for a period of 3 years.
- Ground Truth: 3 years.
- Example: License Grant Period
-
Yes/No: This property type can return either “Yes” or “No.” When writing the property description, clearly define the conditions for both responses. For example: “This should return Yes if a Master Services Agreement is present in the document and No if it is not.” Always test the property on sample contracts to confirm that it works for the specific use case.
- Example: Is a Master Services Agreement Present?
Property description: This should return Yes if a Master Services Agreement is present in the document and No if it is not.
Positive ground truth: Master Services Agreement is present in the document.
Negative ground truth: Master Services Agreement is not present in the document.
- Example: Is a Master Services Agreement Present?
-
Duration: Extract out a piece of text from the contract.
- Identify Table Compatibility: Custom AI Properties can be detected in Tables. For table detection, we only support a property showing up in a particular cell in a table, not aggregation across multiple table values.
-
Identify Clause Compatibility: Custom AI Properties can be detected in Clauses (every customer gets 10 free out of the box Custom AI Clauses). More information below on how to set these up for accurate detection. Ensure the property is associated with a clause. Custom AI Properties are detectable only within Ironclad provided AI Clauses or Custom AI Clauses. (Each customer receives 10 Custom AI Clauses by default.)
-
Identify Property is in Clauses: Determine the AI Clauses where your property is found:
- Example of Property in Clause: Breach Notice Period
- Example of Property not in Clauses: 1PP vs. 3PP paper (since this doesn’t relate to a clause within a document)
-
Identify Relevant Clauses for the Property: Determine the AI Clauses where your property is found. You can have a property detected on multiple, different AI Clauses.
- Check AI Clauses from Ironclad.
- Review any existing Custom AI Clauses.
- Create a new Custom AI Clause incorporating paragraphs from the examples you found.
-
Gather Training Examples: You’ll need diverse examples to train the AI effectively. Typically, 5–10 varied examples are sufficient for most properties. Diversity is key, not quantity. Include versions of the property you might encounter to improve detection accuracy.
- To find examples, go to your records and look for the below. Keep records of both the paragraph where the property is located and the property itself. For existing properties, you can also add a column and sort by it to locate examples.
- Your standard terms for that property.
- Redlined versions you've seen in past negotiations.
- Versions of the clause you've accepted from third-party contracts (if applicable).
- Keep a record of the paragraph the property was found in and the property itself.
- To find examples, go to your records and look for the below. Keep records of both the paragraph where the property is located and the property itself. For existing properties, you can also add a column and sort by it to locate examples.
-
Identify Property is in Clauses: Determine the AI Clauses where your property is found:
Part 2: Create a Custom AI Property
To create a Custom AI Property, you will navigate to Company Settings and use Data Manager to define your property. You can either create a new property, enable AI detection for an existing property, or customize an out-of-the-box property.
After setting the property name and description, configure AI detection by specifying search boundaries, selecting whether or not the property shows up in clauses or tables, and providing training examples. Once configured, save and publish the property to enable AI-powered contract analysis for that property.
Filter Properties in Data Manager
You can filter your properties by AI Configuration Type in Data Manager. This is helpful in identifying which properties have custom AI, standard AI, or no AI.
To create a new property:
- Click on your profile and then navigate to Company Settings > Data Manager.
- Click +Create Property in the top right corner.
- Add a Name that represents the property as it will appear in the Repository.
- Under Data Type, select one of the following:
- Text
- Yes/No
- Address
- Number
- Monetary Amount
- Date
- Duration
- Single Select List
- Multi Select List
- (Optional) Add a Description.
- click Save.
- Enable AI detection as described below.
Once you've created a property, the property overview panel will appear on the right side:
Note:
You can enable AI detection for existing or out-of-the-box properties by opening their respective property overview panels and following the same steps.
- Click Edit in the top right corner of the property overview panel.
- Under Enable AI detection, click Enable.
- Fill out Property name for the model and Description to be sent to the model.
- Note: When writing the description, aim for a concise paragraph that details what the property is, the context in which it appears, as well as the property type. Be sure to mention any common false positives or edge cases to improve accuracy.
- Click Save.
- Configure search boundaries and associated clauses as described below.
Configure Search Boundaries and Associated Clauses
Note:
You can select up to 10 associated clauses. Exceeding the limit renders the Save & Publish button unusable, and it will appear greyed out. Remove a clause before adding another.
If the property appears in clause text:
- Select Clauses under Search Boundaries.
- Under Associated Clauses, select the clauses where the property can be detected.
- Add training examples for the AI.
- Note: In each example, enter the paragraph where the property appears as Clause, and enter the exact text associated with the property as Ground Truth. Ironclad normalizes the ground truth to the selected data type. For example, a Date value is normalized to a date.
If the property appears in a table cell, select Tables under Search Boundaries. Table detection is configured separately from associated clauses.
Example: Is a Master Services Agreement Present?
Property description: This should return Yes if a Master Services Agreement is present in the document and No if it is not.
Positive ground truth: Master Services Agreement is present in the document.
Negative ground truth: Master Services Agreement is not present in the document.
Part 3: Validate the Custom AI Property
Once the initial setup is done, verify how well the AI performs by testing it on contracts.
The best way to think about the process of training AI is to compare it to how you interact with ChatGPT. In this case, you update the examples and description of a Custom AI Property, upload some contracts, and then evaluate how well it performs. Similarly, with ChatGPT, you type a query, receive a response, and iterate on your query until you achieve the desired result.
- Select Test Contracts: Choose 5 contracts, ideally that have the properties of interest already tagged on them and a mix of first-party and third-party documents if applicable.
- Upload via Smart Import: Download these contracts and upload them through Smart Import to let the AI generate new predictions.
- When a misclassification occurs (AI tags text as the wrong property):
- Update the AI property configuration description with this example to clarify what the property is not.
- Review the AI property configuration description for any adjustments that could make it more specific to avoid similar misclassifications.
-
When non-detection occurs (AI doesn’t tag the text as the property):
- Add the missed text as an example for that property.
- If the property appears in a table and table detection is off, add table detection.
- If the property appears in a new clause, include the clause where the property appeared as an example in one of the associated AI Clauses.
- Check the AI property configuration description to see if it could be refined for more precise detection.
NOTE: After doing this exercise, if you still feel like the accuracy could be higher, try the following:
- Revisit the AI property configuration description.
- Review past contracts and add more variations of the property as examples.
Part 4: Tracking and Improving AI Accuracy
AI is an evolving tool, and it’s crucial to track accuracy as new contracts come in to improving performance over time.
-
Set up a tracking system (e.g., an Excel spreadsheet) with the following columns:
- Clause Text
- Predicted Property
- Actual Property
- Classification Issue (Misclassification or Non-detection)
- During contract reviews, if a clause is:
- Misclassified, log the example under “Misclassification.”
- Not detected, log the example with its correct clause type under “Non-detection.”
- Monthly review: Once a month, review the spreadsheet and update the Custom AI Properties using the same guidance as in Part 3.