Interested in a ServiceNow event built for developers? Registration for now[dev]26 is officially open!

From Development to Production: Ask ServiceNow's AI Experts Anything

ryanyong
ServiceNow Employee

Team.png

 

Hey everyone, I'm Ryan, an engineer on ServiceNow's Forward Deployed Engineering team. We're a team of experts and builders who've gained deep AI deployment expertise at tier 1 technology companies and research labs. We're certified experts on the ServiceNow AI Platform, with direct access to Product and the ServiceNow C-suite.

 

What we do
We partner directly with customers facing the most complex challenges to co-innovate agentic AI use cases and ship them to production on the ServiceNow AI Platform.

 

Why this thread
If you're a ServiceNow customer sitting on AI entitlement you haven't fully put to work, this is your chance to ask the Forward Deployed Engineers building these solutions in the field. Bring your hardest questions about moving from unused credits to AI running in production, and getting the most value out of your existing ServiceNow investment.

 

Ask us anything. We are the subject matter experts, and we will get you an answer.

We'll be answering live from August 3rd to 7th. Post your question anytime between now and 8/7, upvote the ones you want answered first.

61 REPLIES 61

Dan192
Tera Contributor

How do you combine the Now SDK and BYOUI (or even UI page) with Now Assist if I want to customize the UI experience for agents. Basically where is the now assist agent SDK or Responses-LIKE API for utilizing the ai agent studio.

GreysonS
ServiceNow Employee

There are two runtime entry points, both server-side. Your React app calls them through Scripted REST endpoints, which you can define in the same Now SDK project using the RestApi API alongside your UI.

For skills (Skill Kit), OneExtend is synchronous and returns in the same transaction:

var request = { executionRequests: [{ capabilityId: '...', skillConfigId: '...', inputParameters: {...} }] };
var response = sn_one_extend.OneExtendUtil.execute(request);

For agents (AI Agent Studio):

var response = new AiAgentRuntimeUtil().startAiAgentConversation({
targetRecordId, targetTable, usecaseId, conversationUser, objective
});

That one is asynchronous — you get conversation and execution IDs back, not the agent's answer. Status and output come from sn_aia_execution_plan and sn_aia_execution_task. There's no synchronous agent equivalent today, so plan on two endpoints (start and poll) and drive the loop from React.

On identity: an agent runs either as a Dynamic user inheriting the caller's roles or as a fixed run-as user, and Skill Kit skills have roles selected at creation. Whatever identity your REST endpoint executes as needs those roles, which is usually the reason a custom agent fails where an OOTB one works.

Dan192
Tera Contributor

I had done some research and while startAiAgentConversation can start a conversation - the continuation of the conversation isn't really possible. Standard endpoints support SSE events, but even with a polling setup the conversations and responses and messages to and from the agent are sometimes coupled deeply into the UI and aren't easy to inject. Are there plans to extend sn_aia.AiAgentRunttimeUtil to have a poll/timewout wait for response, send message, etc functions wrappers to actually continue a conversation?

ronspar
Tera Contributor

How do we overcome the 25mb attachment limit for KB articles with Now Assist? 

TomWright_Dos
Tera Contributor

We are seeing that results on the portal, using AI search or virtual assistant, are either returning results from other KB's besides the one we want or does not return the KB we are expecting.  How can we fine tune AI going forward?