class_docstr: Abstract class for dialog problems.
docstr: Download data from official sources.
  
  Args:
    train_mode: string, whether we are in train, dev or test mode
docstr_tok: ["Download","data","from","official","sources",".","Args",":","train_mode",":","string",",","whether","we","are","in","train",",","dev","or","test","mode"]
code: def download_data(self, train_mode):
      """Download data from official sources.
  
      Args:
        train_mode: string, whether we are in train, dev or test mode
      """
  
      # Open the url and download the data with progress bars.
      data_stream = requests.get(self._url, stream=True)
      with open(self._zipped_data, "wb") as f:
          for chunk in data_stream.iter_content(1024):
              if chunk:
                  f.write(chunk)
                  f.flush()
  
      # Next step is extracting the data.
      print(
          "problem_log: Extracting data to " + self._zipped_data + "."
      )
      self.extract_data(train_mode)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import os
  import re
  import tarfile
  import zipfile
  import requests
  from tensor2tensor.data_generators import generator_utils
  from tensor2tensor.data_generators import problem
  from tensor2tensor.data_generators import text_encoder
  from tensor2tensor.data_generators import text_problems
  from tensor2tensor.data_generators.text_problems import VocabType
  from tensor2tensor.layers import modalities
  from tensor2tensor.utils import metrics
  import tensorflow.compat.v1
label_desc: Use image node_id 26 for calling the DialogAbstract obj's underlying member method code with example usage: obj.download_data(train_mode) without return types