Been meaning to build similar. Specifically with a view towards mixing local LLMs and openAI. Locals are cheaper and more interesting but less powerful. eg some tasks will need gbnf grammar some won’t. Some can get away with 3.5 others need 4
Suspect I’ll end up duplicating OPs efforts though because hosted doesn’t really work for that.