Separating foundational models from application layers