Transcription
I just built this AI art factory that recreated this TikTok content business where just one of their posts reached 122 million views and others reaching millions in reach. But this time I used AI agents to automate the whole thing, and all without writing a single line of code, thanks to this no-code tool which makes it something that even a beginner can do.
And if you haven't seen these yet, there are actually accounts on TikTok like these that get so much reach, with this one having more than 500,000 followers. And all they do is post phone wallpapers of digital art. And for this account, their niche is anime. And they're all really beautiful art, which is no wonder that they're going viral.
But the thing is, with ChatGPT's latest image model, which right now is the best at image generation, you can actually create digital wallpapers like this automatically. So, these ones that I'm showing are actually all generated by the system that we're about to go through. And if you set up this workflow once, it will generate art for you every day, or even every hour if you want to, because every time it runs, it will generate the prompts for those images for you automatically. It will connect to ChatGPT's image model directly to autogenerate those wallpapers and post to TikTok automatically, complete with music, all running in the background.
And if you watch till the end, I'll also talk about the top two ways by which you can monetize this, which these content businesses are already doing. So, if you want to be ready for the future, it's probably a good idea to invest some time today to learn about AI agents, which is quickly becoming a key skill to learn in the next few years. And if you have the time, watch till the end because you might just learn something that will set you up to be at the forefront of the AI [Music] space.
By the way, if you're new here, my name is Jay, and our mission here at RoboNuggets is to make AI easy to learn and earn from. We run one of the largest communities of AI practitioners globally. Now we have something around 1,400 members here who are all AI practitioners located across the globe. And I also lead RoboLabs, which is our AI agency arm that helps bring businesses to the future with AI. But enough about myself. What we are here for is to learn how to set up this AI factory.
And in fact, to make this as easy as possible, I've organized all of the prompts and resources that you would need right here in this page in our community with a specific call out for this blueprint file which you can just download and import to the tool that we are using, and it will automatically create that workflow for you without you even having to lift a finger.
And the framework of what we'll be learning is actually very simple because you can break it down into three simple steps: where in this very first row of nodes we'll basically be learning how to generate quality prompts; and then step two will be around generating the images coming from those prompts; and then step three is setting up our autopublishing step towards TikTok or even other social channels which are optional for you to set up.
And first to get started, the tool that we'll be using is called N8N, which if you just click on this link in our community, that will take you straight to N8N's page where you can sign up for a free trial. And very quickly, if you haven't heard of N8N before, it's kind of similar to Zapier or Make.com, who are all no-code automation tools. But you can see here in Google Trends that the search demand for N8N has really accelerated in the past weeks simply because of how flexible it is with using a lot of these AI systems that we'll be learning. And it's also not complex as long as you have someone to teach you step by step how to operate it.
So once you've signed into N8N, you just need to click on "create workflow" here at the top right to get started. And then just go ahead and rename this into whatever that you want. And for your very first step, you'll be setting up a trigger. And in this case, we'll just do the schedule trigger, which you can just find. And let's have it trigger once every day. So you can just leave that be. And the trigger node is a unique node in N8N because it's essentially going to dictate how often and in which manner your workflow is going to be activated. So for this one, we'll just be scheduling it to run once every day.
Now if you look at our end in my automation here, which obviously I'll upload the template in our community, but what I'll be doing is to go through each node step by step so that I can also talk through some of the principles that are very important to learn to set up something like this. So let's get into it. Our very first step here is essentially for us to generate the prompts.
Now this may look complex, but a simple way to approach this is to always start with the end in mind first and work backwards from that to achieve the output that you want. So for example, with this step in particular, what we're really after is this final prompt which, if I just open that and don't worry about all these details for now, but if we look at this section that I highlighted, you can see it's essentially an image prompt that is quite detailed and which will be feeding to our image model later on to achieve the image quality that we want. Because with a lot of these image models, the quality always depends upon the strength of the prompt that you give it. And so the key is for us to continuously generate prompts like this that are very detailed and are exactly what we want.
And if you just break this down, there's basically two elements in this prompt that are important. One is this character itself, which you can see we're describing his signature look as well in order to make sure that the character is recognizable. And then the second part is the style of that image, which you can see here. And so since there are two elements that we need to figure out, it's also usually a smart move to delegate the generation of those two elements to two separate AI agents instead of having just one agent try and give you a quality output like this every time.
So if you go back to this first row, you'll see that we have an AI agent that essentially provides the style guide for each of the images that we'll generate for that run. We have this character agent that will select the characters that we'll generate that style for. And then we have this third final prompt agent which just takes input of that style and that character and brings them all together in order to create quality image prompts like this. So with that in mind, let's set these up.
And what you want to do is to just look for the AI agent node. And that will bring up N8N's common design of working across all nodes, which if you're new to N8N, it might be a good idea to just step back and explain how it all works. Because if you open any node in N8N, you'll always see three sections: one is this input area which would contain data or values that are coming from a previous node which are then passed on the node that you are configuring at that moment; and this green area is different for each and every node mostly but that tells your node what to do with those inputs so that it can generate this output section which are then passed along to the succeeding nodes in your N8N workflow.
So if you go back to our AI agent, it's the same thing where you can see the input, the config, and the output. So to set this up first, you just want to rename it to something like "style agent" so that you know what this AI agent is doing. And then for the source for the prompt, you just want to change that to "define below" because we are not chatting to this agent. And we'll go back to this prompt in a bit, but you just want to toggle this "require specific output format" as on and add an option for a system message.
Now let's set up the system message first because what that essentially is is that this contains instructions for your agent on what its role in life is. So you can see by default N8N says "you are a helpful assistant." We obviously need something more robust than that. So to make it easy, you can just copy this system prompt for the style agent over at our community and then change this expression and then paste that there. So now if we open this up, you can see that this is just a system prompt that's a bit more detailed. You can change this input value at the top if you want characters outside of anime, for example. But you can see this just provides some instructions on what the style agent should be doing along with the specific output that we want it to generate. And that output that we want is going to be a randomized style that is as descriptive as possible. And so we provided some instructions here. But we also ask some more defining values such as where the character is placed, what's the size of the character relative to the frame of the whole image, and a couple of other enriching values here. But you can also see here that we are randomly selecting one style from the curated list of style profiles given below. Which if we scroll through that, what I actually have here is a pre-filled list of 50 styles that this agent will be choosing from each time. This is just important to call out so that if you want to revise it to styles that you want to see, then you can just edit this however you want so that your style agent is guided on what are the options that it has. But here at the bottom, we always have like a "generate your own style" and a note for it to be bold and diverse so that it's not completely limited to just these styles that we have provided. But overall, it's just good to have some options here so that it's more guided on what to generate.
And so with that system message instructing our style agent what to do, this user message will essentially be just your message to the agent, the same way that you would talk to ChatGPT, for example. So if I just type in "generate a visual style" there, then that should be enough. So if you click "test step" here, it will actually cause an error still because it's telling you that we still need to set up our AI model connected to this agent. So if we just click away, you'll see that you have some subnodes here and you can see "chat model" here as well, which you can just click. And if you open that, you can see some familiar names here. These are basically all language models. And the one that we'll use for this exercise is OpenAI since that's the one that's most common. And once that's up, all you really need to do to set this up is to connect your credentials, which if you haven't done that before, just click on "create new credential" here. And you'll see that it is asking for an API key, which if you go to our community, you can just go to this URL from OpenAI. And this is where you can create a new key, which you can just do by clicking here at the top right. So once you paste it there, you should now have your OpenAI account set up. And for the model at least, you can choose whichever, but at the time of this tutorial, 4.1 is the best. So we'll be using that. And then just click away. And you can see that we have the OpenAI chat model now connected to that agent.
Now with these subnodes, there's just two more things to set up. And one of them is this tool which you can click here called the "think node," which is always just good to add so that your AI agent can think about its response first before giving you its output. So with AI models, now that's becoming more of a practice in order to make them smarter. So if you just add that, you don't even need to change anything here and you'll be able to connect that to your AI agent properly. And then finally, you would need this output parser, which to recap, if we open up our style agent again, you can see that we are requiring a specific output format from it. And again, this is just good practice in order to control what your AI agent will be providing you each time. So, if we just click that and look for "structured output parser," you'll see one field here that asks for a JSON example. And JSON just stands for JavaScript Object Notation. And whenever you see these braces and brackets, that's essentially what it is. It's just a standardized format by which a lot of AI models and computers communicate. But again, to make it easy, if you just go to our community, you can just copy this whole thing and paste it here.
So now the output of our agent will always align to this format which, if we click away and just click on our style agent again, you can just click on "test step," and under output you can see that it generated for us one style idea. So this one is an origami paper worlds idea which is pretty interesting. And so it selected this style most likely coming from that list of 50 that I had earlier as well as a few more guiding attributes for the succeeding models. And if you look at schema, the reason why this output is so organized is because we provided it that structured output parser which we just set up. But there that is your very first AI agent now done.
And so the two succeeding agents will now be much simpler to set up because all you need to do is to just select this and hit Ctrl+D if you want to duplicate that. And to easily set this up, you just connect it like this. And for this agent's chat model, we'll be using the same one. So you can just connect it to the same chat model that we had. And we also want it to get access to the think tool. So we can just connect it like that as well.
Now if we open this, now will be our character agent. So its job is to generate three characters corresponding to three images that we'll be generating that are aligned to our niche of choice which, in this case, it will be anime characters as we discussed. So the only thing you need to change here is this system message which you can just delete this whole thing. And again, to make it easy, you can just copy the system prompt here in our community for that character agent. So if I paste it there and if we open that up, you'll see the same thing where you can just change this niche at the top and you can read this in your own time. But what's important here is this inclusion list which you can change depending on what you want. Basically, I just asked ChatGPT for some anime characters to pre-populate here, and basically what this agent's job is to get characters from this list in random whenever it's run. And then to streamline its output some more, we also have like an exclusion list here so that it knows what type of characters to avoid. And then we have a few more details here just to guide it on the type of output that we want. You can see that we also want it to be guided on where that character is from, what type of clothing they usually wear, as well as the color scheme that suits that character. So that's something that you can edit in your own time. But for the prompt here, you can just give it a prompt similar to this one. So if I just copy that and paste it here, then that would just instruct this agent to generate three random character IDs from our list below.
So before you hit "test step," it's also just good to give this an output parser as well. So if I just click on that and click on "structured output parser," you can just copy this example from our community and paste that there. And you can see that this is just again an example of what good looks like so that the agent is guided. So now that we can click "test step," let's just go ahead and do that. You'll see that the agent was able to generate for us three characters along with the shows that they're from as well as a description of their clothing and color scheme. So that's good. The character agent has now done its job.
So now finally we just need an agent to put the output of these two agents together. But we need another agent so that it can do it in a smart manner as well. So if we just Ctrl+D this one, we can do the same thing where we connect it, connect the chat model to that same chat model. Connect the tool to the think tool so that it has access to that as well. And if we open this and rename it into something like the "final prompt agent," we can just remove this prompt as well as the system prompt. Again, you can just find the system prompt for this agent here at our community course. And if you copy that there and inspect it, you'll see that it's once again just giving instructions to this agent, saying that these are the inputs that we'll give it, which are basically the outputs of agent one and agent two. And we give it a task, which is to generate distinct image prompts that are all using the same visual style. And then we have a few more rules here just to guide what we wanted to generate and what things to avoid and all of that. So that's good. And then for the prompt here, this is going to be where we're going to feed it these values that our previous agents came up with. So how do we do that dynamically so that every run is going to be different?
So if you go back to our course page, you would have access to this prompt as well, which we can just copy and change this to expression, which is very important. So that when we copy it, we'll be able to inspect it using this button. And you'll see that this one's a bit more complex, but it's still quite simple because we just have the task here at the top. And then you can see there's just two sections here: one is the style input, and there are all these green text because this is just a dynamic value that points to the output of the style agent, the one we just set up, which is sort of like a placeholder code value. But in reality, during this run, this section is actually what's being passed. So you can see that the style description is that origami diagrams that the model generated for us a while ago. We have the character placements and other attributes here. And then under character input, this one now is coming from our character agent, and we're just summarizing it here. So that this final prompt agent understands what are the characters that we're interested in for this one run.
So before we hit "test step" there, remember that it's always just good to have an output parser. So let's just add that in. And you can just copy that piece here which you can copy paste there. So there that should be now set up. And we can click on "test step." And when that's done, you now see these three image prompts that are similar to the end in mind prompts that we had from the beginning, which is good because now we're ready to feed these prompts into our image model, which is going to be ChatGPT's latest image model, which is the most powerful one at the market right now. So if you want, you can just clean this up and move things around so that it's a bit cleaner the next time you run it. So that is part one now done.
So now if you go to step two, the end in mind for this step is for us to be able to generate the images coming from those prompts. And there's just a couple of nodes here mainly due to how the ChatGPT image generation system is set up. But if you look at the final node just so that we know what it is that we are gunning for in the end, you'll see that we want these three media URLs which, if you just copy any of those URLs and paste it to any browser tab, you'll be able to preview an example of an image that we are going to generate. So for this run, this is Kurapika from Hunter x Hunter that was fully generated by that prompt that we just gave ChatGPT. So let's talk through how to set up
These nodes step by step. So what you want to do is to just drag this plus icon at the very end of step one and find the code node, and then you can rename this as list. Because what this will basically do is to grab the image prompts that we generated, all three of them, and list them down individually so that N8N considers them as three separate items.
And the reason why that's important is because when you pass along those prompts to ChatGPT in N8N, at least they need to be three separate items so that you can send them to ChatGPT's image model individually. So for us to do that, you can just copy this piece of script in our course page under generate images step and remove this placeholder and paste that there.
So now if we click on test step here, all that really did is to turn this input, which is clustered as one item in N8N's instance, and dissect it into three specific items which, if you go to the table view, you'll see those same prompts but now properly loaded in N8N systems as three items. So that's good.
And now the next step is for us to pass those prompts along to our image model. And we'll do that via this HTTP request, which you can just rename as generate because we'll be generating the images. And the way that this HTTP request node works is that you have a method here which you want to select: post for that, because what the HTTP request is doing will be posting a request to our third-party tool. In this case, it will be ChatGPT's image model to send them our prompt and get the image in return.
And this is also the reason why the HTTP request node is one of the most common nodes that you'll see used in N8N workflows. And that's because it's so flexible and is the primary way by which you can call on third-party tools through these standardized ways of communicating, which people are calling APIs or application programming interfaces.
And when you're posting a request, you obviously would need a place where you would want to post that request in. And so you would need a URL here. And to make that easy, the URL I already included here so that you can copy it and just paste that there. And you can see it's pointing to OpenAI's website here, specifically their API domain service.
And then now that you know where you'll be posting this request, there's also a question of what is the request exactly that you're going to send. And so to do that, you can just toggle this send body as on. And here we'll just keep it as JSON. And for specify body, we'll be using a JSON structure here.
And to make that easy, you can just copy whatever we have here in the course page. Change this to expression, which is important. So that if I paste it here and preview that, you'll see that this is just a JSON format. So again, with the braces and brackets where we're asking OpenAI if we can use this image model, which is their latest image model, and the prompt that we'll give it is this dynamic value which is resulting to this piece on the right with that full prompt there and then a couple of attributes like what's the size, what's the quality, and so on and so forth.
So these parameters, as they call it, these are all defined by the service provider, and so if you mistype any of these, it's not going to work because it needs to be a specific format that OpenAI would accept. So just some important call outs here. Right now, we've set the quality as high because we want to illustrate the best quality output that this model can generate. But if you're testing this out and you want it to cost less credits as you do your tests, just type in low, and that would work as well.
And in our course page, we also have those documentation for OpenAI if you want to find out more about the costs and the different parameters that you can set up with their model. But anyway, that should all be set up now. And so now if I click on test step, this will actually fail still because it's telling us that we need an authorization because obviously not just anyone can call on this model. We'll need a pass key or an API key in order to use this model that OpenAI is offering to the public.
So to do that, what you can just do is to toggle this send headers as on. You just want to type out authorization, paying attention to the capitalization and note that there should be no spaces, and then for the value just type in bearer, capital B, and then hit on space, and then if you go back to OpenAI's platform page here, just copy your API key and paste that here. So do note that this is a pass key, so it shouldn't be shared around. So for my case, for example, after this tutorial I'll just be disabling it, but that should now be all set up.
So now we can click on test step, and what it's going to do is it's going to send these three prompts to be sent to OpenAI's image model, and in return, in this output it will generate for us those images which we can look at. So once that's finished generated, you can see that there's no image here. In fact, it gave you this piece of text which is not an image at all. So how do you turn that into an image?
So it's very simple. You just click on this next node and find this convert to file. And then under actions, you want this Base64 string to file action. For me, I just named that to convert to make it simple. And this is all very simple. You just want to drag all of this data into that input field. And then you can just leave this output file name as data. And then just click on test step.
And what that's basically doing is make your images viewable because remember each image that you see is all just data under the hood. And so when OpenAI gave us the results, it returned to us that data in text format. So what that node just did is convert that text into these three pictures here. You can actually preview them by just clicking on view. So you can see that is looking pretty good.
And at least for this run, as you test it out, what I actually just did in the background is if we click away here and open our character agent here, you'll see that apart from our general prompt here at the top, I also added a sentence here to declare the specific characters that I want featured for this run. So that's also something that you can do. And you can see that the agent adhered to that specifically.
So now if we go back to our ended my automation here, the remaining nodes here are actually just nodes to prepare for the publishing step because if you can see the tool that we'll be using to publish those images is actually a tool called Blot, because they have that carousel feature which we can use as part of their automation system. But the thing with Blot is before we can upload the file to that, it can actually only receive a URL that contains that file. And so we just need this one extra node in order to first upload the file into an image URL before passing it on to our publishing tool, which is going to be Blot in this case.
So to do that, you just need to add in another HTTP request node. You can rename this to create URL because that is its purpose. And you want to change this again to post. And then for the URL here, the service that we'll be uploading those images to is actually img.url, which is a free service that can host images online. So you can just copy this and paste that there.
And again, now that we know where we'll send the files, we also need to declare what we're going to send. And so you just want to again toggle the send body as on. But this time, we'll just change the content type to an N8N binary file, which is basically a file. And then we just want to type in data here, which corresponds to the name of our files in N8N. So if I click test step here, it will reject it once again. And that is because we haven't passed in our pass key in order to call on img.url service.
So to register for your pass key, which for their case is just called a client ID, you can just go to this URL in our course page. And when you go there, you'll just be asked to sign in. And once you're signed in, just go ahead and go to that URL again. And this time, you'll be able to register an application, which you can just fill up here in this page. And in terms of what you should put here, for the application name, you can just name it whatever you want. For the authorization type, choose this one, anonymous usage. And the callback URL can be this HTTPS localhost. And once you submit that, you will immediately receive a client ID, which you can just copy here.
And from within your create URL node, toggle send headers and place that client ID under the value attribute. And same as before, just type in authorization without spaces, capital A there. And then here, preface it with client-ID space. So this is just the format that img.url accepts. So now if we do a test step here, once that's done and you get a status 200, which stands for success, then you'll get three items with all of these attributes. But really the only thing we're after is this URL link, which if you open in any tab, that will lead to your images as well. So that's good.
And so now we can just upload this to Blot. And so we can just go ahead and create another HTTP request and rename that to upload to Blot. Change this again to post. And then for the URL, you can just copy this one from the course page again and paste that there. Now, for us to rotate, we of course need an API key there as well. And so what you can do so that it'll be easier for you down the line is under authentication, you can just choose generic credential type. Select header O here, which is just a type of authorization we'll do. And then create a new credential. So this one you can just rename as Blotato credential. And you can see that it is requesting for a name and value here. And for you to get that, you just need to head to blot.to in this link and sign up here so that you can try it out for free. And by the way, if you're part of the community, we do have a discount code that will give you 30% off for life on that software. So make sure to use that before you sign up. And also, if you haven't used Blot before and want to dive deeper into this tool, you can watch this specific course because that talks through using Blot as a publishing tool, which you don't need to watch for this course specifically, but that's just there if in case you want to dive deeper into that system.
So anyway, once you've signed up to Blot, you just want to go to the settings and here at the bottom is where you can copy your API key, which you can just go and paste here under value and then for the name, you want to type in exactly API key. So that needs to be exact because that is the syntax that Blot is accepting and just click on save. So once you have that set up, you just need to select that whenever you use, which you'll also see later on. But now that we have that set up, we just need to toggle this send body as on. And then the only thing you want here is to send a field called URL which is again directed by Blot's specifications. And under value, you want the URL coming from your previous node, which is the one here. So you can just drag that and put that there.
So now if we hit test step here, and once that's done it will give you three items which are all these URLs that would all be your images, but this time they're just uploaded to servers which is a requirement when posting to different social channels because for most of these social media platforms like TikTok or Instagram, they're quite sensitive and they only allow accredited third-party tools like Blot to auto-post to their platforms.
So now we're almost done with this second part, but the last thing that you just want is to add a code node. And you'll see in a bit why this is important. And just name this into combine. And just remove this placeholder. And it's called combine because all that we are going to do is to take these three items and combine them once again into one item so that we can properly publish it as just one carousel post in TikTok. So here in our community, you can just copy that whole script, place that there, and then click on test. And all that did is to list down these media URLs that we created in the previous step and just combine them into one item. And there you go. So if you just want to clean that up, you now have part two fully done.
So now in our very final step, we only need two nodes, which is this Google sheet node as well as this TikTok publishing node. And so we'll set that up next. Because actually, if you extend this and look for Google Sheets, you can just select that and click on append row and sheet as the action. This Google sheet node is honestly an optional step, but it's just good practice so that these URLs that you created for this specific run can be stored in a spreadsheet somewhere so that you can get back to it if in case you want to, let's say, upscale those images as posters and even sell them as digital art down the track.
So to do this, just go ahead and connect your Google Sheets by creating a new credential and using N8N's easy sign-in with Google button here. And then what you want to do is to find your template document from this list. And if you need a template, what we've done is make it easy by creating one for you. So if we click this link, you'll find there an easy template. There's not too many columns here, but to make a copy of it, just head to file and click on make a copy. And that will create a copy of that same template in your Google Drive. So now back in N8N, we can just search for that sheet, select that, and also choose the tab or the sheet itself. And for me, it would be sheet one. And you'll see N8N already mapped these columns automatically. And so what you can do is to just drag these inputs at the left into the image URLs so that you store them properly. And then under the title and caption, these are again just for tracking. You can just go and find the output of your very first agent because this is where the title and the caption is. And you can see it's red here just because we're working with multiple items on different stages of running this workflow. So to fix this, you can just replace this item word into first and an open and close parenthesis. So that will basically just get the very first item, which is what you need anyway. So do that also for the caption, and that should be corrected.
And now for the date published, what you want here is a dynamic script that will just return today's date. If you just head to the step three page in our community, you can just copy this, change this to expression, and paste it there. And you'll see that it's returning today's date. And so now the only remaining column we haven't filled up here is this ID column. And for this one, what I like to do is just type in a simple Excel formula like so. And what this will do if I click on test step is that it will append one row in our sheet which, if we go back to that, you can see it just appended that along with all the values that we got for this run. And you'll see that the ID is reflecting properly. This is basically just getting the row number for this row minus one. So 2 - 1 equals 1 in that case. And so the next ones will be filling up as the automation runs continuously. So that's just good for logging things in a spreadsheet.
But now the actual step that we need is to actually post this to TikTok. So the way to do that is through another HTTP request, and you can just rename this to TikTok. And once again we'll be posting a request and we'll be using Blot again to do this, but the URL this time would be this piece which you can just copy and place it there. And now under authentication, you can just use your header O authentication which you've set up earlier and that just saves you a lot of time. So now the only thing you need to do is to configure the request that you'll be making. So in this case, JSON is what accepts. So you can just specify the body using JSON to make it simpler. And once again, you can just copy this JSON script over at the community and change that to expression and paste it there.
So now if I open that, you'll see that once again it's just a lot of attributes that accepts. So if you're using TikTok this may be familiar to you already. But just to go through the important pieces here, there's an attribute here called auto add music which is set to true. So that's great because it will actually automatically choose the music from TikTok's database for you so that there's background music for your post. And then for the content you have here the text which would be the caption. So you can see we're mapping it on the output of our style agent here, which by the way, if you haven't renamed that, this may come up as red to you. So you just need to either rename your style agent or alternatively find that caption attribute here at the left and just drag it in there. And then same with the Google sheet, you can just change this item to first and that should map properly. And then for the media URL, you can see that we are just uploading those pictures here one by one in this array format, which is basically like a list. And finally, very important, this account ID, you should actually change for yourself because right now this is just a placeholder. And the value here should actually point to your TikTok account instead of the placeholder. So for you to get that, very simple. We're again just in Blot settings. You can just log in with TikTok here. And that would connect Blot to your TikTok account. And once you get that connected, you can just go ahead and click copy account ID here and paste it here in this area.
So now if you've set that up successfully, what you can do is to click test step. You'll be receiving this post submission ID which tells you that it's been submitted. And over at Blot, if you now go to publish posts, you'll be able to check if that post got submitted correctly. And if you preview that over at TikTok, you'll see that we have those three images here and even a background music automatically selected for [Music] you. So that was actually a very good choice for the music. And you can see the images here are also for the first time adhering to the characters that we want. And it is now so much easier because of ChatGPT's image generation model.
So you can see we have a couple more examples here. And then I got these images because I actually left the workflow to run every 10 minutes just to see the images that it will come up with, and they're all pretty good. There's even a few that are really of different styles, which is all thanks to the prompting mechanism that we set up earlier. And so if you just continue to test it out, you'll be able to generate completely different styles of completely different characters every time.
And that's it. You now have built this TikTok AI digital art factory. And if you look into our framework from earlier, you can see that there are actually these optional nodes, which if I zoom in, they just correspond to the different social channels that can also post. But I won't be going through them. But if you have access to this template, you can just select them and do a right click in order to activate them using this button, or if you just want to plug them into the workflow that you just created, you can just go ahead and copy them and paste them here. And all you need to do is
To just connect those social channels as succeeding steps, depending on which ones you want to activate.
So there you just learned how to properly segment prompting for different AI agents, as well as how to use the Chat GPD image generation model to automatically create images and post them over at Tik Tok and any social channel of your choice.
Now, if you're looking to turn this into a content business, what you can do is to build up your Tik Tok account so that you can get reach similar to this user. For example, if I were them and I want to monetize, what I would do is to utilize the link in bio feature, which they're not even doing at the moment, and use that link in bio to direct them to your Etsy store, for example, where you can just upscale those images and sell them as digital posters. And there's a lot of examples of Etsy businesses doing this if you just go ahead and search there. Or alternatively, you can direct them to Patreon where you can upload those images as wallpaper kits and digital illustrations. So you can see this one, for example; he does these illustrations, and he was able to build up this brand so that he now has more than 2,000 members who are subscribed to his work for these digital art.
So those are just some ideas that sooner or later will be heading toward even for AI art because of how good it's getting.
So there, if you like this lesson, then also like and subscribe to the page. It helps support this channel and the community as well. And if in case you're not yet part of the RoboNuggets community, check it out just in the link in the video description. We have tons of other lessons here all around AI and automation where we release new ones almost every week. And all of these also have the blueprints and templates cleanly organized within each of them. And we also have a growing network of AI practitioners who are all sharing paid opportunities here. Some are from me, some are from the members themselves.
So, if you're looking for a partner in this space, then this is a good way to scout for one because if you just attend one of our events, you'll be able to exchange ideas plus network with these AI practitioners across the globe as well.
So, if having that community interests you and you want access to more step-by-step tutorials, all with ready-to-load automation blueprints organized for you, then check out the RoboNuggets community if you want to be part of that movement.
That's it for this one. See you guys next time. Thank you.