Need sample resolved incident data for testing LLM-based incident assistant in PDI
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
Hi everyone,
I am working on a learning project in my ServiceNow PDI.
I am trying to build a small AI/LLM-based assistant for the Incident table. The goal is to help support users/developers by showing suggested actionable steps for an incident. The assistant will only provide guidance and will not automatically resolve or update the incident.
What I have built so far
Currently, my flow is:
1. I take the current incident details such as:
- Short description
- Description
- Category
- Subcategory
- Assignment group
- CI, if available
2. I send these incident details to an LLM through a REST API.
3. The LLM extracts important technical keywords from the incident.
4. Using those keywords, I search the Incident table for previously resolved or closed incidents.
5. I mainly look for resolved/closed incidents that have close notes, and then score them based on keyword matches in:
- Short description
- Description
- Close notes
6. I take the top matching resolved incidents and plan to send them as context to the LLM.
7. The LLM will then generate suggested troubleshooting or resolution steps for the current incident.
For now, I am using simple keyword matching. Later, I want to improve this by using embeddings/vector search.
Issue I am facing
Since I am working in my own PDI, I do not have many realistic resolved incidents with useful close notes. Because of that, my matching logic does not return very useful results.
Questions
1. Is there any recommended way or source to get realistic sample Incident data for a PDI?
I am looking for sample data that includes:
- Short description
- Description
- Category/subcategory
- CI or application name
- Resolution notes / close notes
- Resolved or closed state
2. Apart from previously resolved incidents, what other ServiceNow data can be useful as context for an LLM incident assistant?
I have considered using Knowledge Base articles, but I am facing the same issue of having very limited data in my PDI.
I am still learning ServiceNow, so any suggestions, sample data sources, or simple best practices would be really helpful.
Thanks in advance!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
PDI dont have Now assist functionality.
Regards
Dr Atul G. - Learn N Grow Together ServiceNow Techno - Functional Trainer
LinkedIn: https://www.linkedin.com/in/dratulgrover
YouTube: https://www.youtube.com/@LearnNGrowTogetherwithAtulG
******************************************************************************************
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
Hi, thanks for replying.
Yes, I know PDI does not include Now Assist. I am not using Now Assist here; I have integrated an external LLM through a REST API, as mentioned in point 2(under "Currently, my flow is:")
My main question is about finding realistic sample Incident/Knowledge data for testing in a PDI, and what other records can be used as context for the LLM.
Any suggestions on that would be helpful. Thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
Hello @AdwaitD ,
If you dont have any dummy data in pdi then you can simply create it using background script just for testing :
var incidents = [
{
short_description: 'VPN connection fails for remote users',
description: 'User is unable to connect to the corporate VPN from a home network. VPN client shows connection timeout.',
category: 'network',
subcategory: 'vpn',
close_notes: 'VPN client configuration was corrupted. Reinstalled and configured the VPN client. User successfully connected.',
resolution_code: 'Solved (Permanently)'
},
{
short_description: 'Laptop is running very slowly',
description: 'User reports that applications take a long time to open and the system becomes unresponsive frequently.',
category: 'hardware',
subcategory: 'disk',
close_notes: 'Disk usage was above 95%. Removed temporary files and unnecessary applications. Disk space increased and system performance returned to normal.',
resolution_code: 'Solved (Permanently)'
},
{
short_description: 'Unable to access shared network drive',
description: 'User receives access denied error when trying to open the Finance shared network drive.',
category: 'network',
subcategory: 'file_share',
close_notes: 'User was missing the required AD group membership. Added the user to the appropriate group and verified access.',
resolution_code: 'Solved (Permanently)'
},
{
short_description: 'Database connection timeout',
description: 'Application is unable to connect to the backend database and reports connection timeout errors.',
category: 'database',
subcategory: 'connection',
close_notes: 'Database connection pool reached its maximum limit. Restarted the application service and increased the connection pool limit. Connectivity was restored.',
resolution_code: 'Solved (Permanently)'
},
{
short_description: 'User cannot access ServiceNow application',
description: 'User receives an access denied message when opening the ServiceNow application.',
category: 'software',
subcategory: 'access',
close_notes: 'Required role was missing from the user account. Added the appropriate role and verified application access.',
resolution_code: 'Solved (Permanently)'
},
{
short_description: 'Server CPU utilization is very high',
description: 'Application server is experiencing sustained CPU utilization above 95%, causing slow application response.',
category: 'server',
subcategory: 'performance',
close_notes: 'A scheduled batch process was consuming excessive CPU resources. The process was stopped and rescheduled during the maintenance window. CPU utilization returned to normal.',
resolution_code: 'Solved (Permanently)'
},
{
short_description: 'Password reset required',
description: 'User cannot log in because the account password has expired.',
category: 'software',
subcategory: 'access',
close_notes: 'User password was reset according to the password reset procedure. User successfully authenticated with the new password.',
resolution_code: 'Solved (Permanently)'
}
];
for (var i = 0; i < incidents.length; i++) {
var data = incidents[i];
var inc = new GlideRecord('incident');
inc.initialize();
inc.short_description = data.short_description;
inc.description = data.description;
inc.category = data.category;
inc.subcategory = data.subcategory;
inc.state = 6;
inc.close_notes = data.close_notes;
inc.close_code = data.resolution_code;
inc.insert();
}
This is just sample script , you can add values according to your testing perspective in incident records .
If this helps you then mark it as helpful and accept as solution.
Regards,
Aditya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
yesterday
Yes, I can create dummy incidents using a background script for testing the flow.
My main challenge is creating realistic incident data with meaningful short descriptions, descriptions, categories, and close notes, because the quality of the LLM response depends a lot on the quality of historical resolved incidents used as context.
I wanted to check if there are any recommended sample datasets or demo data
