Prompt Music Search by MyPart
Describe the music you need in plain words and get a ranked list of real, released tracks from MyPart’s catalog.
- Natural-language briefs. From a few words (“Futuristic EDM beat”) to a full creative brief (“warm, uplifting acoustic music for a travel ad about feeling at home anywhere”), in any language.
- Song or section. Match whole songs, or the best-fitting part of each song with its start and end time.
- Licensed-only option. Restrict results to MyPart’s licensable catalogs.
Real catalog music only: nothing is generated.
Get started
- Get a MyPart API key. Request access at mypart.ai/api-access. Every request needs it.
- Use your own Replicate API token to call the model, as with any model on Replicate.
Keep both in environment variables: MYPART_API_KEY and REPLICATE_API_TOKEN. The MyPart key is passed as the mypart_api_key input; Replicate treats it as a secret and redacts it from prediction logs.
Quick start
curl -s -X POST https://api.replicate.com/v1/predictions \
-H "Authorization: Bearer $REPLICATE_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Prefer: wait" \
-d '{
"version": "myart-arch/prompt-music-search:ee171cf4023e15a40d2f0dc71e49ccd5e9ef287db76a9c042c1e7542b91325c2",
"input": {
"mypart_api_key": "'"$MYPART_API_KEY"'",
"query": "Warm, uplifting acoustic music for an Airbnb ad about discovering beautiful places and feeling at home anywhere."
}
}'
import os
import replicate
output = replicate.run(
"myart-arch/prompt-music-search:ee171cf4023e15a40d2f0dc71e49ccd5e9ef287db76a9c042c1e7542b91325c2",
input={
"mypart_api_key": os.environ["MYPART_API_KEY"],
"query": "energetic indie rock for a travel vlog",
"num_results": 10,
},
)
for track in output["results"]:
print(track["score"], track["artist"], "-", track["title"], track["url"])
Inputs
| Input | Default | Description |
|---|---|---|
mypart_api_key |
required | Your MyPart API key (request one). Treated as a secret. |
query |
required | The music you want, in your own words. |
search_resolution |
song |
song matches whole songs. section matches the best-fitting part of each song and returns its start and end time. |
results_mode |
discovery |
popular boosts highly familiar songs and artists. discovery allows a wider, more flexible search. |
num_results |
10 |
1-50. The maximum returned. |
licensed |
false |
true returns only tracks from MyPart’s licensable catalogs. |
Output
{
"results": [
{
"id": "164779",
"title": "Going Home",
"artist": "Jon Allen",
"score": 5.46,
"url": "https://.../preview.mp3",
"spotify_id": "4R19bxsqCY2NQUncOKG8Pe",
"start_time_seconds": null,
"end_time_seconds": null,
"section_lyrics": null
}
]
}
| Field | Meaning |
|---|---|
id |
MyPart track id |
title, artist |
Track title and artist |
score |
Match score; higher is a closer match |
url |
Audio preview (MP3) |
spotify_id |
When available, otherwise null |
start_time_seconds, end_time_seconds |
Section searches only: the part of the song that matched |
section_lyrics |
Section searches only: the lyrics of that part, when it has lyrics |
The order of the top results is varied on purpose; use score to rank them.
Tips
- Describe the use and the feeling (“for a product launch, premium and exciting”) rather than only a genre: the brief is interpreted into moods, genres, instruments and more.
- You can provide a reference song or artist, e.g. “Songs in the style of Bruno Mars about achieving success in life”.
Troubleshooting
| Error | What to do |
|---|---|
A MyPart API key is required |
Pass your key as mypart_api_key. No key yet? Request one at mypart.ai/api-access. |
Invalid or revoked MyPart API key |
Check the key was copied in full, or request a new one at mypart.ai/api-access. |
The MyPart API is busy |
Retry after a few seconds. |
About MyPart
MyPart builds music reasoning for creative tools: it understands what a visual or a brief needs and finds real music that fits. API access: mypart.ai/api-access.
Model created
Model updated