AI Implementation
In a large enterprise ServiceNow production instance, Virtual Agent adoption is critically low: only 5% of…
The question
Why This Matters in an Interview
Low Virtual Agent adoption typically stems from poor intent matching, irrelevant topics, discoverability issues, or lack of user trust. Diagnosis starts with data: review VA Conversation records for drop-off patterns, NLU prediction scores, and portal analytics. Common pitfalls include untrained NLU models, outdated OOB topics, or missing integrations like ITSM deflection.
Root Cause Diagnosis Approach
Step 1: Query VA metrics via Performance Analytics: active users, session completion rate, fallback rate (>50% indicates NLU issues). Use va_conversation table for avg duration <30s.
Step 2: Analyze top intents/fallbacks in NLU Model admin: low confidence scores (<0.7) signal training data gaps.
Step 3: User surveys + heatmaps from portal analytics; check topic invocation rates.
Step 4: Audit OOB vs custom topics; trace top incident KB links for missed deflection opportunities.
Solution Options with Trade-offs
- Option 1: Enhance NLU + Topic Curation Train custom NLU with enterprise utterances, prioritize top 10 call drivers. Trade-off: Fast (2-4 weeks), high ROI but requires ongoing maintenance.
- Option 2: UX/Change Management Focus Redesign entry prompts, A/B test messaging, pilot with champions + comms plan. Trade-off: Low tech debt, typically produces a meaningful adoption lift but slower deflection gains.
- Option 3: Advanced Integrations (GenAI/PA Integration) Add Now Assist for VA, link to PPM/SPM. Trade-off: Highest deflection potential but high cost/complexity, risk of over-reliance on AI hallucinations.
The Solution: Diagnosing NLU Fallback Loop
Problem: weak NLU intent matching is driving the fallback rate. Solution: a server-side script (Background Script / Fix Script) to surface low-confidence predictions, then retrain the model in NLU Workbench.
// Server-side (Background Script / Fix Script)
// NOTE: pseudo-schema — use your instance's NLU prediction log table
// and field names (see NLU Workbench > model performance/logs).
var gr = new GlideRecord('open_nlu_predict_log');
gr.addQuery('sys_created_on', '>', gs.daysAgo(7));
gr.addQuery('confidence', '<', 0.7);
gr.query();
var lowConf = [];
while (gr.next()) {
lowConf.push('Utterance: ' + gr.getValue('utterance') +
' | Confidence: ' + gr.getValue('confidence') +
' | Intent: ' + gr.getValue('intent'));
}
gs.info('Low-confidence predictions:\n' + lowConf.join('\n'));
// Next step is a managed process, not an API call: add these
// utterances to the intent's training data in NLU Workbench and
// retrain/publish the model. (GlideAjax is a CLIENT-side API — it
// cannot be called from a Background Script, and there is no
// supported script API to retrain a model.)
// Monitor: PA indicator on average confidence after retrainingProduction Rollout Considerations
- Governance: Mandate business justification for new topics; weekly analytics review to prune low-performers.
- Pilot: Roll out to a small user segment first and require a measurable adoption lift before full deployment.
- Failure Modes: NLU drift (monitor weekly), high transfer spikes (circuit breaker to OOB fallback), perf impact (limit API calls/topic to <5s).
- Success Metrics: Set explicit targets up front for monthly active users, session completion rate, incident deflection, and CSAT, and track them in Performance Analytics. Great answers include cost-benefit (e.g., $ per deflected ticket) + scalability to newer-release features like VA Client.
What Separates Good from Great: Listing fixes is the easy part. A great answer quantifies the diagnosis with real queries, weighs trade-offs and failure modes (e.g., A/B testing NLU changes), ties the plan to the Now Create methodology, and proposes governance for sustained adoption.