By default sharepoint has an hierarchy when tags are used. Is there a way we can make it as a flat taxonomy.
SharePoint has by default a flat tagging system, if you mean in the sense of allowing user to add their own keyword to a document or a page. All of these keywords end up in the Managed Metadata Service Application’s System > Keywords Term Set. All user added keyword will end up in that specific Term Set.
As for Organization controlled metadata such as organization tags, document type tags, project tags and everything else which is governed by Dedicated Super Users or Admins, they too can be in a flat non-hierarchical structure. It wouldn’t be very useful since your mixing projects with organizations and processes in a very un-useful way. As an example, you may want to use organizational tags for support of navigation. But it can be done in a flat manner, if you wish.