Press This Podcast: Personalization using Amazon Personalize for WooCommerce with James Jory of AWS

Welcome to Press This, the WordPress community podcast from WMR. Here host David Vogelpohl sits down with guests from around the community to talk about the biggest issues facing WordPress developers. The following is a transcription of the original recording.

David Vogelpohl: Hello everyone and welcome to Press This the WordPress community podcasts on WMR. This is your host, David Vogelpohl, I support the WordPress community through my role at WP Engine, and I love to bring the best of the community to you hear every week on press this as a reminder, you can find me on Twitter @wpdavidv, or you can subscribe to press this on iTunes, iHeartRadio, Spotify, or download the latest episodes at alize with WooCommerce and joining us for that conversation is two gentlemen I’d like to first welcome James Jory of AWS. James, welcome to Press This.

James Jory: Thanks David. Great to be here.

DV: Glad to have you and also joining James is Anthony Burchell, he actually worked on this project in partnership with AWS, Anthony is a often host of Press This but now a guest, Anthony, welcome back to Press This.

Anthony Burchell: Hey, thanks for having me. Nice to be in the guest chair.

DV: I know like a little bit easier in that chair I would imagine that maybe not. Maybe we got some hard questions come in for you. We’ll find out. But really what we’re going to be talking about today is a project that Anthony, James and then others on the AWS web engineers worked on around a new set of personalization features, that’s going to be released into AWS for WordPress plugin, you’ll find that plugin on But what James and Andy will be talking about is a little bit about the why, what is being built, and some background on personalization just in general. To kick us off I’ve got a question that I asked every guest Anthony you to describe this to me many times, James I’m gonna stick with you for this question, but briefly tell me your WordPress origin story When was the first time you used WordPress.

JJ: I’m sure so it’s probably not unlike millions of others who have used WordPress to build sites. I started using WordPress WordPress back in the 2000s as a blogging platform. And one of my longtime hobbies is been in, in the area of wine and winemaking and wine tasting, and I had a started a blog where I shared tasting notes. Different winemaking activities I was doing as well as topics around wine and technology. And from there, over the years I’ve used WordPress for various purposes such as sites for companies and blogs and and other uses.

DV: Awesome. I like it, you’re definitely not the first guest, they I used it for blogging first origin story so you’re definitely in good company there real briefly, James and then we’ll switch Anthony and asked him the same question but could you tell me a little bit about what you do at AWS.

JJ: Sure, I’m a AI Solutions Architect at AWS, and my primary role is helping customers and partners with their integrations with AI services like Amazon personalized, and we’ll be talking about here today. This can include helping with use case fit for the service data readiness for the service integration architectures operating the service in production, and many, many other related topics around, around using the service.

DV: We use seem very well suited to work on a project about bringing Amazon personalized WordPress integrations and artificial intelligence used with Amazon personalized glad to hear that. I’m sure listeners are as well. Anthony Could you give me a quick rundown on what you do and WP Engine.

Anthony Burchell: Yeah, I am on the WordPress, on the labs team at WP Engine and I spend a lot of my time contributing to WordPress, or committer, I am very involved in the community, and I actually serve as sort of in between for a lot of our platform needs and the community, sort of integrations with our platform and sort of making sure that everything is working great on WP Engine right so working with partners to like AWS and fun

DV: Right.

AB: the big thing is I get to work on a lot of these sort of forward looking future looking technologies.

DV: Awesome, James. Earlier I mentioned in the show title we talked about how you know the AWS for WordPress plugin, and when these features are released, we’ll utilize Amazon personalized. He tell us a little bit about like what is the Amazon personalize. And then I kind of put this in the show notes but doesn’t really use the same AI tag because

JJ: Sure. So, Amazon personalized is a service in what we call the AI layer, the artificial intelligence layer of the AWS machine learning stack and the services in the AI layer are designed specifically for developers to add sophisticated machine learning back to functionality to their applications where no prior machine learning experiences required to get up and going with the services with personalized the model training optimization and hosting is fully managed for you. So, essentially you provide data on your items in your catalog users and interactions and in just a few clicks or API calls, personal eyes builds a private machine learning recommendation system that is private and only available in your AWS environment. As for the algorithms used in personalized, they’re shaped from the 20 plus years of experience in building personalized user experiences across, as well as across other Amazon properties. So the, the similar techniques and approaches are used, but the implementation inside a personalized is optimized for being packaged as an AWS service to be consumed by AWS customers.

