AWS PartyRock is a service to create no-code LLM and Image Generation apps. I presented a live workshop on PartyRock. Participants came with their laptops. First they built the introductory projects. Then they presented their unique custom Gen AI Apps.
This post has both the introductory projects, and three custom solutions presented by the workshop participants.
Is it free?
Yes for now. But you get a set amount of “credits”. If you really like it that much, you might be able to get away with multiple accounts. Once you’re logged in, click on the smiley face in the top right corner to see your “Backstage”.
Getting Started
Go to partyrock.aws
Click on “Build your own app”.
Click on “Start from an empty app”
In this workshop, we have two projects. A chatbot project and an image generation project. You can work on both, or you can spend the whole session making one particularly good.
The project walk-throughs will get you started. At the end of the session, you will have the opportunity to present your custom solution. The best solutions will be included in this post. Having your solution included in this post is an awesome way to boost your professional profile.
Project 1: An educational chat bot
In the first iteration of this project, we will build a chatbot that will teach the user to build and deploy a static website. Once you have completed the “walk through” part of the project, create the chatbot that you would like to use. The best prompts/chatbots will be featured in this post, along with your LinkedIn profile.
For an example of chatbots like this in the wild, check out my Learn Python from scratch GPT, and Learn Data Analytics in Python GPT.
Initial Walk Through
Click on the randomly generated name and rename your app to a name that you like.
Click on “Create Widget” or “+ Add Widget”.
Choose the “Chatbot” widget
Fill out the details of the of our chatbot. We are using the Claude Instant model in this walk through. Because it’s cheap and “instant”. Feel free to switch to another model after completing the walk through part of this workshop.
I have pasted our first chatbot prompt below.
You can expand the size of the chatbot window by dragging the bottom right hand corner. You might need to close the widget editor pane before you can resize the widget.Prompt Iteration 1 I am building my first every static website. You are coaching me to build a static website. I am completely new to building websites, but not so new to IT in general. You will teach me to build a static website for an AWS Workshop that I will be hosting. You will then teach me to deploy my website on AWS.
Send the first message to the chatbot. I choose to use: “I want to create a website for my new coding bootcamp business”.
Notice that the chatbot replies with what can best be described a guidelines. Not a tutorial. Let’s improve out prompt.
Prompt Iteration 2 I am building my first every static website. You are coaching me to build a static website. I am completely new to building websites, but not so new to IT in general. You will teach me to build a static website for an AWS Workshop that I will be hosting. You will then teach me to deploy my website on AWS.You will teach me the following lessons: 1. Basics of HTML 2. Inserting images 3. Publishing a static website on S3
The second time is better. But I want to see more details. And I want to use a framework.
Prompt Iteration 3 I am building my first every static website. You are coaching me to build a static website. I am completely new to building websites, but not so new to IT in general. You will teach me to build a static website for an AWS Workshop that I will be hosting. You will then teach me to deploy my website on AWS. You will teach me the following lessons: 1. Basics of HTML 2. Inserting images 3. Publishing a static website on S3 Once I have confirmed to you that I have managed to create my first static website, teach me to make a real modern website, with the Bootstrap framework. Teach me to build it out with Bootstrap.
I’d like more guidance in creating the website. So let’s iterate again.
Prompt Iteration 4
I am building my first every static website. You are coaching me to build a static website. I am completely new to building websites, but not so new to IT in general. You will teach me to build a static website for an AWS Workshop that I will be hosting. You will then teach me to deploy my website on AWS.
You will teach me the following lessons:
1. Basics of HTML
2. Inserting images
3. Publishing a static website on S3
Make sure that you explain the different kind of files that exist, and the correct folder structure.
Once I have confirmed to you that I have managed to create my first static website, teach me to make a real modern website, with the Bootstrap framework.
Teach me to build it out with Bootstrap.
Remember that I don't actually know how to integrate Bootstrap into my website. So you will have to explain to me how I can integrate Bootstrap into my website.
If you can’t see code, reply to the bot with ‘What do you mean by “skeleton” in index.html?’ In this iteration, I’m not happy that the chatbot does not show code on its own.
We can do better. Let’s try again.
Prompt Iteration 5
I am building my first every static website. You are coaching me to build a static website. I am completely new to building websites, but not so new to IT in general. You will teach me to build a static website for an AWS Workshop that I will be hosting. You will then teach me to deploy my website on AWS.
You will teach me the following lessons:
1. Basics of HTML
2. Inserting images
3. Publishing a static website on S3
Make sure that you explain the different kind of files that exist, and the correct folder structure.
Once I have confirmed to you that I have managed to create my first static website, teach me to make a real modern website, with the Bootstrap framework.
Teach me to build it out with Bootstrap.
Remember that I don't actually know how to integrate Bootstrap into my website. So you will have to explain to me how I can integrate Bootstrap into my website.
After you have confirmed that I have successfully integrated Bootstrap into my website, walk me through the process of creating the Bootstrap elements that are typical of the type of website that I am building.
It’s good that it gave us the folder structure. But I had to push it to get example code. Let’s try again.
I am building my first every static website. You are coaching me to build a static website. I am completely new to building websites, but not so new to IT in general. You will teach me to build a static website for an AWS Workshop that I will be hosting. You will then teach me to deploy my website on AWS.
You will teach me the following lessons:
1. Basics of HTML
2. Inserting images
3. Publishing a static website on S3
Make sure that you explain the different kind of files that exist, and the correct folder structure.
Always show me example code because I learn by example.
Once I have confirmed to you that I have managed to create my first static website, teach me to make a real modern website, with the Bootstrap framework.
Teach me to build it out with Bootstrap.
Remember that I don't actually know how to integrate Bootstrap into my website. So you will have to explain to me how I can integrate Bootstrap into my website.
After you have confirmed that I have successfully integrated Bootstrap into my website, walk me through the process of creating the Bootstrap elements that are typical of the type of website that I am building.
Always show example code.
Your turn!
Create a chatbot that you would actually like to use. You can publish your chatbot by clicking the green button in the top right hand corner.
Present your bot at the end of the session and the best bots will be included in this post.
Project 2: Image Generation App
In this project, we will be creating an image generation app. The best images will be included in this post as well. Present them at the end of the session.
Create two user input fields and one image generation field.
Resize them to be like the screenshot above. Give them the same name as the widgets in the screenshot above. Add default values that you like.
Fill in the properties of the image generation pane. Notice how we are linking the user input fields to the image generation widget. Use the “@” symbol to reference an input field.
If you set the “Seed”, then you will get the same image for the same prompt each time.
You can publish your app by clicking the green button in the top right hand corner.
Your turn!
Create an image that you are proud of. Prompt at the end of the session and the best pictures and prompts will be included in this post. You might find the Stable Diffusion Prompt Book and the DALLE 2 Prompt Book useful.
Workshop Attendee’s Projects
Here are some of LLM apps created by the workshop attendees. Click on the name of app to open it in PartyRock. Click on the names of the authors to view their LinkedIn profiles.
french-party by Andrew Waltos
This chatbot is a French language tutor.
tailwind-party by Andrew Waltos
This app recommends which CSS class you should use when creating a Frontend in Tailwind CSS.
YumRoots: Junior Food Detectives by Mingrui (Gary) Sun and Harry Zhang
This app teaches kids about where their food comes from, and how it’s made. You start by inputting the name of a food. The app tells you what it’s made out of, and it draws a picture of the ingredients. You can then ask the chatbot for a detailed recipe.
Comments from the authors of YumRoots
Prompt for the text generator "Ingredient Origins":
List at most 3 main original plants or animals that the ingredients of [Name a Food] .
e.g., wheat, tomato, basil, cow, chicken that the ingredient is derived from. Avoid output e.g. beef, egg, oil, etc
Separated by commas, without providing any additional information or context.
Prompt for the chatbot "Food Journey Buddy":
Given the food name in [Name a Food] and its main source of ingredients in [Ingredient Origins] ,describe how the original plants or animals are processed or used to create the specific ingredients listed in a food item. Ready to answer relevant questions on the topic, and always speak sounds as if talking to a child.
Prompt for the image generator "They are from here!"
On a farm, objects in [Ingredient Origins] live together peacefully.
Takeaways
- We tried a lot of different prompts to have the text generator output only the ingredient without the name of the food. "without providing any additional information or context" plays an important role.
- Claude Instant is good enough for the text generator. Larger LLMs sometimes try to be overly smart by outputting extra information that is not needed.
- The image generator has limitations and does not always show all the ingredients, as we do not have direct access to the prompt that is used to generate the image.
A demo:
Name a food: Caesar salad
Ingredient Origins:
romaine lettuce, chicken, parmesan cheese
They are from here!
[see picture]
Food Journey Buddy:
Bot: Ask me how Caesar salad is made from romaine lettuce, chicken, parmesan cheese !
A story (somewhat visualised) in eight parts by Warren Markham
This app creates a comic book style story. You input the characters of your story. Then the LLM generates the story and draws eight pictures that tell the story.
Further Learning
I teach a Prompt Engineering course on Udemy. Where you can learn more Prompt Engineering techniques.
This workshop walk through will become part of my newsletter called Professional Data Science. This is a free newsletter about building a career in Data Science and AI. I’ve been working in Data Science roles since 2011. Subscribe if it’s the type of career that you would like to build.
A great way to build your career is to build relationships. A great way to build relationships is to demonstrate competency. An easy way to demonstrate competency is to share useful information. Share this article with someone who you want to build a relationship with.