In late 2024, there will be an instructor led 3-day course that teaches how to use Salesforce products such as Agentforce. (Available in San Francisco and London, with more opening in AMER and APAC regions).
But, my favorite and the one I plan to take advantage of is the chance to earn one exam attempt for either of these two AI certifications:
AI Associate– Allows you to provide informed strategies and principle regarding This one is pretty easy to get and you can check out this post about tips for studying to this one.
AI Specialist– Allows you to implement out-of-the-box AI Capabilities that Salesforce offers. Includes Einstein CoPilot, Prompt Builder and Model Builder. This is the one I plan on taking for free soon.
Even though these free offerings involve Salesforce AI solutions and practices, they are still a great opportunity to get up to speed on all that Salesforce is offering and prove that you know it.
This week is Dreamforce and this year it is all about Agentforce. Agentforce replaces Einstein CoPilot introduced at last year’s Dreamforce. Rather than just assisting employees, agents built with Agentforce will operate autonomously and able to do fairly complex tasks. Watching the keynote yesterday, I have to say the demos they did were very impressive.
Agents built with Agentforce are kind of like a chatbot on steroids. Much better than the chatbot Copilots introduced last year.
The conference continues today and tomorrow. If you have some time, you might want to go to Salesforce + and signup to watch for free. You can check out the schedule for today and tomorrow.
There are many things to see, but today I would suggest checking out the Agentforce keynote at 11am (CST – right after standup). There will also be another one in an hour called Meet Agentforce.
Rather than charging per license, Salesforce will charge $2 per conversation. It is intended essentially to replace some service workers, sales reps, merchandisers. It can even act as a sales coach, personal shopper or buyer agent.
Do you know about Lightning Aura Components? These are still a part of Salesforce, and even though they’re not as popular as they once were, they’re still important. I work for a company that uses them a lot, and we don’t want to change them. This is because the newer version called LWC can’t do everything that Aura components can.
In the past months, I’ve been busy working with Aura components. I’m not upset about it. In fact, I enjoy the challenges my job brings. I think working with Aura components is fun, and I like solving problems with them.
But, I’ve noticed there aren’t many resources to help people learn how to make or fix these components. Even my own online class about them has been taken down. But don’t worry! You can still find the class and learn about Lightning Aura Components if you click on this link.
I also have a place online where you can find examples of how to use them. And, I’ve written a few posts about the class that you can find from this article.
I plan to write more about the problems I face while working with these components. I might even create more examples for you to use. I hope this helps other people who are also working with Aura components.
Aura components were used for 5 years before LWC came out. That means a lot of them were made during that time.
I hope that Salesforce sees this and works on making LWC better. Right now, it can’t do everything it needs to.
I recently wrapped up a course for Pluralsight about “Salesforce Einstein: The Big Picture”. By the end of the course, I identified key areas where special attention could bring about success. Here are four specific tips and resources on preparing for your own success.
#1 – Get Your Data in Order
High quality data is crucial for the Einstein engine. Issues like missing records, duplicate entries, and inconsistent data standards can cause problems. It’s important to regularly review and update data to prevent inaccuracies.
This tool provides reports and dashboards to track data quality for various standard objects. Each dashboard includes a report that you can drill down into for further detail. You can also customize it to monitor additional custom objects.
# 2 -Consider Bias
In computer systems, bias can cause unfair outcomes, even if not on purpose. It’s important to identify and deal with bias to ensure fairness in models and data quality. Here are some types of bias to watch out for:
Measurement Bias: Occurs when data is oversimplified or mislabeled, leading to over or underrepresentation of certain groups. For example, using zip codes could unfairly include or exclude customers from certain areas.
Confirmation Bias: Happens when models reinforce existing belief systems. For instance, a recommendation system based solely on past purchases may limit options for customers.
Association Bias: Occurs when products are connected based on past assumptions, like assuming only girls play with dolls and boys with trucks.
To reduce bias, involve a diverse group in planning and design. Let everyone offer feedback freely and make sure they understand the importance of ethical design and bias detection. This group can also help review results and decide necessary changes.
When choosing training data, consider its source and potential biases. Removing biased data or fields from the dataset can prevent reinforcement of bias in AI systems.
By dealing with bias in the planning and design stages and including a diverse group of participants, we can move towards more fair and ethical AI systems. Check out this blog post for more on how AI can amplify biases.
# 3 -Go with the Flow
Models created with Prediction Builder or Recommendation Builder can produce a score that results in a recommendation. The recommendation is just a suggested action given either to an employee or a customer. For example, “Upsell this customer to the following package our company offers”.
Einstein Next Best Action is a tool used to create an “action strategy” based on that recommendation.
But what is an Action Strategy?
Quite simply it’s a flowchart that automatically executes business logic to generate some type of output. It could be an instruction given to an employee, a task assigned, an email sent, etc. The choices are endless.
For now, you can create strategies with Strategy builder or Flow builder, but be aware that Salesforce plans to retire Strategy Builder in the future, so I suggest only using Flow Builder. If you are not familiar with Flow Builder, now is the time to learn.
It is not difficult to use, but the flows you need to build may be quite complex, so the more comfortable you are using it, the better. I suggest you check out:
Are you familiar with ChatGPT? It’s quite the tool, capable of impressive feats. But let’s face it, sometimes it falls short of our expectations. The secret to unlocking its full potential, along with other GPT products from Salesforce, lies in the art of crafting the perfect prompt.
So, what’s a prompt? It’s simply the input you give to ChatGPT or any similar tool to get the desired output. But here’s the catch: getting the right answer often requires some trial and error. You ask a question, ChatGPT responds, and if it’s not quite what you need, you refine your prompt and try again. It’s a bit like a conversation where you keep tweaking your query until you hit the jackpot.
But who has the time to craft elaborate prompts every single time? Not your average Sales or Service rep, that’s for sure. That’s where prompt templates come into play. These are pre-made prompts tailored for specific scenarios. They’re like ready-made templates you can select whenever you need ChatGPT to do something for you.
But here’s the real magic: connecting these templates with your Salesforce data. This is where merge fields come in handy. They allow you to pull in information from Salesforce, making your prompts even more powerful.
Designing a prompt template, especially for something like crafting a customer email, requires careful planning. You need to consider who the email is for, what it aims to achieve, the context, any constraints, and more. It’s an iterative process that involves testing, reviewing, and refining until you get it just right.
Luckily, Salesforce provides tools like Prompt Builder to make this process easier. With Prompt Builder, you can not only include merge fields but also add logic to your templates. This opens up a world of possibilities for common business workflows like email generation or creating text for case summaries.
So, if you want to unlock the full potential of ChatGPT and take your business workflows to the next level, dive into prompt templates and Prompt Builder. And hey, if you need some tips, Salesforce has got you covered with their blog offering 7 tips for powerful prompt design. Happy prompting!
It’s understandable if you feel overwhelmed by all the AI information hitting you right now. Even though Salesforce Einstein has been around since 2016, the attention towards it lately has increased exponentially. And since 2016, Einstein has evolved and added a lot more products.
You might be feeling anxious about catching up?!?
Don’t worry. If you’re ready to dive into Einstein, but not sure where to start, I released a course on Pluralsight called, “Salesforce Einstein: The Big Picture“. This course will look at all the AI-based products Salesforce provides and offer tips for success.
The majority of products are considered out-of-the-box applications. They are embedded directly inside of CRM applications you use every day. They each serve a very specific function and are easy to use and setup.
There is also the Einstein Platform, which provides powerful tools that allow Admins and Developers to build their own customized AI-based solutions. They use multiple tools to create custom AI assistants that perform a combination of intelligent functions.
The majority of products are considered out-of-the-box applications. They are embedded directly inside of CRM applications you use every day.
Salesforce intends to embed Einstein into all clouds. But for now, it is limited to a few. It’s offered in bundles and add-ons that include:
Einstein for Sales – Designed to help sales reps close deals faster by automating busy work, offering customer insights , analytics, and generating content, like customer emails. Lead and Opportunity scoring use predictive models for lead conversion and opportunity closure.
Einstein for Service – Improves customer service by offering recommendations, routing cases effectively, generating content like emails or service replies, and offering chatbots for customers 24/7. Additionally, Service Analytics offers pre-built dashboards displaying key performance indicators derived from service data.
Einstein for Marketing – Provides scoring tools for predicting customer engagement and optimal send times, along with Messaging Insights to monitor email activities. Copy insights aid in generating effective subject lines and content, while content tools facilitate testing to identify top-performing versions. Additionally, it offers email and web recommendations for personalized experiences and expands audiences through lookalike identification.
Einstein for Commerce – Personalizes the shopper experience with product and search recommendations, which can be displayed in designated slots on a commerce site. Additionally, it provides insights to merchandisers for optimizing storefronts.
Einstein for Analytics – Utilizes assets such as datasets, lenses, dashboards, and apps, which can be built and viewed using Analytics Studio. This enables the creation of rich interactive visualizations, while Einstein Discovery offers advanced analytics, including predictive models, to deliver insights and recommendations based on CRM data.
Einstein for Admins and Developers – Offers improved global search and generating code using natural language. Additionally, includes Vision and Language products for creating AI assistants, along with Prediction Builder for developing predictive models, such as predicting late payments from invoices and displaying results in list views and record pages.
Most of the products included in the bundles are built using the following core features:
Prediction Models – Prediction models utilize machine learning to allow orgs to use data from the past to predict the future. Using a probability score value, these models can predict things like how likely it is that an invoice will be paid on time.
Recommendation Models – Machine learning is also used to recommend anything to employees and customers by connecting two Salesforce objects together. Recommendation models can then turn that recommendation into an action.
Natural Language Processing – Works by assigning labels to text. A machine learning model then learns the mapping between input and labels to predict the intent and sentiment of the input.
Chatbots – When created for customers, they can not only read the text input customers provide, but map this to a specific customer need, perform some action and return what the customer needs.
Classification – Is an AI tool that is good for assigning labels to data. Einstein uses deep learning to predict what labels need to be assigned and can consume unstructured data, like a Case description or subject field.
Generative AI – Using many of the other core features and combined with a Large Language Model (LLM), Generative AI can respond to natural language questions or requests with responses resembling what a knowledgeable human would provide.
I will be adding more posts with information from the course, but if you want to check out the Pluralsight course and do not have a subscription, you can always sign up for a 10 day free trial.
The big news at this year’s Dreamforce (2023) was the prominence of AI across the Salesforce platform. Generative AI is not new to Salesforce, but soon it will be baked into almost every product through the Einstein 1 Platform.
The core of this is the new Einstein One Copilot, which will function as a personal assistant in nearly all Salesforce apps including Sales, Service, Marketing, Commerce, Tableau, MuleSoft, and Canvas. At Dreamforce, Salesforce indicated that most Einstein One features will be generally available (GA) in the first quarter of 2024. Check out this link for a Salesforce cheat sheet on pricing and readiness guide.
But you don’t need to wait for 2024 to start planning. The time to start preparing for successful AI implementation is now. Proper planning and preparation is crucial for integrating AI in a way that augments human capabilities. Think of it as a journey that will require adjustments along the way.
The time to start preparing and designing a successful AI implementation is now.
So, what can you do know to prepare for this journey?
Step 1 – Learn more about Generative AI
Even if you use ChatGPT all the time, you need to learn more about Generative AI and all what all tools and capabilities are available or soon to be available in Salesforce. The best place to start is with Trailhead and the module about Generative AI Basics.
You may also want to check out Artificial Intelligence for Business. I have already gone through many modules myself and will recommend other relevant ones as I continue my own learning journey.
If you work with large datasets and have access to an enterprise or unlimited edition, you can access a free tier of Data Cloud. Your AI use cases may demand connecting all your data into a single view for customers. One that takes into account historical data to make better predictions.
It may be necessary to use Data Cloud to connect and harmonize your data. You may even have to build tools to easily embed historical data into prompts. Access to the free tier should help you to get started.
More is coming in Spring ’24. I’ll report my findings here, so stay tuned!
I’m excited by Salesforce’s consistent AI infusion across apps. With mainstream ChatGPT adoption, the timing is perfect. The Salesforce platform is ideal for delivering AI capabilities to business users. Start preparing now to ensure your AI implementation succeeds.
Unless you have been living in a cave the past 6 months, you likely have. But, what does all that mean for Salesforce?
OpenAI released two API’s earlier this year. Since then, there has been an explosion in new products that can create new data or content based on patterns from existing data. To begin with, Salesforce has a research division centered around AI. And like many tech companies they announced a partnership with OpenAI.
The result?
Einstein GPT
Einstein GPT was released in March 2023. Users can use simple sentences to create content using Salesforce CRM. This is helpful because it can change quickly when customer information and needs change. Salesforce also offers other AI-powered features, like Einstein GPT, that can help with sales, service, marketing, Slack Customer 360 apps, and Developers. These features can automatically create tasks, articles, personalized content, and even help with chats. The goal is to make customers happy and help businesses be more productive.
As with all GPT products, the user just types in what they need and the system generates it. But, it is based on Salesforce data, which is NOT available to products like ChatGPT. And, if you do not like the first response, you just type in a follow-up question or response to get something else. Kind of like having a personal assistant that has access to Salesforce data.
Slack GPT
Built by OpenAI and currently in Beta, this will let you do the same things as Einstein GPT is looks like, but directly from Slack. However, it will allow integration with models used by ChatGPT or Anthropic’s Claude. Anthropic is a rival startup (funded by Salesforce Ventures) and founded by former OpenAI founders. It currently can digest a larger quantity of text that ChatGPT and looks to be more accurate that GPT-4.
Conclusion
This is all great, but how much does it cost and will it be safe? Two very good questions. The answers are changing on an almost daily basis as the AI wars continue.
Sam Altman, CEO of OpenAI appeared yesterday in congress begging lawmakers to regulate the industry. That has got to be a first.
I will be following all this closely and will post more in this blog as I learn about things (especially those involving Salesforce). Stay tuned.
This week, Krebs Security posted how sensitive customer data was exposed on several Community sites. This included a Bank and even a Washington DC Health Community. Ouch!
How did this happen?
One can only guess. But, it was likely due to ignorance on the part of the people setting up the Community. Salesforce security is multi-layered and can be used to tightly secure data.
But, it can also be configured incorrectly. This is especially true when it comes to public facing websites such as Salesforce Communities. Or, Experience sites as they are now called.
You see, Experience/Community sites use a thing called the Guest User. This allows unauthenticated users access to the site. This is necessary when you have a public site. Think customer websites or government sites used to assist veterans, the elderly or the unemployed.
How about in disasters like epidemics or hurricanes? These kinds of sites need to be built fast and they need to allow access to the a lot of people. There are also a limited number of people with Salesforce experience. Unfortunately, that is a recipe for another type of disaster.
The Solution
If you have been asked to setup a Salesforce Experience site, first take the time to review official Salesforce docs on how to do this. This doc is a good start. There is also a great website about Learning Salesforce Experience Cloud.
But, if you are working with Salesforce on a regular basis and you are a Salesforce Developer or Architect, you need to take it a step further. As I said in the beginning, Salesforce security is multi-layered and complex. It also covers a lot more than just access to Experience Sites. In other words, there is a lot to understand.
You might want to check out some of these resources:
In this series, I will be sharing highlights from courses that are part of the Salesforce Certified Sharing and Visibility Designer Skill Path on Pluralsight. The skill path is designed to help anyone trying to pursue the Salesforce Sharing and Visibility Designer certification.
Setting Org-wide Defaults
Org-wide defaults (OWD) provide a default level of access for records owned by users. More importantly, they can be used to limit data access for each standard or custom object. You can set different levels for internal versus external users.
Default levels:
Private is the most restrictive and means that only the record owner and users above them in the role hierarchy can view or edit records.
Public read only allows all users to view records, but not edit them.
Public read/write is the least restrictive level and means full access for all users.
Public read/write/transfer is used only for case and lead records, since these types of records can be transferred to another owner.
For each object there is a “Controlled by parent” checkbox. As you might guess, this affects objects that are children. They will inherit the access level of the parent.
Every time that user attempts to access a record from a particular object, Salesforce will first check the OWD. If it is set as private or read/only, the system will look at the object’s sharing table and join the group membership table based on the ID of the user trying to access the record.
Depending on what is found, the least restrictive access will be granted. The access grant, or sharing row cause will be stored as a record in the sharing tables that I told you about in the last post. This is the record access calculation process.
Designing a Role Hierarchy
Role hierarchies provide data access for a group of users. It allows managers access to records owned by their employees. Essentially, record access is opened up vertically to users higher up in the hierarchy. By default, peers or other members assigned to the role will not have access to these records.
…role hierarchy should NOT be a duplicate of your company org chart.
The role hierarchy is just one tool included in the Salesforce Sharing Model. The role hierarchy sits right in the middle. This means that baseline access, implicit sharing or org-wide defaults will override access provided by the role hierarchy.
Salesforce Internal Sharing Model
When designing a role hierarchy, the following things should always be kept in mind:
Your role hierarchy should NOT be a duplicate of your company org chart.
Users should be grouped into access levels. Only users assigned to roles above them will have the same access as the record owner.
Roles should only be created for permanent groups of users and not a group that is considered temporary because changes cause expensive sharing recalculations to take place.
Orgs created prior to the Spring 21 release are limited to 500 roles.
Sharing Rules and Manual Sharing
It is important to realize that the entire Salesforce sharing model is model is built around record ownership. When a user creates a new record, they automatically become the record owner. Records can also be assigned to queues.
…the entire Salesforce sharing model is model is built around record ownership
Sharing rules are created for objects, but you only do this if the OWD for that object is set to private or read-only. Otherwise, there is no need to create a sharing rule since everyone has access to that object. They open up object access for a select group of users.
When thinking about selecting a group of users, they can be assigned to a public group, which is not the same things as a queue. A public group consists of one or more users. These users can be individual users, or they can belong to a role or territory. Users that are part of a group cannot own a record, but they can be part of a sharing rule.
Queues on the other hand are generally used to manage ownership of objects such as leads, cases, and even custom objects. The record is owned by the queue and not any of the users assigned to the queue. However, queues are not used in sharing rules. Sharing rules are configured with public groups or roles.
Manual sharing happens when one user wants to share a record with another user. They can do this by clicking a button in the user interface. But keep in mind that manual sharing is only available for Accounts, Contacts, Cases, opportunities, leads and custom objects.
Only certain users can grant this kind of access. This includes, the:
Record owner
Users above the record owner in the role hierarchy
Any user that has been granted full record access
Administrators
Manual sharing is primarily used for special exceptions. That is why it sits above sharing rules in that upside down triangle you saw earlier.
Welcome back to the second post for this series. In this post you will be introduced to the Salesforce Record Sharing Model for internal users. This will involve sharing Salesforce data across users, groups and roles.
In this series, I will be sharing highlights from courses that are part of the Salesforce Certified Sharing and Visibility Designer Skill Path on Pluralsight. The skill path is designed to help anyone trying to pursue the Salesforce Sharing and Visibility Designer certification.
Diagnosing User Access Issues
Most Salesforce Administrators will eventually be asked why some user cannot access certain data. In situations such as these, it is helpful to refer to a diagram such as the one below.
Salesforce Sharing Model for Internal Users
The Salesforce sharing model can be imagined as an upside down triangle. Tools at the top of the triangle provide the widest level of access to the greatest number of users. Tools located at the bottom can be used more precisely to grant certain kinds of access to the least number of users.
When trying to figure out user access problems, you would start at the bottom. In other words, baseline access should be the first thing you look at, followed by implicit sharing and so on. Keep going up the triangle until you determine what the problem is.
Sharing Tool
Description
Baseline Access
Involves a combination of a profile permissions along with permission sets.
Implicit Sharing
Salesforce’s built-in sharing behavior between account and child records (contacts, cases and opportunities)
Org-wide Defaults (OWD’s)
Determines an objects’ default access level and is the only way to limit record level access.
Role Hierarchy
Expands data access vertically. Allows managers to access records owned by the users they manage.
Sharing Rules
Define criteria for sharing access with specific users or users in public groups/roles
Manual Sharing
Typically used for special circumstances, users can intentionally grant record access to a user that would not normally have access.
Team Access
Used to grant access to teams, which are groups of users that work together on objects like accounts, opportunities or cases.
Territory Hierarchy Access
Used to manage and grant account access to users assigned to sales territories.
Salesforce Record Sharing Tools
I am not going to lie to you, the Salesforce record sharing model is complex. But don’t be overwhelmed because throughout this series, I will be introducing you to all of these tools.
Working with Access Grants
Access grants are what Salesforce uses to determine who sees what data. The process of determining this all starts with an object sharing table. Object Sharing tables are completely separate from the object table itself where all the Salesforce data lives, such as the information about an account lives.
Sharing tables will store information about the grant (or sharing type) such as whether it is explicit or implicit. Implicit grants happen when there are children records associated with a parent.
For instance, accounts and contacts are designed with this kind of relationship. Contacts are considered children of a parent account and understandably users that can access a contact can also access the account.
Implicit grants will override explicit grants, which happen when a record is shared with manual sharing or sharing rules. So it is important to always keep implicit grants, or implicit sharing in the back of your mind. If you ever have a situation where you cannot figure out why a user is accessing a record, consider implicit sharing.
If you ever have a situation where a user is accessing a record you think they should not have access to, consider implicit sharing.
Object sharing tables are created automatically and follow a very specific naming pattern. For example, when the object record table is named Account, the sharing table will be named AccountShare. And the thing that ties these two tables together is the owner of the record. When dealing with a custom object such as one named myCustomObject, the sharing table will have the object name followed by two underscores and the word Share.
Determining what values go into a sharing table occurs when record access is calculated. This is a separate process from when a user attempts to access the actual record in the user interface or with an API. This process only happens during a configuration change, such as creating a new custom object. And you should know that It is a very complicated resource intensive process known as sharing recalculation.
Things are done this way in order to improve record access performance. If all this checking was done in real time, the system would not perform well at all and users would be very unhappy.
Record access calculations can happen when changes are made to:
Group membership
Role hierarchies
Territory hierarchies
Kicked off manually by an Administrator
It is important to realize that record access calculations can act like a ripple effect in a Salesforce org. For this reason, large orgs should be especially careful when kicking this off or making any changes that might trigger it. The process could negatively impact the orgs performance.
Since this is such a HUGE topic, I will not be covering everything in this one post. Stay tuned for the next post where I will be covering more.