--Release Readiness Live.
We want to start
off by saying--
It is important to watch
Release Readiness Live so
that you get a
snippet of the coming
attractions of the
functionality that's
We really focus
on the features
that are going to be most
useful and impactful.
I get to find out what's
new, what's coming.
It's a way for me to see,
not just read, not just
experience
through webinar,
but see a real
person talking
We'd love to hear what
your questions are.
Your feedback
is so important.
I think that's one of
the most amazing things,
actually, about the
Salesforce ecosystem
is how involved
trailblazers
are with the evolution
of our products.
I love getting questions
during Release Readiness
Sometimes, you never know
what you're going to get.
People could ask,
potentially, anything.
Really helps me think
about things as I'm
With Release
Readiness Live,
you get the
great opportunity
to actually hear from the
mouths of the people who
spend a lot of
time thinking
about what exactly
you all, as Salesforce
developers and admins, are
actually wanting to see.
And also informs us how
we can improve the product
The reason why we
stick with Salesforce
is because we feel
like we are heard.
I feel like I'm helping
make decisions, hopefully
good decisions,
that will benefit
all admins,
all developers,
I feel like we're
a part of something
We'll see you next
time in the cloud.
Welcome to Release
Readiness Live.
I'm a developer advocate
here at Salesforce,
and we are bringing
this broadcast
live from our San
Francisco studios.
I'm joined by a team of
amazing project managers
and product owners who
are going to walk us
through some of the
new innovations that
are coming in
spring '24 for all
We might cover
some roadmap
and future-looking
technology today,
so I need to remind you
that you should only
make purchasing
decisions based
on currently
available features
Now that we have
covered that, I
want to thank you so much
for joining us today.
By tuning in and
giving us feedback,
you help us
innovate better.
For the next hour
and 15 minutes,
we'll be focusing
on Einstein
for Developers, ApexGuru,
LWCs, and Prompt Builder.
But before we get
into it, let's
talk about how you can
participate in the show.
And we have got
a special guest
Super excited to be here.
So walk me
through how people
can participate today
and ask us questions.
So you can participate
in this session
by asking your
questions online,
and there are a couple
of different ways.
You can post in the Q&A
in the Salesforce+ chat
or use the hashtag
#salesforce on X
or the Trailblazer
Community.
All right, so
without further ado,
First, we'll take
a look at Einstein
for Developers, and
we have Ananya Jha,
product manager for ID
and developer experiences
My name is Ananya, and
I'm a product manager here
at Salesforce,
focusing on your IDE
experience and Einstein
for Developers.
Today, I am so excited
to be here talking
to you all about Einstein
for Developers, which
recently went
into open beta
at Dreamforce
this past year.
For those of you
who aren't familiar,
Einstein for Developers
is an AI assistant tool
designed to help you
be more productive
while you're
completing tasks
within your development
environment.
And we have a ton
of new innovations
here to show
you all today.
Now, as always, we
really value the feedback
that you provide us,
whether through Release
Readiness Live
or elsewhere.
And these are really
the key pieces of info
that we use to decide
what to build next.
So to start off with,
we have three main areas
that we are releasing
new features for E4D.
So first up, we have
clear guidelines
to help you write
more effective prompts
So for many of
you all, you're
often looking for a
little bit more direction
in how you should go about
structuring your prompts
and including the relevant
pieces of information.
With our recent
releases, we've
put out clearer
documentation
and guidelines showing you
exactly what type of info
to include within
your prompts
to get the desired
responses you
want from Einstein
for Developers.
The next two
pieces are items
that I'm super excited
about that you all
have been asking
for a while now.
So first up, we have test
case generation for Apex.
We've heard
from many of you
all that testing is a
first-class citizen.
But often times, it's
hard to get started with.
So we've given you a
new AI-enabled feature
allowing you to get
started with writing test
cases for your Apex code.
Next, we have inline
code completion.
So now you can supercharge
your existing development
processes by seeing
lines of code completed
while you're inside
of your editor
So why don't
we take a look
at all of this in
action with a demo?
So today, I'm inside
of Code Builder.
For those of you
who aren't familiar,
Code Builder is
our web based IDE.
This went GA around
Dreamforce of last year.
And the great thing
about Code Builder
is that you have access to
all of those great tools
you expect from
your desktop,
including the ability
to code, debug, test,
work with those
CLI commands
from right here
within your browser.
So now that I'm inside
of Code Builder,
I will be working inside
of my dream house project
And this is an open
source sample app
that is maintained by
our wonderful developer
advocacy team here
at Salesforce.
So the first step to
working with Einstein
for Developers is
going to be making sure
that you have the
extension installed.
So I'll head over
to my marketplace,
and I can see here
that I've not only
got Einstein for
Developers installed,
but I could even update
it to the latest version
Once you've
checked that you
have the extension
installed,
you want to hit this
Einstein sidebar icon.
This goes ahead and opens
up the sidebar for you.
Here, you can go ahead
and write in prompts
with natural language
instructions,
describing the tasks
that you're looking
Now one thing
that's really
important about
writing these prompts
is that you
want to include
all of the relevant
information
about the task you're
looking to complete.
And this also
includes any metadata
that you happen to
be working with.
Behind the scenes,
what we're doing
is ensuring that all of
that relevant metadata
schema is taken
into account
when we're working with
our LLM to generate
So to help us
on this task,
the first step
that you will
need to take as a
developer is to first run
a command called Refresh
SObjects Definitions.
And essentially,
what this does
is it pulls down all
of the relevant custom
objects or standard
objects that you
need to be working with
for your task today.
So once I've run that,
I can go ahead and add
And you can see
here that my prompt
It's explicitly calling
out the API name
for the objects that
I'm working with,
and it's telling the
model exactly how I want
to use the class and what
types of best practices
I'd like to see followed.
So now that I've
got my prompt here
and I've run run Refresh
Sobject Definitions,
I can go ahead
and hit ask.
Behind the scenes,
Einstein is hard at work
coming up with
the response.
Now the first
thing that I notice
here is one of the
newest features
that our team has
put out, which
has given us the
ability to have
syntax highlighting in
the generated responses.
So this makes
it way easier
for me to understand and
read the code coming out.
And you can see that,
in the response,
we've even
correctly identified
the different
fields that I happen
to be working with for the
objects that I specified.
And we even have with
security enforced mode.
So now that
I've gone ahead
and I've worked on my
latest functionality
for the Einstein
sidebar, I
want to showcase our test
case generation feature.
So let's say that
you're working inside
Today, I'm working on
PropertyController.
And I've already
got this method
that I've gone through,
written everything out
for, but now I need
to generate a test.
So the way that you'll
go about doing this is
by going ahead,
right-clicking,
and hitting
this "Einstein--
Generate a Test" command.
Behind the scenes,
what this is doing is
it'll check to see if
you have an existing Apex
test file associated
with the class
that we were
just looking at.
And if you don't, it'll
go ahead and create it
This is a live demo,
so occasionally, we
don't get the full
response in there.
But we'll go ahead here
and, again, just run
And we'll choose
that same method
that I was working
with earlier.
And now that we have
the test file created,
it'll just go
ahead and auto
populate that new
Apex unit test for me.
Now this test
looks good, so I'm
going to go ahead
and hit Accept.
And just like that, I've
got a little bit more
OK, now last
but not least,
I want to show off our
inline code completion
This one is one of
my personal favorites
because I get to stay
in my existing workflow
while taking advantage
of these new AI
So here, I'm going about
what I typically do with
my [? or-enabled ?]
annotation.
I'm going to create
my new method here.
I'll add in the parameters
that we're working with.
And from here,
I can go ahead
and start seeing
completions generated
for me from right
there inside
Now if you want to go
ahead and hit Accept,
you can tab and see
those completions being
accepted, and
it'll continue
to give you more
completions based off
of the tasks that you're
looking to complete.
In this case, I'm
pretty OK with what
I might go in later and
add in a little bit more.
But for now, I've gotten
in that initial scaffold
of the method
that I was working
with using our new
inline code completion
So I know we talked about
a lot of different things
We got a chance
to see those
more effective prompt
writing guidelines
We got to see our test
case generation feature
and inline code
completion.
So now I think is
a great time for us
I particularly enjoyed
the test case generation
because I know writing
test code is very, very
important, but
sometimes, starting
from that empty or blank
screen is a little bit
difficult. And
you know I had
to previously
google and also
maintain a lot of code
snippets here and there.
But I really like
the capability
that now you can
generate some sample code
and we can keep refining
further and improve it.
Now for all of you,
I want to remind
We want to ask her
all of the questions.
You can ask all
of your questions
through the
Trailblazer Community.
Just use that hashtag
#salesforcerrl,
or you can also ask
through our Salesforce+
app where you are
watching the show.
Just use that Q&A tab, pop
in your question there,
and we'll make sure to get
it answered from Ananya.
All right, with
that, I want
How's it going
in the chat?
Kyle is really,
really excited
about these new features.
So a lot of excitement
being shared.
We are all so excited
about these features.
All right, with
that, are there
any questions that
are coming up,
Ella, that we would want
to bring it up to Ananya?
Give me one
moment, and I'm
going to go through
all these questions,
and then come back to me.
All right, while
that's happening,
I have a question
for you, Ananya.
So I know our developers--
one of the things when
they see this Einstein
for Developers,
they always have
this feeling that all
of the code that they have
written for the project--
is it going to
be used to train
the model that we
use to generate
Yeah, that's a great
question, Mohith,
and it's one that
our team is actively
So going through
TDX, we won't
be using any of the
code from your project
Post TDX, we
will be releasing
new capabilities that
will allow you to opt out
of having any of
your code being
used to train our
internal models here
I think this is going
to be a game-changer
because I know a lot of
companies that I talk to,
a lot of developers that I
talk to always bring that
Is there any
other questions
here, Ella, that
we can ask Ananya?
Yeah, it looks like
there's a question from
[? Sohil ?] on
Salesforce+,
and it's can the test
case gen also generate
negative tests or test
cases for all possible
Yeah, that's another
really good question.
So right now, our
test case generation
will allow you to
generate both positive and
In the future, we'll
be expanding that out.
So if you have specific
areas that you'd
like to see
tested, you can
give a bit of more
prompting to the tool
before it generates
it for you as well.
All right, let's
take one more
and then we will
move on to the show.
Is code explanation
feature on the roadmap?
Code explanations
is on the roadmap.
We've heard from
a ton of folks
that you often
have code that's
been sitting around in
your project for a while,
and it takes a while for
people to ramp up on it.
So one of the big
things that we'll
be prioritizing post-TDX
is code explanations,
which will allow you
to select an existing
piece of code
in your project,
and then get a quick
summary or explanation
Wow, that's going
to be awesome.
I cannot wait to get
hands on to those kind
All right, so the next
feature that I think is
going to be definitely
a game-changer
I have been an Apex
Developer myself
for a decade or
so, and I've always
wished there's
more observability,
there's more logging, and
there is more AI features
So we have ApexGuru
that just went GA,
and we have the
senior director
of product management
for ApexGuru, Karishma
Hi, everybody--
Karishma Lalwani.
I'm the senior director in
our scalability products
team, and I'm super
excited to share with you
a brand new launch
ApexGuru that
So if you are a
customer who's
on our unlimited edition,
or you're a signature
customer, you actually
have access to ApexGuru
You can just go
to your production
org or your full copy
sandbox to activate this.
And today, I'm
going to show
you what is
ApexGuru all about
So ApexGuru is essentially
a product that is, again,
We've been working
for over two years
with a Salesforce
research team
to train our
models to detect
very crucial
antipatterns that
lead to code
quality improvements
as well as generate
the right code that you
can actually
implement using LLMs.
Our first feature
here is detecting
Over the years, working
with our large customers,
we do understand
that it's not always
possible to test a
particular line of code
You might be testing
in your dev orgs,
in your sandboxes,
but what
does that code do when
you have thousands
What does that
code do when
you have multiple users
using the same line
of code at the same time?
This is where
ApexGuru is going
to really come to
action to get proactive
and tell you exactly
whether that line of code
is going to scale or not.
The second feature that
we have is giving you
insights around your
SOQL and statements
This, again,
is all in line
with the goal of improving
your code quality, making
it more performant,
reducing latency.
The third feature that
I want to talk about
This, again, using our
runtime information
from our
profiling systems,
we are able to tell
you which methods
are expensive
and how should
you tweak them to make
it more performant.
And the last feature that
I'm going to talk about
is unused
classes, which is
the goal is to
reduce technical debt
So let's just
dive into the demo
You can access ApexGuru
by going to Setup
and searching
for Scale Center.
Scale Center
is the product
that we launched
last summer.
This is our application
performance management
system that gives you
insights in all areas
Diving down to ApexGuru,
the very first screen
that you will see is this
Report Creation Date.
Now ApexGuru is
generating reports
on a weekly
basis, so you can
pick a date of the week
that you're interested in
and, very quickly,
this report is actually
You will see all these
features automatically
Now the very first
time that you
run this report, the very
first time, if you're
opting in, it
does take 24 hours
for the first report
to get generated.
But after that, you will
see this get refreshed
The first tab here
is around code
We also are able to
classify the code
recommendations into
Critical, Major,
As a developer,
you would probably
start at the Critical tab.
Here, you see that
we are telling you
about the current
code, that we have
Along with that, we
also tell you the class
that this code was found
and the entry point.
In this example,
the antipattern
that we have detected
is the schema
We also tell you how can
you improve this code.
So on the right,
we actually
give you the
recommended code snippet
that you can
replace in your org.
Now this part on
the right is where
This is auto-generated
for developers
to quickly copy the
code, put it in the IDE,
The same thing would
be in Major and Minor
depending on
the criticality
The next feature that
I was talking about
is SOQL and DML analysis.
In this tab, this is a
very common scenario,
where you're
using Sobjects
in an inbound filter as
part of your SOQL query.
So if you look here,
this is the query.
And here is the
bind variable.
Although this is
very easy to write,
but it's not the
efficient way to use it.
ApexGuru will, again, give
you the recommended code
of how you should approach
this particular use case.
So here, you
see it tells you
you can create a
map of contact IDs
and replace it
in the in class--
once again, very
quickly, making sure
that your writing
performant code that
The third tab here
is Expensive Methods.
Here, again, we are able
to classify the methods
based on the criticality.
Now what do I mean
by criticality?
It means how much
percentage of CPU
So the critical expensive
methods use at least 5%
of CPU time, which, in our
opinion, is pretty high.
So here, we give
you a quick run list
of all the methods
that you should
look at that are expensive
for Salesforce to process
and, as a result, will
cause a lot of latency
to your end
user experience.
The last tab is Unused
Classes and Methods.
I talked about
technical debt.
As a developer, if you've
grown into multiple teams
over multiple
years, and there
is tons of code
in your org,
you are well aware of
the character code limit
This is one of the
powerful features
that I'm very happy
to share, where
it will help you
really reduce
that technical
debt and also
make it more
efficient in terms
This is a complete
dev productivity
feature
enhancements and was
one of the
most-asked feature,
even working with
our Apex team.
This is just
the start of how
do we come about
to writing scalable
code in Salesforce
early on-- shifting left
so that you don't have to
deal with the heartache
With that, I'll turn
it over to Mohith.
That was an awesome demo.
And I love that
we are able to use
the generative AI
and give insights
Just a reminder that it
uses our runtime profile
to give that information.
It's much more than
static analysis here.
All right, so with that,
I want to also remind that
all this week, we
had lots of fun.
There are a lot of
episodes that we did.
For example, we had
Release Readiness Live
for sales, service, CRMA.
We had flows and
[? advents. ?]
So if you did not get a
chance to catch it up.
Just use Salesforce+,
search for Spring
'24 Release
Readiness Live,
and you will find all
of those videos there
With that, I again want
to remind you that you can
ask your questions through
Salesforce+ Q&A tab
or tag us on Twitter
with the hashtag
#salesforcerrl or on the
Trailblazer Community.
All right, with
that, Karishma,
there are some questions.
Let's actually
get into some
of these questions
that are coming
Thank you again, everyone,
for jumping in, asking
This question came
up a lot, Karishma.
Can Enterprise
Edition [INAUDIBLE]
customers get
access to ApexGuru?
So right now, it's only
available for Unlimited,
but we are
looking to expand
fairly quickly to
other editions as well.
Having said that, if
there is someone who's
in real need in terms of
their code performance,
please reach out
to us, and we'll
With that, I want to
go back to our chat.
What's going
on, Ella, here?
Yeah, Rahul said, "Very
cool features for Apex."
So some awesome
feedback and excitement
There's also a
question from Anna,
if we want to ask that
one-- if we enable
Salesforce to access the
Apex code for ApexGuru
insights and use AI on
it, will the Apex code
be automatically used by
Einstein for Developers?
So the code stays
behind a trust layer.
And what we do is
we draw inferences
out of the code to detect
that antipattern just
for a short
period of time,
and we make the
recommendations,
but we don't store
anything for a long time.
Yeah, that makes
a lot of sense.
So how about we
pick this question--
this has been asked a lot.
We have this tool called
Code Analyzer that does
And then we have
this ApexGuru, which
So what's the difference
between Code Analyzer
So the detection
of antipatterns
is something
that is similar,
and I tend to get asked
this question a lot.
So we are detecting
similar antipatterns.
In fact, I'm
working very closely
with the team to make
sure we are detecting
How ApexGuru is a
little bit different
is because it
runs at scale,
we are able to also get
profiling information
So it's not just
static analysis.
But now we are
able to supplement
that runtime information,
which is very key, which
And that tells
you not only
that this code is not
well-written, but also
the impact that
it will have
So we are looking
at the runtime,
all those log details,
and then deep-diving--
You said codegen model
is what you're using?
So the codegen
model is helping us
for the recommended
code generation.
So that is where we
are reducing the dev
time to actually not
only tell them here
is a problem, this is
why it's a problem,
and here is the
code that will
help you fix the problem.
So right then
and there, we
are saving hours
for developers
to debug test and also
write the new code.
So everything is in one
place with Apex Guru.
We'll get back
to you, Karishma.
There's a lot more
questions coming
from our developers here.
We want to make sure
we get to all of them.
In case we couldn't
get to some of them,
we'll definitely get it on
the Trailblazer Community
and answer there for you.
With that,
actually, we want
to move to a new
segment, LWC.
How many of you do
LWC development?
I personally love
LWC because they
allow me to customize
the UI for our customers.
So we have senior director
of product management
I'm so excited to be here
to share all of the LWC
enhancements coming
your way for spring '24.
The first feature that
we're going to talk about
This API improves how you
manage tabs and subtabs
within your Lightning
Console apps
and it's all within
the LWC ecosystem.
Gone are the
days of having
to deal with Aura's
Lightning Workspace API.
Now you get the
control you've
been asking for with
LWC while maintaining
that high performance
and efficiency.
The record picker
base component
is also now
coming your way.
This base component
allows you
to select Salesforce
records with ease.
It is highly configurable
with many options,
including filtering
and validation.
It is also
mobile-friendly,
and it will work
offline, folks.
That's what I
love to hear.
And our team is working on
additional features that
are coming your
way, including
SOSL querying and quick
action integration.
And then we have
the custom component
This API allows you
to monitor your events
and interactions for
your custom LWCs.
The way that it works is
you log messages using
that log function
that you import
from the
lightning/logger module,
and then you analyze
those log messages
with Event
Monitoring using
our brand-new Lightning
Logger Event file.
We've tried to make
it very easy for you.
OK, let's see some
of these new features
OK, so here I am in my
LWC recipes console app.
And I got to this
via the app launcher.
And I can see
here a few recipes
around the Workspace API.
So the first
thing I can do
And if you are already
using this with the Aura
Lightning Workspace
API, you already
So I'll quickly go
through the others.
I'm going to interact with
this tab specifically.
I'm going to
change the label.
I'm going to
give it an icon.
I'm going to highlight it.
And then you can
also close the tab.
So if I come
down here, I can
And for all of
these recipes,
you can just click
on View Source,
and it'll take you to
GitHub, the Lightning
And you can view
the source code,
and you can clone
it as your very own.
Let's take a look at the
Workspace API over here
So the most important
thing I want to point out
is that I'm importing
these Lightning Workspace
elements directly from
Lightning Platform
OK, let's take a look
at our second feature.
All right now, the
Record Picker component--
with this recipe, we
have two examples.
The first one, I can
just start typing a name,
and it's going to
give me back a contact
here, Amy Taylor, and then
display some information.
In the second one,
I can actually
choose the
object to search.
So I can switch
from account
to contact and then start
typing a name again.
And it's going to
filter and bring back
the name that I want
and just select it.
Again, for these, you
can view the source,
and it'll take
you to GitHub.
But let's take a look
at this in Code Builder.
So here I am in my HTML
file in Code Builder.
And the main thing
I want to point out
is that I'm instantiating
this base component
and then just setting
the properties
that I want to
use with it.
And for both of
these features,
these were highly
recommended or highly
requested from
our community,
and we are so happy
to bring these
OK, now let's take a look
at the mobile for LWC
use cases and features
that are coming
The first one is the
Mobile Test Harness.
The Mobile Test
Harness enables
you to debug Lightning
Web components
for use in our
mobile offline apps.
The first feature
that we're
bringing to you
for spring '24
is Briefcase Integration.
Now you can
debug your LWCs
while you access
your data offline.
We also have
network tracing
so you can get those deep
network-level log files,
especially if
you have LWCs,
sending data up and
down from the server.
And we have quick
action integration,
so you can easily launch
LWCs from those Quick
Actions for easy
iterative testing.
And you can
download that today
for both iOS Simulator
and Android Emulator.
The Onboarding Wizard V2
is also now available.
If you are building
landing pages
for Salesforce app
offline use cases,
you can now use our
VS Code extension
and use the
templates there
to easily create
landing pages
for those offline
use cases.
In addition, we'll help
you create LWC Quick
Actions with default
LWCs, and then you
can modify those
LWCs programmatically
And for spring
'24, Salesforce App
is going to support three
of our latest Nimbus
Nimbus plugins allow you
to access native device
capabilities
within your LWCs.
So if you're building
LWC experiences,
you can now add NFC
data, document scanning,
With NFC, you
can read NFC data
for attendee hardware info
and attendee lead info.
For OCR document
scanning, you
can use the camera to
look at cards, documents,
and photos, grab
the text from them,
and then add that
data to Salesforce.
And then, for
biometric access,
you can engage
the biometrics
when additional
verification of device
And you can check out
the LWC developer's guide
All right, let's
take a look
at one of these demos in
action, the Mobile Test
OK, here I have
the test harness
The first thing I
want to point out
is the Briefcase
Integration.
So when I'm
debugging my LWCs
and I want to know they're
going to work offline,
I want to also download
my data offline.
And you can see I have
my downloaded my accounts
here, and I can view
my accounts offline.
And my LWCs will
actually use that data.
I also have Quick
Actions that I've set up
So let's go ahead
and create a contact.
And we'll create contact
Sue Fail, create,
but I can also view my
LWCs by going directly
to the SObject browser
and just drilling
in through the object
and find my LWC here.
And so I have
another LWC, and I'll
And the great thing
about this test harness
is now I can see that
all of my contact info
is still localized
to the device.
I can see the raw
data that's going up.
I can see any kind
of record data
Let's go ahead and
start the queue.
And it stops immediately.
Let's see what's going on.
And so if any
errors occur,
I get to drill in and see
the exact error message
I can see here
that it's rejecting
a contact with the
last name of Fail.
So obviously, I knew
that was going to happen.
And let me go ahead
and delete that one.
And I can go back and
start the queue again.
And the second contact
uploads successfully.
And the last feature
I want to point out
If you want to get those
deep network log info,
you can just start
network tracing,
interact with your
LWCs, and then stop
and view all of
the network traffic
So we're happy to share
all of these great LWC
and LDC for mobile
features coming your way.
I specifically love
how much attention
we are giving for all
the mobile developers,
specifically for
offline capability.
Now, I want to thank our
developer advocacy team
here for getting all
of these features, most
of the features,
like record picker
component and also
the console app,
showing all of
the Workspace API
into our LWC recipes app.
So if you're a
new developer
and want to learn
more about LWC,
LWC recipes app
is the way to go.
There are a lot of
bite size recipes
that we have created
for all of you.
And with these recipes,
we have test cases there.
So it makes learning
a little bit more
So with that, I want
to again remind you
that we had a lot of
fun this week here
We have covered a lot
of Release Readiness
Live for different
products,
like sales service,
CRMA flows, admins.
So there's a
lot of content
already available
on demand.
So if you missed
them, no worries.
Just search for spring
24 Release Readiness Live
on Salesforce+, and you
will see that we have all
of these episodes on
demand for you to watch
So again, keep your
questions coming.
We have Sue
and we have all
And so we have a
great opportunity
for getting your
questions answered.
With that, let's
see if there are
By the way, great job
with all of the demos,
specifically I'm
impressed by the LWC
for mobile, like
especially those Nimbus
plugins that
you are building
for different
applications that we have
field service or
mobile publisher
and also the offline
capabilities that you're
So related to
that, I think
we have a question
here coming up.
"Do you have code
samples for those Nimbus
Where can our developers
get some code samples?
We have lots of samples
that are available.
We have samples in
our LWC developers'
guide, where you can learn
more about the plugins
and also see the
code samples,
and we actually have some
samples in the DreamHouse
demo, where we
are highlighting
specific plugins
there, and we'll
With that, I want
to move to you Ella.
How is it going
in the chats?
I want to shout out
Felipe and Alba, who
are in the chat answering
a lot of questions
and sharing a
ton of resources.
So if you haven't
been paying attention
to the chat, there's
a lot going on there
and definitely check some
of those resources out.
We also had a comment
from Jacqueline
on Salesforce+, commenting
"LWC open tab, finally."
So some excitement
there around that--
There is a question
here for that onboarding
wizard that you
talked about.
So "Is the onboarding
wizard part of Salesforce
That's a great
question, because there
are a lot of
extensions for VS Code.
It's actually its
own extension.
So when you go out to
the VS Code marketplace,
you can just search
for Salesforce mobile,
and then you'll find
the Salesforce mobile
extension that has all
those features for you.
I think it makes sense
because if we load--
I'm sure Ananya will
agree with me-- if we just
package everything
into that extensions
for Salesforce, it's
going to be so much bulk,
and it's going to make
it hard for someone
So we package only
the required ones,
You can bring in
others as well.
So there is
another question
By the way,
congratulations
your team and I
think other teams,
base components
teams that have
been able to manage
delivering this Workspace
I know this has been
one of the features
that our developer
community has
been asking forever
because they
They want to move
on to this new LWC
components because
of the performance
and the developer
experience
is so much better than
the other components.
They've been
asking for that.
Again, glad that you were
able to deliver that.
So we have LWC
recipes, as I said.
But there's a
question here.
Coming back to
that question.
"When working with
Workspace API,
is it possible to
listen to events?"
Like for example,
detecting
when a tab is closed
or when you're
opening a tab, is it
possible to detect
What you can do is
you can actually
listen to the Lightning
Console events
with your LWC,
and then you
can subscribe to the
Lightning Message
And then you can listen
for Lightning Tab
Created, Lightning Tab
Close, or Tab Focused,
So it makes it very easy.
I love the
example that you
showed where you
said change that
And all of that
code is open source.
So I really like that
it's open source.
So for all of you, you
can fork it, play with it,
and also improve it
if you'd like to.
And one thing I like
about those LWC recipes
in particular is we
also add those jest test
We want to give developers
a real head start
and give them something
working to start with.
I want to move on to
Ella to see if there
is any other question
for Sue that's popping
It looks like a
question that we have
for you is for the
record picker component.
You mentioned that you
can use matching fields
That's a good
catch on the slide.
So we match to the name
field specifically,
but if you wanted to
match to a different field
or you want to have
a secondary matching,
And then if you notice in
my example on the display
side, we only display
the name field as well.
But if you have
multiple Amy Taylors
and you want to make
sure you're getting
the right one,
you can actually
add a second display
field as well so
that you make sure that
your users are selecting
So there are questions,
of course, coming to us,
but we will get
to that shortly.
Everyone, we'll get
to that shortly.
Now we want to move on
to the next segment,
and I'm really
excited for it.
Large language
models, they
have all of the
great capabilities,
but how can
Salesforce developers
use all of those
capabilities
of large language model
and add AI capabilities
That's the question
that we have
And to show some
of the innovations
that we are
actually bringing
to you in the space of
generative AI application
development and platform,
we have Avanthika.
Avantika is director
of product management
here focusing on Einstein
generative platform.
I'm Avantika, and
I'm a director
of product on our
Salesforce AI team.
Now, we're in an
AI revolution,
which means it's
completely rewriting
the narrative on how we
build applications moving
That's why at
Salesforce, we
want to give you all
the tools you need
to embrace this
transformation
and stay ahead
of the curve
by building AI apps on
Salesforce much faster.
So today, I'm super
excited to showcase
a brand new platform
innovation that we
are excited to
get in your hands
at the end of this
month, which is our one
So let's zoom out
and think about,
A prompt is just
an instruction
that you send to a
large language model.
And it's capable of
answering questions,
generating content, or
even summarizing texts.
But to write good prompts
and get your desired
output, these
prompts need to be
tweaked and
iterated on, which
means you need to be
able to edit, version,
Now, speaking of a desired
output, the way that you
can get rich and
personalized outputs
is only by grounding your
prompts in your company
So this is how
we allow you
to ground your prompt
templates with your CRM
And finally,
speaking of data,
we need to make sure that
we protect your customer
And that's why, thanks
to our trust layer,
we make sure that
any sensitive data is
completely masked
before being
sent to those large
language models.
So if we bring
all this together,
the prompt builder
lets you author
and deploy prompt
templates to power
your generative
AI applications.
So let's see
this in action.
Now, let's say you're
a developer at E-Bikes,
a retail company
that manufactures
electronic bikes,
and your tasks
is to automate some of
these internal processes
around selling,
servicing, and marketing
Now, I'm going
to show you how
the prompt builder can
make your life so much
So I'm going to go
into Salesforce setup,
and here, I'm able to
access my prompt builder.
You'll see that
I have a list
of prompt
templates available
We have type specific
to certain use cases,
like field generation,
but we also
have flex types that
allow you to generate
Now, I've already
created a bike promotion
newsletter
prompt template.
So let's go ahead
and dive into how
we created that template.
So here we are in
the prompt builder.
As you can see,
we have a Canvas
to essentially create
any prompt that we want.
You have the ability to
write your instruction,
insert references to your
data through a resource
picker, select
a model, whether
it's an out-of-the-box
model or your own model,
and preview the output
within our prompt preview
at the bottom half
of the screen.
Now, as I said earlier,
we have the ability
to version these prompts.
Well, I have a
prompt template
that essentially instructs
the LLM to generate
a promotional
newsletter about a bike.
It takes in CRM data about
the name, the material,
and all the relevant
product information.
Now, what we do
that's really special
is that we can also invoke
an Apex class that's
going to fetch
similar byproducts.
And finally, we can
even instruct the LLM
to output the response
in HTML format.
Now, let's see what
happens if we actually
preview this template
on a sample bike
Now, behind the scenes,
what's happening
is that we are respecting
all access permissions
and field level
security while bringing
in this data into
our prompt template.
As you can see, we're
referencing the Dynamo X4
products, we're
referencing all the data
about this product
right here,
and we're also invoking
our Apex class, which
is essentially fetching
the similar products
to this bike and bringing
that information back
Now, if we want to
check out the output,
you'll see on
the left here
that we've resolved
all the references
We also have all
the information
about the similar
products that
came into our
prompt, and we
have our final
instruction to generate
Now, what you see here
in the bottom left
is that final
prompt that's
going to be sent to the
large language model.
And on the right,
just as we expected,
we have our answer
in HTML format.
Now, we got a
great response.
Let's see how we can
actually operationalize
this in our business
and embed this
So now, I am here within
our E-Bikes product,
and I can go ahead and
generate a newsletter.
So here, I have
an application
where I can essentially
search up a product,
and I have a Lightning
Web component
that allows me to
generate a newsletter.
Now, behind the scenes,
this Lightning Web
component is actually
invoking our Apex Connect
API for prompt
template generation.
As you can see here, we
generated our output.
And because it's
an HTML format,
we can actually
even preview it
within a Lightning
Web component.
Now, to show you our
prompt template Connect
API, we're actually
going to see
that we pass in all
the inputs to this API,
we're able to make
some modifications
to our model
hyperparameters,
and we generate
that output.
Now, the capabilities
don't stop
Let's take
another scenario.
Let's say you
want to keep track
of all the reviews
about your products
and keep a summary
up to date about what
your customers are saying.
Now, if you
think about it,
reviewing all these
reviews can be quite
time consuming
and tedious,
especially as new reviews
get updated on the fly.
Let's see how a prompt
template can help us out
So now I have a new
prompt template,
the summarize customer
reviews prompt template,
which is essentially
going to ask
the LLM to summarize
all the reviews.
Now, we have the ability
to actually ground
prompt templates
with related lists.
As I can see here, I
selected the customer
I'm also able to instruct
the LLM to generate
a sentiment on
all the reviews
and provide future
examples about what
positive, negative, and
neutral reviews are.
And finally, we
can ask the LLM
to generate the
output in JSON format.
Now, if you
think about it,
this is great if we did
it on a per-record level.
However, we want
to make sure
that these summaries
are kept up to date
every single time
a new product
That's where the power
of flows come in.
Every time we get a
new customer review,
we're going to fire off
a record triggered flow,
which fetches the
product that's associated
with that review,
it sends that
to our prompt
template, which
is the summarize customer
reviews action here,
and then we get the
output in JSON format.
We're able to use
the parse action
within our flow, parse the
output from the payload,
and update the respective
fields into our products.
So as you can see here, we
have our final Dynamo X4
We have the AI-generated
customer feedback, which
is essentially a summary
of the latest reviews,
and we've updated the
field with the sentiment.
Now, I just
showed you a lot
of cool new capabilities
that are coming out
We walk through our
prompt templates
and how you can
actually embed
invokable actions
and Apex into
We also showed you how
you can invoke our Apex
Connect API from a
Lightning Web component.
And finally, we showed
you our prompt template
invokable action
that you can trigger
So I hope you're
just as excited as we
are to get your hands
on these technologies
And now that
you've learned
about prompt
templates, things
are going to get a
lot more exciting
with our Einstein
Copilot, which we're
going to be unveiling more
about next month at TDX.
So with that, I
want to thank you
all for tuning in and
let's pass it back
What I love about that
demo is large language
models usually give output
in unstructured data,
but the power
of prompt there,
you can ask it to
automatically format
to STML so you can
use it in your LWCs.
And you can also ask
it to format to JSON,
and then it can convert
that unstructured data
And then you can do
a lot more things.
I think imagination is
the only limit for working
with this prompt,
engineering and prompt
based large
language models.
With that, I want
to, again, remind you
that Avantika
is here with us.
She runs all the services
for this prompt builder
So make sure to get
your questions answered.
So use that hashtag
#SalesforceRRL
on Salesforce trailblazer
community and X and also
make sure to use the chat
here in the Salesforce+
or the Q&A feed and
ask all your questions.
And I want to
remind you, again,
that if you have missed
our shows previously,
like Release Readiness
Live for admins or flows,
got all of them on demand.
With that,
Avantika, great job
actually delivering
that prompt builder.
I think it's coming
in upcoming month.
Our developers,
I'm pretty sure are
excited because what you
showed today was like,
OK, when I think
about prompt builder,
I usually think it's admin
based or consultant based
or business-based tool,
but I love your examples
because what you
showed us is like,
no, even as a
developer, you
can create these
prompt templates,
put it in your
application,
think of creative ways to
embed this within LWCs,
or automate within
Apex and flows.
I think there's a
lot of potential
there in terms
of prompt builder
and making use of the
large language models
So there is a question
coming up here from
"What models are supported
in prompt builder
First of all, I
love the enthusiasm
Of course, we're
trying to make
everything super developer
centric and friendly
In terms of our models,
as you saw in the demo,
we have the panel to
essentially associate any
model with a specific
prompt template,
and we're supporting
the ability
for out-of-the-box models,
whether it's OpenAI
But also, once customers
connect their own models
through our Einstein
Studio model builder,
they'll also see
those models show up
in their prompt
template dropdown.
So yeah, they can use it
with virtually any model.
I love how we are thinking
about the architecture
here, because the models--
I think today when
I was coming here,
I was reading
news, Gemini,
you know Gemini is
the new model that's
So I think there's going
to be a lot of models
And I think from an
application developer
perspective, I think
we are giving them
that flexibility,
that choose
your model that you
like for your use case.
Use the same
prompt templates.
In fact, I think
you can duplicate
those prompt templates
with different models,
You can use
each prompt with
When you're combining the
power of prompt templates
models and flows,
everything just
I love how we are
thinking about enabling
our developers with this
large language model
technologies that
we are seeing.
I want to go back to
Ella to see what's
There's definitely
a lot of excitement
And I really want to
call out a comment from
[? Eddah, ?]
who just posted,
"I'm so happy to see
all female presenters
in a historically
male-dominated area."
So definitely want
to give you guys
a shout out and some
developer love there.
But there's
also a question
I think related to
what you were just
talking about, which
came from [? Nikette ?]
And it was, "Which LLM
does prompt builder
So as I said earlier,
we have out-of-the-box
models that we
already support.
So we support
OpenAI models,
including GPT 3.5,
GPT 4, and also
all the different
context windows,
including the 16k
and 32k models.
And then we also support
the Azure models as well.
So soon customers can
connect their own models
if they don't want to
use these out-of-the-box
models and customize
it to their needs.
We'll take one
question, and then
I will open up
the floor so we
can get some
variety of questions
and get all of
you in action.
All of you are in
hot seat right now.
So the question here
is around Copilot.
I know you teased a
bit about Copilot.
And I think admin
relations team actually
It was a very
cool demo, showed
how to configure Copilot.
Let's get a little bit
into that for developers.
I think we have
a lot more coming
at TDX for developers, but
let's talk through this.
What is Copilot and what
is this prompt builder?
How are these two
getting related?
I'd love to
demystify because I
think the term Copilot
gets thrown around a lot.
So if you think
about the Copilot,
you can think of it
as that conversational
assistant that's
embedded into every CRM
So that conversational
UI, you can go to it
and ask any
questions you want.
And out of the box, when
we release our Copilot,
we're going to have
some actions that it's
very capable of taking,
like summarizing records,
querying records,
updating them, executing
And this is really where
you see the power of AI,
where it can take
actions on your behalf
Now, if you think
about the Copilot,
people are not
going to have
a one size fits
all Copilot
Everyone wants to
customize this.
They'll have various
actions or even
AI-powered actions
that they want
And that's where the
Einstein Copilot studio
So you have a studio
of different builders,
like an action builder,
a model builder, and even
the prompt
builder, which help
you connect all these
systems together
to make your Copilot
more powerful.
So if you think about
the prompt builder,
it's just one of
several actions
available for Copilot,
just like a flow,
And essentially,
you describe
You describe what
the inputs are,
what it's capable
of, you connect it
And then based
on a task, it
will be able to
identify the right
It's an AI assistant,
basically, but then
--that automatically
tries to figure out
which actions it
should execute.
And the actions
are the ones
that's going to be
written by developers
Can I write an
Apex action there?
I'm going to be writing
a lot of Apex actions.
Apex actions flows,
APIs, anything,
And then you
have a planner,
which is essentially
another prompt
behind the scenes
that's putting
all these tasks in order.
I have one more
question for you.
You showed us the
prompt builder,
prompt templates,
and all of these.
Let's imagine that
I'm a developer
and I want to just use
APIs to actually call
Like for example,
I'm building
a node application
maybe on Heroku,
I want to call those
prompt templates
that I've created in my
Salesforce application.
Do you expose
APIs as well?
And then as you saw
earlier as well,
we even have that Connect
API for prompt template
generation that you can
invoke from a prompt--
I mean, a Lightning
Web component,
You have a lot of
different avenues
There's a lot
to learn here.
There's definitely
a lot to learn.
And thank
goodness, we have
I myself have a
session on how to use--
or how to get started with
Copilot actions in Apex.
With that, I
want to go back
to Ella to see if there
are any questions.
How's it going
in the chat?
We have a lot
of questions.
And for all of
our presenters,
is there a particular
area you want to start?
Let's start with
Karishma, see
if there is any questions
coming up for Karishma.
We have one here
from Salesforce+.
And it's, "How does
Apex guru insights work
Does it recommend
managed package logic?"
So right now, because
we cannot look inside
the code of the
managed package,
that is not possible, but
if a managed package is
invoked from any other
lines of code in Apex,
we will at least be able
to give you the entry
point and recommend
if you're calling
the package in the
right way or not.
So we'll give you some
high-level insights
And I think Karishma,
this one comes up a lot.
Even I was reading my
Twitter feed yesterday.
I think Kevin
asked us how can we
get more insight
into managed package
I myself have been an ISV
developer for a decade,
and it's one
of those areas
that I think we need
to work a bit more.
So we'll be happy
to collaborate again
with your team Karishma,
and we can give you
some insights how
these apps are built
and if there are ways by
which we can leverage,
the AI again, tap into
at least the logs.
I know that we
[INAUDIBLE] the logs.
I think that
makes it secure
but also has its
own challenges.
So thanks for
answering that.
I think there is another
related question for you.
So another related
question coming from
Steve here on Salesforce+.
Steve is curious,
"Will Apex Guru
be supported in
government Cloud Plus arc,
You know the story
with GovPlus arcs.
We have been getting
tons of requests on that.
What I can tell you is
we are in conversations
with that team
to see what can
be done for our
GovCloud customers.
So definitely,
conversations
Obviously, there
is a higher level
of regulations around it.
So it will take
some time for us
to get that feature
out, but nonetheless, we
Let's take a
question for you
Ananya, a very
interesting question.
And this has been asked
a lot today, Ananya.
Can we use Einstein for
Developers for LWCs?
This one I can actually
make happen because
in time for TDX, we
will be releasing
functionality
that will allow
you to use our new
inline code completion
feature in your
LWC files, and this
includes JavaScript,
HTML, and CSS as well.
So this will be
super exciting.
I know we've been
getting a ton of requests
since the pilot
last summer on how
you can actually use
Einstein for Developers
So we're making
small strides
towards getting all the
functionality there.
There is a question
for you Avanthika.
I think this is a very
interesting question.
Let's see if we
can get to this.
So can the prompt
builder also create
custom report types,
reports, and dashboards?
I think sky's the limit
with the prompt builder.
We even have teams at
Salesforce that are
building out-of-the-box
applications that are
powered by prompt
templates to do formula
generation,
report generation.
So essentially, you can
take those out-of-the-box
templates and customize
them to your needs or you
can build your own prompt
templates that do so.
At this point,
I want to remind
that we will be here
for another 15 minutes.
So get your
questions everyone.
And even for me
internally at Salesforce,
it's very hard to get
all of us on a room
because everyone is
busy with shipping
a lot of these
features, as you see.
We have a lot of features
coming in spring '24.
So speaking of
questions, Ananya,
this question is for you.
"Is Einstein
for Developers,
is it available in VS
Code or just online
Oh, that's a
good question.
So Einstein for
Developers is available
both in VS Code
and Code Builder.
And in both of
the IDEs, you
are going to have to
go into the extensions
marketplace and download
it specifically.
At this point, similar
to the extension that Sue
was talking about
earlier, at this point
Einstein for Developers
is not packaged by default
with the Salesforce
extensions for VS Code.
So it is a
separate extension
that you have to install.
This is for you Karishma.
"What are some
of the roadmap
items we are planning
for 2024 for Apex Guru?"
We are looking to
expand the number
of anti-patterns
that we detect.
We are starting
with a small number,
but our focus
is going to be
to bring more and more
anti-patterns so that we
can detect more and
more unscalable code.
Apart from that,
we have tons
of requests on on-demand
report generation.
So I talked about these
reports being generated
on a weekly basis
today, but we
are hearing from a lot
of our pilot customers
to say, hey, I want
to be able to run this
on demand at any time and
also a feature around,
how do we download
these insights directly
so that it's
easier for them
to ingest it
in Code Builder
and start working on that?
We are also
looking to shift
further left
and very active
conversations with
the Code Builder team
to see how we can bring
these within Code Builder
So tons of roadmap,
safe harbor.
We also have a session
on Apex Guru and TDX.
So we will be
talking about some
of these capabilities
as well, more to come.
Sue, this is a
question for you,
and it's coming from Dawn.
Dawn, thank you
for your question.
"Are LWCs usable in
native SFDC offline apps?"
I think they meant
Salesforce+--
oh, sorry-- Salesforce
apps or app Plus.
Yeah, you can
definitely use LWCs
And then we also
have the ability
to have LWCs go offline
for Salesforce app Plus
too for the
offline use cases.
So a huge part
of the Salesforce
Tell us what you're
working next for this LWC
What are some of your
plans for next release?
Of course, we have
the safe harbor,
What are some of the
things that you see?
Are you seeing
adoption of LWCs
And we are completely
going down the LWC route,
especially because a
lot of our customers
And LWC is the
way to do that.
And so we're making sure
it's easy for customers
to build LWCs, debug
LWCs and use them
in Salesforce
app regardless
of whether they're
online or offline.
Talk us a bit
about the app
that you showed
for debugging.
It's an app in
itself, right?
And I love the feature
where you showed, OK, you
I know you know building
offline apps, trust me,
it's difficult because
tracing, debugging--
and I love that we are
thinking through all
Thank you for
all of the work
that you're doing
with the offline apps.
There is also one
more question for you
on the same
offline mobile SDK.
So how is this
offline mobile SDK
different than Consumer
Goods Cloud offline app?
Is there a thing
called Consumer Good--
So this one is
meant for developers
that are using
LWCs to go offline
and to be used
in field service
or in Salesforce app
where the Consumer Goods
offline app is
specifically
And there I
don't believe you
can use LWCs
with that yet,
but we are working
with that team
closely to see how we can
partner together better
There is a question
for you Avanthika on,
can we use prompt
builder for auto reply
So we actually already
have some service
applications
that are doing
auto replies for
chat as well,
but essentially, you can
use a prompt template
within a flow if you want
to do automatic email
So yes, I will say there's
a lot of possibilities
I will say there's one
thing to watch out for,
which is on a
customer-by-customer
It's, when do you want
a human in the loop
I think it's an important
and conscious decision
Sometimes, people want
to check the outputs
from the LLM because
these are obviously
not deterministic,
and they
want to verify that
before it gets out
However, if they
did feel confident
and they did a
lot of testing,
they should
definitely feel
empowered to
automate those.
I think the AI
ethics, I see
that as a huge focus
for us at Salesforce.
And also, I think with
all these AI technologies,
ethics just becomes
really critical.
I loved your example
when you named your field
as AI-generated feedback.
That's great, because
then, as an end user,
you can see that this
whole functionality
And I think transparency
is really important,
knowing when texts or
content is AI generated
So we do think a
lot about that.
I want to go back to
you Ella to see what's
There are still a lot
of questions coming up
and a lot of excitement
and, like I said,
a lot of resource sharing.
So if you don't
have the chat open,
definitely open
up that chat
because there are a lot
of resources being shared
that I think
a lot of folks
would find
really valuable.
So there are a
lot of questions.
I'm just trying to find
out questions which
I think, it's very,
very interesting
So in terms of
prompt writing,
a lot of these
developers have
their own defined
style guides
for how they
write Apex code.
So are there any prompt
techniques coming out
that's going to respect
those style guides
that they have
already established
in their organizations
or in their project
So that is a really
interesting question.
It's been one of
the big things
that we've been
hearing from many
of our developers thus
far too, where not only do
they want us to
respect Salesforce best
practices, but
they also want
us to understand and
follow the best practices
that they might have
set as an organization
So at this point,
what we recommend
is that you include
all of this information
within the prompt itself.
And in the future, what
we are looking at doing
is understanding how
we can actually either
have some sort of a format
through which you can
provide us more info
on what those best
practices are that
you want us to follow.
And then the other
piece that we
are going to be
exploring more into
is retrieval
augmented generation.
So we're also
going to be looking
at all of the
existing code
that you might have
within your project
to understand the
different patterns
or practices you might
have in place there.
And our future
recommendations
will be based heavily
on those patterns
that you already
have in your project.
I love the ability
to do retrieval
I think this is
becoming a trend.
Avanthika, do you
have any insights?
I think you showed
up at New York World
Can you talk us a
bit about RAG feature
that you have
for Data Cloud?
You have a great
memory, Mohith.
We announced this at
New York World Tour
during our
opening keynote,
but when Ananya was
talking about RAG,
that's when it hit my mind
that we have our Einstein
Copilot search
functionality that's
already been released,
where you can connect
any structured or
unstructured data
to your organization
through Data Cloud.
And then we give you
the ability to chunk,
We have a vector
store in Data Cloud.
And now we're actually
running a pilot
where you can actually
use retrieval-augmented
generation within
your prom templates
even in prompt builder and
invoke the APIs to fetch
And then soon in
the next release,
we're also thinking
about more native support
of Data Cloud and
retrieval-augmented
generation vector
search, all
within the prompt
building experience.
I think this is
something very new.
And if you could
clarify, when do you
think there's a
use case for RAG
versus use case for
just using the prompt?
This is a great
question because I
think everyone
automatically
thinks if they're
grounding on their data,
they have to do advanced
semantic retrieval, which
There are some instances
where you might just
want to summarize content,
just like I showed
in my demo,
where you don't
need to really do
retrieval-augmented
Essentially, you just
have to query recent data,
bring all that data
in, and summarize it.
Where it becomes
important is
when you want to find
semantically or natural
language similar text to
what you're looking for.
So let's say I have
a certain query when
I'm doing a chat response
that comes in from an end
customer, I want to be
able to take that query
and search using natural
language against,
let's say, my knowledge
articles or my documents
to find articles that
are similar to what
That's when I would want
to pull in the top three
or four articles
that are relevant,
bring that into my
prompt, and then
have the prompt send
all that data, both
the instruction and
the augmented data
that we did from
retrieval, to the LLM
and generate a very
cohesive response.
So that's the
whole thinking
behind what
retrieval-augmented
generation is, essentially
augmenting the prompt
with extra data
from your business,
but then there are
very specific use cases
when you actually
need to use it.
So I think we
are almost coming
It's been pleasure, by
the way, having everyone
And, as everyone
said, there's
a lot of women in
tech representation.
So thank you,
again, all of you
for joining us today and
asking your questions.
If we didn't get to
your questions live,
be sure to ask it in
trailblazer community.
We'll make sure to
get your answers.
And there are much more
updates in spring '24
than we could cover
today, of course.
So what we have done is
we have curated everything
for developers in
this blog post.
So you can see
on the screen
that you will
have a blog post.
And you can go
there, and it
has all the information,
all the links for you
to go back and refer to
all of these features.
Finally, I want
to also remind
that there is TDX
TrailblazerDX coming
I hope to see everyone
there, including
And we will have a lot
of deep dive content,
a hands-on
workshop covering
prompt builder, Copilot,
Data Cloud, Apex, LWC,
There is a lot
of content there.
So again, thank you,
everyone, for having me.
And make sure to catch
up all of our episodes.
We have them on-demand
as well on Salesforce+.
And with that, have a
great day, everyone.
And we'll catch up next
time in the clouds.