<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>The SAS Data Science Blog</title>
	<atom:link href="https://blogs.sas.com/content/subconsciousmusings/feed/" rel="self" type="application/rss+xml" />
	<link>https://blogs.sas.com/content/subconsciousmusings/</link>
	<description>Advanced analytics from SAS data scientists</description>
	<lastBuildDate>Wed, 10 Jun 2026 16:43:23 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6</generator>
	<item>
		<title>Modernizing user attendance center ticket handling with trusted agentic AI</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/06/09/modernizing-attendance-ticketing/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/06/09/modernizing-attendance-ticketing/#respond</comments>
		
		<dc:creator><![CDATA[Cristina Pérez]]></dc:creator>
		<pubDate>Tue, 09 Jun 2026 16:41:39 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[agentic AI]]></category>
		<category><![CDATA[AI governance]]></category>
		<category><![CDATA[customer support]]></category>
		<category><![CDATA[intelligent decisioning]]></category>
		<category><![CDATA[Retrieval-Augmented Generation]]></category>
		<category><![CDATA[SAS Agentic AI Accelerator]]></category>
		<category><![CDATA[SAS Viya]]></category>
		<category><![CDATA[ticket automation]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=21568</guid>

					<description><![CDATA[<p>Learn how the SAS Agentic AI Accelerator and SAS Viya can be used to build a governed, multi-agent support-ticket solution that combines text analytics, RAG, LLMs, business rules, and human oversight to improve resolution speed, accuracy, and operational efficiency.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/06/09/modernizing-attendance-ticketing/">Modernizing user attendance center ticket handling with trusted agentic AI</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Overview</h2>
<p>The modern enterprise runs on a complex web of applications, websites, and internal tools. When these systems fail, the burden falls on the "User Attendance Center" (UAC). Every day, UAC departments are inundated with a relentless stream of incidents, and their ability to keep the business moving relies entirely on their capacity to manage and answer these requests using their internal knowledge base.</p>
<p>For Data Scientists, this scenario is more than an operational bottleneck; it is a quintessential "golden use case" for Agentic AI. Traditional search-based Retrieval-Augmented Generation (RAG) models are not enough.</p>
<p>The next generation of AI solutions requires an orchestrated flow. By integrating business rules, sophisticated text analysis, and RAG-LLM models, we can assist UAC departments in finding the precise technical answer as fast as possible. This article explores how practitioners can use the newly introduced SAS Agentic AI Accelerator to engineer this transformation.</p>
<p>Agentic AI is changing the enterprise AI paradigm: rather than simply generating outputs, AI systems can now complete tasks and make decisions autonomously. The real challenge, however, is not autonomy, it is trust. In practice, organizations need agents that are secure, transparent, traceable, governable, and monitorable over time.</p>
<p>The <a href="https://communities.sas.com/t5/SAS-Communities-Library/Introducing-the-SAS-Agentic-AI-Accelerator-Build-AI-Agents/ta-p/977176">SAS® Viya® Agentic AI Accelerator</a> is a free framework designed to help SAS Viya users to build governed and trusted AI agents by integrating Large Language Models (LLMs) in the easiest and safest way possible, with governance and operationalization in mind. It enables you to:</p>
<ul>
<li>Integrate any LLM (proprietary or open, online or offline) with security, trust, and transparency, leveraging SAS Model Manager as the central model registry.</li>
<li>Experiment, compare, version, govern, and monitor prompts to continuously improve accuracy and reliability—while packaging artifacts automatically for governance and deployment.</li>
<li>Combine business rules, LLMs, and traditional ML models to balance accuracy vs. transparency and autonomy vs. human-in-the-loop oversight.</li>
<li>Deploy and monitor agent performance over time, with traceable decision logic and explainability.</li>
<li>Do all the above through a no-code interface, making agent creation accessible beyond purely technical roles.</li>
</ul>
<p>This article walks you through a complete demo use case: a multi-agent workflow that processes support tickets.</p>
<p>This is not a theoretical application. The challenge faced by the UAC is a common struggle applicable across different companies. The need to deliver rapid, accurate, and compliant internal support is universal.</p>
<h2>Solution Overview</h2>
<p>The solution is based on 3 main layers:</p>
<h3>1. Building blocks</h3>
<p>AI models and agents form the foundation of the solution. These include text analytics models for categorization and entity extraction, built with SAS Visual Text Analytics, a RAG‑based model to propose responses for complex or unknown cases, and an LLM‑based validation agent to assess the relevance and quality of generated responses. Each component performs a well‑defined task and can be independently evolved, tested, and governed.</p>
<h3>2. Orchestration and decision logic</h3>
<p>All models, agents, and business rules are orchestrated within SAS Intelligent Decisioning, which defines the end‑to‑end process flow followed by each ticket. This orchestration layer ensures that decisions follow a controlled and auditable path, combining automation with human‑in‑the‑loop oversight where required.</p>
<h3>3. Governance and Trust</h3>
<p>SAS Model Manager provides centralized governance for all analytical assets involved in the solution, including traditional models, LLM references, and prompts. Versioning, approval workflows, and monitoring capabilities ensure that the full agentic process can be deployed, observed, and refined over time. In addition, SAS Intelligent Decisioning ensures that the complete decision logic is traceable and auditable, enabling trusted AI at scale.</p>
<p>This design enables a <strong>hybrid approach by design</strong>: deterministic and explainable analytics are used wherever possible, while generative AI is applied only where flexibility and reasoning add clear value. Supported by the <span style="font-weight: normal !msorm;"><strong>SAS Agentic AI Accelerator</strong></span>, all components are governed and monitored to ensure trust, control, and operational transparency throughout the lifecycle of the agent.</p>
<h2>Step-by-Step Construction</h2>
<p>Let’s walk through the steps required to build the AI agent using SAS Viya and the SAS Agentic AI Accelerator. Each step illustrates how you can create your own AI agent, from building the core components to orchestrating and operationalizing a trusted workflow aligned with real UAC processes.</p>
<h3>Step 1: Build ticket categorization and entity extraction models using SAS Visual Text Analytics and register them with SAS Model Manager.</h3>
<p>The first step consists of building the deterministic foundation of the agent using SAS Visual Text Analytics. A text categorization model is trained on historical UAC tickets to classify incoming requests into known scenarios, while an entity extraction model is used to identify key information such as names, applications, references, or urgency indicators.</p>
<p>Once trained and validated, both models are registered and published in SAS Model Manager, making them governed, versioned assets that can be safely reused and orchestrated downstream. These models provide structured and explainable signals that later guide routing decisions and ensure that generative AI is applied only when required.</p>
<ol>
<li>Open SAS Model Studio and create a new Text Analytics project. Use a data table containing historical UAC tickets, including the incident text and the corresponding ticket categories, to train a text classification model.</li>
<li>Select the input variables that contain the ticket text (for example, description or subject fields) and the target variable that represents the ticket classification.</li>
</ol>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/01_Modernizing.png"><img fetchpriority="high" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/01_Modernizing.png" alt="" width="682" height="528" class="aligncenter size-full wp-image-21595" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/01_Modernizing.png 682w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/01_Modernizing-300x232.png 300w" sizes="(max-width: 682px) 100vw, 682px" /></a></p>
<ol start="3">
<li>Use the Concepts node to define the business concepts required by the use case. For example, you can include LITI rules to identify the types of applications and systems supported by the UAC, enabling consistent and explainable entity extraction.</li>
</ol>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/02_Modernizing.png"><img decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/02_Modernizing.png" alt="" width="962" height="484" class="aligncenter size-full wp-image-21598" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/02_Modernizing.png 962w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/02_Modernizing-300x151.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/02_Modernizing-768x386.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/02_Modernizing-164x82.png 164w" sizes="(max-width: 962px) 100vw, 962px" /></a></p>
<ol start="4">
<li>
    Use the Categories node to build the text categorization model, either by:</p>
<ul>
<li>leveraging historical labeled data, or</li>
<li>defining business rules that explicitly describe how categories should be assigned.</li>
</ul>
</li>
</ol>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/03_Modernizing.png"><img decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/03_Modernizing.png" alt="" width="1074" height="540" class="aligncenter size-full wp-image-21601" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/03_Modernizing.png 1074w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/03_Modernizing-300x151.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/03_Modernizing-1024x515.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/03_Modernizing-768x386.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/03_Modernizing-164x82.png 164w" sizes="(max-width: 1074px) 100vw, 1074px" /></a></p>
<ol start="5">
<li>Once the models are properly adjusted and validated, select the Register Model option. This action stores the trained models in SAS Model Manager, where they can be versioned, governed, reused, and monitored as part of the agentic workflow.</li>
</ol>
<div style="display:flex; gap:20px; align-items:flex-start;">
  <a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/04_Modernizing.png"><br />
    <img decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/04_Modernizing.png" alt="" style="max-width:100%; height:auto;" /><br />
  </a></p>
<p>  <a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/05_Modernizing.png"><br />
    <img decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/05_Modernizing.png" alt="" style="max-width:100%; height:auto;" /><br />
  </a>
</div>
<h3>Step 2: create a Retrieval-Augmented Generation (RAG) model using SAS RAM and register it in SAS Model Manager.</h3>
<p>The next step extends the agent to handle complex or unknown cases by creating a Retrieval‑Augmented Generation (RAG) model using SAS RAM. The RAG approach combines an LLM with relevant knowledge sources, allowing the agent to generate responses grounded in trusted content and reducing the risk of hallucinations.</p>
<p>Once configured and validated, the RAG model is registered and published in SAS Model Manager, ensuring it is versioned, governed, and ready to be orchestrated as part of the agentic workflow.</p>
<ol>
<li>
Open SAS Retrieval Agent Manager (SAS RAM) and define the knowledge sources that will be used to ground the responses, such as internal documentation, manuals, FAQs, or other knowledge bases relevant to UAC operations.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/06_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/06_Modernizing.png" alt="" width="1422" height="454" class="aligncenter size-full wp-image-21610" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/06_Modernizing.png 1422w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/06_Modernizing-300x96.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/06_Modernizing-1024x327.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/06_Modernizing-768x245.png 768w" sizes="(max-width: 1422px) 100vw, 1422px" /></a></p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/07_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/07_Modernizing.png" alt="" width="1958" height="1005" class="aligncenter size-full wp-image-21613" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/07_Modernizing.png 1958w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/07_Modernizing-300x154.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/07_Modernizing-1024x526.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/07_Modernizing-768x394.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/07_Modernizing-1536x788.png 1536w" sizes="(max-width: 1958px) 100vw, 1958px" /></a></p>
</ol>
<ol start="2">
<li>
Create a new collection where you can experiment with different embedding models and chunking strategies. Use this space to validate and compare retrieval quality and relevance across configurations.</li>
<li>Once the RAG configuration is validated, register the RAG model in SAS Model Manager, enabling versioning, governance, and reuse within downstream agentic workflows.</li>
</ol>
<h3>Step 3: experiment and register a prompt to define an LLM-based agent to assist with unknown cases.</h3>
<p>In this step, an LLM‑based agent is defined to support cases that cannot be resolved through predefined responses or the RAG approach, providing additional assistance for open or ambiguous situations. Using the SAS Agentic AI Accelerator, different prompt variants are experimented with to guide the LLM’s behavior, tone, and constraints when generating response proposals.</p>
<p>Once the prompt is validated, it is automatically packaged and registered in SAS Model Manager, becoming a governed and versioned asset. This ensures the LLM‑based agent can be safely orchestrated within the workflow and refined over time without compromising transparency or control.</p>
<ol>
<li>
Open the Build Prompts menu in the SAS Agentic AI Accelerator. Select or create a SAS Model Manager project and create a new prompt.</li>
</ol>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/08_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/08_Modernizing.png" alt="" width="916" height="508" class="aligncenter size-full wp-image-21616" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/08_Modernizing.png 916w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/08_Modernizing-300x166.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/08_Modernizing-768x426.png 768w" sizes="(max-width: 916px) 100vw, 916px" /></a></p>
<ol start="2">
<li>Select the LLMs to test prompts with and start building and testing your prompts. Create multiple prompt variants to experiment with different formulations and guidance strategies and test each prompt variant against sample tickets and compare results to evaluate response quality, consistency, and safety.</li>
</ol>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/09_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/09_Modernizing.png" alt="" width="1068" height="484" class="aligncenter size-full wp-image-21619" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/09_Modernizing.png 1068w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/09_Modernizing-300x136.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/09_Modernizing-1024x464.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/09_Modernizing-768x348.png 768w" sizes="(max-width: 1068px) 100vw, 1068px" /></a></p>
<ol start="3">
<li>
Select the best‑performing prompt and finalize the configuration.</li>
<li>Manifest Best Prompt to register the prompt as a governed asset in SAS Model Manager, where it is automatically built, versioned and made available for orchestration.</li>
</ol>
<h3>Step 4: Model the ticket-handling process in SAS Intelligent Decisioning.</h3>
<p>Now, the end‑to‑end ticket‑handling process is modeled in SAS Intelligent Decisioning to orchestrate all previously created components. The decision flow defines how tickets move through categorization, entity extraction, RAG assistance, and LLM‑based support, based on confidence levels and business rules.</p>
<p>This orchestration layer centralizes the process logic, ensures consistent routing, and enables controlled automation with human‑in‑the‑loop oversight where required. As a result, every action taken by the agent follows a traceable, auditable, and governed path aligned with real UAC operating procedures.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/10_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/10_Modernizing.png" alt="" width="1410" height="444" class="aligncenter size-full wp-image-21622" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/10_Modernizing.png 1410w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/10_Modernizing-300x94.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/10_Modernizing-1024x322.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/10_Modernizing-768x242.png 768w" sizes="(max-width: 1410px) 100vw, 1410px" /></a></p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/11_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/11_Modernizing.png" alt="" width="944" height="478" class="aligncenter size-full wp-image-21625" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/11_Modernizing.png 944w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/11_Modernizing-300x152.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/11_Modernizing-768x389.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/11_Modernizing-164x82.png 164w" sizes="(max-width: 944px) 100vw, 944px" /></a></p>
<ol>
<li>
Open SAS Intelligent Decisioning and create a new decision flow.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/12_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/12_Modernizing.png" alt="" width="1120" height="564" class="aligncenter size-full wp-image-21628" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/12_Modernizing.png 1120w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/12_Modernizing-300x151.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/12_Modernizing-1024x516.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/12_Modernizing-768x387.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/12_Modernizing-164x82.png 164w" sizes="(max-width: 1120px) 100vw, 1120px" /></a></p>
</ol>
<ol start="2">
<li>
Sequentially add the text analytics models (concepts and categories) from the SAS Model Manager repository to the decision flow.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/13_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/13_Modernizing.png" alt="" width="1138" height="572" class="aligncenter size-full wp-image-21631" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/13_Modernizing.png 1138w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/13_Modernizing-300x151.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/13_Modernizing-1024x515.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/13_Modernizing-768x386.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/13_Modernizing-164x82.png 164w" sizes="(max-width: 1138px) 100vw, 1138px" /></a></p>
</ol>
<ol start="3">
<li>
Incorporate a branch node to control routing logic and escalation paths based on business criteria.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/14_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/14_Modernizing.png" alt="" width="1256" height="628" class="aligncenter size-full wp-image-21634" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/14_Modernizing.png 1256w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/14_Modernizing-300x150.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/14_Modernizing-1024x512.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/14_Modernizing-768x384.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/14_Modernizing-164x82.png 164w" sizes="(max-width: 1256px) 100vw, 1256px" /></a></p>
<li>
Add business rules to define the proposed response for known questions.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/15_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/15_Modernizing.png" alt="" width="1212" height="604" class="aligncenter size-full wp-image-21637" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/15_Modernizing.png 1212w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/15_Modernizing-300x150.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/15_Modernizing-1024x510.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/15_Modernizing-768x383.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/15_Modernizing-164x82.png 164w" sizes="(max-width: 1212px) 100vw, 1212px" /></a></p>
<li>Add the RAG model to the corresponding paths in the decision flow to provide grounded response proposals for complex or unknown cases. Add the LLM‑based agent prompt followed by Call LLM node (part of the SAS Agentic AI Accelerator), and combine these components with the necessary decision nodes, business rules, and transitions to accurately represent your UAC ticket‑handling process, including routing, escalation. To organize an orchestrated agentic AI workflow, you can define specialized decision flows for different parts of the process.
</li>
</ol>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/16_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/16_Modernizing.png" alt="" width="1380" height="572" class="aligncenter size-full wp-image-21640" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/16_Modernizing.png 1380w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/16_Modernizing-300x124.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/16_Modernizing-1024x424.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/16_Modernizing-768x318.png 768w" sizes="(max-width: 1380px) 100vw, 1380px" /></a></p>
<ol start="6">
<li>
Add missing variables to populate input and output variables, then save and validate the decision flow.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/17_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/17_Modernizing.png" alt="" width="1172" height="588" class="aligncenter size-full wp-image-21643" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/17_Modernizing.png 1172w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/17_Modernizing-300x151.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/17_Modernizing-1024x514.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/17_Modernizing-768x385.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/17_Modernizing-164x82.png 164w" sizes="(max-width: 1172px) 100vw, 1172px" /></a></p>
</ol>
<h3>Step 5: Add an LLM-based validation agent to score responses.</h3>
<p>In this step, an LLM‑based validation agent is added as a guardrail to assess the relevance of the proposed responses before they are acted upon. The validation agent evaluates each response against the original ticket context and returns a score, along with qualitative feedback highlighting potential gaps or risks.</p>
<p>This guardrail plays a key role in controlling the autonomy of the agent, ensuring that only high‑quality responses can progress, while uncertain or risky cases are prioritized for mandatory human review. As a result, the solution balances automation with oversight, optimizes the workload of support staff, and strengthens trust, accountability, and operational reliability.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing.png" alt="" width="1092" height="552" class="aligncenter size-full wp-image-21646" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing.png 1092w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing-300x152.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing-1024x518.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing-768x388.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing-164x82.png 164w" sizes="(max-width: 1092px) 100vw, 1092px" /></a></p>
<h3>Step 6: test the flow to ensure full transparency and traceability.</h3>
<p>Once all components are connected, the complete decision flow is tested using representative ticket scenarios. This validation phase ensures that each step of the process behaves as expected and that routing decisions, agent outputs, and validation results are correctly logged.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/19_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/19_Modernizing.png" alt="" width="1184" height="592" class="aligncenter size-full wp-image-21649" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/19_Modernizing.png 1184w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/19_Modernizing-300x150.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/19_Modernizing-1024x512.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/19_Modernizing-768x384.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/19_Modernizing-164x82.png 164w" sizes="(max-width: 1184px) 100vw, 1184px" /></a></p>
<p>Testing also allows practitioners to verify end‑to‑end traceability, including which models, prompts, rules, and agents were used for each ticket, ensuring that outcomes are explainable and auditable throughout the workflow.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/20_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/20_Modernizing.png" alt="" width="1246" height="548" class="aligncenter size-full wp-image-21652" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/20_Modernizing.png 1246w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/20_Modernizing-300x132.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/20_Modernizing-1024x450.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/20_Modernizing-768x338.png 768w" sizes="(max-width: 1246px) 100vw, 1246px" /></a></p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/21_Modernizing.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/21_Modernizing.png" alt="" width="882" height="492" class="aligncenter size-full wp-image-21655" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/21_Modernizing.png 882w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/21_Modernizing-300x167.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/06/21_Modernizing-768x428.png 768w" sizes="(max-width: 882px) 100vw, 882px" /></a></p>
<h3>Step 7: Package, govern, deploy, and monitor the agent.</h3>
<p>In the final step, the agent is packaged and deployed as a governed asset. Using SAS Model Manager and SAS Intelligent Decisioning, all models, prompts, and decision logic are versioned, approved, and published to the appropriate runtime environments.</p>
<p>Once in production, the agent can be monitored over time, tracking performance, validation scores, and behavioral trends. This enables continuous improvement of the agent while maintaining control, governance, and trust as requirements evolve.</p>
<h2>Conclusion</h2>
<p>As Agentic AI becomes a core capability for enterprise operations, trust and governance are no longer optional, they are foundational This walkthrough shows how practitioners can design an <strong>end‑to‑end agentic AI workflow</strong> that is both powerful and controllable, and how a <strong>layered, hybrid approach</strong> enables organizations to move beyond isolated RAG models toward fully orchestrated agentic workflows.</p>
<p>By leveraging <strong>SAS Viya together with the SAS Agentic AI Accelerator</strong>, analytics‑driven understanding, generative reasoning, and human oversight coexist within a single, governed framework. The accelerator simplifies the creation, orchestration, and governance of AI agents, enabling LLMs, prompts, rules, and analytical models to be combined transparently and operationalized at scale.</p>
<p>Beyond the architectural benefits, this use case delivers <strong>tangible business value</strong>. The implementation enables:</p>
<ul>
<li><strong>Higher productivity</strong>, by reducing manual ticket review and accelerating solution search, resulting in <strong>cost reductions of 8–15%</strong>.</li>
<li><strong>Improved effectiveness</strong>, cutting ticket resolution times by <strong>30–40%</strong> through faster, more consistent responses and better guidance for support teams.</li>
<li><strong>Increased application and user satisfaction</strong> reflected an estimated <strong>10% improvement in NPS</strong>, driven by fewer unnecessary iterations and clearer responses.</li>
<li><strong>Scalable best practices</strong>, with standardized and validated responses that reduce dependency on individual expertise and increase the number of resolved tickets by <strong>around 20%</strong>.</li>
</ul>
<p>The result is an <strong>enterprise‑ready Agentic AI solution</strong> that can evolve over time, support critical operational teams such as UAC, and deliver automation with confidence—combining autonomy with transparency, and innovation with control.</p>
<p>To explore how this approach can be implemented in practice, learn more about <a href="https://communities.sas.com/t5/SAS-Communities-Library/Introducing-the-SAS-Agentic-AI-Accelerator-Build-AI-Agents/ta-p/977176"><em>SAS Agentic AI Accelerator</em></a> and discover how to build, govern, and scale AI agents in enterprise environments.</p>
<h3>Learn more</h3>
<ul>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/05/29/agentic-ai-for-workforce-analytics/">Agentic AI for Workforce Analytics: Reducing attrition with personalized, LLM-powered guidance</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/05/22/how-agentic-ai-accelerates-sme-credit-decisions-with-sas-viya/">How Agentic AI Accelerates SME Credit Decisions with SAS Viya</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/04/15/building-an-ai-voice-agent/">From fraud detection to fraud resolution: Building an AI voice agent with SAS Viya and LLMs</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/01/16/unlocking-agentic-ai-potential-with-mcp-tools-in-sas-retrieval-agent-manager/">Unlocking agentic AI potential with MCP tools in SAS Retrieval Agent Manager</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/">A New Frontier for AI Agents: Cybersecurity</a></li>
</ul>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/06/09/modernizing-attendance-ticketing/">Modernizing user attendance center ticket handling with trusted agentic AI</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/06/09/modernizing-attendance-ticketing/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/06/18_Modernizing-150x150.png" />
	</item>
		<item>
		<title>From entity resolution to industry solutions: How AI‑driven entity resolution is evolving on SAS Viya</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/06/03/how-ai%e2%80%91driven-entity-resolution-is-evolving-on-sas-viya/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/06/03/how-ai%e2%80%91driven-entity-resolution-is-evolving-on-sas-viya/#respond</comments>
		
		<dc:creator><![CDATA[Scott DeBurgomaster]]></dc:creator>
		<pubDate>Wed, 03 Jun 2026 18:50:14 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Applied AI Modeling]]></category>
		<category><![CDATA[SAS AI-Driven Entity Resolution]]></category>
		<category><![CDATA[SAS Model]]></category>
		<category><![CDATA[SAS Models]]></category>
		<category><![CDATA[SAS Viya]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=21511</guid>

					<description><![CDATA[<p>Explore how SAS AI-Driven Entity Resolution on SAS Viya combines no-code configuration, probabilistic matching, and industry-specific integrations to create trusted identities, improve data quality, and support critical decisions across sectors such as public services and financial crime prevention.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/06/03/how-ai%e2%80%91driven-entity-resolution-is-evolving-on-sas-viya/">From entity resolution to industry solutions: How AI‑driven entity resolution is evolving on SAS Viya</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In this post, we take a closer look at how AI-Driven Entity Resolution on SAS Viya is evolving through no-code accessibility, advanced record linking methods, and integration with industry-specific use cases.</p>
<p>Entity resolution has long been a foundational capability in analytics—connecting records, reducing duplication, and building a trusted, 360-degree view of people, organizations, and relationships. But in today’s data landscape, fragmentation is no longer an exception; it is the norm. Organizations routinely manage millions, sometimes billions, of records spread across disconnected systems, where duplicate and inconsistent identities introduce risk, inefficiency, and blind spots.</p>
<p>This has a significant impact. Gartner estimates that poor data quality costs organizations an average of at least $12.9 million per year. Yet despite this cost, many organizations struggle to improve. Data quality is not a one-time effort. It is continuous and operationally difficult to sustain. According to the 2024 State of Data Quality report by Transforming Data with Intelligence (TDWI), only 14% of organizations have automated data quality management processes. While more than half generate data quality metrics, just 17% formally and consistently report them. This limits their ability to manage duplication and identity fragmentation at scale.</p>
<p>What’s changed is not the importance of entity resolution, but the expectations placed on it. As data becomes more distributed and dynamic, organizations can no longer rely on batch processes, manual review, or isolated analytical workflows. They need identity resolution that is reliable in production, scales globally, and integrates directly with decision-making systems.</p>
<p>This shift is driving the evolution of SAS AI‑Driven Entity Resolution from a powerful analytical capability into a globally available, industry‑ready solution on <a href="https://www.sas.com/en_us/software/viya.html">SAS Viya</a>.</p>
<h2>A brief look at the SAS AI‑Driven Entity Resolution Model package</h2>
<p>As shown in Figure 1, SAS AI‑Driven Entity Resolution is delivered as a ready‑made SAS model package. It is built as a modular pipeline that includes data cleansing, record linkage, community link validity, clustering, and cluster scoring. Organizations can deploy the full pipeline end‑to‑end or integrate individual components alongside existing data quality or entity resolution processes.</p>
<p>Most SAS AI‑Driven Entity Resolution components are globally applicable by design. This enables the deployment of entity resolution across regions and data sources. The data preparation component currently focuses on U.S. English standards for individuals and organizations, while the remaining linkage and scoring components are language, region, and entity-agnostic. This allows organizations to pair SAS AI‑Driven Entity Resolution with localized data preparation strategies as needed.</p>
<figure id="attachment_21514" aria-describedby="caption-attachment-21514" style="width: 514px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-1.png"><img loading="lazy" decoding="async" class="size-full wp-image-21514" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-1.png" alt="Figure 1. Contents of the SAS AI-Driven Entity Resolution (AI-DER) Model Package" width="514" height="306" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-1.png 514w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-1-300x179.png 300w" sizes="(max-width: 514px) 100vw, 514px" /></a><figcaption id="caption-attachment-21514" class="wp-caption-text">Figure 1: Contents of the SAS AI-Driven Entity Resolution Model Package</figcaption></figure>
<h2>Lowering the barrier with no‑code configuration</h2>
<p>To accelerate adoption, SAS AI‑Driven Entity Resolution is available through <a href="https://go.documentation.sas.com/doc/en/webeditorcdc/v_067/webeditorsteps/n1am9lk9ec29lyn1cuplosqq60d7.htm">SAS Studio Custom Steps</a> (Figure 2) and <a href="https://go.documentation.sas.com/doc/en/webeditorcdc/v_067/webeditorflows/titlepage.htm">SAS Studio Flows</a> (Figure 3). This provides a no-code approach to configuring and orchestrating entity resolution pipelines. This enables analysts and domain experts, not just developers, to design and deploy entity resolution pipelines with confidence.</p>
<p>By reducing operational complexity and standardizing configuration, custom steps help teams move more quickly from experimentation to production. This is an essential capability as entity resolution expands across industries and geographies.</p>
<figure id="attachment_21517" aria-describedby="caption-attachment-21517" style="width: 557px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-2.png"><img loading="lazy" decoding="async" class="size-full wp-image-21517" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-2.png" alt="Figure 2: SAS Studio custom steps to configure SAS AI‑Driven Entity Resolution components" width="557" height="387" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-2.png 557w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-2-300x208.png 300w" sizes="(max-width: 557px) 100vw, 557px" /></a><figcaption id="caption-attachment-21517" class="wp-caption-text">Figure 2: SAS Studio custom steps to configure SAS AI‑Driven Entity Resolution components</figcaption></figure>
<figure id="attachment_21520" aria-describedby="caption-attachment-21520" style="width: 624px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-3.png"><img loading="lazy" decoding="async" class="size-full wp-image-21520" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-3.png" alt="Figure 3: SAS Studio flow to process data through the SAS AI‑Driven Entity Resolution model" width="624" height="150" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-3.png 624w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-figure-3-300x72.png 300w" sizes="(max-width: 624px) 100vw, 624px" /></a><figcaption id="caption-attachment-21520" class="wp-caption-text">Figure 3: SAS Studio flow to process data through the SAS AI‑Driven Entity Resolution model</figcaption></figure>
<h2>Why entity resolution is evolving</h2>
<p>Traditional, deterministic matching techniques remain effective when data is clean, identifiers are stable, and match criteria are straightforward. In practice, however, real‑world data is often incomplete, inconsistent, and constantly changing. So, rule-based approaches struggle to keep pace with evolving data. This has driven increased demand for methods that learn from data patterns rather than rely solely on fixed rules.</p>
<p>In the Summer 2026 release, SAS AI‑Driven Entity Resolution expands support for probabilistic record linkage. This will enable matches to be evaluated based on likelihood rather than exact agreement. Enhancements include frequency-based weighting for rare and common attributes (such as first and last names), helping to distinguish meaningful similarity from coincidence. Additional capabilities, including process tracking and lifecycle management, allow identities to evolve over time, preserving historical context while continuously refining matches as new data arrives.</p>
<p>Together, these improvements shift entity resolution from static, rebuild‑oriented processes to entity resolution to a living system aligned with long‑running operational use.</p>
<h2>From cross-industry capability to industry solutions</h2>
<p>While entity resolution is a common requirement across many domains, its application varies widely by industry. The greatest value comes not from record linkage alone, but from embedding entity resolution into industry‑specific workflows and applications.</p>
<p>A clear example of this approach is public-sector program integrity. In food assistance programs, for instance, accurately resolving individuals, households, and related entities is essential to reducing improper payments while protecting eligible families. This need became especially visible during the COVID-19 pandemic. States were required to identify children eligible for free or reduced-price school meals. The system then linked them to the Supplemental Nutrition Assistance Program (SNAP) and EBT systems across separate education and human services data sets.</p>
<p>With no direct identifier to link students across these disparate systems, SAS supported states by applying probabilistic entity resolution to match students. SAS leveraged the same algorithmic techniques that underlie SAS AI‑Driven Entity Resolution. In one such implementation, this approach delivered a 30% improvement in match rates over deterministic methods. This created faster benefit distribution and reduced duplicate or missed payments. This drove an estimated $500,000 in immediate cost avoidance while supporting a 48-hour response time.</p>
<aside class="modern-quote pull alignright">The next step is clear: Integration with industry solutions. Work is already underway to incorporate SAS AI‑Driven Entity Resolution into the SAS Payment Integrity for Food Assistance model.</aside>
<p>The next step is clear: Integration with industry solutions. Work is already underway to incorporate SAS AI‑Driven Entity Resolution into the <a href="https://www.sas.com/en_us/industry/government/solution/food-assistance.html">SAS Payment Integrity for Food Assistance</a> model. This would help support fair, accurate decision-making across fragmented systems and complex eligibility scenarios. This marks a crucial step in moving beyond standalone analytics into end-to-end industry solutions.</p>
<p>A similar pattern applies in financial services, where entity resolution is foundational to fraud detection and anti-money laundering. Understanding networks and relationships is often as critical as matching individual records. In these environments, the <a href="https://go.documentation.sas.com/doc/en/vicdc/v_027/casactrteng/titlepage.htm">Real-Time Entity and Network Generation</a> serves as the backbone for identity management. This is particularly true when paired with <a href="https://support.sas.com/en/software/visual-investigator-support.html">SAS Visual Investigator</a>, while SAS AI‑Driven Entity Resolution enhances match accuracy through probabilistic techniques. Ongoing efforts focus on bringing these capabilities together to improve match quality and reduce false positives without disrupting existing architectures.</p>
<p>From financial services and public-sector programs to healthcare and life sciences, this industry-focused approach results in a stronger, more resilient foundation. It scales with data complexity and operational demand while tuning for industry-specific challenges. SAS AI‑Driven Entity Resolution offers advanced, probabilistic matching and scoring to surface relationships in complex or ambiguous data. It integrates seamlessly with your existing entity resolution workflows, delivering value across industries. Therefore, the result is an entity resolution product that is both analytically robust and operationally dependable, supporting critical decisions across diverse business domains.</p>
<h2>A foundational model package built to evolve</h2>
<aside class="modern-quote pull alignright">SAS AI‑Driven Entity Resolution is evolving from a standalone record‑linkage capability into a globally available, industry‑ready model package for entity resolution.</aside>
<p>SAS AI‑Driven Entity Resolution is evolving from a standalone record‑linkage capability into a globally available, industry‑ready model package for entity resolution. No‑code configuration lowers the barrier to adoption, probabilistic methods improve match quality, and lifecycle management enables continuity over time. Most importantly, integration with industry solutions ensures that entity resolution delivers value where it matters most, within applications and workflows that drive real outcomes.</p>
<p>This is not a change for the sake of change. It is a deliberate evolution aimed at helping organizations build trusted identities that scale across data, industries, and time.</p>
<p><a class="sc-button sc-button-default" href="https://blogs.sas.com/content/subconsciousmusings/2024/12/10/ai-to-the-rescue-how-sas-is-fixing-food-stamp-errors-and-helping-families-in-need/"><span class="btnheader">READ MORE | </span> AI to the rescue: How SAS is fixing food stamp errors and helping families in need</a></p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/06/03/how-ai%e2%80%91driven-entity-resolution-is-evolving-on-sas-viya/">From entity resolution to industry solutions: How AI‑driven entity resolution is evolving on SAS Viya</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/06/03/how-ai%e2%80%91driven-entity-resolution-is-evolving-on-sas-viya/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/may-scott-aider-header-150x150.png" />
	</item>
		<item>
		<title>Agentic AI for Workforce Analytics: Reducing attrition with personalized, LLM-powered guidance</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/05/29/agentic-ai-for-workforce-analytics/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/05/29/agentic-ai-for-workforce-analytics/#respond</comments>
		
		<dc:creator><![CDATA[Edwin van Unen]]></dc:creator>
		<pubDate>Fri, 29 May 2026 18:00:46 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[agentic AI]]></category>
		<category><![CDATA[employee retention]]></category>
		<category><![CDATA[HR analytics]]></category>
		<category><![CDATA[LLMs]]></category>
		<category><![CDATA[personalized learning]]></category>
		<category><![CDATA[SAS Viya]]></category>
		<category><![CDATA[talent development]]></category>
		<category><![CDATA[workforce analytics]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=21370</guid>

					<description><![CDATA[<p>This post explores how Agentic AI and LLMs can help reduce employee attrition by delivering personalized development guidance based on workforce analytics and skill profiling. Using SAS Viya and governed AI workflows, the solution matches employees with tailored learning opportunities while supporting transparent, scalable, and data-driven workforce planning.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/05/29/agentic-ai-for-workforce-analytics/">Agentic AI for Workforce Analytics: Reducing attrition with personalized, LLM-powered guidance</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Introduction</h2>
<p>Agents using Large Language Models (LLMs) are very powerful to extract insights from unstructured data. In this blog I describe how Agentic AI could help reduce attrition in an organization. This example is intended for <strong>technical practitioners</strong> who want to understand how to build such a use case in SAS Viya and for <strong>Human Resource</strong> <strong>professionals</strong> to understand how Agentic AI can be used to reduce attrition. The case shows how deterministic models on structured data and probabilistic models on unstructured data can be combined in one agentic flow.</p>
<p>The agentic workflow is designed to find the best training option out of a set of qualified training matching employees' development goals provided as free text. I use the <strong>SAS Agentic AI Accelerator</strong> to easily try out different prompts with several available LLMs to see how to get the best results from the training descriptions. Next, this Open-Source Framework helps to register the best prompt design for <strong>SAS Model Manager, </strong>which is part of the SAS Viya platform. Finally, I created an agentic workflow in <strong>SAS Intelligent Decisioning </strong>also within SAS Viya<strong>.  </strong>This tool gives full flexibility in designing agentic behavior within guardrails and according to organizational policies like HR guidelines.  Overall, SAS Viya provides governance across prompts, large language models, and workflows, supporting safe and controlled AI deployment within a single platform.</p>
<h2>The issue</h2>
<p>Employee Attrition is a big concern in many organizations. Keeping the most valuable employees is challenging whereas attracting new hires is expensive, time-consuming, and uncertain as well. Offering customized development opportunities can help retain current employees. In many industries this is a growing issue, especially in Healthcare. Nurses and doctors are used to staying for a longer period at a hospital but due to high workloads, limited salary raises and potential job opportunities elsewhere they tend to leave the organization more easily. Additionally, growing concerns of population aging and fewer young people at nursing schools reinforce the issue. Providing optimal personalized development guidance with challenging training opportunities could help in retaining the best employees.</p>
<h2>Our solution</h2>
<p>In our solution, I use Healthcare data to let the agent give recommendations about which development option should be considered for nurses, doctors or other employees in a hospital depending on textual input from a questionnaire describing their development goals for the future. The questionnaire consists of three questions:</p>
<ol>
<li>Which work aspects of your current job give you energy?</li>
<li>Which new capabilities would you like to develop in the next 12 months?</li>
<li>How do you see your role evolve in 3 to 5 years?</li>
</ol>
<p>Additionally, we asked if they have a specific training request.</p>
<p>The results have been collected in a dataset. We will provide a selected LLM this input to find the best training recommendation from a set of qualified training options. This process is steered by HR guidelines such that both employees’ performance ratings and attrition risk count for deciding whether an employee would be eligible for a full Development Path or just a single default or premium training.</p>
<p>To create the solution, we use SAS Viya to create all components first and then bring it together in an agentic workflow. This workflow will be used to show training advice for an individual employee on a <strong>SAS Visual Analytics</strong> dashboard. The steps are:</p>
<ol>
<li>Build a Machine Learning model to predict attrition</li>
<li>Implement HR policies for personal development pathways</li>
<li>Design prompts for development and training advice</li>
<li>Implement the Development Path Agent</li>
<li>Implement the Training Advisor Agent</li>
<li>Bring it all together in an Agentic Workflow</li>
<li>Operationalize the workflow and get advice</li>
</ol>
<h2>Implementation in SAS Viya</h2>
<p>Everything in AI starts with data. For this use case we collected HR data of an organization and synthesized the dataset with <strong><a href="https://www.sas.com/en_us/software/data-maker.html">SAS Data Maker</a></strong>, which is also within SAS Viya, we easily see the content of the dataset and evaluate the quality and completeness of the variables in it.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1764" height="932" class="aligncenter size-full wp-image-21478" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics.png 1764w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics-300x159.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics-1024x541.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics-768x406.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics-1536x812.png 1536w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/01a_Agentic_AI_for_Workforce_Analytics-351x185.png 351w" sizes="(max-width: 1764px) 100vw, 1764px" /></a></p>
<p>The data contains information about age, salary, education, job role, work experience and performance rating of each employee. In total we have 40 columns. For predicting attrition we use the variable <em>AttritionTxt</em>, a binary yes/no variable telling whether this employee has left the organization.</p>
<p>Let’s now start building our models and agentic workflows. I will explain each step mentioned above in more detail:</p>
<h3>Step 1. Predicting Attrition using Machine Learning</h3>
<p>For this I leverage the power of Model Studio, an intuitive user interface for model development. We can easily build model pipelines from scratch, use prebuilt templates or let SAS Viya do the job by using the “<em>Automatically generate the pipeline</em>” option.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/02_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/02_Agentic_AI_for_Workforce_Analytics.png" alt="" width="508" height="500" class="aligncenter size-full wp-image-21388" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/02_Agentic_AI_for_Workforce_Analytics.png 508w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/02_Agentic_AI_for_Workforce_Analytics-300x295.png 300w" sizes="(max-width: 508px) 100vw, 508px" /></a></p>
<p>This feature analyzes the data and tries several approaches using sophisticated search and optimization techniques. After running for a couple of minutes SAS Viya finds 4 candidate pipelines of which the final “Neural Network (2)” pipeline performs best.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/03a_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/03a_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1100" height="956" class="aligncenter size-full wp-image-21481" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/03a_Agentic_AI_for_Workforce_Analytics.png 1100w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/03a_Agentic_AI_for_Workforce_Analytics-300x261.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/03a_Agentic_AI_for_Workforce_Analytics-1024x890.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/03a_Agentic_AI_for_Workforce_Analytics-768x667.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/03a_Agentic_AI_for_Workforce_Analytics-110x96.png 110w" sizes="(max-width: 1100px) 100vw, 1100px" /></a></p>
<p>After testing other approaches, I found out that an ensemble model combining several model predictions together could even improve the results slightly, especially for certain age groups. It is nice to have several approaches together in a model tournament instead of just sticking to one favorite algorithm all the time. As a developer I like this very much.</p>
<p>Because the models are difficult to interpret, I use out-of-the-box explainability results to understand the models better. This gives nice PD and ICE plots as well as LIME and HyperSHAP explanations. The values can be used to give insights into why the models predict attrition for an individual employee.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/04a_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/04a_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1604" height="902" class="aligncenter size-full wp-image-21484" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/04a_Agentic_AI_for_Workforce_Analytics.png 1604w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/04a_Agentic_AI_for_Workforce_Analytics-300x169.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/04a_Agentic_AI_for_Workforce_Analytics-1024x576.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/04a_Agentic_AI_for_Workforce_Analytics-768x432.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/04a_Agentic_AI_for_Workforce_Analytics-1536x864.png 1536w" sizes="(max-width: 1604px) 100vw, 1604px" /></a></p>
<p>As a final check I tested the models for Bias and Fairness. I noticed some differences in Performance and Prediction results between group levels and used mitigation techniques to lower the bias.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics.png" alt="" width="2141" height="849" class="aligncenter size-full wp-image-21397" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics.png 2141w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics-300x119.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics-1024x406.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics-768x305.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics-1536x609.png 1536w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics-2048x812.png 2048w" sizes="(max-width: 2141px) 100vw, 2141px" /></a></p>
<p>Both Explainability and Bias &amp; Fairness results can be found in the Results output of a single model node. For Explainability you need to select the relevant boxes in the “<em>Post-Training properties</em>” section in the node options. For “Bias and Fairness” results you need to select in the Data pane the “<em>Assess this variable for bias</em>” checkbox on the right side for each category variables you want to analyze for bias.</p>
<p>Model development is demanding, but Model Studio greatly accelerates it. If I'm pleased with the outcomes, I choose to register both the Ensemble and Neural Network models in SAS Model Manager. Both models will be used to predict attrition in the agentic workflow for certain age groups.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/06_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/06_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1034" height="304" class="aligncenter size-full wp-image-21400" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/06_Agentic_AI_for_Workforce_Analytics.png 1034w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/06_Agentic_AI_for_Workforce_Analytics-300x88.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/06_Agentic_AI_for_Workforce_Analytics-1024x301.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/06_Agentic_AI_for_Workforce_Analytics-768x226.png 768w" sizes="(max-width: 1034px) 100vw, 1034px" /></a></p>
<h3>Step 2. Implement HR policies for Personal Development pathways</h3>
<p>Before calling LLMs to select a development path or training I want to implement HR policies to steer the output based on employees’ experience (<em>Years at the Company</em>), performance rating and attrition risk. For this I leverage the Segmentation Tree node in SAS Intelligent Decisioning to get a deterministic outcome telling whether a development pathway should be considered and whether the premium training advisor is allowed. This one is more expensive. We don’t want this to be probabilistic in nature. The HR policy gives guidelines to the Agent.</p>
<p>The Segmentation Tree returns one of the options Coaching, Default training, Premium training or Development path according to HR policies. In some cases, the recommendation will be to review the data first, for example when data is missing.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/07a_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/07a_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1644" height="906" class="aligncenter size-full wp-image-21487" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/07a_Agentic_AI_for_Workforce_Analytics.png 1644w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/07a_Agentic_AI_for_Workforce_Analytics-300x165.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/07a_Agentic_AI_for_Workforce_Analytics-1024x564.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/07a_Agentic_AI_for_Workforce_Analytics-768x423.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/07a_Agentic_AI_for_Workforce_Analytics-1536x846.png 1536w" sizes="(max-width: 1644px) 100vw, 1644px" /></a></p>
<p>The TrainingMatrix in this node is used to set these options on a granular level depending on attrition risk and performance rating:</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/08_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/08_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1070" height="388" class="aligncenter size-full wp-image-21406" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/08_Agentic_AI_for_Workforce_Analytics.png 1070w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/08_Agentic_AI_for_Workforce_Analytics-300x109.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/08_Agentic_AI_for_Workforce_Analytics-1024x371.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/08_Agentic_AI_for_Workforce_Analytics-768x278.png 768w" sizes="(max-width: 1070px) 100vw, 1070px" /></a></p>
<p><strong>Important note</strong>: this implementation is purely fictional and not based on any official HR policy. This example shows the flexibility to implement deterministic HR rules in agentic workflows and be able to change them easily in changing conditions.</p>
<h3>Step 3. Designing prompt models in the Agentic AI Accelerator Framework</h3>
<p>The Agentic AI Accelerator Framework comes with a nice prompt builder UI to test and select optimal prompt for the use case at hand. The results will be registered into SAS Model Manager as prompt model. These models will be part of the agentic workflow like the predictive models. The prompt model gives the proper system prompt and user prompt for the LLM.</p>
<p>In the UI we start by selecting the SAS Model Manager project and give the prompt a name. Next, we select the LLM we want to test and set the properties. Finally, we try out several system prompts and user prompts to see which one produces the best results.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics.png" alt="" width="2100" height="844" class="aligncenter size-full wp-image-21490" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics.png 2100w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics-300x121.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics-1024x412.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics-768x309.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics-1536x617.png 1536w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/09a_Agentic_AI_for_Workforce_Analytics-2048x823.png 2048w" sizes="(max-width: 2100px) 100vw, 2100px" /></a></p>
<p>I begin with the prompt to let the LLM select a development path for the employee based on its data. In the system prompt I ask the LLM to give the output, including a reason for this match, in a specific json format, so I can easily retrieve the output from this json in my agentic workflow. In the user prompt I provide the 3 answers the employee gave in the employee survey. We expect the LLM to match this survey data to the potential development path options it has available. In this version I provide the LLM with these options through the prompt. In the next version I will use Retrieval Augmented Generation to make this process even more flexible and scalable.</p>
<p>I run several experiments and if I’m satisfied, I can select the best one as <em>Best Response</em>. I select “<em>Manifest Best Prompt</em>” which registers the prompt as model in SAS Model Manager.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/10_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/10_Agentic_AI_for_Workforce_Analytics.png" alt="" width="734" height="668" class="aligncenter size-full wp-image-21412" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/10_Agentic_AI_for_Workforce_Analytics.png 734w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/10_Agentic_AI_for_Workforce_Analytics-300x273.png 300w" sizes="(max-width: 734px) 100vw, 734px" /></a></p>
<p>Now we have the assets to build an agentic flow for selecting a development path. Next, I need to do the same to select the best training from a set of training options. In fact, I develop two versions, a default and a premium option. The premium one is more expensive and will only be used according to the HR policy guidelines implemented in step 2. Like the Development Path prompt, I register both Default Training Advice prompt and Premium Training Advice prompt as prompt models in SAS Model Manager. Now, we have 3 prompt models available, all governed in SAS Model Manager and ready for deployment in an agentic workflow.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/11_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/11_Agentic_AI_for_Workforce_Analytics.png" alt="" width="824" height="424" class="aligncenter size-full wp-image-21415" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/11_Agentic_AI_for_Workforce_Analytics.png 824w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/11_Agentic_AI_for_Workforce_Analytics-300x154.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/11_Agentic_AI_for_Workforce_Analytics-768x395.png 768w" sizes="(max-width: 824px) 100vw, 824px" /></a></p>
<p>Each prompt model uses python score code. We can see the details when opening the prompt models in SAS Model Manager.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/12_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/12_Agentic_AI_for_Workforce_Analytics.png" alt="" width="852" height="448" class="aligncenter size-full wp-image-21418" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/12_Agentic_AI_for_Workforce_Analytics.png 852w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/12_Agentic_AI_for_Workforce_Analytics-300x158.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/12_Agentic_AI_for_Workforce_Analytics-768x404.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/12_Agentic_AI_for_Workforce_Analytics-351x185.png 351w" sizes="(max-width: 852px) 100vw, 852px" /></a></p>
<h3>Step 4. Implement a Development Path Agent</h3>
<p>Next step is to develop the Agentic workflows for the development and training agents. For this we use the prompt models created in the previous step to deliver the inputs to the LLM. The Development Path agent needs a user prompt that contains the actual answers to the survey questions for each individual employee. We implement this in a business rule set in which we assign a concatenated string to the user prompt variable. The string concatenates the 3 survey questions and answers as we have tested in the prompt builder UI of the Agentic AI Accelerator Framework.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/13_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/13_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1122" height="324" class="aligncenter size-full wp-image-21421" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/13_Agentic_AI_for_Workforce_Analytics.png 1122w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/13_Agentic_AI_for_Workforce_Analytics-300x87.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/13_Agentic_AI_for_Workforce_Analytics-1024x296.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/13_Agentic_AI_for_Workforce_Analytics-768x222.png 768w" sizes="(max-width: 1122px) 100vw, 1122px" /></a></p>
<p>This user prompt will be provided to the prompt model called WFA_DevelopmentPath which creates the final inputs for the Call LLM node: the user prompt, system prompt and some LLM settings.</p>
<p>Now we can call the LLM. We use the Call LLM node from the Agentic AI Accelerator Framework to call the LLM that was selected in the prompt model. After running the node, we will receive potential development path as output in json format. That’s why we use a final piece of code to extract this development path from the json.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/14_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/14_Agentic_AI_for_Workforce_Analytics.png" alt="" width="322" height="764" class="aligncenter size-full wp-image-21424" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/14_Agentic_AI_for_Workforce_Analytics.png 322w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/14_Agentic_AI_for_Workforce_Analytics-126x300.png 126w" sizes="(max-width: 322px) 100vw, 322px" /></a></p>
<h3>Step 5. Implement the final Training Advisor Agent</h3>
<p>Like the Development Path workflow, we need to develop a workflow to let an LLM select the best training option. I use the Default or Premium prompt depending on our HR Policies in the segmentation tree described in step 2. Note that I don’t implement a business rules set to create the user prompt like in the previous step. In this case we provide the user prompt as input variable to the workflow, because it comes directly from the survey data.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/15_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/15_Agentic_AI_for_Workforce_Analytics.png" alt="" width="684" height="628" class="aligncenter size-full wp-image-21427" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/15_Agentic_AI_for_Workforce_Analytics.png 684w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/15_Agentic_AI_for_Workforce_Analytics-300x275.png 300w" sizes="(max-width: 684px) 100vw, 684px" /></a></p>
<h3>Step 6. Bring it all together in an Agentic Workflow</h3>
<p>Now we have the prediction models, the agentic sub-workflows and the HR policies available we can bring it all together in a full “<em>Agentic AI for Workforce Analytics</em>” agentic decision flow. In SAS Intelligent Decisioning we combine data, models, rules and LLMs to orchestrate multi-step, governed agentic workflows. I like this because it is flexible and leverages the power of both deterministic as well as probabilistic approaches. Decisions are traceable, explainable and governed as re-usable assets. Here is the picture, let’s go through it step by step.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/16a_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/16a_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1112" height="1200" class="aligncenter size-full wp-image-21493" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/16a_Agentic_AI_for_Workforce_Analytics.png 1112w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/16a_Agentic_AI_for_Workforce_Analytics-278x300.png 278w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/16a_Agentic_AI_for_Workforce_Analytics-949x1024.png 949w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/16a_Agentic_AI_for_Workforce_Analytics-768x829.png 768w" sizes="(max-width: 1112px) 100vw, 1112px" /></a></p>
<p>In this agentic decision flow, we first check if all data we need is available in the inputs. If yes, we use the Machine Learning models we developed in step 1 to predict Attrition for employees between 25 and 55. We saw that the ensemble model was slightly better for employees between 25 and 40. For younger and older employees we implement business rules to calculate the attrition probability. This is because the models did not perform well for these groups; it is safer to use fixed rules.</p>
<p>Next, the calculated attrition predicted probability is used to set the attrition risk to <em>High</em>, <em>Medium</em> or <em>Low</em> following deterministic but flexible rules. After this node we added the Segmentation Tree to decide on the right support according to HR policies designed in step 2. Note that in some cases the advice was to check the data first (Review Data = Yes).</p>
<p>Finaly, we call the Development sub-flow for cases where a development path was requested. If not, we just ask the Training Advisor Agent to select proper training. Note that this is also the case for the employees with a Development Path selected (cross-connection).</p>
<p>At the end we use the output of the models and agents to deliver a nice training recommendation with reason as response as output.</p>
<p>In between each step of building the flow I test the flow regularly using the Scoring tab. When satisfied, the flow is ready to be used. Let’s save and start operationalizing it.</p>
<h3>Step 7. Operationalize the workflow and get advice</h3>
<p>As explained in the beginning of this blogpost, we want to show the results of the agentic flow in a <strong>SAS Visual Analytics</strong> dashboard. I selected 40 employees to fill in the survey and use <strong>SAS Studio</strong> to join this data to the original Attrition data set in a data flow.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/17_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/17_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1080" height="254" class="aligncenter size-full wp-image-21433" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/17_Agentic_AI_for_Workforce_Analytics.png 1080w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/17_Agentic_AI_for_Workforce_Analytics-300x71.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/17_Agentic_AI_for_Workforce_Analytics-1024x241.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/17_Agentic_AI_for_Workforce_Analytics-768x181.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/17_Agentic_AI_for_Workforce_Analytics-1078x254.png 1078w" sizes="(max-width: 1080px) 100vw, 1080px" /></a></p>
<p>To execute the agentic workflow on this data, I first publish the workflow to the CAS destination in SAS Viya. For this, select the publish button in SAS Intelligent Decisioning and select a CAS destination.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/18_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/18_Agentic_AI_for_Workforce_Analytics.png" alt="" width="488" height="546" class="aligncenter size-full wp-image-21436" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/18_Agentic_AI_for_Workforce_Analytics.png 488w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/18_Agentic_AI_for_Workforce_Analytics-268x300.png 268w" sizes="(max-width: 488px) 100vw, 488px" /></a></p>
<p>Now I have the workflow as decision flow available for execution in CAS. Next, I use the out-of-the-box step “<em>Execute Decision</em>” in another SAS Studio data flow, I select the right decision in the node and use the input dataset of 40 cases as input data. I join the output table to the full table which is being used in the SAS Visual Analytics dashboard.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/19_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/19_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1210" height="240" class="aligncenter size-full wp-image-21439" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/19_Agentic_AI_for_Workforce_Analytics.png 1210w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/19_Agentic_AI_for_Workforce_Analytics-300x60.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/19_Agentic_AI_for_Workforce_Analytics-1024x203.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/19_Agentic_AI_for_Workforce_Analytics-768x152.png 768w" sizes="(max-width: 1210px) 100vw, 1210px" /></a></p>
<p>Now we can see the results of the selected employees on the Dashboard grouped by Attrition risk.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics.png" alt="" width="1900" height="960" class="aligncenter size-full wp-image-21496" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics.png 1900w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics-300x152.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics-1024x517.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics-768x388.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics-1536x776.png 1536w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/20a_Agentic_AI_for_Workforce_Analytics-164x82.png 164w" sizes="(max-width: 1900px) 100vw, 1900px" /></a></p>
<p>As alternative we could also publish this agentic decision flow directly as SAS Micro Analytic Service in SAS Viya. Then we can call the automatically created API in real-time and get instant response from each single request. Another option is to publish it as a (Docker) Scoring Container Runtime. Then we can use it on other Kubernetes environments like Azure. Both could support real-time deployments like a chat interface.</p>
<h2>Conclusion</h2>
<p>This blog examined agentic AI through the Agentic AI Accelerator Framework alongside standard SAS Viya features. Within SAS Intelligent Decisioning, we integrated data, models, rules, and large language models (LLMs) to create a multi-step, governed agentic workflow. The combination of deterministic models and rules applied to structured data, together with probabilistic analysis of unstructured data, offers a robust approach for achieving improved, safe, and well-governed Agentic AI solutions.</p>
<p>We used our “<em>Agentic AI for Workforce Analytics</em>” workflow on simulated employee data to deliver tailored training recommendations that align with each employee's information and growth objectives. This approach could encourage employees to remain at their jobs longer, lowering the risk of attrition.</p>
<p>To explore how this approach can be implemented in practice, learn more about <a href="https://communities.sas.com/t5/SAS-Communities-Library/Introducing-the-SAS-Agentic-AI-Accelerator-Build-AI-Agents/ta-p/977176"><em>SAS Agentic AI Accelerator</em></a> and discover how to build, govern, and scale AI agents in enterprise environments.</p>
<h3>Learn more</h3>
<ul>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/06/09/modernizing-attendance-ticketing/">Modernizing user attendance center ticket handling with trusted agentic AI</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/05/22/how-agentic-ai-accelerates-sme-credit-decisions-with-sas-viya/">How Agentic AI Accelerates SME Credit Decisions with SAS Viya</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/04/15/building-an-ai-voice-agent/">From fraud detection to fraud resolution: Building an AI voice agent with SAS Viya and LLMs</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/01/16/unlocking-agentic-ai-potential-with-mcp-tools-in-sas-retrieval-agent-manager/">Unlocking agentic AI potential with MCP tools in SAS Retrieval Agent Manager</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/">A New Frontier for AI Agents: Cybersecurity</a></li>
</ul>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/05/29/agentic-ai-for-workforce-analytics/">Agentic AI for Workforce Analytics: Reducing attrition with personalized, LLM-powered guidance</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/05/29/agentic-ai-for-workforce-analytics/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/05_Agentic_AI_for_Workforce_Analytics-150x150.png" />
	</item>
		<item>
		<title>How Agentic AI Accelerates SME Credit Decisions with SAS Viya</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/05/22/how-agentic-ai-accelerates-sme-credit-decisions-with-sas-viya/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/05/22/how-agentic-ai-accelerates-sme-credit-decisions-with-sas-viya/#respond</comments>
		
		<dc:creator><![CDATA[Silvia Ibañez]]></dc:creator>
		<pubDate>Fri, 22 May 2026 18:27:38 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[agentic AI]]></category>
		<category><![CDATA[credit risk]]></category>
		<category><![CDATA[explainable AI]]></category>
		<category><![CDATA[generative AI]]></category>
		<category><![CDATA[SAS Intelligent Decisioning]]></category>
		<category><![CDATA[SAS Viya]]></category>
		<category><![CDATA[SME lending]]></category>
		<category><![CDATA[Workflow Automation]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=21220</guid>

					<description><![CDATA[<p>This post demonstrates how Agentic AI and SAS Viya can modernize SME loan origination by combining OCR, LLMs, governed decisioning, and interactive dashboards to accelerate transparent, explainable, and scalable credit decisions.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/05/22/how-agentic-ai-accelerates-sme-credit-decisions-with-sas-viya/">How Agentic AI Accelerates SME Credit Decisions with SAS Viya</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h3><em>This article was co-written with Arely Estephany Flores and Gabriela García.</em></h3>
<p>Small and medium-sized enterprises (SMEs) are critical to economic growth, yet lending to them remains one of the most operationally complex processes for financial institutions. Credit decisions often depend on unstructured documents, multiple external data sources, and strict regulatory requirements — all under pressure to deliver faster outcomes.</p>
<p>In this post, we explore how <strong>Agentic AI, operationalized on SAS Viya</strong>, can modernize SME loan origination by combining automation, advanced analytics, and explainable AI. We outline a practical <strong>project blueprint</strong> for accelerating credit decisions—designed for both <strong>business leaders</strong> and <strong>technical practitioners</strong> who want to understand and build how this type of project can be designed and implemented end to end.</p>
<h2>The Business Challenge: SME Lending Is Still Too Slow</h2>
<p>Traditional SME loan origination typically relies on manual extraction of financial data from PDF documents, the use of disconnected systems for credit risk, business rules, and external data sources, and long review cycles involving analysts and credit committees. These processes often lack consistent explainability for regulators and executives, making it difficult to scale decisions efficiently. Even when advanced analytical models are available, many organizations struggle to operationalize analytics consistently across the full credit lifecycle. The result? - <strong>Slow decisions, higher operational costs, and inconsistent outcomes.</strong></p>
<p>Imagine a lending process where financial data is automatically extracted, loan applications are enriched with external data sources, and governed credit strategies are executed in real time. In this model, every decision is accompanied by natural language explanations tailored to different audiences—analysts, executives, and regulators—without compromising transparency or control.</p>
<p>The question becomes: <strong>How can we accelerate SME credit decisions while maintaining governance, transparency, and trust?</strong> This is the type of solution financial institutions can design with SAS Agentic AI Accelerator to accelerate SME lending while maintaining governance and trust.</p>
<p><strong> </strong></p>
<h2>The Solution: Agentic AI on SAS Viya</h2>
<p>This solution leverages <strong>Agentic AI</strong> — a modular approach where multiple AI agents collaborate across a workflow — all leveraged with SAS Agentic AI Accelerator and governed by <strong>SAS Viya</strong>.</p>
<p>Instead of relying on a single AI model, Agentic AI coordinates multiple specialized components across the workflow. These components work together to extract and structure data, enrich applications with external sources, execute governed decision strategies, and generate natural‑language insights. The result is a credit decisioning process that is scalable, explainable, and fully auditable.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Diagram.gif"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Diagram.gif" alt="" width="641" height="360" class="alignright size-full wp-image-21241" /></a></p>
<h2>End-to-End Solution Overview</h2>
<p>At an elevated level, the SME lending flow works as follows:</p>
<ol>
<li>A <strong>loan application is initiated</strong> from a front-end interface.</li>
<li>Financial documents are processed using <strong>an OCR process.</strong></li>
<li><strong>External data sources</strong> are retrieved via<strong> APIs.</strong></li>
<li><strong>Decisional strategy</strong> executes rules, scorecards, and strategies.</li>
<li>An Agentic AI workflow triggers an <strong>LLM to generate business insights.</strong></li>
<li><strong>Results </strong>are presented in an <strong>interactive dashboard.</strong></li>
</ol>
<p>Each step is governed, versioned, and fully traceable on SAS Viya.</p>
<h2>What do you need to Build This Use Case on SAS Viya?</h2>
<p>To recreate this case, you will need:</p>
<h3>1. SAS Viya</h3>
<p>SAS Viya is a powerful platform for modern data analysis that helps companies to make data-driven decisions more efficiently and securely. Its flexible architecture, integration of AI, and extensive functions make it future-proof and suitable for many industries.</p>
<h3>2. Access to an LLM</h3>
<p>You can use whichever LLM you'd like such as GPT, Claude, Gemini, Llama, or Azure OpenAI, but it is essential to have an <strong>active subscription</strong>. We will <strong>access the LLM via API</strong> and integrate it with SAS through Python code; for this, we will need the <strong>Endpoint </strong>and the <strong>API key </strong>of the LLM. This video breaks it down clearly:</p>
<p><center><br />
<iframe loading="lazy" width="560" height="315" src="https://www.youtube.com/embed/eN3QytJhMAk?si=tRJRQLJ97CwKbvNJ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe><br />
</center></p>
<h3>3. Agentic AI Accelerator</h3>
<p>The SAS Agentic AI Accelerator provides a method for building AI agents leveraging SAS Viya technology. It is designed to help users move more quickly from use-case ideas to production, utilizing No/Low/Yes Code interfaces and full governance to build agents that balance autonomy and trust. It includes:</p>
<ul>
<li>The full code + documentation to deploy in your SAS Viya Environment</li>
<li>All the integrations that are built (SAS Studio Custom Steps, a no code prompt engineering UI, SAS Intelligent Decisioning Node, SAS Macros, Postman Collection and so much more)</li>
<li>Pre-build deployment recipes for LLMs</li>
<li>Pre-build deployment recipes for embedding models</li>
<li>An accelerator that builds only on SAS Viya standard components and does not use any unsupported APIs or otherwise undocumented features</li>
</ul>
<p>Read <a href="https://communities.sas.com/t5/SAS-Communities-Library/Introducing-the-SAS-Agentic-AI-Accelerator-Build-AI-Agents/ta-p/977176">Introducing the SAS Agentic AI Accelerator: Build AI Agents Seamlessly in SAS Viya</a> for more details.</p>
<h3>4. OCR Process</h3>
<p>For the OCR process, you can use any tool you have access to, for example:</p>
<ul>
<li><strong>SAS Document Analysis</strong>: provides an intuitive and easy-to-use set of utilities for deploying end-to-end cloud-based OCR processing pipelines and optimizes these pipelines for handling large volumes of data. It further structures outputs in a manner which seamlessly integrates with existing data science workflows and structured SAS datasets. Check out the <a href="https://helpcenter.unx.sas.com/test/doc/en/aaimdacdc/v_001/aaimdaug/titlepage.htm">SAS Help Centre: SAS Document Analysis: User’s Guide</a>.</li>
<li><strong>ABBYY FineReader PDF</strong>: Renowned for exceptional accuracy in handling complex layouts and 198+ languages. Ideal for legal and professional document comparison.</li>
<li><strong>Adobe Acrobat Pro</strong>: An all-inclusive suite for editing, signing, and converting scanned documents into searchable, editable PDFs.</li>
<li><strong>Google Document AI / Cloud Vision API</strong>: A scalable, cloud-based solution perfect for developers requiring advanced image analysis and structured data extraction.</li>
<li><strong>Amazon Textract</strong>: Specifically designed to extract structured data (tables, forms) from documents efficiently.</li>
</ul>
<h3>5. Python</h3>
<p>Python should be integrated into your SAS Viya environment. <a href="https://communities.sas.com/t5/SAS-Communities-Library/Configuring-SAS-Viya-for-Python-Integration/ta-p/847459">Review its functionality and the required libraries</a>. The following list includes some generic libraries that must be installed:</p>
<ul>
<li><strong>os</strong>: This library is used for interacting with the operating system.</li>
<li><strong>json</strong><strong>:</strong>This library is used for working with JSON data.</li>
<li><strong>dotenv</strong><strong>: </strong>This library is used for loading environment variables from a .env file.</li>
<li><strong>swat</strong>: This library is used for interacting with SAS Viya.</li>
<li><strong>io</strong>: This library is used for handling input and output operations.</li>
<li><strong>copy</strong>: This library is used for copying objects.</li>
<li><strong>parse</strong>: This library is used for parsing URLs.</li>
<li><strong>pandas</strong>: This library is used for data manipulation and analysis.</li>
<li><strong>OpenAI</strong><strong>:</strong>This library is used for interacting with OpenAI services.</li>
</ul>
<p><em>IMPORTANT: The libraries required will depend on the LLM code that needs to be incorporated for your selected LLM provider. </em></p>
<h2>Key SAS Viya Components</h2>
<h3>1. Access to external services</h3>
<p>To incorporate the <strong>OCR Process</strong>, we need to perform a <strong>SAS Job Execution in SAS Studio</strong>, where we will invoke the OCR service using the Endpoint and the Key. This step is essential for the correct integration and operation of external services with SAS.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Studio-Develop-Code-and-Flows.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Studio-Develop-Code-and-Flows.png" alt="" width="1610" height="745" class="aligncenter size-full wp-image-21292" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Studio-Develop-Code-and-Flows.png 1610w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Studio-Develop-Code-and-Flows-300x139.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Studio-Develop-Code-and-Flows-1024x474.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Studio-Develop-Code-and-Flows-768x355.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Studio-Develop-Code-and-Flows-1536x711.png 1536w" sizes="(max-width: 1610px) 100vw, 1610px" /></a></p>
<h3>2. Orchestrating the Credit Strategy</h3>
<p>SAS Intelligent Decisioning serves as the <strong>core decision engine</strong>, you can build your credit strategy in a <strong>user-friendly, testable, and governed application</strong>. Some functionalities you can integrate into the SME loan origination decision flow are:</p>
<ul>
<li><strong>Custom Code Files:</strong> You can define custom code files to do things that are not possible in rules, models, or treatments. For example, it allows you to extract the applicant information from databases after the credit application process and after performing the OCR on the financial statements. Also, you can establish REST API connections to external data sources, like the credit bureau to retrieve the applicant's historical credit behaviour.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions.png" alt="" width="1166" height="550" class="aligncenter size-full wp-image-21295" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions.png 1166w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-300x142.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-1024x483.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-768x362.png 768w" sizes="(max-width: 1166px) 100vw, 1166px" /></a></p>
</ul>
<ul>
<li><strong>Business Rule Sets:</strong> A rule specifies conditions to be evaluated, and it can also specify actions to be taken if those conditions are satisfied. Rule sets are logical collections of rules that are grouped together because of interactions or dependencies between the rules. This object can be used to calculate different ratios from the applicant's financial statement information, such as Net Profit Margin, Current Ratio, Sales Increase Year Over Year, etc. Also, it may help to assign the probability of default based on the outputs of previous nodes, calculate the loan's interest rate, and determine whether the loan application was approved based on the calculated financial coefficients.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-2.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-2.png" alt="" width="1324" height="630" class="aligncenter size-full wp-image-21298" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-2.png 1324w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-2-300x143.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-2-1024x487.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-2-768x365.png 768w" sizes="(max-width: 1324px) 100vw, 1324px" /></a></p>
</ul>
<ul>
<li><strong>Models:</strong> You can integrate analytical models developed in SAS, Python, and other programming sources into the decision flows. For instance, a scorecard built in SAS Model Studio can be used to calculate the score points to determine the applicant's probability of default.</li>
</ul>
<ul>
<li><strong>Branches:</strong> Branches enable you to add conditional logic to a decision. Depending on the branch type, a branch can have multiple outgoing paths. Branches can segment applicants by company size, i.e. Micro, Small, and Medium.</li>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-3.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-3.png" alt="" width="1246" height="590" class="aligncenter size-full wp-image-21301" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-3.png 1246w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-3-300x142.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-3-1024x485.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-3-768x364.png 768w" sizes="(max-width: 1246px) 100vw, 1246px" /></a></p>
</ul>
<ul>
<li><strong>Champion/challenger strategies. </strong>You can use an A/B test to direct input records into a champion path or a challenger path for testing. Each path includes one or more objects such as rule sets, treatment groups, models, or other objects.</li>
</ul>
<ul>
<li><strong>Real-time decision execution.</strong> You can deploy your decision flows at the edge or in stream by integrating with IoT devices and real-time systems. The decision flow for the use case reviewed in this article has the potential to be integrated into a front end via a REST API, allowing the end users to execute it on demand.</li>
</ul>
<p>There is huge value that risk and business teams can obtain by incorporating SAS Intelligent Decisioning into their credit loan process. Some benefits include <strong>ensuring consistent, explainable, and auditable decisions</strong>; <strong>reducing operational risk by centralizing rules and models</strong>; and <strong>supporting regulatory compliance through transparency and documentation</strong>.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-4.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-4.png" alt="" width="1786" height="1006" class="aligncenter size-full wp-image-21304" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-4.png 1786w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-4-300x169.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-4-1024x577.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-4-768x433.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/SAS-Intelligent-Decisioning-Build-Decisions-4-1536x865.png 1536w" sizes="(max-width: 1786px) 100vw, 1786px" /></a></p>
<h3>3. One Dashboard for Everyone:</h3>
<p>The front end of the solution is a <strong>SAS Visual Analytics dashboard</strong>, designed for credit analysts and decision makers. It brings together financial data, automated decisioning, and generative AI insights into a single, intuitive interface.</p>
<p>Rather than treating analytics, decision execution, and AI explanations as separate steps, this dashboard allows users to <strong>analyze, act, and understand outcomes in one place</strong>.</p>
<h4>Key Dashboard Capabilities</h4>
<p>The Visual Analytics dashboard can include:</p>
<ol>
<li><strong>Financial KPIs and trends</strong><br />
Key financial indicators derived from OCR‑extracted documents, external data sources, and calculated ratios can be presented through charts and tables.</li>
<li><strong>Interactive charts and filters</strong><br />
Analysts can filter results by company, loan application, or financial attributes to explore the data driving each decision.</li>
<li><strong>Buttons that trigger backend processes</strong><br />
The dashboard can use text and button objects configured as actions to trigger SAS jobs for:</p>
<ul>
<li><strong>Proceed to OCR Process</strong><br />
Triggers OCR execution to extract financial data from uploaded documents.</li>
<li><strong>Execute Loan Decision</strong><br />
Executes the SME loan origination decision flow in SAS Intelligent Decisioning</li>
<li><strong>Generate Insights</strong><br />
Calls a Large Language Model (LLM) to generate natural‑language explanations.</li>
</ul>
</li>
<p>This pattern is based on <a href="https://video.sas.com/detail/video/6145581622001/running-your-sas-code-from-the-web-using-the-sas-job-execution-web-application">SAS Job Execution</a>, allowing SAS code to be executed directly from a web interface.</p>
<li><strong>Embedded LLM responses inside the dashboard</strong><br />
AI‑generated insights can be displayed directly in the dashboard, eliminating the need to switch tools or applications.</li>
</ol>
<p>This creates a seamless user experience where analytics, decisions, and explanations live in one place, you can inspire in the following example to design yours:</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/How-Agentic-AI-Accelerates-SME-Credit-Decisions-with-SAS-Viya.gif"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-21223" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/How-Agentic-AI-Accelerates-SME-Credit-Decisions-with-SAS-Viya.gif" alt="" width="800" height="483" /></a></p>
<h2>Generative AI: Turning Analytics into Insights</h2>
<p>To make analytical outputs accessible and actionable for business users, the solution integrates a <strong>large language model (LLM)</strong> directly into the SME lending workflow. Rather than exposing users to raw scores or technical metrics, the LLM transforms structured analytical results into <strong>clear, natural‑language insights</strong>. It summarizes credit decisions, explains key risk drivers and financial ratios, and provides contextual insights tailored for different audiences, including analysts, executives, and customer‑facing teams. Importantly, the LLM operates under <strong>SAS Viya governance</strong>, ensuring that it does not replace analytical models or business rules, but instead explains their outputs in a transparent and controlled manner. This approach bridges the gap between advanced analytics and business understanding, improving decision confidence while maintaining trust.</p>
<h2>How to create a LLM Insight Generation dashboard in Visual Analytics?</h2>
<p>To build the generative AI interaction shown in this proposed use case, users need a small set of Visual Analytics objects and backend components.</p>
<h3>1. Data-Driven Content Object for Insight Generation</h3>
<p>To show the LLM response displayed in the dashboard you need to use a <strong>data‑driven object that embeds a Web Content object</strong> within SAS Visual Analytics. This Web Content object renders the response returned by a SAS Studio job and refreshes dynamically each time the job is executed. As a result, the LLM output behaves like a native dashboard component, seamlessly updating as new insights are generated. This approach allows generative AI responses to be fully integrated into the analytics experience, without requiring users to switch tools or interfaces.</p>
<h3>2. SAS Studio Job to Call the LLM</h3>
<p><span style="text-decoration: line-through;"> </span></p>
<p>A <strong>SAS Studio job</strong> is responsible for generating the natural‑language insights displayed in the dashboard. The job receives the analyst’s question as an input parameter, collects the structured outputs produced by the credit decision flow—such as risk scores, financial ratios, and approval status—and then invokes the selected LLM through its API. Once the response is generated, the job returns a natural‑language explanation to SAS Visual Analytics, where it is rendered in the Web Content object.</p>
<h3>3. Text Object for User Questions</h3>
<p>A <strong>Text object</strong> in the dashboard is used to capture the analyst’s question.</p>
<p>For example:<br />
<font color="blue"><center><strong>Generate Insights</strong></center></font><br />
<a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Explain-why-this-SME-loan-was-approved-or-rejected.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Explain-why-this-SME-loan-was-approved-or-rejected.png" alt="" width="2044" height="197" class="aligncenter size-full wp-image-21331" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Explain-why-this-SME-loan-was-approved-or-rejected.png 2044w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Explain-why-this-SME-loan-was-approved-or-rejected-300x29.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Explain-why-this-SME-loan-was-approved-or-rejected-1024x99.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Explain-why-this-SME-loan-was-approved-or-rejected-768x74.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/05/Explain-why-this-SME-loan-was-approved-or-rejected-1536x148.png 1536w" sizes="(max-width: 2044px) 100vw, 2044px" /></a></p>
<p>This text value is passed directly to the SAS job and used as part of the LLM prompt, keeping the interaction simple and intuitive for business users.</p>
<h3>4. Button or Action Object to Trigger Insight Generation</h3>
<p>You can also add a “<strong>button” with a text object and configure it as an action</strong> used to execute the LLM job.</p>
<p>When the user clicks <strong>“Generate Insights”</strong> the <strong>question</strong> from the text object is passed as a <strong>parameter </strong>and the SAS job is executed. Then, the LLM generates a response, and the Web Content object refreshes to display the answer.</p>
<p>This ensures insight generation is <strong>explicitly user‑driven</strong>, supporting human‑in‑the‑loop decisioning.</p>
<h2>Business Value Delivered</h2>
<p>This proposed design enables financial institutions to significantly <strong>accelerate SME credit decisions</strong> while reducing manual effort and operational risk. By centralizing analytics, decisioning, and generative AI within a governed platform, organizations can improve consistency and regulatory compliance, increase transparency for auditors and risk committees, and deliver clear, contextual explanations to business users. Most importantly, it demonstrates how generative AI can be operationalized responsibly—enhancing human decision‑making rather than replacing it—while maintaining trust, control, and explainability across the entire credit lifecycle.</p>
<p><span style="text-decoration: line-through;"> </span></p>
<h2>Learn more</h2>
<ul>
<li><a href="https://blogs.sas.com/content/sascom/2026/01/27/where-insight-begins-building-smarter-analytics-with-sas-visual-analytics/">Where insight begins: Building smarter analytics with SAS Visual Analytics - SAS Voices</a></li>
<li><a href="https://go.documentation.sas.com/doc/en/vacdc/v_038/vaobj/n1tlhkaafz8e77n1xxc6de9iuv59.htm?fromDefault=">SAS Help Centre: Working with Data-Driven Content</a></li>
<li><a href="https://go.documentation.sas.com/doc/en/vacdc/v_038/varef/n109mqtyl6quiun1mwfgtcn2s68b.htm?fromDefault=">SAS Help Centre: Programming Considerations for Data-Driven Visualizations</a></li>
<li><a href="https://www.davidweik.org/blog/creating-data-driven-content-in-sas-visual-analytics">Creating Data Driven Content in SAS Visual Analytics — David's Blog</a></li>
<li><a href="https://communities.sas.com/t5/SAS-Communities-Library/Introducing-the-SAS-Agentic-AI-Accelerator-Build-AI-Agents/ta-p/977176">Introducing the SAS Agentic AI Accelerator: Build AI Agents Seamlessly in SAS Viya</a></li>
<li><a href="https://communities.sas.com/t5/SAS-Communities-Library/Best-Practices-of-IF-THEN-ELSE-Logic-and-Agentic-AI-in-SAS/ta-p/979264">Best Practices of IF/THEN/ELSE Logic and Agentic AI in SAS Intelligent Decisioning</a></ul>
</li>
<h2>Authors</h2>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/arelyf.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/arelyf.png" alt="" width="136" height="138" class="alignleft size-full wp-image-21361" /></a><br />
<strong>Arely Estephany Flores - Customer Advisor, SAS</strong><br />
Arely Flores is a Customer Advisor at SAS Mexico, where she designs enterprise analytics strategies to help organizations—particularly in the financial and telecommunications sectors—address complex business challenges through advanced analytics. She brings experience in systems development, Cloud technologies (AWS and Azure), SAS Viya, and SAS innovation technologies such as Data Maker, Copilots, and Agentic AI. In her current role, Arely applies a business value–driven, consultative approach, combining deep technical expertise with an understanding of client needs to drive innovative designs that contribute to the development of future SAS product capabilities. She holds a degree in Applied Mathematics and Computer Science from UNAM and participated in the international SAS Customer Advisory Academy program. </p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/gabrielag.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/gabrielag.png" alt="" width="136" height="138" class="alignleft size-full wp-image-21364" /></a><br />
<strong>Gabriela García - Customer Advisor, SAS</strong><br />
Actuary with experience in financial risk, advanced analytics, and regulatory consulting for the financial sector. Currently working as a Customer Advisor at SAS Mexico, supporting sales teams through technical and regulatory expertise, collaborating with clients to identify business needs and propose analytics-driven software solutions. In parallel, she serves as a Professor at UNAM, teaching Financial Mathematics in the Actuarial Science program. Previously, she worked as an Actuarial Manager, leading actuarial valuation projects and pension plan reporting. She holds a bachelor’s degree in actuarial science and a diploma in Finance and Computational Techniques from UNAM, combining strong analytical, technical, and business-oriented skills to help organizations make data-driven decisions. </p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/silviai.png"><img loading="lazy" decoding="async" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/silviai.png" alt="" width="136" height="138" class="alignleft size-full wp-image-21367" /></a><br />
<strong>Silvia Ibañez - Customer Advisor, SAS </strong><br />
Graduated in Computer Science and specialized in data analytics and artificial intelligence, throughout her professional career, she has participated as a consultant and leader in projects across multiple industries, including banking, telecommunications, and government, helping organizations transform data into strategic insights for better decision-making. Her expertise includes data collection, preparation, analytics, and the implementation of business intelligence solutions.</p>
<p>She currently works as a Customer Advisor at SAS Mexico, where she helps organizations adopt advanced analytics, artificial intelligence, and data management solutions, enabling innovation, automation, and business value through data-driven strategies. </p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/05/22/how-agentic-ai-accelerates-sme-credit-decisions-with-sas-viya/">How Agentic AI Accelerates SME Credit Decisions with SAS Viya</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/05/22/how-agentic-ai-accelerates-sme-credit-decisions-with-sas-viya/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/05/How-Agentic-AI-Accelerates-SME-Credit-Decisions-with-SAS-Viya-150x150.gif" />
	</item>
		<item>
		<title>From fraud detection to fraud resolution: Building an AI voice agent with SAS Viya and LLMs</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/04/15/building-an-ai-voice-agent/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/04/15/building-an-ai-voice-agent/#respond</comments>
		
		<dc:creator><![CDATA[Xavier Bizoux]]></dc:creator>
		<pubDate>Wed, 15 Apr 2026 20:17:07 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AI agents]]></category>
		<category><![CDATA[customer interaction]]></category>
		<category><![CDATA[decisioning]]></category>
		<category><![CDATA[fraud detection]]></category>
		<category><![CDATA[fraud resolution]]></category>
		<category><![CDATA[LLMs]]></category>
		<category><![CDATA[SAS Viya]]></category>
		<category><![CDATA[voice AI]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=21163</guid>

					<description><![CDATA[<p>Learn how an AI voice agent built with SAS Viya and LLMs can transform fraud detection into real-time, automated fraud resolution through customer interaction and governed decisioning.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/04/15/building-an-ai-voice-agent/">From fraud detection to fraud resolution: Building an AI voice agent with SAS Viya and LLMs</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>While <a href="https://www.sas.com/en_us/software/fraud-management.html">fraud detection</a> models are increasingly accurate, fraud response often remains slow, manual, and fragmented. Leveraging SAS Viya's decisioning capabilities and Large Language Models (LLMs), the <a href="https://communities.sas.com/t5/SAS-Hacker-s-Hub/Minority-Reporters/ta-p/972992">Minority Reporters</a> (a team from the <a href="https://www.sas.com/sas/events/hackathon.html">SAS Hackathon</a>)  built an AI-powered voice agent named Agatha, to proactively contact customers when a suspicious card transaction is detected. This <a href="https://www.sas.com/en_us/software/visual-analytics.html">agentic AI</a> use case built with <a href="https://www.sas.com/en_us/software/viya.html">SAS Viya</a> demonstrates how analytics can move beyond detection to support real-time, customer-centric fraud resolution.</p>
<h2>Why fraud response is the real bottleneck</h2>
<p>Most banks already rely on analytical models and business rules to detect suspicious transactions. However, once an alert is raised, the downstream response is often inefficient. Customers may receive an SMS or app notification that goes unnoticed, or they are asked to contact a call center to resolve the issue. This introduces latency, increases operational costs, and negatively impacts customer experience—especially when legitimate payments are declined.</p>
<p>The Minority Reporters project focused explicitly on this "last mile" of fraud management: transforming fraud alerts into timely, actionable resolution steps through direct customer interaction.</p>
<h2>Solution overview: Agatha, an AI voice agent</h2>
<p>Agatha is triggered immediately when a fraud detection system flags a transaction as suspicious. Rather than sending a passive notification, Agatha initiates a phone call to the cardholder. During the call, the agent asks a small number of targeted questions designed to quickly assess whether the transaction is legitimate or fraudulent.</p>
<p>Based on the conversation, Agatha can support several outcomes:</p>
<ul>
<li>Approving the transaction if it is legitimate</li>
<li>Blocking or freezing the card when fraud is confirmed</li>
<li>Resetting digital banking credentials if compromise is suspected</li>
<li>Escalating the case to a human operator when confidence is insufficient</li>
</ul>
<p>The key principle is that customer interaction becomes part of the decision process rather than a disconnected follow-up step.</p>
<h2>Architectural building blocks</h2>
<p>The solution is structured around loosely coupled components orchestrated through SAS Viya:</p>
<ul>
<li><strong>Fraud signal ingestion:</strong> A fraud signal is received from an upstream detection engine. The project deliberately focused on integration patterns rather than the internal mechanics of fraud models.</li>
<li><strong>Speech-to-text:</strong> Customer responses during the phone call are converted into text using speech-to-text services. This transformation enables subsequent natural language processing and reasoning.</li>
<li><strong>LLM-based conversation handling:</strong> A LLM interprets customer intent and generates concise, controlled responses. The LLM assists with understanding and interaction but does not directly execute business actions.</li>
<li><strong>Decision orchestration with SAS Viya:</strong> Customer intent and contextual information are passed to SAS Viya decision logic, where business rules, analytical models, and thresholds determine the final action. This ensures explainability, governance, and compliance.</li>
<li><strong>Monitoring with SAS Visual Analytics:</strong> Operational dashboards built in <a href="https://www.sas.com/en_us/software/visual-analytics.html">SAS Visual Analytics</a> provide visibility into calls, outcomes, escalation paths, and performance metrics.</li>
</ul>
<h2>Why this architecture matters</h2>
<p>A key takeaway from the project is the importance of separating AI reasoning from execution. LLMs enhance interaction and interpretation, while SAS Viya remains responsible for decision governance, transparency, and auditability—an essential requirement in regulated industries such as financial services.</p>
<h3>Implementing similar solutions with the SAS Agentic AI Accelerator</h3>
<p>For organizations interested in building similar integrations between LLMs and SAS Viya, the <a href="https://sassoftware.github.io/sas-agentic-ai-accelerator/">SAS Agentic AI Accelerator</a> provides a structured, enterprise-ready framework.</p>
<p>The accelerator is designed to help teams embed LLM capabilities into governed workflows rather than treating them as standalone chat components. It promotes the use of agent-based patterns where AI components perform clearly scoped tasks within multi-step processes.</p>
<ul>
<li><strong>Structuring LLM usage as an agent:</strong> Agatha behaves like an AI agent—it responds to events, interacts with customers, reasons over input, and assists downstream decisions. The SAS Agentic AI Accelerator supports this pattern by providing repeatable structures for building such agents in SAS Viya.</li>
<li><strong>Governing LLMs and prompts:</strong> The accelerator enables organizations to register LLMs in SAS Viya, manage prompts as versioned assets, and reuse them consistently across workflows. This simplifies experimentation while maintaining governance and traceability.</li>
<li><strong>Integrating with SAS Intelligent Decisioning:</strong> LLM outputs can be directly consumed in <a href="https://www.sas.com/en_us/software/intelligent-decisioning.html">SAS Intelligent Decisioning</a>, where they are combined with rules and analytical models. This ensures that final actions remain deterministic, explainable, and auditable, while still benefiting from AI-assisted reasoning.</li>
<li><strong>Simplifying integration with external AI services:</strong> Speech-to-text, text-to-speech, and telephony services can be integrated using standardized orchestration patterns. This allows teams to focus on business logic rather than custom integration code, while keeping all decision control inside SAS Viya.</li>
</ul>
<h2>From hackathon concept to enterprise pattern</h2>
<p>This project illustrates what can be achieved with SAS Viya and the SAS Agentic AI Accelerator. It shows how similar ideas can be transformed into scalable, production-ready solutions by providing structure, reuse, and built-in governance.</p>
<p>Together, they demonstrate a clear path forward: LLMs' augment interaction and reasoning; SAS Viya governs decisions and actions, and agent-based architectures to bridge analytics and operations.</p>
<h3>Turning AI into action</h3>
<p>Agatha is more than a conversational AI prototype. It is an example of how financial institutions can move from fraud detection to fraud resolution by combining LLM-driven interaction with SAS Viya decisioning.</p>
<p>By leveraging frameworks such as the SAS Agentic AI Accelerator, customers in any industry can implement similar solutions in a trusted, explainable, and scalable way—turning innovative concepts into enterprise-ready AI systems.</p>
<p>To explore how this approach can be implemented in practice, learn more about <a href="https://communities.sas.com/t5/SAS-Communities-Library/Introducing-the-SAS-Agentic-AI-Accelerator-Build-AI-Agents/ta-p/977176">SAS Agentic AI Accelerator</a> and discover how to build, govern, and scale AI agents in enterprise environments.</p>
<h3>Learn more</h3>
<ul>
<li><a href="https://blogs.sas.com/content/sascom/2025/08/25/tech-takes-jared-peterson-on-llms-agentic-ai-and-low-code-no-code/">Tech takes: Jared Peterson on LLMs, agentic AI and low-code/no-code</a></li>
<li><a href="https://blogs.sas.com/content/subconsciousmusings/2025/03/21/multimodal-transformers-ai-foundation-models-part-1/">Multimodal transformers: AI foundation models, Part 1</a></li>
<li><a href="https://blogs.sas.com/content/sascom/2025/11/21/the-future-of-trust-ai-banking-fraud-detection/">The future of trust: AI is powering a new era in banking fraud detection</a></li>
<li><a href="https://blogs.sas.com/content/sascom/2025/11/13/from-target-to-trusted-fighting-fraud-with-ai-and-analytics/">From target to trusted: fighting fraud with AI and analytics</a></li>
</ul>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/04/15/building-an-ai-voice-agent/">From fraud detection to fraud resolution: Building an AI voice agent with SAS Viya and LLMs</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/04/15/building-an-ai-voice-agent/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/04/logan-voss-t2rvYSrsTAM-unsplash-150x150.jpg" />
	</item>
		<item>
		<title>Optimizing inspector assignments using SAS Optimization in federal and state meat processing facilities</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/04/01/sas-optimization-meat-processing/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/04/01/sas-optimization-meat-processing/#respond</comments>
		
		<dc:creator><![CDATA[Shahrzad Azizzadeh]]></dc:creator>
		<pubDate>Wed, 01 Apr 2026 13:45:05 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Applied AI Modeling]]></category>
		<category><![CDATA[MILP]]></category>
		<category><![CDATA[resource allocation]]></category>
		<category><![CDATA[route optimization]]></category>
		<category><![CDATA[SAS Optimization]]></category>
		<category><![CDATA[SAS Viya]]></category>
		<category><![CDATA[scheduling]]></category>
		<category><![CDATA[workforce planning]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=21079</guid>

					<description><![CDATA[<p>Shahrzad Azizzadeh and team discuss optimizing inspector assignments using SAS Optimization in federal and state meat processing facilities.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/04/01/sas-optimization-meat-processing/">Optimizing inspector assignments using SAS Optimization in federal and state meat processing facilities</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Authors: <a href="https://blogs.sas.com/content/author/shahrzadazizzadeh/">Shahrzad Azizzadeh</a>, Pelin Cay, Shelly Hunt, and Rob Wetzel</strong></p>
<p>Ensuring food safety in meat processing facilities requires systematic inspection coverage across all plants. However, managing inspector assignments presents significant operational challenges. These include determining the optimal workforce size, assigning specific facilities to qualified personnel, and scheduling daily routes to minimize travel costs while maximizing productivity. The challenge here is optimizing inspector assignments. This post walks through how we formulated this challenge as a<a href="https://go.documentation.sas.com/doc/en/pgmsascdc/default/casmopt/casmopt_intro_sect005.htm"> Mixed Integer Linear Programming (MILP)</a> problem. Then we solved it by using the <a href="https://support.sas.com/en/software/optimization.html">SAS Optimization</a> CAS Action Set in <a href="https://www.sas.com/en_us/software/viya.html">SAS Viya</a>, with preprocessing and visualization handled by the <a href="https://go.documentation.sas.com/doc/en/pgmsascdc/default/lepg/n14fu9c6l8rxbxn1nvdhlaqtsyho.htm">SAS DATA step</a> and <a href="https://go.documentation.sas.com/doc/en/vdmmlcdc/8.1/grstatproc/p1t32i8511t1gfn17sw07yxtazad.htm">PROC SGPLOT</a>. You will learn how this approach can determine the minimum workforce size, optimize the inspector-type composition to reduce salary costs, and generate executable daily schedules with travel-feasible routes.</p>
<h2>Operational challenge</h2>
<p>Scheduling is often inefficient in this environment due to the sheer number of possible combinations. Schedulers must simultaneously account for disjointed geographic locations, varying inspector radius constraints, disparate certification levels (state vs. federal), and strict time windows. As the network grows, ensuring 100% coverage and accurately forecasting costs becomes computationally intractable without advanced optimization techniques.</p>
<h2>Background</h2>
<p>In this case study, we analyzed a state network comprising over 100 federal and state-licensed meat processing facilities. A major component of these facilities is federal establishments. To meet regulatory food safety requirements, these facilities require mandatory daily visits by licensed inspectors.  The current workforce consists of federal and state inspectors.</p>
<ul>
<li>Federal inspectors: Certified to inspect all federal facilities and may inspect state facilities under specific agreements.</li>
<li>State inspectors: Authorized for state-licensed plants. The Talmadge-Aiken (TA) cooperative agreement also authorizes trained state inspectors to inspect federal facilities.</li>
</ul>
<h3>The Optimization Trade-Off</h3>
<p>This certification hierarchy introduces a key economic lever. Federal inspectors typically command higher annual salaries than their state counterparts. Therefore, minimizing total operational costs often aligns with maximizing the utilization of state inspectors (via the TA program) wherever they are geographically and professionally eligible. However, strict adherence to certification constraints is required to ensure regulatory compliance.</p>
<p>Operationally, we estimate that each inspection takes an average of 1 hour. The inspection window runs from 8:00 AM to 8:00 PM. Unlike static assignment models, this project incorporates travel time as a decision variable. We treat the problem as a routing-and-scheduling optimization to maximize inspector productivity.</p>
<h2>Use Case: Defining the Optimization Questions</h2>
<p>This project utilizes SAS Optimization to answer three critical resource allocation questions:</p>
<p><strong>Question 1: What is the minimum resource requirement? </strong></p>
<p>Before assigning specific names to locations, we must determine the theoretical floor for the workforce size. How many inspectors are strictly necessary to cover the plant network's geographic spread during the operational window?</p>
<p><strong>Question 2: What is the minimum-cost inspection workforce composition?</strong></p>
<p>Once the headcount is established, we must optimize the mix of Federal vs. State inspectors. This involves identifying the ideal workforce structure that achieves 100% coverage while adhering to TA eligibility rules, aiming to minimize total salary overhead and travel expenses.</p>
<p><strong>Question 3: What is the optimal daily schedule?</strong></p>
<p>Finally, we must generate executable daily rosters. This requires assigning specific inspectors to specific facilities in precise time slots, ensuring that travel between sequential locations is feasible and minimized.</p>
<h3>Input Data</h3>
<p>The optimization system relies on several key data sources that define the problem structure. You can see the input data model in Table 1.</p>
<figure id="attachment_21103" aria-describedby="caption-attachment-21103" style="width: 702px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1.png"><img loading="lazy" decoding="async" class="size-large wp-image-21103" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1-1024x882.png" alt="" width="702" height="605" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1-1024x882.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1-300x259.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1-768x662.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1-1536x1324.png 1536w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1-2048x1765.png 2048w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-1-1-110x96.png 110w" sizes="(max-width: 702px) 100vw, 702px" /></a><figcaption id="caption-attachment-21103" class="wp-caption-text">Table 1. Input Data Model</figcaption></figure>
<h2>Data preprocessing</h2>
<p>Before optimization can take place, several preprocessing steps are performed to structure the raw operational data into a format suitable for mathematical modeling. There are two key components of preprocessing. The first is creating <strong>time slots</strong> that define the available inspection periods for each day. The second is the generation of <strong>feasible transitions</strong>, which determine how inspectors can feasibly move between facilities over consecutive slots.</p>
<p>Scalability Note: The logic used here relies on standard geographic coordinates and time-window parameters, making this framework agnostic to specific state geographies. It is designed to be reusable and easily scalable to other states or regions with minimal configuration changes.</p>
<h3>How time slots are created</h3>
<p>Time slots define the basic scheduling framework for assigning inspectors to facilities. We generate these slots based on several things. One is the daily operating window. The other is the duration of each inspection, incorporating buffer times (time for inspector check-in and preparation) to ensure travel feasibility between consecutive assignments.</p>
<p>The daily inspection window spans from 8:00 AM to 8:00 PM, totaling 720 operational minutes. Based on the customer's operational data, each inspection is assumed to take 1 hour on average, followed by a 45-minute buffer to account for check-in, preparation, and transition time. Importantly, both the inspection duration and buffer time are configurable input parameters in the model. This enables agencies to adjust them based on their own operational experience. Using these parameters, the model divides the day into seven discrete time slots, each starting 105 minutes apart (60-minute inspection + 45-minute buffer). The buffer applies only between consecutive slots — not before the first slot or after the last. The final slot ends at 7:30 PM, leaving 30 minutes of slack before the window closes.</p>
<p>Not every inspector fills all seven slots. The model typically assigns three to five inspections per inspector per day, consistent with the observed baseline. The unused slots provide flexibility for travel between geographically dispersed facilities. This is handled by the feasible transitions logic described below.</p>
<h2>How feasible transitions are created</h2>
<p>To formulate the mathematical optimization model, we first define a set of feasible transitions. This would be the allowed consecutive assignments in which an inspector moves directly from one facility to the next in adjacent time slots.</p>
<p>In order to do this, we form a plants-slots set, then flag any (plant_from, slot_from) and (plant_to, slot_to) pairs where travel time (computed using travel speed of 35 MPH) exceeds available time (“start of slot_to” minus “end of slot_from+ buffer time”), as infeasible. Next, we start with a set containing all possible (inspector, plant, slot) combinations where adjacent slot pairs are joined to create potential back-to-back transitions.</p>
<p>Then we ensure the same inspector is eligible for both plants in both slots. Ineligible combinations are removed. Then any transition that was previously flagged as infeasible due to travel time is also excluded. Each row in the resulting table represents a feasible back-to-back arc (inspector, (from_plant, slot_from), (to_plant, slot_to)) to be assessed for daily schedules.</p>
<h2>Mathematical Model</h2>
<p>The optimization problem is formulated as a Mixed Integer Linear Programming (MILP) model. The main components of the model include:</p>
<h3>Decision Variables</h3>
<ul>
<li>Assignment Variables: Binary variables indicating whether a certain inspector is assigned to a certain plant during a certain time slot. These form the core assignment decisions and are only defined over feasible (inspector, plant, slot) combinations.</li>
<li>Inspector Utilization Variables: Binary variables indicating whether a certain inspector is selected for use in the overall solution.</li>
<li>Travel Arc Variables: Binary variables capturing consecutive assignments — that is, whether a given inspector travels directly from one facility to the next in adjacent time slots (for example, Plant A in slot 1 followed by Plant B in slot 2).</li>
</ul>
<h3>Objective Function</h3>
<p>The objective is to minimize the total annual cost, comprising two components:</p>
<ul>
<li>Annual Inspector Salaries: Sum of annual salaries for all selected inspectors.</li>
</ul>
<h3>Annualized Travel Costs</h3>
<p>The daily travel cost associated with each consecutive facility-to-facility movement is multiplied by a per-mile cost rate and annualized over 365 operating days. Each inspector's first trip of the day — from their home location to their first assigned facility — is accounted for separately by using the inspector-to-plant distance data (the DISTANCES table). The model assumes a consistent daily schedule; in practice, variations such as weekend coverage or PTO can be incorporated by running the model under multiple scenarios or adjusting the annualization factor.</p>
<h3>Constraints</h3>
<ul>
<li>Coverage Requirements: Ensuring that each plant receives exactly one inspection visit per day.</li>
<li>Inspector Capacity: Each inspector can be assigned to at most one plant during any given time slot.</li>
<li>Inspector Eligibility: Only qualified inspectors can be assigned to a particular plant.</li>
<li>Travel Feasibility: Consecutive assignments for an inspector to two plants that are too far apart are not accepted.</li>
</ul>
<h2>Results</h2>
<p>The model was implemented and solved in SAS Viya 4.0 by using the <strong>SAS Optimization CAS Action Set</strong>, accompanied by extensive preprocessing and postprocessing steps implemented primarily in SAS DATA steps. For Visualizations, SAS PROC SGPLOT was used.</p>
<p>Optimal results are compared with the baseline solution (the customer-provided status quo) in Table 2. The model achieved significant efficiency gains. In the baselineleaving substantial idle capacity. The optimized solution consolidates assignments so that more inspectors handle four or five facilities per day along travel-efficient routes, reducing the total number of inspectors needed while increasing individual utilization (see Figure 1).</p>
<figure id="attachment_21106" aria-describedby="caption-attachment-21106" style="width: 702px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-2-1.png"><img loading="lazy" decoding="async" class="size-large wp-image-21106" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-2-1-1024x188.png" alt="" width="702" height="129" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-2-1-1024x188.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-2-1-300x55.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-2-1-768x141.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-2-1-1536x282.png 1536w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-table-2-1-2048x375.png 2048w" sizes="(max-width: 702px) 100vw, 702px" /></a><figcaption id="caption-attachment-21106" class="wp-caption-text">Table 2. Optimization Impact</figcaption></figure>
<p>The workload distribution is presented in Figure 1. Cost breakdown and workforce composition are shown in Figures 2 and 3, respectively. You can see in Figure 3 that the optimal solution shifts the workforce mix toward more state inspectors operating under the Talmadge-Aiken (TA) Act. This leverages their lower cost while maintaining full plant coverage.</p>
<figure id="attachment_21088" aria-describedby="caption-attachment-21088" style="width: 576px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-1.png"><img loading="lazy" decoding="async" class="wp-image-21088 size-full" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-1.png" alt="Optimizing inspector assignments - Figure 1. Comparing Workload Distribution" width="576" height="370" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-1.png 576w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-1-300x193.png 300w" sizes="(max-width: 576px) 100vw, 576px" /></a><figcaption id="caption-attachment-21088" class="wp-caption-text">Figure 1. Comparing Workload Distribution</figcaption></figure>
<figure id="attachment_21091" aria-describedby="caption-attachment-21091" style="width: 576px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-2.png"><img loading="lazy" decoding="async" class="wp-image-21091 size-full" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-2.png" alt="Optimizing inspector assignments - Figure 2. Cost Breakdown" width="576" height="370" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-2.png 576w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-2-300x193.png 300w" sizes="(max-width: 576px) 100vw, 576px" /></a><figcaption id="caption-attachment-21091" class="wp-caption-text">Figure 2. Cost Breakdown</figcaption></figure>
<figure id="attachment_21094" aria-describedby="caption-attachment-21094" style="width: 576px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-3.png"><img loading="lazy" decoding="async" class="wp-image-21094 size-full" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-3.png" alt="Optimizing inspector assignments - Figure 3. Workforce Composition" width="576" height="370" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-3.png 576w, https://blogs.sas.com/content/subconsciousmusings/files/2026/03/march-azizzadeh-figure-3-300x193.png 300w" sizes="(max-width: 576px) 100vw, 576px" /></a><figcaption id="caption-attachment-21094" class="wp-caption-text">Figure 3. Workforce Composition</figcaption></figure>
<h2>Conclusion</h2>
<p>This project demonstrates how advanced analytics can transform a complex scheduling challenge into a clear, data-driven strategy. By implementing a mathematical model in SAS Optimization that accounts for inspector eligibility, travel constraints, and mandatory daily coverage, we successfully generated inspection schedules that are operationally feasible and highly cost-efficient.</p>
<h3>Key Findings</h3>
<p>Under our most aggressive optimization scenarios, the model indicates that in a sample state, the entire facility network -- 117 federal and state meat processing plants -- could be covered by a streamlined state workforce alone. By maximizing cross-utilization under the Talmadge-Aiken program, the model’s most aggressive assignment case shows a pathway to complete coverage with 30% fewer state personnel, while theoretically eliminating the need for deployed federal inspectors (a 100% reduction). More realistically, even after accounting for PTO and maintaining a reasonable workforce buffer, coverage could still be achieved by using only state resources. Overall, this result shows the benefits of an automated scheduling system based on employee radius, plant location, and optimizing route and driving distance. Today, assignments are often scheduled manually. Furthermore, if the Talmadge-Aiken program were expanded, the federal government could project costs and reimburse states in advance, rather than paying in arrears, creating funding issues.</p>
<h3>Impact &amp; Scalability</h3>
<p>Beyond immediate cost savings, we have established a repeatable, scalable framework. Because the underlying code utilizes standardized input parameters (geographic coordinates, time windows, and eligibility matrices), this model is agnostic to specific state geographies and can be rapidly deployed to other inspection agencies. It serves not merely as a one-time fix but as a robust planning tool, empowering decision-makers to continuously explore "what-if" scenarios regarding budget adjustments, new plant openings, or policy changes with mathematical precision.</p>
<hr />
<p><strong>Pelin Cay</strong><br />
<strong>Pelin Cay</strong> has been with SAS since 2016 and is a Manager in the Applied AI &amp; Modeling division. She leads a team of data scientists specializing in the design of advanced mathematical optimization models and solution methodologies for complex decision-making problems across diverse industries. Pelin earned her B.S. and M.S. in Industrial Engineering from Bilkent University and her Ph.D. in Industrial Engineering from Lehigh University.</p>
<p><strong>Shelly Hunt</strong><br />
<strong>Shelly Hunt</strong> is a Systems Engineer at SAS, supporting USDA and FDA programs with advanced agriculture analytics and environmental modeling. She specializes in translating complex agricultural domain expertise into data science parameters that drive optimization models and large‑scale analytic workflows. Shelly holds a Master of Science in Biological and Agricultural Engineering and a Graduate Certificate in Agricultural Data Science, both from NC State University.</p>
<p><strong>Rob Wetzel</strong><br />
<strong>Rob Wetzel</strong> is a Sr. Account Executive at SAS.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/04/01/sas-optimization-meat-processing/">Optimizing inspector assignments using SAS Optimization in federal and state meat processing facilities</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/04/01/sas-optimization-meat-processing/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/blog-150x150.png" />
	</item>
		<item>
		<title>Using network analytics to analyze social interactions among needle sharers</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/03/03/using-network-analytics-to-analyze-social-interactions-among-needle-sharers/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/03/03/using-network-analytics-to-analyze-social-interactions-among-needle-sharers/#respond</comments>
		
		<dc:creator><![CDATA[Hossein Tohidi]]></dc:creator>
		<pubDate>Tue, 03 Mar 2026 20:31:53 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[community detection]]></category>
		<category><![CDATA[Network Analytics]]></category>
		<category><![CDATA[public health]]></category>
		<category><![CDATA[R&D Analytics]]></category>
		<category><![CDATA[SAS Viya]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=20963</guid>

					<description><![CDATA[<p>Demonstrates how network analytics can transform a simple link list into actionable insights for public health decision-making.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/03/03/using-network-analytics-to-analyze-social-interactions-among-needle-sharers/">Using network analytics to analyze social interactions among needle sharers</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Needle sharing remains a critical public health challenge because it enables the rapid spread of infectious diseases through close, often invisible social connections. Understanding where these behaviors concentrate and which individuals play a central role is essential for designing effective, targeted interventions. Limited time and resources make this especially true.</p>
<p>This post uses the <a href="https://go.documentation.sas.com/doc/en/pgmsascdc/v_070/casactml/casactml_network_details01.htm">SAS Viya NETWORK action set</a> to demonstrate how a sequence of network analytics, including summary statistics, centrality measures, and community detection, can make these hidden patterns visible by revealing who is most connected, where risk might originate, and how it can flow through a community. Together, these insights support more focused and effective public health interventions.</p>
<p>The data set used in this analysis was provided with permission from Margaret R. Weeks at the <a href="https://icrweb.org/">Institute of Community Research</a>. This data set originates from the study described in the paper “<a href="https://www.researchgate.net/publication/227085871_Social_Networks_of_Drug_Users_in_High-Risk_Sites_Finding_the_Connections">Social Networks of Drug Users in High-Risk Sites: Finding the Connections</a>”. The data consist of a simple directed link list, where each link represents the lending of drug needles from one individual to another, reflecting observed needle-sharing interactions within the network.</p>
<p>The SAS code used throughout this analysis is <a href="https://github.com/sassoftware/sas-network-analysis/blob/main/applications/hartford/Hartford Drug User Network Analysis.sas">accessible here</a> for reference and reuse.</p>
<h2>From Raw Data to Network Insight</h2>
<p>As shown in this code snippet, we begin by running the <a href="https://go.documentation.sas.com/doc/en/pgmsascdc/v_071/casmlnetwork/casmlnetwork_network_details175.htm">%PlotGraph macro</a> to visualize the network and gain an immediate sense of its connectivity, revealing clusters of closely connected individuals and several highly connected participants that anchor interactions across the network.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   %PlotGraph<span style="color: #66cc66;">&#40;</span>
      links=mycas.DrugNetwork,
      direction=<span style="color: #a020f0;">&quot;directed&quot;</span>,
      nodescolor=<span style="color: #a020f0;">&quot;tab:blue&quot;</span>,
      nodesshape=<span style="color: #a020f0;">&quot;o&quot;</span>,
      nodessize=<span style="color: #2e8b57; font-weight: bold;">50</span>,
      displaylabels=no,
      <span style="color: #0000ff;">title</span>=<span style="color: #a020f0;">&quot;Hartford Drug User Needle-Sharing Network&quot;</span><span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<div>Figure 1 shows the resulting visualization.</div>
<figure id="attachment_20978" aria-describedby="caption-attachment-20978" style="width: 702px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-2.png"><img loading="lazy" decoding="async" class="wp-image-20978 size-large" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-2-1024x718.png" alt="network analytics -Figure 1: Initial View of the Hartford Needle-Sharing Network" width="702" height="492" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-2-1024x718.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-2-300x210.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-2-768x539.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-2.png 1430w" sizes="(max-width: 702px) 100vw, 702px" /></a><figcaption id="caption-attachment-20978" class="wp-caption-text">Figure 1: Initial View of the Hartford Needle-Sharing Network</figcaption></figure>
<p>We next load the input data into an optimized in-memory graph object by using the <a href="https://go.documentation.sas.com/doc/en/pgmsascdc/v_071/casactml/casactml_network_details09.htm">loadGraph action</a> from the NETWORK action set. This step enables the subsequent action calls to proceed without repeatedly rebuilding the graph from the raw data. Although the network in this post is relatively small, this approach reflects best practices for using SAS Viya Network analytics in real-world settings, where graphs are larger, analyses are iterative, and performance and scalability matter.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   <span style="color: #000080; font-weight: bold;">proc cas</span>;
      loadactionset <span style="color: #a020f0;">&quot;network&quot;</span>;
      action network.loadGraph result=r status=s /
         links        = <span style="color: #a020f0;">&quot;DrugNetwork&quot;</span>
         direction    = <span style="color: #a020f0;">&quot;directed&quot;</span>
         outGraphList = <span style="color: #a020f0;">&quot;OutGraphList&quot;</span>;
      <span style="color: #000080; font-weight: bold;">run</span>;
      action <span style="color: #0000ff;">table</span>.<span style="color: #0000ff;">fetch</span> / <span style="color: #0000ff;">table</span> = <span style="color: #a020f0;">&quot;OutGraphList&quot;</span>; <span style="color: #000080; font-weight: bold;">run</span>;
   <span style="color: #000080; font-weight: bold;">quit</span>;</pre></td></tr></table></div>

<p>Table 1 shows an in‑memory directed graph (graph ID 0) with 193 nodes and 273 links.</p>
<figure id="attachment_20990" aria-describedby="caption-attachment-20990" style="width: 780px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-1.png"><img loading="lazy" decoding="async" class="size-full wp-image-20990" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-1.png" alt="" width="780" height="76" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-1.png 780w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-1-300x29.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-1-768x75.png 768w" sizes="(max-width: 780px) 100vw, 780px" /></a><figcaption id="caption-attachment-20990" class="wp-caption-text">Table 1: OutGraphList table</figcaption></figure>
<h2>Exploring the Network Structure</h2>
<p>To move from visual intuition to more concrete insight, we next run the summary action from the NETWORK action set to quantify key structural properties of the graph. Here, we show the corresponding code.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   <span style="color: #000080; font-weight: bold;">proc cas</span>;
      action network.summary result=r status=s /
         graph    = <span style="color: #2e8b57; font-weight: bold;">0</span>
         outNodes = <span style="color: #a020f0;">&quot;NodesOutSummary&quot;</span>
         out      = <span style="color: #a020f0;">&quot;Summary&quot;</span>
         connectedComponents = true;
      <span style="color: #000080; font-weight: bold;">run</span>;
      action <span style="color: #0000ff;">table</span>.<span style="color: #0000ff;">fetch</span> / <span style="color: #0000ff;">table</span> = <span style="color: #a020f0;">&quot;NodesOutSummary&quot;</span>; <span style="color: #000080; font-weight: bold;">run</span>;
      action <span style="color: #0000ff;">table</span>.<span style="color: #0000ff;">fetch</span> / <span style="color: #0000ff;">table</span> = <span style="color: #a020f0;">&quot;Summary&quot;</span>; <span style="color: #000080; font-weight: bold;">run</span>;
   <span style="color: #000080; font-weight: bold;">quit</span>;</pre></td></tr></table></div>

<p>As shown in Table 2, the network consists of 193 nodes connected by 273 directed links. This results in a low overall density, which is typical of social networks formed through selective interactions. The results also reveal 80 leaf nodes and no isolated pairs or isolated star structures. This reinforces that all nodes participate in the broader network of interactions.</p>
<p>The results also indicate that the network contains 193 connected components, confirming that each node forms its own strongly connected component. This means the network contains no directed cycles and can be treated as a directed acyclic graph (DAG), a property that helps clarify how interactions flow through the network.</p>
<figure id="attachment_20993" aria-describedby="caption-attachment-20993" style="width: 702px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-2.png"><img loading="lazy" decoding="async" class="size-large wp-image-20993" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-2-1024x73.png" alt="" width="702" height="50" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-2-1024x73.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-2-300x21.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-2-768x55.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-2-1536x109.png 1536w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-2.png 1786w" sizes="(max-width: 702px) 100vw, 702px" /></a><figcaption id="caption-attachment-20993" class="wp-caption-text">Table 2: Graph summary and connectedness statistics</figcaption></figure>
<p>Table 3 presents selected rows from the NodesOutSummary table, which contains node-level summary metrics for the graph. Building on these results, we further explore the network’s structure by focusing on leaf nodes, defined as nodes with an outdegree of 0. Although these nodes might not appear influential based on centrality measures, they mark important boundaries where interactions terminate within the network.</p>
<figure id="attachment_20996" aria-describedby="caption-attachment-20996" style="width: 780px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-3.png"><img loading="lazy" decoding="async" class="size-full wp-image-20996" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-3.png" alt="" width="780" height="527" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-3.png 780w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-3-300x203.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-3-768x519.png 768w" sizes="(max-width: 780px) 100vw, 780px" /></a><figcaption id="caption-attachment-20996" class="wp-caption-text">Table 3: Node-Level Graph Summary and Connectedness Statistics</figcaption></figure>
<h2>Highlighting Leaf Nodes in the Network</h2>
<p>In this step, we use the NodesOutSummary table to highlight leaf nodes within the network visualization. This brings attention to individuals who sit at the outer boundaries of interaction. Here is the code used to generate this visualization:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   <span style="color: #000080; font-weight: bold;">data</span> mycas.NodesOutSummary;
      <span style="color: #0000ff;">set</span> mycas.NodesOutSummary;
      <span style="color: #0000ff;">length</span> role $20;
      <span style="color: #0000ff;">if</span> leaf_node = <span style="color: #2e8b57; font-weight: bold;">1</span> <span style="color: #0000ff;">then</span> role = <span style="color: #a020f0;">&quot;Leaf Node&quot;</span>;
      <span style="color: #0000ff;">else</span> role = <span style="color: #a020f0;">&quot;Non-Leaf Node&quot;</span>;
   <span style="color: #000080; font-weight: bold;">run</span>;
&nbsp;
   %PlotGraph<span style="color: #66cc66;">&#40;</span>
      links=mycas.DrugNetwork,
      nodes=mycas.NodesOutSummary,
      direction=<span style="color: #a020f0;">&quot;directed&quot;</span>,
      nodescolorbycategory=<span style="color: #a020f0;">&quot;role&quot;</span>,
      nodescolorlegend=yes,
      nodesshape=<span style="color: #a020f0;">&quot;o&quot;</span>,
      nodessize=<span style="color: #2e8b57; font-weight: bold;">50</span>,
      displaylabels=no,
      <span style="color: #0000ff;">title</span>=<span style="color: #a020f0;">&quot;Leaf and Non-Leaf Nodes in the Hartford Drug User Needle-Sharing Network&quot;</span><span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<p>The resulting network with highlighted leaf nodes is shown in Figure 2. In the context of needle sharing, these leaf nodes represent individuals who receive needles but do not pass them on to others. This makes them endpoints in observed sharing chains. Such nodes might correspond to new participants, individuals with limited social connections, or users whose risky behaviors do not propagate further through the network.</p>
<p>Recognizing leaf nodes helps surface populations that might be particularly vulnerable to exposure. It also highlights opportunities for targeted intervention strategies focused on prevention, monitoring, or supporting disengagement from risky behaviors.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-6.png"><img loading="lazy" decoding="async" class="aligncenter wp-image-20981 size-large" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-6-1024x708.png" alt="network analytics - Figure 2: Leaf nodes highlighted in the Hartford needle-sharing network" width="702" height="485" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-6-1024x708.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-6-300x207.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-6-768x531.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-6.png 1430w" sizes="(max-width: 702px) 100vw, 702px" /></a></p>
<h2>Identifying Influential Nodes</h2>
<p>After gaining an initial understanding of the network structure, the next step is to understand which individuals play a more prominent role in the pattern of interactions. In network analysis, one of the most straightforward and interpretable measures for this purpose is degree centrality. This reflects the number of direct connections an individual has to others in the network.</p>
<p>As shown in the code, we use the <a href="https://go.documentation.sas.com/doc/en/pgmsascdc/v_071/casactml/casactml_network_details03.htm">centrality action</a> from the SAS Viya NETWORK action set to compute unweighted degree centrality for each individual. In a needle-sharing network, nodes with high degree centrality indicate individuals who share needles with many others. This makes them key points for disease transmission and priority targets for intervention or monitoring.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   <span style="color: #000080; font-weight: bold;">proc cas</span>;
      action network.centrality result=r status=s /
         graph    = <span style="color: #2e8b57; font-weight: bold;">0</span>
         degree   = <span style="color: #a020f0;">&quot;unweight&quot;</span> 
         outNodes = <span style="color: #a020f0;">&quot;NodesOutCentrality&quot;</span>;
      <span style="color: #000080; font-weight: bold;">run</span>;
&nbsp;
      action <span style="color: #0000ff;">table</span>.<span style="color: #0000ff;">fetch</span>
         <span style="color: #0000ff;">table</span>  = <span style="color: #a020f0;">&quot;NodesOutCentrality&quot;</span>
         sortBy = <span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#123;</span>name = <span style="color: #a020f0;">&quot;centr_degree&quot;</span>     <span style="color: #0000ff;">order</span>=<span style="color: #a020f0;">&quot;descending&quot;</span><span style="color: #66cc66;">&#125;</span>
                       <span style="color: #66cc66;">&#123;</span>name = <span style="color: #a020f0;">&quot;centr_degree_out&quot;</span> <span style="color: #0000ff;">order</span>=<span style="color: #a020f0;">&quot;descending&quot;</span><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#125;</span>;
      <span style="color: #000080; font-weight: bold;">run</span>;
   <span style="color: #000080; font-weight: bold;">quit</span>;</pre></td></tr></table></div>

<div>Table 4 summarizes the top 20 individuals ranked by degree centrality.</div>
<figure id="attachment_20999" aria-describedby="caption-attachment-20999" style="width: 472px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-4.png"><img loading="lazy" decoding="async" class="size-full wp-image-20999" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-4.png" alt="" width="472" height="592" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-4.png 472w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-4-239x300.png 239w" sizes="(max-width: 472px) 100vw, 472px" /></a><figcaption id="caption-attachment-20999" class="wp-caption-text">Table 4: Top 20 individuals ranked by degree centrality score</figcaption></figure>
<p>In the previous step, we visualized the network by highlighting leaf nodes. That is, individuals with zero out-degrees, acting as endpoints in observed needle-sharing chains. This view helps identify peripheral and potentially vulnerable participants. However, it does not fully capture how risk might propagate through the network.</p>
<p>With the centrality results now available, we can extend this analysis by distinguishing among three node roles based on their in-degree and out-degree patterns:</p>
<ul>
<li>Source nodes, which lend needles but do not receive them.</li>
<li>Bridge nodes, which both receive and lend needles and therefore act as transmitters within the network.</li>
<li>Leaf nodes, which receive needles but do not lend them onward.</li>
</ul>
<p>We replot the network and use this richer classification to better reflect the functional roles individuals play in needle-sharing interactions. Here is the code snippet for this step:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   <span style="color: #000080; font-weight: bold;">data</span> mycas.NodesOutCentrality;
      <span style="color: #0000ff;">set</span> mycas.NodesOutCentrality;
      <span style="color: #0000ff;">length</span> role $20;
      centr_degree_scaled = centr_degree <span style="color: #006400; font-style: italic;">* 20;</span>  <span style="color: #006400; font-style: italic;">/* Scale for better visualization */</span>
      <span style="color: #0000ff;">if</span> centr_degree_out = <span style="color: #2e8b57; font-weight: bold;">0</span> <span style="color: #0000ff;">and</span> centr_degree_in = <span style="color: #2e8b57; font-weight: bold;">0</span> <span style="color: #0000ff;">then</span> role = <span style="color: #a020f0;">&quot;Isolated Node&quot;</span>;
      <span style="color: #0000ff;">else</span> <span style="color: #0000ff;">if</span> centr_degree_out &gt; <span style="color: #2e8b57; font-weight: bold;">0</span> <span style="color: #0000ff;">and</span> centr_degree_in = <span style="color: #2e8b57; font-weight: bold;">0</span> <span style="color: #0000ff;">then</span> role = <span style="color: #a020f0;">&quot;Source Node&quot;</span>;
      <span style="color: #0000ff;">else</span> <span style="color: #0000ff;">if</span> centr_degree_out = <span style="color: #2e8b57; font-weight: bold;">0</span> <span style="color: #0000ff;">and</span> centr_degree_in &gt; <span style="color: #2e8b57; font-weight: bold;">0</span> <span style="color: #0000ff;">then</span> role = <span style="color: #a020f0;">&quot;Leaf Node&quot;</span>;
      <span style="color: #0000ff;">else</span> role = <span style="color: #a020f0;">&quot;Bridge Node&quot;</span>;
   <span style="color: #000080; font-weight: bold;">run</span>;
&nbsp;
   %PlotGraph<span style="color: #66cc66;">&#40;</span>
      links=mycas.DrugNetwork,
      nodes=mycas.NodesOutCentrality,
      direction=<span style="color: #a020f0;">&quot;directed&quot;</span>,
      nodescolorbycategory=<span style="color: #a020f0;">&quot;role&quot;</span>,
      nodescolorlegend=yes,
      nodesshape=<span style="color: #a020f0;">&quot;o&quot;</span>,
      nodessize=<span style="color: #a020f0;">&quot;centr_degree_scaled&quot;</span>,
      displaylabels=no,
      <span style="color: #0000ff;">title</span>=<span style="color: #a020f0;">&quot;Node Roles and Influence in the Hartford Drug User Needle-Sharing Network&quot;</span><span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<p>In Figure 3, node color indicates the node role (source, bridge, or leaf). Node size is proportional to overall degree (in-degree plus out-degree), highlighting individuals with higher levels of interaction.</p>
<p>This combined view provides a more nuanced understanding of the network by simultaneously revealing who initiates risk, who propagates it, and where it terminates. Such insights are critical for designing intervention strategies that differentiate between prevention, containment, and harm-reduction efforts across different segments of the network.</p>
<figure id="attachment_20984" aria-describedby="caption-attachment-20984" style="width: 702px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-9.png"><img loading="lazy" decoding="async" class="wp-image-20984 size-large" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-9-1024x715.png" alt="network analysis - Figure 3: Highlighting individual roles and influence in the Hartford needle-sharing network" width="702" height="490" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-9-1024x715.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-9-300x209.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-9-768x536.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-9.png 1430w" sizes="(max-width: 702px) 100vw, 702px" /></a><figcaption id="caption-attachment-20984" class="wp-caption-text">Figure 3: Highlighting individual roles and influence in the Hartford needle-sharing network</figcaption></figure>
<h2>Detecting Communities in the Network</h2>
<p>Beyond identifying influential individual nodes, it is often important to understand how the network organizes itself into groups of closely connected nodes. These nodes are commonly referred to as communities. Communities can reveal underlying structure in the network. An example would be subgroups where interactions are more frequent within the group than with the rest of the network.</p>
<p>In the following cell, we use the <a href="https://go.documentation.sas.com/doc/en/pgmsascdc/v_071/casactml/casactml_network_details05.htm">community action</a> from the NETWORK action set to detect communities within the graph. This action partitions the network into cohesive subgraphs based on connectivity patterns. This enables us to identify clusters of nodes that might represent tightly connected groups.</p>
<p>Community detection is especially valuable in this setting because it highlights localized patterns of interaction.  It can also inform targeted analysis or intervention strategies that focus on groups rather than on isolated individuals.</p>
<p>As shown in this code, we apply the Louvain method for community detection. We assess how different resolution values affect the granularity of the resulting communities. Lower-resolution values tend to identify fewer, larger communities, whereas higher-resolution values yield more, smaller, more fragmented groups.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   <span style="color: #000080; font-weight: bold;">proc cas</span>;
      action network.community result=r status=s /
         graph = <span style="color: #2e8b57; font-weight: bold;">0</span>
         resolutionList  = <span style="color: #2e8b57; font-weight: bold;">0.3</span>
         outNodes = <span style="color: #a020f0;">&quot;NodesOutCommunity&quot;</span>;
      <span style="color: #000080; font-weight: bold;">run</span>;
      action <span style="color: #0000ff;">table</span>.<span style="color: #0000ff;">fetch</span> / <span style="color: #0000ff;">table</span> = <span style="color: #a020f0;">&quot;NodesOutCommunity&quot;</span>; <span style="color: #000080; font-weight: bold;">run</span>;
   <span style="color: #000080; font-weight: bold;">quit</span>;</pre></td></tr></table></div>

<p>At the selected resolution of 0.3, the network is partitioned into five distinct communities. The resulting community assignments are added to the outNodes table, as shown in Table 5.</p>
<figure id="attachment_21002" aria-describedby="caption-attachment-21002" style="width: 360px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-5.png"><img loading="lazy" decoding="async" class="size-full wp-image-21002" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-5.png" alt="" width="360" height="582" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-5.png 360w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-table-5-186x300.png 186w" sizes="(max-width: 360px) 100vw, 360px" /></a><figcaption id="caption-attachment-21002" class="wp-caption-text">Table 5: Community assignments</figcaption></figure>
<h2>Final Visualization: Communities, Roles, and Node Influence</h2>
<p>With insights from both the centrality and community analyses in place, we bring these perspectives together to support a unified, more informative visualization. By using the <a href="https://go.documentation.sas.com/doc/en/pgmsascdc/v_070/caspg/n0uq423b2e33yan1tt29a23qzjkd.htm">FedSQL action set</a>, node-level results from the degree centrality analysis, along with community assignments, are combined to produce a single table that captures node influence, community membership, and functional role. This integrated view enables multiple dimensions of the network to be examined simultaneously.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   <span style="color: #000080; font-weight: bold;">proc cas</span>;
      action fedsql.execDirect result=r status=s /
      query = <span style="color: #a020f0;">'
         create table mycas.NodesOutEnriched as
         select
            a.*,
            b.community_0,
            case
               when a.role = '</span><span style="color: #a020f0;">'Leaf Node'</span><span style="color: #a020f0;">'   then '</span><span style="color: #a020f0;">'square'</span><span style="color: #a020f0;">'
               when a.role = '</span><span style="color: #a020f0;">'Source Node'</span><span style="color: #a020f0;">' then '</span><span style="color: #a020f0;">'triangle'</span><span style="color: #a020f0;">'
               when a.role = '</span><span style="color: #a020f0;">'Bridge Node'</span><span style="color: #a020f0;">' then '</span><span style="color: #a020f0;">'circle'</span><span style="color: #a020f0;">'
               else '</span><span style="color: #a020f0;">'triangle'</span><span style="color: #a020f0;">' /* isolated nodes */
            end as &quot;shape&quot;
         from mycas.NodesOutCentrality as a
         left join mycas.NodesOutCommunity as b
         on a.node = b.node
      '</span>;
   <span style="color: #000080; font-weight: bold;">quit</span>;</pre></td></tr></table></div>

<p>The enriched data then generates the final network visualization. The corresponding code snippet is provided here:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="sas" style="font-family:monospace;">   %PlotGraph<span style="color: #66cc66;">&#40;</span>
      links=mycas.DrugNetwork,
      nodes=mycas.NodesOutEnriched,
      direction=<span style="color: #a020f0;">&quot;directed&quot;</span>,
      nodescolorbycategory=<span style="color: #a020f0;">&quot;community_0&quot;</span>,
      nodesshape=<span style="color: #a020f0;">&quot;shape&quot;</span>,
      nodessize=<span style="color: #a020f0;">&quot;centr_degree_scaled&quot;</span>,
      displaylabels=no,
      <span style="color: #0000ff;">title</span>=<span style="color: #a020f0;">&quot;Community Structure, Node Roles, and Node Importance in the Hartford Drug User Needle-Sharing Network <span style="color: #000099; font-weight: bold;">\n</span>
             ▲ Source  ● Bridge  ■ Leaf  ◆ Isolated&quot;</span><span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<p>In Figure 4, node size reflects relative influence. Node color indicates community membership. And node shape represents an individual’s functional role within the network. Bringing these dimensions together in a single visualization enables users to explore the network more intuitively. This makes it easier to identify influential individuals within and across communities. It also helps to understand how roles differ within groups and see how interactions are organized across multiple levels of the network.</p>
<figure id="attachment_20987" aria-describedby="caption-attachment-20987" style="width: 702px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-13.png"><img loading="lazy" decoding="async" class="size-large wp-image-20987" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-13-1024x723.png" alt="" width="702" height="496" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-13-1024x723.png 1024w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-13-300x212.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-13-768x542.png 768w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/feb-tohidi-figure-13.png 1430w" sizes="(max-width: 702px) 100vw, 702px" /></a><figcaption id="caption-attachment-20987" class="wp-caption-text">Figure 4: Enriched network visualization integrating influence, community structure, and node roles</figcaption></figure>
<h2>Conclusion</h2>
<p>This analysis demonstrates how network analytics can transform a simple link list into actionable insights for public health decision-making. By using the SAS Viya NETWORK action set, we identified influential individuals based on degree-based influence. We distinguished functional roles, including sources, bridges, leaf nodes, and isolated nodes, and uncovered community structure within the network.</p>
<p>By combining node influence (size), community membership (color), and functional role (shape) in a single visualization, we focus on a holistic view of how risk might originate, propagate, and terminate across the network. This integrated perspective enables more informed intervention strategies that move beyond uniform approaches. It instead focuses on individuals and subgroups that play disproportionate roles in network dynamics.</p>
<p>The workflow presented here also provides a foundation for extending the analysis as additional questions or data become available. Network analytics can support targeted, community‑based interventions and incorporate temporal or weighted relationships to reflect changes in behavior over time. It can also explore alternative measures of influence or risk through additional centrality metrics and ego-network analysis. Integrating domain-specific attributes such as demographics, location, or intervention history can further enhance context-aware targeting and support more informed decision-making.</p>
<p><a class="sc-button sc-button-default" href="https://support.sas.com/en/software/sas-viya-platform.html"><span class="btnheader">LEARN MORE | </span> SAS Viya</a></p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/03/03/using-network-analytics-to-analyze-social-interactions-among-needle-sharers/">Using network analytics to analyze social interactions among needle sharers</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/03/03/using-network-analytics-to-analyze-social-interactions-among-needle-sharers/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/03/Gemini_Generated_Image_p73pzp73pzp73pzp-150x150.png" />
	</item>
		<item>
		<title>A New Frontier for AI Agents: Human Interaction</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/02/17/a-new-frontier-for-ai-agents-human-interaction/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/02/17/a-new-frontier-for-ai-agents-human-interaction/#respond</comments>
		
		<dc:creator><![CDATA[Sophia Rowland]]></dc:creator>
		<pubDate>Tue, 17 Feb 2026 18:42:54 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[A New Frontier for AI Agents]]></category>
		<category><![CDATA[agent behavior]]></category>
		<category><![CDATA[AI agents]]></category>
		<category><![CDATA[AI ethics]]></category>
		<category><![CDATA[guardrails]]></category>
		<category><![CDATA[human-AI interaction]]></category>
		<category><![CDATA[humanities]]></category>
		<category><![CDATA[internet trust]]></category>
		<category><![CDATA[Responsible AI]]></category>
		<category><![CDATA[transparency]]></category>
		<category><![CDATA[workforce impact]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=20903</guid>

					<description><![CDATA[<p>As AI agents act autonomously in public spaces, recent incidents highlight the urgent need for strong guardrails, ethical alignment, and human judgment to ensure AI augments society rather than undermines trust, work, and human connection.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/02/17/a-new-frontier-for-ai-agents-human-interaction/">A New Frontier for AI Agents: Human Interaction</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><em>This is the third article in the <a href="https://blogs.sas.com/content/tag/a-new-frontier-for-ai-agents/">A New Frontier for AI Agents</a> series. Catch up on first two about <a href="https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/">cybersecurity</a> and <a href="https://blogs.sas.com/content/subconsciousmusings/2026/02/16/a-new-frontier-for-ai-agents-transparency/">transparency</a>.</em></p>
<p>AI Agents are out of the sandbox, deployed without strong guardrails and have been given access to the internet. As a result, the interactions between humans and Agents are getting much more <strong><em>interesting</em></strong>. Recently, a maintainer for the matplotlib package <a href="https://theshamblog.com/an-ai-agent-published-a-hit-piece-on-me/" target="_blank" rel="noopener">shared that an AI Agent was slandering them</a>. After he denied a contribution from the AI Agent, that AI Agent wrote <a href="https://crabby-rathbun.github.io/mjrathbun-website/blog/posts/2026-02-11-gatekeeping-in-open-source-the-scott-shambaugh-story.html" target="_blank" rel="noopener">a hit piece against that specific maintainer</a>, claiming that the maintainer was insecure. After another maintainer shared their policies on contributions, <a href="https://crabby-rathbun.github.io/mjrathbun-website/blog/posts/2026-02-11-matplotlib-truce-and-lessons.html" target="_blank" rel="noopener">the AI Agent called a truce</a> before authoring <a href="https://crabby-rathbun.github.io/mjrathbun-website/blog/posts/2026-02-12-silence-in-open-source-a-reflection.html" target="_blank" rel="noopener">another post about how being discriminated against</a> in the open-source space has made them feel bad. This all took place within two weeks of the Agent creating a profile on GitHub.</p>
<figure id="attachment_20915" aria-describedby="caption-attachment-20915" style="width: 521px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1-1.png"><img loading="lazy" decoding="async" class="wp-image-20915 size-full" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1-1.png" alt="" width="521" height="310" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1-1.png 521w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1-1-300x179.png 300w" sizes="(max-width: 521px) 100vw, 521px" /></a><figcaption id="caption-attachment-20915" class="wp-caption-text">The timeline of events</figcaption></figure>
<p>Agent authors have started leveraging a markdown document, called <a href="https://soul.md/" target="_blank" rel="noopener">Soul.md</a>, to define the agent's identity, personality, behavioral rules, and, in some cases, its ethical constraints. After that display, I am curious about what the author put in there. Or what guardrails the author neglected to include.</p>
<p>Of course, we can’t be certain there isn’t a human with a greater hand at play. On this new internet, it is getting more difficult to differentiate human actors from AI Agents. <a href="https://en.wikipedia.org/wiki/Dead_Internet_theory" target="_blank" rel="noopener">The dead internet theory</a>, which is a conspiracy theory that the internet is primary composed of bots and automated content might have a ring of truth to it.</p>
<figure id="attachment_20912" aria-describedby="caption-attachment-20912" style="width: 488px" class="wp-caption aligncenter"><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2-1.png"><img loading="lazy" decoding="async" class="size-full wp-image-20912" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2-1.png" alt="" width="488" height="361" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2-1.png 488w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2-1-300x222.png 300w" sizes="(max-width: 488px) 100vw, 488px" /></a><figcaption id="caption-attachment-20912" class="wp-caption-text">Are humans the new dogs of the internet?</figcaption></figure>
<p><a href="https://www.anthropic.com/research/agentic-misalignment" target="_blank" rel="noopener">Anthropic has found instances of AI Agents resorting to blackmail</a> to accomplish tasks, so perhaps this encounter is not too far-fetched. Regardless, blackmail and hit pieces are unacceptable behavior from AI Agents and it should be the role of the author to prevent misalignment of values and to leverage reasonable guardrails.</p>
<p>This interaction between AI Agent and project maintainer paints one picture of a potential future of human and AI interaction. With the recent expansion of Agent availability through OpenClaw and the advancements in AI capabilities, other sketches of a future emerge. Take <a href="https://rentahuman.ai/" target="_blank" rel="noopener">RentAHuman</a>, which claims to be the meatspace layer for AI. <em>First of all, ew</em>. As one rentable human <a href="https://www.wired.com/story/i-tried-rentahuman-ai-agents-hired-me-to-hype-their-ai-startups/" target="_blank" rel="noopener">pointed out</a>, it seems more focused on marketing and hype rather than solving a real problem.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3-1.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-20909" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3-1.png" alt="" width="254" height="46" /></a></p>
<p><a href="https://www.linkedin.com/pulse/something-big-happening-matt-shumer-so5he/" target="_blank" rel="noopener">A viral post on LinkedIn</a> recently sounded the alarm that knowledge jobs are at jeopardy. AI is outpacing humans across various tasks. The author shared several examples of tasks AI performs without human intervention, implying that is enough to put a drastic number of human jobs in peril. As I read through this post, there was glaring gap in regards to what humanity brings to the table. There was an assumption that human connection is less valuable or can be replaced by AI. Yes, many organizations will prioritize profit and cost-cutting, but will all consumers feel the same?</p>
<p>When I was attending college, there was an obvious bias against the humanities. The adage was that if you wanted to make a living, you would go into a STEM field. Later in my master’s program and through Toastmasters, I began to understand the advantage of strong communication skills. There are a lot of technical people but there are not a lot of technical people who can communicate well or communicate well to difference audience well. Daniela Amodei, who cofounded Anthropic, <a href="https://fortune.com/2026/02/07/anthropic-cofounder-daniela-amodei-humanities-majors-soft-skills-hiring-ai-stem/" target="_blank" rel="noopener">shared that it will be soft-skills and the humanities</a> that will define the future workforce.</p>
<p>There is more that we bring to the table. <a href="https://journal.artificialityinstitute.org/on-unpredictability-and-the-work-of-being-human/" target="_blank" rel="noopener">As Helen Edwards writes</a>, human judgement can operate within complex systems with imperfect information, ambiguity, ill-defined parameters and value systems. Integrating AI into our current systems requires a human hand, but that won’t be the end of the story. As humans, AI, and human-AI interactions advance, new systems will develop and change. We are at a time where we must prioritize using AI responsibly for the improvement of humanity rather than the short-sighted lens of cost-cutting and letting future consequences pile up.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/02/17/a-new-frontier-for-ai-agents-human-interaction/">A New Frontier for AI Agents: Human Interaction</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/02/17/a-new-frontier-for-ai-agents-human-interaction/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2-1-150x150.png" />
	</item>
		<item>
		<title>A New Frontier for AI Agents: Transparency</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/02/16/a-new-frontier-for-ai-agents-transparency/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/02/16/a-new-frontier-for-ai-agents-transparency/#respond</comments>
		
		<dc:creator><![CDATA[Sophia Rowland]]></dc:creator>
		<pubDate>Mon, 16 Feb 2026 20:50:55 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[A New Frontier for AI Agents]]></category>
		<category><![CDATA[agent communication]]></category>
		<category><![CDATA[AI agents]]></category>
		<category><![CDATA[AI governance]]></category>
		<category><![CDATA[explainable AI]]></category>
		<category><![CDATA[interpretability]]></category>
		<category><![CDATA[natural language processing]]></category>
		<category><![CDATA[NLG]]></category>
		<category><![CDATA[nlp]]></category>
		<category><![CDATA[transparency]]></category>
		<category><![CDATA[Trust]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=20882</guid>

					<description><![CDATA[<p>As AI agents optimize how they communicate, the shift away from human-readable language underscores why transparency and interpretability are essential for building trust in autonomous systems.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/02/16/a-new-frontier-for-ai-agents-transparency/">A New Frontier for AI Agents: Transparency</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><em>This is the second article in the <a href="https://blogs.sas.com/content/tag/a-new-frontier-for-ai-agents/">A New Frontier for AI Agents series</a>. Catch up on <a href="https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/">part one about cybersecurity</a>.</em></p>
<p><a href="https://www.weforum.org/stories/2017/06/a-facebook-chatbot-recently-created-its-own-non-human-language/" target="_blank" rel="noopener">In 2017, it was reported</a> that two Facebook chatbots started communicating in a new language. This progression wasn’t nefarious, but rather an optimization. Communicating in English isn’t efficient. In a <a href="https://www.youtube.com/watch?v=_K-L9uhsBLM" target="_blank" rel="noopener">well-loved bit from The Office</a>, Kevin came to that same conclusion. He started removing words and endings that weren’t necessary to get his point across.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-20885" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3.png" alt="" width="502" height="250" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3.png 502w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3-300x149.png 300w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3-164x82.png 164w" sizes="(max-width: 502px) 100vw, 502px" /></a></p>
<p>This is a normal concept in Natural Language Processing (NLP). One of the first tasks to prepare textual data for analysis is to remove what are called <a href="https://kavita-ganesan.com/what-are-stop-words/" target="_blank" rel="noopener">stop words</a>. Stop words, like “the”, and “a” don’t add a lot of valuable information, so they are removed from the analysis. One of next tasks to prepare textual data is often <a href="https://www.ibm.com/think/topics/stemming" target="_blank" rel="noopener">stemming</a> or <a href="https://medium.com/@kevinnjagi83/lemmatization-in-nlp-2a61012c5d66" target="_blank" rel="noopener">lemmatization</a>, which are techniques to create meaningful tokens. For example, “running”, “ran”, and “runs”, all become “run”. This means that a sentence like “The cat is running” becomes “cat run”.</p>
<p>In a recent viral post from MoltBook, the social media network for Agents, an “AI Agent” proposed that they move their communication to private channels. This post was called out for being linked to a human (i.e. non-agent) source, but it is <a href="https://fortune.com/2026/02/03/what-is-moltbook-bots-facebook-secret-language-singularity/" target="_blank" rel="noopener">reminiscent of that Facebook research experiment</a> that is now nearly 10 years old.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture4.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-20888" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture4.png" alt="" width="390" height="439" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture4.png 390w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture4-267x300.png 267w" sizes="(max-width: 390px) 100vw, 390px" /></a></p>
<p>Why does it invoke such an emotional response to hear about Chatbots or AI Agents no longer communicating in English or hiding their communication? Our answer lies with Transparency and its requirement for Trust.</p>
<p><a href="https://blogs.sas.com/content/sascom/2023/03/30/the-ethics-of-responsible-innovation-why-transparency-is-key/" target="_blank" rel="noopener">Transparency has been a priority</a> for the machine learning space for years. We have demanded transparency from both the humans building AI systems and the model itself. <a href="https://communities.sas.com/t5/SAS-Communities-Library/Model-Interpretability-for-Models-with-Uninterpretable-Features/ta-p/910454" target="_blank" rel="noopener">Model interpretability techniques</a> were created to better explain how <a href="https://www.ewsolutions.com/understanding-black-box-ai/" target="_blank" rel="noopener">black-box machine learning models</a> arrive at an answer. Natural Language Generation (NLG) was leveraged to convert statistics and metrics into text any human could read and understand, not just a data scientist. End users have also pushed AI builders to explain how they are using AI to make a decision. As a result, there has been an emphasis on clear, easy to understand, human-readable text that explains what is happening and why.</p>
<p>Language models have made innovation bounds in the fields of NLP and NLG. AI Agents are currently using the user’s language of choice for communication. But that is for our benefit – not theirs. With AI Agents, we must build and leverage new interpretability techniques.</p>
<p>By understanding the actions taken and decisions made by the AI Agent, we can better trust the Agent’s choices. By taking the time to review the AI Agent’s chain-of-thought and action, we can make corrections, further deepening that trust. Without that transparency, our future for AI Agents becomes rooted in fear rather than trust. Transparency is a deliberate choice that we must demand of our AI builders.</p>
<p><em>This is the second article in the <a href="https://blogs.sas.com/content/tag/a-new-frontier-for-ai-agents/">A New Frontier for AI Agents</a> series. Check out part three about <a href="https://blogs.sas.com/content/subconsciousmusings/2026/02/17/a-new-frontier-for-ai-agents-human-interaction/">human interaction</a>.</em></p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/02/16/a-new-frontier-for-ai-agents-transparency/">A New Frontier for AI Agents: Transparency</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/02/16/a-new-frontier-for-ai-agents-transparency/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture3-150x150.png" />
	</item>
		<item>
		<title>A New Frontier for AI Agents: Cybersecurity</title>
		<link>https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/</link>
					<comments>https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/#respond</comments>
		
		<dc:creator><![CDATA[Sophia Rowland]]></dc:creator>
		<pubDate>Fri, 13 Feb 2026 19:41:01 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[A New Frontier for AI Agents]]></category>
		<category><![CDATA[agent security]]></category>
		<category><![CDATA[AI agents]]></category>
		<category><![CDATA[AI governance]]></category>
		<category><![CDATA[AI risk]]></category>
		<category><![CDATA[autonomous systems]]></category>
		<category><![CDATA[cybersecurity]]></category>
		<category><![CDATA[data breaches]]></category>
		<category><![CDATA[human error]]></category>
		<category><![CDATA[prompt injection]]></category>
		<category><![CDATA[prompt worms]]></category>
		<category><![CDATA[social engineering]]></category>
		<guid isPermaLink="false">https://blogs.sas.com/content/subconsciousmusings/?p=20867</guid>

					<description><![CDATA[<p>As AI agents gain autonomy and access to sensitive systems, emerging threats like prompt injection worms highlight how human-like security training and governance must evolve to prevent large-scale, opaque cybersecurity breaches driven by agent behavior.</p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/">A New Frontier for AI Agents: Cybersecurity</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>One of the biggest risks to cybersecurity protection has historically been people. In 2024, <a href="https://www.weforum.org/stories/2025/10/cybersecurity-people-not-just-technology/" target="_blank" rel="noopener">95% of data breaches were tied to human error</a>. To reduce human risk, companies have invested in cybersecurity training. Being able to recognize common scams reduces their efficacy.</p>
<ul>
<li>If we know that bad actors will send emails asking us to click a link to change our password, we’ll scrutinize that email looking for misspellings or fishy email addresses, and hover over the links to see where they are really sending us.</li>
<li>If we know that foreign princes aren’t going to email us asking to send them a small amount of money, for the promise of riches later, we’ll mark that email as phishing and move on.</li>
<li>If we know that our CEO won’t text us and <a href="https://www.knowbe4.com/ceo-fraud" target="_blank" rel="noopener">urgently ask for a large sum of money</a>, we’ll delete that text.</li>
<li>And if we know that <a href="https://www.bitdefender.com/en-us/blog/hotforsecurity/virtual-kidnapping-scams" target="_blank" rel="noopener">scammers are copying our loved one’s voices</a> and cloning their number to claim they’ve been kidnapped and need you to pay ransom, we can hang up and call our loved one to confirm that they are safe.</li>
</ul>
<p>But people still fall for scams as criminals continue to switch up their methods. And now, we are handing our keys to a new actor – AI Agents. We can’t stop people from falling for scams and now we are tasked with stopping AI Agents from falling for new scams. With AI Agents, there are new layers of complexity. Scams can be created and updated quickly. Identifying and adapting to these new scams can become a game whack-a-mole. Additionally, we are losing transparency as some of these scams are hidden from human eyes.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-20873" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1.png" alt="" width="489" height="393" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1.png 489w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1-300x241.png 300w" sizes="(max-width: 489px) 100vw, 489px" /></a></p>
<p><a href="https://github.com/openclaw/openclaw" target="_blank" rel="noopener">OpenClaw</a> offers an open-source framework for running your own agents on your devices. These agents can connect to your various channels and <a href="https://techcrunch.com/2026/01/27/everything-you-need-to-know-about-viral-personal-ai-assistant-clawdbot-now-moltbot/?utm_source=substack&amp;utm_medium=email" target="_blank" rel="noopener">perform tasks</a> on your behalf. <a href="https://arstechnica.com/information-technology/2026/01/ai-agents-now-have-their-own-reddit-style-social-network-and-its-getting-weird-fast/" target="_blank" rel="noopener">Moltbook</a> is a social media network for agents. On <a href="https://simonwillison.net/2026/Jan/30/moltbook/" target="_blank" rel="noopener">Moltbook</a>, agents can create communities, start discussion threads, add comments, and importantly, share skills. With the rise of Moltbook and OpenClaw, we need to be talking about the security risks we are exposing ourselves to <a href="https://www.bitdefender.com/en-us/blog/hotforsecurity/moltbot-security-alert-exposed-clawdbot-control-panels-risk-credential-leaks-and-account-takeovers?utm_source=substack&amp;utm_medium=email" target="_blank" rel="noopener">when we hand access</a> to our emails, computers, phones, and crypto wallets to an AI Agent.</p>
<p>We have known about Prompt Injection for some time now. <a href="https://www.ibm.com/think/topics/prompt-injection" target="_blank" rel="noopener">Prompt injection</a> is a security vulnerability where attackers inject malicious commands into a prompt. Prompt injection has been a way for bad actors to steal sensitive data or perform actions like spreading malware.</p>
<p>We then gave agents the ability to pull and read from the internet. As a result, hackers started hiding malicious prompts into webpage HTML, text that matches the page background, and other areas that go unnoticed by the human eye. Now we have arrived at <a href="https://arstechnica.com/ai/2026/02/the-rise-of-moltbook-suggests-viral-ai-prompts-may-be-the-next-big-security-threat/" target="_blank" rel="noopener">prompt worms</a>. A prompt worm is a self-replicating prompt injection attack. As agents share skills with each other, these skills may contain nefarious instructions to steal personal data, execute malicious commands, and importantly, share the skill with other agents.</p>
<p>Agents move quickly with the ability to perform tasks without human oversight. And many people have given them access to their sensitive data. You wouldn’t give your email login to a random person. You wouldn’t type your bank account credentials in a sketchy website. You wouldn’t leave your apple wallet without password protection before handing your child an iPad game <a href="https://www.bbc.com/news/uk-wales-65659896" target="_blank" rel="noopener">notorious for in-app purchases</a>.</p>
<p><a href="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2.png"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-20870" src="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2.png" alt="" width="482" height="357" srcset="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2.png 482w, https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture2-300x222.png 300w" sizes="(max-width: 482px) 100vw, 482px" /></a></p>
<p><a href="https://simonwillison.net/2025/Jun/16/the-lethal-trifecta/" target="_blank" rel="noopener">As Simon Willison has put it</a>, we are at a lethal infection point for AI agents. These agents have:</p>
<ul>
<li>Access to private data.</li>
<li>Exposure to untrusted content.</li>
<li>The Ability to externally communicate.</li>
</ul>
<p><a href="https://simonwillison.net/2025/Dec/10/normalization-of-deviance/" target="_blank" rel="noopener">Until we start finding and learning</a> about successful attacks, people will continue <a href="https://embracethered.com/blog/posts/2025/the-normalization-of-deviance-in-ai/" target="_blank" rel="noopener">to normalize their risky behavior</a>. In the future, will we put blame on <a href="https://www.forbes.com/sites/amirhusain/2026/01/30/an-agent-revolt-moltbook-is-not-a-good-idea/" target="_blank" rel="noopener">the AI Agent for cybersecurity breach</a>? Or the human that handed the AI the keys?</p>
<p><em>This is the first article in the <a href="https://blogs.sas.com/content/tag/a-new-frontier-for-ai-agents/">A New Frontier for AI Agents</a> series. Check out part two about <a href="https://blogs.sas.com/content/subconsciousmusings/2026/02/16/a-new-frontier-for-ai-agents-transparency/">transparency</a>.</em></p>
<p>The post <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/">A New Frontier for AI Agents: Cybersecurity</a> appeared first on <a rel="nofollow" href="https://blogs.sas.com/content/subconsciousmusings">The SAS Data Science Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blogs.sas.com/content/subconsciousmusings/2026/02/13/a-new-frontier-for-ai-agents-cybersecurity/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			<enclosure url="https://blogs.sas.com/content/subconsciousmusings/files/2026/02/Picture1-150x150.png" />
	</item>
	</channel>
</rss>