DV: Awesome, thank you so it sits in this kind of AI layer within the Amazon universe, and it’s really its fundamental purpose is to abstract out the machine learning parts. So that way development teams can feed it, you know, data relative to the list of items that might be used for personalization. Hence, it might trigger, I’m sorry to train the algorithms to provide the right recommendations for specific users but it’s basically that package service there within AWS.

JJ: Exactly.

DV: Awesome. So I kind of mentioned earlier that the features that will be released are going to be released in your existing AWS for WordPress plugin. Can you tell us what that’s all about.

JJ: So the AWS for WordPress plugin was originally developed to add text to speech capabilities to WordPress sites to basically send posts through the Amazon Pali AI service so that’s another AI service that will convert those posts into playlists, if you will, that you could download to your computer or listen to on a mobile device. Over time, we’ve added other AWS services to that original plugin that made it more of a one stop, you know, plugin for various AWS services and that’s where it was renamed to the AWS for WordPress plugin. So some other services in the plugin include Amazon translate for translating between languages, as well as Amazon CloudFront to add a content delivery network or CDN in front of your WordPress site for improving performance with the topic today we’re adding Amazon personalized as as another service so you can add personalized product recommendations to WooCommerce sites.

DV: It’s almost serving like it’s this bridge between aws. amazon based services. You mentioned translations you mentioned the Pali service which was the original feature set. And then it just makes sense to layer in the Amazon personalized capabilities within that same plugins plan, basically what we’re planning to release here around the personalization services so that makes sense. Also I know that the AWS for WordPress plugin uses the slug Polly as per that kind of initial feature set. I did hear a rumor that WordPress might allow people to edit, his slugs in the future. So to hang tight on that, you might actually be able to modify that feature. But I do have more questions obviously around like the functionality that you’ll be releasing into the plugin. But we’re going to take a quick break and we’ll be right back.

DV: Hello everyone welcome back to this WordPress community podcast with w Mr. This is your host David golpo I’m interviewing James Jory of AWS, Anthony Rachelle of WP Engine about new personalization features coming into the AWS for WordPress plugin. James right before the break you were telling us a little bit about what the AWS for WordPress plugin is and why you’re kind of decided to bring the personalization features within it. But I’m just curious like from the high level when it comes to Amazon personalized or maybe even just in general, what are some interesting examples of personalization that you’ve seen customers use Amazon personalized like what are they personalizing.

JJ: Yeah, so it’s really common for customers when they first hear about personalized e commerce or retail use cases. And that just has to do with, you know, our association to and our heritage on the retail side of the business. But we’ve seen personal items be used across many different industries and for lots of different use cases. So besides retail and e commerce, which is a really strong space for personalized. We’ve seen the service used in media and entertainment space for say recommending news articles, movies, TV shows and music. We’ve also seen it used to recommend cultural events or activities. Even session planning for conferences, online learning wedding planning and many other use cases. Essentially, any place you have a collection of users, and items that you want to recommend to those users, and most importantly you have behavioral data on how those users interact with those items personalize is likely a strong fit as a recommendation system.

DV: So, the criteria that a lot of fits that criteria in order to get the most success out of it is that I have a list of things that I can recommend to an individual, but I also have to have your behavioral data to train the machine learning models. In order to make those recommendations we need essentially a list of stuff, and some engaged users. Does that sound about right.

JJ: exactly at its core The service is the algorithms are based on understanding the behavioral data to understand not only your users intent in the past but reacting to their intent, as they evolve in real time, which is a particularly challenging aspect of using machine learning for recommendations is is staying on top of that, that real time evolving user intent and personalized has that built in as a as a purpose built solution for for making recommendations, it has a lot of that real time capability that is built on top of the machine learning layer underneath.

DV: Yeah, that real time is super important I’m thinking that I won’t mention these services by name, but I’m thinking of services in my life that seem to abuse these types of models to recommend things to me, and then never changed their mind about what I like. And I’m like forever interested in electric bikes or whatever the thing was I happen to be looking for that day. So that real time part seems obviously very important. Can you tell me about the WooCommerce personalization features that are being added to the AWS for WordPress plugin like how does it help a WooCommerce store owner personalize their experiences.

JJ: Sure. So, with the, with the integration in the plugin the AWS for WordPress plugin WooCommerce merchants can now add the sophisticated recommendation engine to their ecommerce site with absolutely no coding and a very simple setup, so even, even though I describe personalized as an AI service that’s designed for developers for for merchants who are trying to wear lots of hats and are trying to get the most out of their out of their online business. They don’t have the time or necessarily the expertise to to do the integration work that would be required and so the plugin essentially takes all of that off of your shoulders and implements it for you. So it takes care of orchestrating all the steps required to get your data into personalized training the models, adding recommendations from those models on your WooCommerce pages. And since the end the machine learning training, and what we call the inference layers which is where you get recommendations or predictions, out of those models runs in your AWS account. They have minimal load on your actual WordPress site.

