code: def make_model(corpus, lemmatize=False, rm_stops=False, size=100, window=10, min_count=5, workers=4, sg=1,
                 save_path=None):
      
  
      # Simple training, with one large list
      t0 = time.time()
  
      sentences_stream = gen_docs(corpus, lemmatize=lemmatize, rm_stops=rm_stops)
      # sentences_list = []
      # for sent in sentences_stream:
      #    sentences_list.append(sent)
  
      model = Word2Vec(sentences=list(sentences_stream), size=size, window=window, min_count=min_count, workers=workers,
                       sg=sg)
  
      # "Trim" the model of unnecessary data. Model cannot be updated anymore.
      model.init_sims(replace=True)
  
      if save_path:
          save_path = os.path.expanduser(save_path)
          model.save(save_path)
  
      print('Total training time for {0}: {1} minutes'.format(save_path, (time.time() - t0) / 60))
docs: Train W2V model.