Inspiration

I have been taking dancing lessons for a couple years and was surprised how popular Bachata is in Germany. People want to improve, share their progress on social media and learn new moves. However, putting the moves together when social dancing is challenging, Bachata Buddy is your personalized AI teacher! Powered by Elastic, Gemini and Google Cloud.

What it does

Creates new coreographies based on a song or natural language. The choreographies match the rythm of the music, the BPM, the energy and the level of moves you have selected or described. If you are a beginner dancer you will get a choreo you can follow, if you are an advanced dancer you will get challenging choreographies to learn.

It has the potential to become a novel product, unique of its kind.

The usage of the clips is allowed given the transformative nature of the project as well as the fact that dance moves are not the same as copirighted IP.

How we built it

  • A few days of data collection, annotation and curation
  • Build services and Django app around it
  • Upload embeddings to Elasticserach
  • Integrate Gemini for natural language description of choreographies and explanations of why the moves were selected

Challenges we ran into

  • Not enough data yet
  • FFMPEG is very heavy, the tasks to generate the deployment were not viable for Google Cloud Run, a rearchitecture in the last minute to deploy in Compute Engine was needed

Accomplishments that we're proud of

  • The model is working quite well, it is already useful for basic steps.
  • A product like this does not exist, it is unique of its kind

What we learned

Librosa parameters, traditional ML Deployment in Google Cloud ElasticSearch SERVERLESSSS

What's next for Bachata Buddy

I need a large Knowledge Graph to get better embeddings. I need a larger dataset of moves Build a mobile app with more features

Built With

Share this project:

Updates