When using Keras you don't have to pull every part of the framework on your project. For example, you can only use training algorithms and not layer implementations. So it works more like a collection of libraries.
Keras is a high-level API. It's difficult to customize your model past a point. If you want to build something beyond the application-level, use Theano or TensorFlow. (Keras runs on top of either one of these anyways)