Agentic Sites: Building Hyper Personalized Websites — Carlos Sanchez, Adobe https://www.youtube.com/watch?v=jebp4V0vh30 AI Engineer · 20 min · 199 sentences · sentence-level transcript from YouTube's caption track; each line begins at the time shown [00:01] [music] [00:13] Hello. [00:14] Thank you for coming. [00:16] Um I'm going to talk to you about Agility Sites, how we call it as building hyper-personalized websites. [00:24] I'm not going to just talk about it. [00:26] I'm going to show you what we're building. [00:28] Um I've been working on on this project for for a bit now, and we'll try to show you what is possible today with with AI. [00:39] Uh I work at Adobe at a I'm a principal scientist at a product that not many people know, Adobe Experience Manager, content management. [00:47] We run a lot of uh website properties for big brands, and my background is in in open source, uh contributing to to a lot of foundations and projects. [01:01] What are Agility Sites, and how are we building this thing? [01:06] So, we're looking for sites that are uh looking at the what intent the user browsing uh has. [01:16] What is the user doing? [01:18] What is the user trying to achieve? [01:21] And the end goal is to personalize these pages for the for the current user browsing, so that eventually this uh drives uh higher engagement or uh conversions, whatever the marketing [01:36] teams want to want to achieve. [01:39] And these pages are personalized in real time based on the on the user that is uh accessing the site, and what is the what is the user doing. [01:50] The stack we're using is AMH delivery. [01:53] So, this is the part of the product we we have, uh where all the content is on the edge and then we have back end service that powers this experience [02:03] with different LLM providers LLM services we use Cerebras for fast inference or we can use also we tried bedrock and and a bunch of others. [02:17] I'll be showing Cerebras today and you will see the reason why. [02:22] The the engine that is personalizing this this bits is using the rich content and blocks. [02:33] So different blocks on the site are customized depending on on what the user persona is. [02:40] We don't want the the whole site to be generated. [02:43] I mean if you talk to marketing people they they have a very strict brand guidelines. [02:47] You don't want to just come up with our have some hallucinations there. [02:52] So the what is personalized is different sections of the site and we use the whole site as a corpus. [03:01] We built a rack from the whole site. [03:03] So what is generated is grounded on on the existing site. [03:09] We tried to solve the problem where one size fits all. [03:13] We want hyper-personalized experiences. [03:16] Also we want to help our customers to do more automatic authoring. [03:22] So not having to create thousands of different variations of the site but use AI for this and then do these multiple layers of of personalization. [03:35] Some examples of what we're doing or I'll show in the demo. [03:39] It's instant persona adaptation, query generation when the user search for something on the site, the page with the results is customized for them and also uh, something like recommendations [03:51] where after you browse the site for a period of time, we we can create a page that recommends something based on on on what you are what we think you are looking for. [04:02] For marketers, uh, they can define this strategy on natural language, and they can use analytics to to drive the loop of personalization, and what is the end goal, and how this [04:17] goes back again to change to adapt the personalization to improve that uh, whole cycle. [04:23] Everybody's talking about loops in this conference, so that's that's one of the loops there. [04:30] How the architecture look like? [04:32] So, it's a dynamic front end with some blocks, what I mentioned before, and with uh, edge delivery services is basically you compose these blocks, and uh, they are updated on on real time through with the AI. [04:47] The back end, uh, we we do the um, evaluation of the models and the providers, and one thing we realized is is that this is very dependent on the site. [05:00] So, we have a bunch of prompts, and we look uh, we run it across a huge variety of uh, models and providers, and then we look at the accuracy, we look at the speed, [05:11] but this is going to depend highly on what type of site, like how big is the site, how I don't know, what different what different um, area is the site [05:22] targeting, what what type of commerce it is, and so on. [05:26] So, we we run this this um, evaluation continuously. [05:31] We use uh, Promptfoo. [05:33] Uh, anybody heard about Promptfoo? [05:35] Okay, some people. [05:37] So, Promptfoo allows you to evaluate models um, prompts against my multiple models, providers, and you can do local models and any of the a bunch of open AI compatible [05:52] uh providers and and uh a lot of them, basically. [05:57] We look for two things. [05:59] Why? [05:59] Accuracy. [06:01] That's that's typically what people look for, but also we want the speed because we don't want the site generation to take more than 1 or 2 seconds, right? [06:12] Because people uh this is already uh proven that people want the the faster the site, the more conversions it it generates or the the better the experience it is for the user. [06:26] Um yeah, what I mentioned is different sites may have different requirements. [06:29] Uh so, you may have to run this uh evaluation of models depending on the site. [06:37] This is a an ex uh we we secured this some of these queries, so we have a 15 prompts for this example site. [06:46] Um we have uh at the top you can see with Cerebras on the Gemma 4 model that was announced last last week, we can get an average latency of 1.1 seconds generating a page. [07:00] You you can compare that to the second one, which is 4.6 seconds, right? [07:06] So, the difference is huge. [07:09] And that's why uh we use Cerebras for for this use case. [07:13] And uh you can see that different providers, different models have different um different speeds. [07:23] And here is uh let me I can show you the whole thing here. [07:29] Not this one, this one, right? [07:31] So, at the at the bottom we have other other tasks. [07:35] Sometimes uh maybe some of them may be good. [07:39] They don't need to be perfect, but they're good enough if they're fast enough. [07:42] So, that's going to be the the kind of decisions that you need to make on whether the model is good enough for your use case or not. [07:53] Yeah, we're looking Yeah, average 1.1 seconds. [07:56] And then the the next ones are going from 4 seconds higher. [08:01] And you don't need a huge LLM to do this sort of work because you are generating text, you are deciding where to put blocks and how to organize the website, [08:12] you don't need a lots of information for that. [08:16] So, this browsing and the queries uh is are being recorded. [08:22] So, these are the metrics or the the the data we gather from the user, and this is fed into the LLM to personalize the site. [08:35] And then in this example, we personalize the hero card, the products, the blog feeds, and and the navigation based based on the persona. [08:44] Also, what are some of the buttons like our call to action navigation, you can also we can also personalize those. [08:52] We we create and I'll show you the a for you page, which is a recommendation. [08:57] And this is a interesting one because this you could pre-generate, right? [09:04] As the user browses your site, you gather these signals, and you could keep generating in this. [09:10] So, in this case, you wouldn't need so such a big speed. [09:14] But but that's interesting because it it would be if a user wanted to buy something, you could just say, "Okay, for you, I will recommend these three products or or something like that." [09:27] Um Yeah, and then they can see this recommendation, and if they go there, that that could be pre-fetched for them. [09:35] And obviously, you have to keep updating it as the user navigates around the site and and so on. [09:40] So that that's also something to consider on the cost cost implications of doing multiple generations, multiple LLM calls. [09:54] When when the user runs a query, dynamic personalized page is shown to them. [10:00] When the these queries are also grouped into personas or intent types. [10:07] So what is this guy what is this guy trying to do in the site? [10:11] Is trying to buy something? [10:13] Is trying to just get information? [10:15] So you can get marketers to decide what type of groups, how many groups you want to have, how you want to deal with with customers. [10:24] And the AI will choose the the blocks and the suggestions for for those groups of people. [10:31] Um And we can adopt yes, the the different blocks, the the the sequence of the blocks and media. [10:42] You could also do media. [10:43] One of the things we consider is there was some a model announced today or yesterday the the nano banana light. [10:52] So you could even generate images very fast on the fly. [10:58] Obviously not as fast as text, but that's also something that would be I don't I don't know if it's that something like marketing people would want to have generated images. [11:08] That depends on on the quality a lot if it's on brand. [11:13] And the site in this example we have a a product site and then we have guides, experiences, blocks and the whole response of the LLM is grounded there. [11:26] And there's comparisons. [11:28] We can do comparisons between products that are tailor and the product pages can be tailored for the for the user. [11:36] Okay, this is this is a bit of the stack. [11:39] Um not going to spend too much time here, but the browser you have some layers. [11:45] You have the browser where the signals get get uh from I got I got I got so I got from the from the user and then we have the back end. [11:59] Uh we can have the back end. [12:01] We run this some of these in in Google. [12:03] Some of these are in our Cloudflare. [12:06] So, the back end is basically just calling the LLM and doing some reasoning using the rack that is built on on the site to do the generation. [12:16] And you have obviously you have to have the vector database, the inference uh machinery and uh that obvious business manager is doing the serving the the at the edge is serving the the pages and the static content. [12:33] So, let me show you because I think this is uh so, we call this uh audience of one because the idea of in marketing they they always dream on being able to personalize [12:46] things for each individual. [12:49] So, we call it yeah audience of one. [12:51] So, I have this this site. [12:53] Uh this is a site that is absolutely generated uh example site. [12:57] It's a coffee uh machinery. [13:00] So, I can go and and read some stories and I can go and look at some products. [13:08] Let's go and look at this product. [13:11] I can spend some time here. [13:16] Uh let's go and click here. [13:20] Okay, so I'm I'm browsing around the site and I have this debugging tool thing uh which Uh let me go here, I think. [13:37] Let's see. [13:40] So, down there is the signals that the that the browsing is giving us. [13:47] So, I don't know if you can see it much because I cannot see it much. [13:51] The So, the user is bucketed into the exploring category. [13:56] We have the pages that have have visited, and then we have how much time is spending on each page. [14:04] All of this data is now available for the LLM. [14:09] So, if I go here, I already have a for you page that was generated for me and based on my browser. [14:21] And you will not notice that it's slightly different than everything else, but if I go here and I run a query like I want I'm looking for a coffee [14:33] machine to uh prepare coffee while camping. [14:44] The site is this was just generated for me. [14:48] And then you're going to see some things like the text is customized. [14:52] Camping shouldn't mean compromising on your uh whatever routine. [14:57] Uh the coffee tips for camping um machinery that are being recommended are coffee agile and um or the nano, which are good for for the for a camping trip, right? [15:14] So, you saw how fast this was. [15:17] I'm going to run it here something similar that I had here and I can run it on the debug mode here. [15:25] And you will see, let's make this bigger. [15:30] Total time 164 seconds to generate the page. [15:33] So, this includes a round trip to the LLM. [15:35] This is using Cerebras Gemma 4. So, the the Gemma model from Google running on Cerebras on their very fast chips. [15:45] Uh we get 2,300 tokens per second. [15:50] Which is not bad. [15:52] I would say. [15:53] [snorts] [15:54] And if I run it again, uh probably something like that. [15:58] Uh the LLM time is 1 second. [16:00] And again, 2,200 tokens per second. [16:04] This is something that we only dreamed about before. [16:10] On the on this site example site, we have some other options. [16:16] Uh so, because we we've been showing this to customers, so we have the the ability to change the different models, temper temperature, tokens, and so on. [16:25] And we can uh we can show uh and try the different models and see how they behave. [16:33] Besides the automatic test with Prompt Full, then we can uh manually come and and click things and see and see how that how that works. [16:42] And uh we also have uh OfOneLabs. [16:48] So, we have we build this tool that generates an agentic site for any site we want. [16:54] So, if somebody wants to have a demo for a customer, come here and enter the URL. [17:01] In less than an hour, you have an agentic site. [17:03] I did this last week with the AI engineering site. [17:07] And I got this site that is just a search box and a few things. [17:15] let me open it here, the full page. [17:18] Not this one. [17:18] Yeah, okay. [17:20] So, I could say Europe AI conferences. [17:25] So, these suggestions are also AI generated. [17:28] And I get a page that is more focused on It should be more focused on on the on this European conferences. [17:40] If I go back, did I go I can search for anything the same way I did with with the Arco. [17:48] So, I as a specific There was someone that was generating a good comparison side to side. [17:55] Let me see if this one. [17:56] Okay, here. [17:57] This one. [17:58] I went and this generated a page with a pretty good comparison. [18:03] If I'm looking at two conferences and I need to decide, if I figure out that the user wants to do that, this is great because that gives them a side-by-side comparison [18:12] on the fly. [18:14] Now, this this is I think this is cool already, but then we have I have this idea that probably the I'm a bunch of people are we are talking about is the web that is is the web the future still and so on. [18:32] Nobody knows. [18:34] But we can also do something with this with this audience of one, this generative sites. [18:41] So, imagine you have you have your personal assistant and you ask a query through in this case through Google and you say I want to buy I don't remember what the query said. [18:53] It was something like I want to buy a machine and I get this on my Google TV. [18:59] Right? [19:00] So, this is absolutely personalized to my query. [19:04] Okay? [19:04] No, go back. [19:08] This is absolutely personalized to my query. [19:10] So, I'm there in my living room. [19:11] I don't need a phone, I don't need a computer, I don't need anything, just my voice and something that will kind of show me something that is absolutely personalized [19:24] to to me. [19:29] Okay, so that one. [19:31] So, what I was trying to show and hopefully you remember from this session is that this is now possible. [19:40] It's only going to get better from here on. [19:42] It's only going to get cheaper, it's only going to get faster. [19:45] And you will uh be able to have uh huge personalization options for sites and for other things. [19:54] And you can do this with intent driven. [19:57] So, what is the what is my user trying to do? [20:00] What does my user want to buy? [20:02] These sort of questions. [20:04] And you can uh assemble a page just for them. [20:08] And you can also do this with uh multiple models and and eventually it's just going to be faster and faster, right? [20:18] So, that's it. [20:20] Um thank you for coming and I hope you you got the idea. [20:24] Thanks. [20:24] [applause]