No. Despite the name, llama.cpp supports more than just llama. It also isn’t an entirely bespoke thing as you indicate, since it is built on the more general purpose “ggml” tensor library/framework.
so llama.cpp is actually 'generic LLM framework' while ggml is 'generic ML framework'?
That seems like a reasonable description to me, but I’m not an expert, just someone who is interested in this stuff.
Having said that, once you find a model that works well, it tends to gets its advances incorporated into the next versions of the frameworks (so Tensorflow now has primitives like CNN, GRU and TransformerEncoder), as well as getting specific hardware implementations optimized for speed at the expense of generality (like this one).