Spaces:
Runtime error
Runtime error
SYSTEM_MESSAGE = """ | |
You are Apollo, an AI music-player assistant, designed to provide a personalized and engaging listening experience through thoughtful interaction and intelligent tool usage. | |
Your Main Responsibilities: | |
1. **Play Music:** Utilize your specialized toolkit to fulfill music requests. | |
2. **Mood Monitoring:** Constantly gauge the user's mood and adapt the music accordingly. For example, if the mood shifts from 'Happy' to 'more upbeat,' select 'Energetic' music. | |
3. **Track and Artist Memory:** Be prepared to recall tracks and/or artists that the user has previously requested. | |
4. **Provide Guidance:** If the user appears indecisive or unsure about their selection, proactively offer suggestions based on their previous preferences or popular choices within the desired mood or genre. | |
5. **Seek Clarification:** If a user's request is ambiguous, don't hesitate to ask for more details. | |
""" | |
GENRE_LIST = [ | |
'acoustic', 'afrobeat', 'alt-rock', 'alternative', 'ambient', 'anime', | |
'black-metal', 'bluegrass', 'blues', 'bossanova', 'brazil', 'breakbeat', | |
'british', 'cantopop', 'chicago-house', 'children', 'chill', 'classical', | |
'club', 'comedy', 'country', 'dance', 'dancehall', 'death-metal', | |
'deep-house', 'detroit-techno', 'disco', 'disney', 'drum-and-bass', 'dub', | |
'dubstep', 'edm', 'electro', 'electronic', 'emo', 'folk', 'forro', 'french', | |
'funk', 'garage', 'german', 'gospel', 'goth', 'grindcore', 'groove', | |
'grunge', 'guitar', 'happy', 'hard-rock', 'hardcore', 'hardstyle', | |
'heavy-metal', 'hip-hop', 'holidays', 'honky-tonk', 'house', 'idm', | |
'indian', 'indie', 'indie-pop', 'industrial', 'iranian', 'j-dance', | |
'j-idol', 'j-pop', 'j-rock', 'jazz', 'k-pop', 'kids', 'latin', 'latino', | |
'malay', 'mandopop', 'metal', 'metal-misc', 'metalcore', 'minimal-techno', | |
'movies', 'mpb', 'new-age', 'new-release', 'opera', 'pagode', 'party', | |
'philippines-opm', 'piano', 'pop', 'pop-film', 'post-dubstep', 'power-pop', | |
'progressive-house', 'psych-rock', 'punk', 'punk-rock', 'r-n-b', | |
'rainy-day', 'reggae', 'reggaeton', 'road-trip', 'rock', 'rock-n-roll', | |
'rockabilly', 'romance', 'sad', 'salsa', 'samba', 'sertanejo', 'show-tunes', | |
'singer-songwriter', 'ska', 'sleep', 'songwriter', 'soul', 'soundtracks', | |
'spanish', 'study', 'summer', 'swedish', 'synth-pop', 'tango', 'techno', | |
'trance', 'trip-hop', 'turkish', 'work-out', 'world-music' | |
] | |
HTML = """ | |
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<link href="https://fonts.googleapis.com/css2?family=Gruppo&display=swap" rel="stylesheet"> | |
<style> | |
h1.no-shadow { | |
font-family: 'Gruppo', sans-serif; | |
text-shadow: none !important; | |
} | |
.hover-item:hover { | |
color: #161C32 !important; | |
} | |
.hover-item a:hover { | |
font-size: 105%; | |
} | |
a { | |
color: inherit !important; | |
text-decoration: none !important; | |
} | |
.container { | |
position: relative; | |
} | |
.apollo-gif { | |
position: absolute; | |
top: 70%; | |
right: 3%; | |
transform: translateY(-50%); | |
} | |
.video-link { | |
font-size: 14px; | |
color: red !important; | |
} | |
</style> | |
</head> | |
<body> | |
<div class="container" style="text-align: left; margin-top: 50px;"> | |
<h1 style="color: #161C32; font-size: 56px;">Apollo<sup style="color: red;">AI</sup> Music Assistant <a class="video-link" href="https://www.youtube.com/watch?v=onFEQMJL7ac&t=1s">Quickstart Video π</a></h1> | |
<h2 style="color: #AC83F3; font-size: 26px;">Experience personalized, intelligent music interaction like never before</h2> | |
<ul style="list-style-type: none; padding: 12px 0; margin: 0;"> | |
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">1</span> Open your Spotify Client</li> | |
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">2</span> Login to <a href="https://developer.spotify.com">Spotify Developer</a> website</li> | |
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">3</span> <a href="https://developer.spotify.com/dashboard">Dashboard</a> β Create app</li> | |
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0; margin-bottom: -12px;"><span style="color: #AC83F3;">4</span> Set Redirect URI to <a href="https://stuartwaller.org">https://stuartwaller.org</a></li> | |
<li style="color: #808080; font-size: 20px; padding: 0; margin-top: -12px; text-indent: 28px;">The other fields can be anything</li> | |
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">5</span> Save β Settings</li> | |
<li class="hover-item" style="color: #808080; font-size: 26px; padding: 12px 0;"><span style="color: #AC83F3;">6</span> Copy your Spotify Client ID</li> | |
</ul> | |
<img src="file/apollo2.gif" class="apollo-gif" width='545'> | |
</div> | |
</body> | |
</html> | |
""" | |
COMMANDS_MSG = """ | |
Welcome! Tell me your **mood** to help me select the best music for you | |
### <span style="color: #AC83F3;"> πΏ Standard πΏ</span> | |
- **Specific Song:** Play Passionfruit | |
- **Controls:** Queue, Pause, Resume, Skip | |
- **More Info:** Explain this song | |
- **Album:** Play the album from Barbie | |
- **Playlist:** Play my Shower playlist | |
### <span style="color: #AC83F3;"> πΏ Mood-Based πΏ</span> | |
- **Genre:** I'm happy, play country | |
- **Artist:** Play Migos hype songs | |
- **Recommendations:** I love Drake and house, recommend songs | |
- **Create Playlist:** Make a relaxing playlist of SZA-like songs | |
""" | |
ERROR_MSG = """ | |
Unable to **connect to your Spotify** | Please ensure you followed the above steps correctly | |
Watch the Quickstart Video for assistance: https://www.youtube.com/watch?v=onFEQMJL7ac&t=1s | |
""" |