Diving Into Amazon PartyRock: A New Era of AI-Driven Creativity
Tags: genai, aws
Published: 2024-03-27 21:10:19


Amazon's launch of PartyRock in November 2023 is a game-changer in making generative AI development on AWS more accessible to everyone. Thanks to early access through the Community Builders Program, I got a firsthand look at its potential. 

**What is it?**
Amazon PartyRock is as a user-friendly playground for anyone eager to experiment with generative AI, regardless of their technical background. The platform is designed to empower users to bring their AI-driven projects to life with minimal friction. 


**Getting Started** 
Log in to Amazon PartyRock using your existing Amazon, Apple, or Google account. That's right - you don't even need an AWS account to get started!

**Crafting Your Idea** 
Once signed in, PartyRock invites you to describe the functionality of the app you want to create. It's this simple input that kickstarts the generative process, with AI taking your concepts to the next stage of development.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zx3r565nsn0dezrvesbs.png)

I decided to try creating a movie recommendation app, where users describe their movie preferences and get a list of suggestions in return.

**Behind the Scenes with PartyRock**
Under the hood, PartyRock taps into Amazon Bedrock; a fully managed service that offers a choice of high-performing foundation models, which can be accessed via an API. In this example, my Movie Recommendations widget is encapsulating the call to the **InvokeModel** API. I can customise a number of things, including which underlying model to call, and the prompt.

AWS's free trial for new PartyRock users balances the introduction to generative AI with a practical look at cost, determined by input/output tokens and images generated. 

**So, what are tokens in the context of GenerativeAI?**
Tokens are the bite-sized pieces of text that AI models use to make sense of human language. They dissect everything from single characters to whole phrases, and provide a flexible way to understand the flow of language. Essentially, tokens translate our input into numerical values that the AI model can interpret, acting as a crucial bridge between the subtleties of human language and the computational logic of the models.

In Amazon PartyRock, the prompts you enter dictate the input tokens that are used. A prompt is essentially a natural language instruction that asks the generative AI to carry out a specific task. This can involve creating apps using the app builder or entering text into an app widget to generate results. The output is what the foundation models within PartyRock produce in response to your input, which can include both text and images. Additionally, the choice of model plays a significant role in credit consumption, with each model varying in how much it uses. The relative consumption of each model is indicated by a scale of 1 to 3 bars next to the model in the dropdown menu.

**Refinement and Testing**
With the skeleton of your app ready, PartyRock offers intuitive tools for tweaking and fine-tuning.

This is how our app looks out of the box:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jkgqt6o2lw9a5ipwibok.png)

Initially, the app simply takes a textual description from the user to suggest movies. To offer more tailored suggestions, I added widgets for language and streaming service preferences. Editing the 'Movie Recommendation' widget to include these preferences in the prompt is straightforward, thanks to the ability to reference other widgets with the '@' symbol.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/iihjljqiipapm5hofyvp.png)

In the above example we're capturing the user input from the description, language, and platform widgets and feeding this into our prompt, to provide more tailored recommendations. In the advanced settings, we can adjust the temperature or Top P settings, which on a text generation or chatbot widget increases the randomness of the model’s response, resulting in more creative and imaginative text. Lowering the temperature or Top P results in more factual text, which is what we're aiming for in this example. 


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/y3eniuby3pst7qvjmj76.png)

After tweaking, the LLM has recommended three movies based on my preferences, and I think it's done a fairly decent job.

**Launch and Share** 
Once satisfied with your creation, PartyRock guides you through the final steps to deploy your app, making it accessible for the world to see and use. You also have the option of keeping the app private should you wish. 

**Closing thoughts**
Venturing into PartyRock, I was initially skeptical about the depth of applications that could be created without a deeper understanding of LLM's or GenerativeAI. However, the platform's intuitive design and ease of use really lowers the barrier of entry into GenerativeAI. It's great to see how a simple description can evolve into a functional AI application, ready to tackle real-world tasks.

Getting hands-on with PartyRock has left me eager to dive deeper into Amazon Bedrock and other AI services. The move towards democratising technology, as seen with PartyRock, is a huge step towards a more inclusive, creative, and accessible approach to AI, opening the door to innovation from users of all backgrounds.