DV: So you’re offloading those pieces and you know I don’t usually know as much about my guest projects as I know about yours since I happen to work with Anthony, of course. But like I feel like you’re underselling the steps that in terms of like what you have to set up, and how the plugin helps extract that via Amazon personalized, to your point, it is a developer tool but there is a lot of learning and expertise people have to do in order to get the training set up, get the recommendations back in a specific use case, maybe not so more, much more than other services and certainly much less than figuring it all out. But I feel like the plugin abstracts out since. Like a lot of hours for folks would you agree with that, like, you just accelerate your time to limit this kind of strategy.

JJ: Yeah, absolutely. And if we if we sort of contrast the Pali example that we talked about earlier, is with personalize your training models based on your own data, because how your users interact with your items is different than say another site, but doing text to speech is, is something you that AWS actually trains and maintains those models for you and just provides a simple API, well with personalization there is no single model that can be used across all industries and even all storefronts in the e commerce space. And so with personalized you do have a little more work that you have to do than say just making a call to Polly in that it’s important not to trivialize that I mean that is quite a bit of work that the that the plugin is doing on your behalf. Now granted, it doesn’t have to do the machine learning algorithms, but still there’s a lot to, you know, getting the data into the service, triggering the training jobs monitoring those jobs, and then pulling recommendations out of the models. Once they’re deployed.

DV: So, like from the functionality perspective that I know this is hard on a podcast, but let’s just imagine I’m using the AWS for WordPress plugin when these features are released, I have my AWS key in there, presumably, and then the user can then do what he said they can train, and then they can also, I guess, get recommendations for specific users.

JJ: Right, so when you when you first initialize the and set up the personalized portion of a plugin. We need to collect some of that behavioral data that is needed to train the model and so there’ll be a period of time, after you set up the, the plugin, where we’re collecting events and sending those onto, onto personalized like what kind of events like

DV: adding to the car buying something like that. Yeah.

JJ: So, most most customers. So there’s different, different events that indicate different levels of intent. So, a purchase event. Obviously indicates strong intent, adding something to your cart indicates strong intent. Clicking on a product or reading an article or, you know, looking at a detail page doesn’t necessarily indicate intent. But what we find is most customers have a lot of those sort of lower fidelity type events like clickstream, events, and have less data on that high fidelity, say purchase data. And so we’re looking to collect events across that spectrum. In personalizes is using essentially that positive intent, positive behavior that indicates interest in something, to be able to predict what they’d be interested in next. And so once we collect enough of those type of events in personalized we can actually train a model. And once the model is trained we can deploy it in, in what’s called a campaign and personalized, which is an auto scaling endpoint so personalized will automatically scale the resources behind that endpoint to match the load of your site, and the requests you’re making of that endpoint to pull recommendations back.

DV: For me, one of the other interesting parts of all that was the API the plugin also provides for the developer so they can integrate those recommendations, with whatever they are happy to be building where that would be helpful recommending products, emails or veining I’m sorry abandoned cart emails or elements on a page and things like that. I liked that part of it for its flexibility. I wanted to switch things up a little bit Anthony I’m going to ask you this question but I’m going to answer it in kind of two parts so we can get your next break but just you tell me a little bit about how we architected. The features for deployment.

AB: Yeah so, actually it’s really interesting to think back on, on, on what we because David You and I were talking about this before we even started the project we were like what what do we do with personalization, in relation to WordPress and that’s how new The idea was at the time. And, and I remember we were, we were stewing on on oh maybe we need to do, like recommended posts, and we started thinking more and we’re like, wait a minute, this is, this is such a great opportunity for for an e commerce shop. So, so the idea is that we were. It was very simple we were looking at and we were like, why can’t we do that in WordPress. So, so that’s sort of where we got the structure of having these interactions and logging interactions on a product view or purchase on a checkout and, and it just sort of just fell together so naturally in another good thing is that there were some existing examples out there like personalization exists for Magento already so we were able to kind of look at that and understand how personalization works in that system, and and mirror a lot of that over into WooCommerce and it was just a natural fit.

DV: All right, I like that backstory, I want to pick your brain a little bit more about that, like kind of technical architecture the plugin. We’re going to take a quick break. We’ll be right back.

