BookmarkSubscribeRSS Feed

A case of nostalgia: Clippy once walked so that AI could run

Started a month ago by
Modified a month ago by
Views 436

I have to admit, when I first heard about co-pilots, I was fast to fall in love with the idea of having a trusty AI assistant always at hand to help me in my daily tasks. Also, that instantly reminded me of the good old Windows 95 era paper clip assistant called Clippy in MS Office… but that’s just how old I am. You could also opt for Clippy’s other incarnations, anyone still remember The Genius, Power Pup the dog or Scribble the cat? Back in the day, people had mixed opinions about Clippy, but I think that was mainly because he had no memory and lacked a sense of timeliness and an understanding of your goals. Of course, Clippy always popped up on your screen at the worst possible moment. I think Clippy was disliked not because he tried his best to help, but rather because he wasn’t very good at it. But looking back in retrospect, and what we do with Copilots today, Clippy was very much ahead of his time.

 

clippy.png
 

Fast forwarding nearly 30 years, why do folks today willingly choose to employ Copilots, those devil’s little helpers, in their daily tasks? There are several reasons:

 

1) To boost productivity:

  • Automation of repetitive tasks, like drafting messages, summarizing documents, or scheduling meetings.
  • Quick access to information: Instantly retrieve data, or insights without searching manually.
  • Generate content: Help with writing reports, creating presentations, or just to get your brains storming with new ideas.

 

2) To enhance decision-making:

  • Data analysis: Interpret data, visualize trends, and highlight the important stuff.
  • Scenario modeling: Explore what-if scenarios or create simulated outcomes.
  • Summarize information: Compress complex documents into their core content.

 

3) To employ a personal assistant:

  • Context-aware help: Better than Clippy, as a good Copilot understands your preferences, and goals and can elaborate on your previous questions.
  • Learning and development: Recommend learning resources or explain unfamiliar concepts.
  • Time management: Prioritize your tasks and create structure out of chaos.

 

I can agree with all this, as these are things that will make your life easier and will most likely get you faster to results with less repetitive work.

 

But what about developers, the heroes who create miracles in code? Don’t they need help too? What could a software developer gain by employing a co-pilot?

 

1) Coding on steroids

  • Predictive code suggestions: Autocompletes lines or entire blocks of code based on context.
  • Template-based code generation: Insertion of repetitive code pieces, such as API calls.
  • Language not lost in translation: Code conversion from one language to another (e.g., Python to SAS).

 

2) Quality improvement

  • Error detection: Flag potential logic errors or syntax issues early.
  • Best practices: Suggests cleaner, more efficient code patterns.
  • Debug help: Give suggestions on why the results are different from expected.

  

3) Make your code clear and shareable

  • Documentation assistance: Add understandable explanatory comments to the code
  • Explaining: Provide a verbose description of what a piece code actually does

 

I can respect all that. It makes perfect sense as most developers prefer to produce high quality code with minimal effort and time spent.

 

But what does a co-pilot mean to SAS developer? I was taught early in my career that SAS is a procedural language that has powerful expressions like SAS procedures (PROCs) and the all-capable data step. This power of expression means that you can get a lot done without typing too much code. Does it mean that a SAS developer will get less benefits than developers employing more ambiguous languages?

 

Not so. The upcoming SAS Viya Copilot is a new feature of SAS Viya that provides various capabilities to assist the developer across the entire analytics life cycle by enhancing SAS code development for faster results by providing LLM-based assistance. (Disclaimer: image depicted may or may not reflect the released product):

copilot_example.png

SAS Viya Copilot leverages the power of generative AI and large language models (LLMs) to help you code smarter and easier. The obvious benefits come from coding assistance:

  • Generation of new code from developer provided prompts
  • Explaining the functionality of existing code in verbose text
  • Adding comments to existing SAS code, thus making documentation a breeze

All informed AI users put emphasis on the security, in the accidental case that a developer accidentally enters for example personally identifiable data to the prompt. There will be safeguards employed for protection, as the content is first passed through several content filters before it lands on the LLM.

 

Copilot is an exciting new technology, but I want to remind you that SAS works on providing solutions based on generative AI on multiple fronts:

viya_and_copilot.png

SAS Viya platform and the APIs it provides can be very valuable in creating and orchestration framework for your organization’s LLM assets. By incorporating prompt generation to purpose-built SAS Studio steps, you can provide users with a governed way to harness the power of LLMs. With the help of SAS Intelligent Decisioning, you can deploy customized decision workflows as APIs to serve a point-of-decision, such as recommending whether or not to enroll a new customer.

 

There are numerous examples of utilizing LLMs via SAS Studio custom steps and a few of them can also be found in the custom step repository that is freely available to all at: https://github.com/sassoftware/sas-studio-custom-steps If you’re new to the concept of SAS Studio custom step, it intuitively enables a developer to wrap SAS code into a re-usable, shareable package for all SAS users at your site. Think User written transformation, if you come from SAS Data Integration Studio background, but with improved usability and ease of sharing.

 

My personal favorite is the Custom Step that calls an LLM to create a new custom step. It is called LLM - Custom Step Generator with Azure OpenAI and it’s available here. There is also a very informative blog post by Bogdan Teleuca with step by step instructions and a video that explains the use case and usage. My head spins when thinking about the recursive possibilities of having tools that spawn new tools (that hopefully don’t spawn yet more tools). This demonstrates the limitless ways to utilize LLMs with only your creativity as constraint!

 

Co-pilots are thus useful for various tasks, but what about automation? While LLMs are very capable of parsing and processing user input, in most cases they can’t access your data, abide by your organization’s business rules and most importantly, they can’t act autonomously. They are limited to by the data they were trained upon and that is both a blessing and a curse. Wouldn’t it be blissful to have an autonomous agent that could react to changing requirements and execute tasks when needed? Cue in the concept of Agentic AI, the hottest buzzword in AI at the moment.

 

Agentic AI can be defined as AI systems that have the agency to act and perform complex tasks. LLMs are known to output answers that look and sound right but often are not based on facts. Have you ever tried asking an LLM to explain yourself as an individual? To become trustworthy companions, they need governance, control, and auditability. A concept of collaborative agents has been introduced. Agents that are autonomous to a certain degree, but work together with a human user, under a set of constraints and whose decisions and actions are governed and explainable.

 

To wrap things up, SAS Viya platform coupled with SAS Intelligent Decisioning makes it possible to design, build and deploy interfaces to LLMs in a governed, controlled manner. Main interest of this blog, obviously the SAS Viya Copilot, is underway in near future. Regarding our future vision, pre-built, intelligent agents for various industries and ecosystems are being visioned and developed.

 

It’s exciting times we live in, but if you’re like me and feeling nostalgic for good old Clippy, there is an unofficial substitute for Clippy for Windows called Paperclip by FireCube. You guessed right, it utilizes an LLM under the hood. It may not be all business-like Windows Copilot, but having an assistant with a twist of personality can never be overrated.

Contributors
Version history
Last update:
a month ago
Updated by:

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

SAS AI and Machine Learning Courses

The rapid growth of AI technologies is driving an AI skills gap and demand for AI talent. Ready to grow your AI literacy? SAS offers free ways to get started for beginners, business leaders, and analytics professionals of all skill levels. Your future self will thank you.

Get started

Article Tags