- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-18-2025 02:45 AM
❓ Question: Custom Output Fields Not Populating in Now Assist Skill Kit
Hi Community,
I'm working with the Now Assist Skill Kit to create a generative AI skill that extracts incident details from a transcript — such as urgency, category, subcategory, assignment group, and caller — and returns them as structured outputs.
I’ve defined the following custom output fields in the skill:
urgency (String)
category (String)
subcategory (String)
assignmentgroup (String)
ncaller (String)
In the prompt, I have clearly instructed the model to return a JSON response like:
{ "description": "User cannot access payroll...", "category": "Software", "subcategory": "Application", "urgency": "1 - High", "impact": "1 - High", "assignmentgroup": "Access Team", "ncaller": "Sarah (Finance)" }
However, while testing:
The response field is populated with the full JSON string.
My custom output fields (e.g., urgency, category) are not populated individually in the Test panel.
🔍 What I’ve Done:
Set Response format = Structured (JSON).
Output fields are defined correctly with matching names.
Prompt returns well-structured JSON.
Tried both model_output and plain JSON return structures.
Using Now LLM Generic in the default config.
❗ What am I missing?
Is there a special binding or parsing setting I need to enable for the LLM to map outputs to the skill output fields?
Do I need to parse the model_output key manually?
Or is there a more specific response mapping mechanism for custom fields in Now Assist?
Any guidance or examples from the community would be greatly appreciated. Thanks in advance!
Screenshot for reference:
(Attach your screenshot from the test panel showing JSON response and output fields)
Would you like me to post it for you or refine this further for Developer Portal/Slack/Now Community based on your preferred channel?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-03-2025 01:16 PM
Hi @manjee_91 !
The following Skill Kit Article (updated 3 weeks ago) clearly shows that, as of now, there's no functionality to create a mapping to outputs. Hope they'll add it soon.
Article - Now Assist Skill Kit (NASK) FAQ
If this answer was useful. Please click 👍 Helpful and Accept as Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-20-2025 06:02 AM - edited 07-21-2025 01:34 AM
Hi @manjee_91 ,
As per understanding please check below point -
Ensure the LLM returns a top-level JSON object with field names that exactly match your defined output fields. Avoid wrapping the output in "model_output" . Instruct the model to return only the JSON no extra text.
Please check the Article for reference :
https://www.servicenow.com/community/now-assist-articles/now-assist-skill-kit-tool-and-deployment-op...
https://www.youtube.com/watch?v=33QDnrhbp_o
Please try and let me know if your issue resolve.
Please mark helpful and correct answer if it's worthy for you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-21-2025 01:29 AM
no still exploring ways to do so.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-23-2025 02:20 PM
Hi @manjee_91
The Now Assist Skill Kit only populates your custom output fields when the LLM’s JSON matches the field names and the skill knows where to look. A few points to be aware of:
- Top‑level keys must match – If the LLM response is wrapped in an envelope such as model_output or response, the kit won’t automatically map it. Either return a single JSON object with keys like category, urgency, etc., or specify the JSON path in each output field.
- Define JSON paths for custom fields – In the Skill Kit UI, each output field has a “JSON path” property. Populate this with the path to your value, e.g. $.category or $.model_output.urgency. Without these mappings, only the generic response field will be filled.
- Return only structured JSON – In your prompt, instruct the model to return only the JSON with no narrative. Extra text before or after the JSON can prevent parsing.
- Match names exactly – Output field names are case‑sensitive and must exactly match the keys in the JSON.
For example, with the following simple response the kit can map directly to your fields:
{"category":"Software", "subcategory":"Application", "urgency":"1 - High", "assignmentgroup":"Access Team", "ncaller":"Sarah (Finance)"}
If your model wraps the JSON in model_output, set the path for each output field accordingly (e.g. $.model_output.category). Otherwise you would need to parse the JSON yourself in a script and populate the output variables.
Once you adjust the response structure or the JSON paths, your custom fields should populate in the test panel.
💥 Was this answer useful? 👉 If so, click 👍 Helpful 👍 or Accept as Solution ✅ 💡🛠️🧑🦰👌
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-24-2025 01:46 AM
Can you share some sample for same with screens, as my skill always wraps it in model though I have instructed not to.