docstr: Brings the song info from the database.
  
  :param song_id: song identifier.
  :return: a song by its identifier. Result must be a Dictionary.
docstr_tok: ["Brings","the","song","info","from","the","database",".",":","param","song_id",":","song","identifier",".",":","return",":","a","song","by","its","identifier",".","Result","must","be","a","Dictionary","."]
code: def get_song_by_id(self, song_id: int) -> Dict[str, str]:
      """
      Brings the song info from the database.
  
      :param song_id: song identifier.
      :return: a song by its identifier. Result must be a Dictionary.
      """
      pass
  
imports: import abc
  import importlib
  from typing import Dict, List, Tuple
  from dejavu.config.settings import DATABASES
label_desc: Use image node_id 11 for calling the BaseDatabase obj's underlying member method code with example usage: obj.get_song_by_id(song_id) without return types