Building GenAI applications

I have been building 2 GenAI applications with a client for the last 6 months, so this post is a reflection of some of the things I have been thinking about without being too specific about features or details of those applications. I am a big fan of perplexity.ai, so I will be using it to illustrate some points where applicable.

The user experience

As this space has matured, user expectations for differentiated products have only gone up. Most organizations started with a ChatGPT clone or wrapper, and a lot of GenAI applications today look similar. Meaning, its increasingly difficult to stand out. For example, in the exploratory data analysis (EDA) space, cloud providers, startups and different vendors all have their own product and these inevitably look similar, but have nearly identical features. So how does a poor GenAI application stand out if all applications are using the same models below the hood?

Which brings us to why the user experience matters and anyone who has used Perplexity likely knows what I am talking about. When ChatGPT was released a couple of years ago (hard to believe its been only 2.5 years) - even though the interface and the user experience seemed familiar - the generative capabilities of the underlying language models were compelling enough to drive adoption at a rate that was unheard of at the time.

Perplexity highlights how important the user experience is by departing from the ChatGPT look, features and functionality to something quite different. As of March 2025, its still too early to say if they will succeed, but they definitely standout through all their features and personalization.

Build for a domain

As most readers are aware, GenAI applications are rapidly redefining and in many cases replacing existing applications. In many cases, there is potential for entire families of tasks or certain types of jobs to be replaced or updated. I had written about decision intelligence as being key to unlocking the potential of machine learning and data science by merging workflows, processes and ML.

Similarly, building GenAI applications to solve a specific user problem within a specific domain or process or workflow is key. Teams that focus on understanding the challenges the business is focused on, or on user pain points, and solve for them using GenAI are most likely to deliver value and succeed.

GenAI uses include tasks such as Q&A, information retrieval, content generation, on-demand analytics, etc. These are generic capabilities that will soon be commoditized - meaning either startups or cloud providers will build solutions that will exceed anything built in-house. So, how to differentiate and build for the long run?

By focusing on building solutions where the stack or framework being used can be swapped out easily in the future as the space evolves. Yes, this isn’t an exact science, but the philosophy of building for the domain will go a long way in ensuring ROI and longevity for your GenAI applications. This is not too different from the design patterns we saw in the ML space, where specialized applications of ML in a domain are now dominant.

UX/UI

A key component of building for your domain is conducting user research to better understand existing processes and workflows. Any GenAI solution should not only address the user personas involved, but also provide GenAI based capabilities that address shortcomings in the current processes and workflows.

But what about the UI? Were seeing some common components and design patterns across GenAI applications, e.g. a conversational or chat interface, the ability to track and re-use historical interactions with the models, the ability to dynamically select models based on the use case, levers for personalization, etc. to name a few.

Using these UI patterns smartly alongside domain specific customizations, are key to making your GenAI application stand out to differentiate it from similar applications or competitors.

Novel applications

If everything is done right, you should end up with a compelling application that addresses a business need or pain points for using by leveraging language models or GenAI capabilities in a novel package - where users don’t ask the question

“Why should I use your application vs this other application or ChatGPT for that matter?”

The answer will be obvious!!