DV: Everyone welcome back to Press This podcast on WMR. Live our episode covering Amazon personalized for WooCommerce new capabilities coming to the AWS for WordPress plugin. Anthony right before the break, we were talking a little bit about like why e commerce was the use case for these capabilities. Can you tell me a little bit more about the kind of technical architecture of the feature set that will be coming to the plugin.

AB: Yeah so are you asking like like the stores

DV: hat build it like what what did you have to integrate with and build to facilitate the plugin, allowing these capabilities for WooCommerce stores.

AB: Yeah, so, so the big thing is that the plugin does a lot of those step functions that you were you were mentioning earlier and one one point that I wanted to make too with the plugin being like the one click solution is even if you were a personalized pro and you’re going through this, there’s that chance of human error of doing something wrong in those steps or feeding it something that you shouldn’t have so that’s that’s one of those things that plugin is really really good at just doing it right, perfect every time the first time. So that saves you a ton of time there too but yeah like when when you, when you click the button to start training so there’s a form in the plugin where you where you have those options where you can select what training events you want to document, and at what interval you want to retrain so that you keep your recommendations fresh. And in that that step where you click that button there are about 2020 functions that need to run where they create s3 buckets create. We need to upload a CSV of s3 buckets once we have the interactions. And then once that, that, that, that those interactions have been sent off the training gets started in starts making recommendations so as you were saying earlier with the Get Products function that is that essentially that API you were you’re mentioning where you can get those, those responses back. So plugin developers can use that exact same function that we’re using to, to have custom modules. So, once the training is done it’s sort of a set and forget. I guess feature because you can just start using it, and building.

DV: You mentioned and I kind of brought up earlier the API the plugin provides via getting the list of recommendations automatically from Amazon personalized so I kind of talked about how you can use it in any kind of thing, if you would. You had a neat example in a webinar a couple of weeks ago, where you use the API to add personalization, to what was it like

AB: chat so chat yeah so there’s this open source chat software called chat booth, and you can self host it and I actually just self hosted one on AWS, and. And what’s really great is you can you can send data from the WordPress to that chat experience so imagine that a chat agent is is ready to help. Shoppers find those recommended products. When that shopper initiates that chat and sends that information to them without identifying who the shopper is but just says hey chat agent, these are the products that are probably the best to to recommend to this, this customer. So then what what this. What this does is that allows you to have this sort of connection where the WordPress talks to the AWS, or to Amazon personalized gets the information back and passes it securely to whatever applications you want and I’ve been thinking through even a further example of this where you know me I’m always in VR. And I was thinking through this idea of having a way that I could invite a couple friends that are all on this site that we all buy these products from imagine it’s clothing store and I invite all my friends to a 3d world and we jump in there and we’re just all fed the product recommendations for each of us so that we can all shop together, like I think there’s so many ways that you can extend this, and you can get really creative it doesn’t have to stay just inside of WordPress.

DV: I love your imagination is fantastic. Jared, James to finish this out here I know your role as an AI Solutions Architect you probably think a lot about the now but also about the future. What do you think the future is for personalization like is it here to stay, do we expect major evolutions in it like what what do we think will happen over time.

JJ: Well I’ll I’ll speak about personalized here first as we’re really just getting started with the service so expect that we’ll continue to make improvements in features capabilities and performance of the service, but looking beyond the near term, I think the continuity of when we think about personalized customer experiences and the continuity across multimodal user experiences is sort of where the next frontier is in my mind. So for example, say beginning a customer experience with a brand in the morning, over Alexa when you’re getting ready for work, and then transitioning to Alexa in your car, continuing to save refined product selection and asking questions back and forth to narrow down your choice of what you want to purchase. And then maybe that transitions to your smartphone when you’re on the train or on writing on a ferry. And then finally, when you get to your computer, at the office or back home in the evening is having an email that has a summary of basically that that that customer experience along with recommendation so you can complete your, your transaction.

DV: I like it, and connecting it more from just a specific app and device kind of across apps across devices very very It doesn’t make sense relative to the next step. James This was super interesting. Thank you so much for joining us today.

JJ: You’re welcome. Thank you for having me.

DV: Awesome Anthony Thank you for coming back. Yeah, thanks for having me. Awesome. If you’d like to learn more about what James is up to you can visit AWS forward slash personalized. Thanks everyone for listening to Press This WordPress community podcasts on WMR. Again, this has been your host, David Vogelpohl, I support the WordPress community through my role at WP Engine. I love to bring the best of the community to you here every week.



Leave a Replay

Sign up for our Newsletter

Click edit button to change this text. Lorem ipsum dolor sit amet, consectetur adipiscing elit