2
1 Comment

Building a serverless AI music recommendations Bot

Today we had a major breakthrough with symphonAI! The serverless backend is now fully functional. Over the past weeks I have translated the backend NodeJS into AWS Lambda functions in Go. Before doing this, my only experience with backend code was building some NodeJS backends in a bootcamp. I had never touched the Go programming language either.

Throughout this experience I have taught myself more advanced backend concepts and learned a new programming language. It's been extremely challenging and requires so much of dedication to do, but I'm grateful that I now have more arrows in my quiver.

I want to talk about the tech stacks we used to build this.

Serverless architecture

We chose to build off of a completely serverless architecture for symphonAI. The reasons we chose to do this are primarily cost and to take on new challenges. After all, if you're not learning from your side-projects, what's the point! So my partner Sunny suggested using AWS API Gateway to drive AWS Lambda functions as the cost would be minimal at our start-up scale and he wanted some experience using and building with the Amazon Cloud Development Kit. I said alright and suggested that I use the opportunity to learn a new programming language.

Go

In the end, we chose to build with Go. We made this decision for two reasons. Go runs fast and compiles quickly. AWS Lambda charges based on completion times and using Go means that our code would operate faster and concurrency would be a breeze. We make many API calls that can be done concurrently on our backend and Go ensures that we can do that easily.

ChatGPT

The AI that drives it all is ChatGPT 3.5. We take your listening context from your Spotify data along with a user prompt and give that to ChatGPT 3.5 to recommend music for you. AI drives the suggestions, we only give it your music context. We chose ChatGPT 3.5 because that is currently the best model we can get API access to. We are still on a waitlist for ChatGPT 4 and Google Bard. To be completely honest, we think that ChatGPT 3.5 has a lot of room for improvement.

We would love to test further on other AI models. We have ChatGPT 4 and Google Bard shortlisted. I am particularly excited about Bard because it has no learning cut-off date limitation like ChatGPT does.

If you have any suggestions about AI models or features that you think would be cool for an AI music recommendations bot please comment them here. I'd love to hear from you!

Photo by Suzy Hazelwood: https://www.pexels.com/photo/black-audio-tapes-in-close-up-view-2718645/

on June 19, 2023