I setup Sonic Sage with OpenAi API key. Instantly noticed that when building a playlist it adds music that i dont have which is idiotic. There needs to be a button that enables “library only mode”. If i type “make a 30 song Playlist of the best 90’s music in my library” it still puts in music “not found on device”. Please add this functionality asap.
The button is already there. Look in the settings where you put your open air key in.
Sorry, this might be an internal test preference. I seem to remember why it’s still only internal:
The OpenAI results are close to useless without a streaming service (like TIDAL used to be in Plex) now. Since OpenAI doesn’t know which tracks you actually have in your collection, it can produce playlists which don’t correspond to the contents of your server. It all depends on the query.
Hence why this preference is not publicly available.
That’s frustrating lol. But now I do see the conundrum. Although there is probably a way for Plexamp to make an anonymous index of all music available on the server, that it could send to openai without violating privacy. Or bake an LLM into plexamp on device itself. Or on the server side for more powerful CPU/GPU if needed. Or worst case allow us to roll our own AI in Ollama to use for Plexamp. Any of this in the works by chance?
That would mean it would have to get sent with every query. I don’t see it being practicable.
With Plex servers running not only on fully-grown, and very modern PCs, but a sizable number of them also on (old) NAS devices and Raspberry Pi boards, I think that is still “out there” in phantasyland.
As for any future development: I wouldn’t be able or allowed to disclose it.
I mean the index doesn’t have to be human readable. It could be a csv, or bare string. Or base64 encoded. For a 2000 song library we are probably talking around 5000 tokens for base64. And 10,000 for bare string. So it would probably cost .10C per playlist build. And maybe there is a way for index persistence, which would cut cost down even further. Just a thought.
The “simple” solution is to bring back a streaming partner. Qobuz? Deezer?
I agree that we need to be able to use Sonic Sage with our personal libraries rather than a music service. The solution is pretty simple: plex creates a csv of all unique “Artist - Albums” in your library, gives that to gpt-5-mini as part of the query to create the playlist. Cost would be minimal and GPT-5-mini is smart enough to only use songs from those albums. If you have a 5,000 songs, that is about 417 albums, which turned into a csv is about 4,271 tokens costing only $0.0011 for the input. So if you had 50,000 songs, you are looking at $0.01 for the query.
In case anyone is interested I went ahead and built my own solution.
I have a local web app which connects via the Plex API. It does the following:
-
export my whole library as either JSON or CSV. I use use this for uploading to a ChatGPT project.
-
Playlist creation - uses search against the plex API based on my prompt (e.g. “the evolution of grunge in the 90s”) and extracts tracks and assoicated metadata and passes them off to the OpenAI API with a custom system instruction. This only returns tracks for the playlist from the library sources. It also returns reasons for track inclusions and an overall decription of the playlist. I can then create the playlist with one click.
-
Genre updating - this lets me know any albums missing genres and also lets me bulk update genres. The reason I added this on top of being able to update genres in plex, is that I also integrated OpenAI for genre recommendations. I plan to extend this to also check artist genre gaps as well as other data attributes such as year, country etc… that are useful for the playlist generation feature.
I am about to implement a library exploration mode which operates similar to the playlist creator but recommends artists and albums I should think about adding to my colleciton based on my prompt and what I already have.
I did all of this without being a coder (I used Codex) so encourage anyone who wants to leverage AI capabilities more against the collection to give it a go. The Plex API is pretty powerful. All up it took me less than 4 hours effort.
My library isn’t massive but is has a bit in it. Around 2500 albums and 35,000 tracks.
This is cool. Would love to see an implementation where missing tracks that pop up in a playlist creation could force an artist add in Aurral which connects to Lidarr.
There’s also this project:
Well that’s cool…. So it makes the playlists properly and then they are available via Plex/Plexamp?

