putilov_denis - stock.adobe.com

Salesforce CodeGen lead discusses AI-generated programming

The head of Salesforce's open source, AI-assisted no-code project discusses the company's approach to AI moving forward, as well as what users might see next on the roadmap.

The future of low-code and no-code lies beyond drag-and-drop user interfaces tools such as Salesforce Flow and Microsoft Power Automate: Simple coding will be auto-generated by AI based on natural language queries.

At least that's what Salesforce is banking on with the Salesforce CodeGen project, now in development. Here, Silvio Savarese, Salesforce executive vice president and chief scientist, discusses Salesforce CodeGen and other AI matters. The longtime tenured Stanford professor joined the company in April 2021 and brought with him expertise in AI, computer vision, machine learning, robotics and NLP. He leads a team of researchers "delivering breakthrough technologies," as he puts it, which includes Salesforce CodeGen and other projects, such as tech tools to combat information overload in our work lives.

Where does AI fit into your Salesforce work?

Silvio SavareseSilvio Savarese

Silvio Savarese: We are really interested in using AI that can empower users and customers through new capabilities. But also, we want to make sure that these new capabilities deliver experiences that are simple, personalized and trusted. These are the three main aspects we want to emphasize.

We are interested in making sense of time series data for optimizing operations. Merlion was also an open source project -- the goal of the work is to anticipate a complex form of infrastructure failures, and to understand what went wrong. What are the causes and how to remediate those corners. That's one area.

Another area the company is investing in is to enable users to consume data information more efficiently. We like to call it 'how to counteract' information overload when we are bombarded by data on all channels. [We are exploring technology to help] find stuff easily and efficiently, how to summarize information, and how to have AI help us achieve what we want.

We want to make sure that these new capabilities deliver experiences that are simple, personalized and trusted.
Silvio SavareseExecutive vice president and chief scientist, Salesforce

Explain the genesis of Salesforce CodeGen.

Savarese: Think about it as a new way of developing software: Rather than writing software directly, we want to have users explain -- describe -- what the problem is, in plain English. It can be aligned with various types of developer personas: For more experienced developers, the idea is to help them by taking over some of the more menial parts of the coding process, so they can focus on more creative aspects of their work. Non-coders or low-coders can enter into the exciting space of software development with almost no experience.

It's one thing to research a technology, but it's another thing to productize it. What's it going to take to commercialize Salesforce CodeGen?

Savarese: We are working actively with our internal team at Salesforce to deploy this technology.  There are different groups of users who actually are eager to use this kind of technology. As soon as we make good progress on it, the next step is to start offering it to developers that are attached to Salesforce -- through the AppExchange, or even offering to the public as open source.

What have been the most effective uses of CodeGen inside Salesforce?

Savarese: An exciting application that we're focusing on is for data scientists using Tableau. Imagine that we want to build an application to process some data. Our team might start by asking a question such as, 'Can you build a page where you press this button, and to process all this data, compute the mean, the variance, or whatever?' But then the user we built it for might say, 'Well, yes, but then let's try to add a couple more buttons or other functions so we can also start comparing this data with data from other customers.'

Other potential applications that we have seen that are a bit more long-term are to help developers  understand the code so you can fit code into CodeGen, interpret the code and be able to make sense of it from natural language again. So, you can see this function and say, 'What does this function do?'

Translating code from one programming language to another programming language is also something that CodeGen can do quite effectively. It's a work in progress, but that's the way we see this unfolding.

Getting back to information overload -- how is your team tackling that?

Savarese: The main challenge is that we are really overloaded by a lot of content. There's a need to accurately understand and consume data in a way that's more efficient, more intelligent. The main tool that we are developing uses natural language processing. The idea is to use these techniques where we can identify and search for information very effectively.

More important is to take some data and come up with a more concise version of it. That can be helpful to understand a conversation in Slack or some chat application. We want to summarize the conversations... just tell me what this conversation is about.

Is there such a thing as AI, or are we wrongly calling advanced machine learning 'AI'?

Savarese: In my view, the current AI has been really focusing on the fact that it is learning from large, large, large amounts of data. And because of the capacity and the complexity of networks, you kind of create huge models and huge capacity for so much information.

I think it will be important to address situations where the information actually is very limited, to perform a task where the learning data is very limited. This is actually what we call 'human intelligence.' If you ask a human to play chess, and all of a sudden after a few examples he's able to quickly master the game of chess, you will say, 'Oh, this guy's very intelligent.' Whereas if after months and months of study, a person is going to be a good chess player, you're kind of happy, but you don't necessarily call this person a genius.

Humans have the ability to perform new tasks -- tasks which are not seen in a training phase. You can say 'Well, let me see what is kind of related, kind of adjacent [to a task], and then put together information.' I think this is an area which is still kind of fertile ground for research in AI and that's where all these all exciting products are that we can do.

Salesforce started out with a very tactical, features-driven approach to AI with Einstein. How would you describe Salesforce's current approach to AI?

Savarese: It's not about adding more tools, more buttons, more levels. It's more about creating an experience where the user can really communicate with the machine. The whole company is trying to make it much easier for customers to use the tools, including AI... with easy interfaces for customers to use.

This Q&A was edited for clarity and brevity.

Don Fluckinger covers enterprise content management, CRM, marketing automation, e-commerce, customer service and enabling technologies for TechTarget.

Dig Deeper on Enterprise applications of AI

Business Analytics
Data Management