yaserkl / RLSeq2Seq

Deep Reinforcement Learning For Sequence to Sequence Models
https://arxiv.org/abs/1805.09461
MIT License
767 stars 160 forks source link

Python 3 issues. #2

Closed cclauss closed 6 years ago

cclauss commented 6 years ago

flake8 testing of https://github.com/yaserkl/RLSeq2Seq on Python 3.6.3

$ flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics

./code/batcher.py:172:16: F821 undefined name 'xrange'
      for j in xrange(ex.enc_len):
               ^
./code/batcher.py:209:16: F821 undefined name 'xrange'
      for j in xrange(ex.dec_len):
               ^
./code/batcher.py:256:14: F821 undefined name 'xrange'
    for _ in xrange(self._num_example_q_threads):
             ^
./code/batcher.py:261:14: F821 undefined name 'xrange'
    for _ in xrange(self._num_batch_q_threads):
             ^
./code/batcher.py:320:18: F821 undefined name 'xrange'
        for _ in xrange(self._hps.batch_size * self._bucketing_cache_size):
                 ^
./code/batcher.py:326:18: F821 undefined name 'xrange'
        for i in xrange(0, len(inputs), self._hps.batch_size):
                 ^
./code/batcher.py:335:26: F821 undefined name 'xrange'
        b = [ex for _ in xrange(self._hps.batch_size)]
                         ^
./code/beam_search.py:107:33: F821 undefined name 'xrange'
                     ) for _ in xrange(FLAGS.beam_size)]
                                ^
./code/beam_search.py:121:32: F821 undefined name 'xrange'
    latest_tokens = [t if t in xrange(vocab.size()) else vocab.word2id(data.UNKNOWN_TOKEN) for t in latest_tokens] # change any in-article temporary OOV ids to [UNK] id, so that we can lookup word embeddings
                               ^
./code/beam_search.py:157:14: F821 undefined name 'xrange'
    for i in xrange(num_orig_hyps):
             ^
./code/beam_search.py:159:16: F821 undefined name 'xrange'
      for j in xrange(FLAGS.beam_size * 2):  # for each of the top 2*beam_size hyps:
               ^
./code/data.py:64:78: E999 SyntaxError: invalid syntax
          print 'Warning: incorrectly formatted line in vocabulary file: %s\n' % line
                                                                             ^
./code/decode.py:203:10: E999 SyntaxError: invalid syntax
  print ""
         ^
./code/inspect_checkpoint.py:32:29: E999 SyntaxError: invalid syntax
  print "\nFINITE VARIABLES:"
                            ^
./code/model.py:734:112: F821 undefined name 'xrange'
    new_states = [tf.contrib.rnn.LSTMStateTuple(results['states'].c[i, :], results['states'].h[i, :]) for i in xrange(beam_size)]
                                                                                                               ^
./code/model.py:746:31: F821 undefined name 'xrange'
      p_gens = [None for _ in xrange(beam_size)]
                              ^
./code/model.py:762:37: F821 undefined name 'xrange'
      new_coverage = [None for _ in xrange(beam_size)]
                                    ^
./code/replay_buffer.py:62:12: F821 undefined name 'cmp'
    return cmp(item.reward, self.reward) # bigger numbers have more priority
           ^
./code/replay_buffer.py:97:14: F821 undefined name 'xrange'
    for _ in xrange(self._num_example_q_threads):
             ^
./code/replay_buffer.py:102:14: F821 undefined name 'xrange'
    for _ in xrange(self._num_batch_q_threads):
             ^
./code/replay_buffer.py:151:16: F821 undefined name 'xrange'
      for _ in xrange(self._hps.dqn_batch_size * self._bucketing_cache_size):
               ^
./code/replay_buffer.py:159:16: F821 undefined name 'xrange'
      for i in xrange(0, len(inputs), self._hps.dqn_batch_size):
               ^
./code/run_summarization.py:163:41: E999 SyntaxError: invalid syntax
    print "Initializing all variables..."
                                        ^
./code/helper/cnn_dm_data_maker.py:24:16: F821 undefined name 'unicode'
        return unicode(unidecode(unicode(text, encoding = "utf-8")))
               ^
./code/helper/cnn_dm_data_maker.py:24:34: F821 undefined name 'unicode'
        return unicode(unidecode(unicode(text, encoding = "utf-8")))
                                 ^
./code/helper/cnn_dm_data_merger.py:29:26: F821 undefined name 'working_dir'
fw = open('{}/{}'.format(working_dir,outfile),'w')
                         ^
./code/helper/cnn_dm_data_merger.py:31:19: F821 undefined name 'os'
    working_dir = os.path.join(root_dir, dataset)
                  ^
./code/helper/cnn_dm_data_merger.py:34:45: F821 undefined name 'filter_file'
    filter_files = [k.strip() for k in open(filter_file).readlines()]
                                            ^
./code/helper/cnn_dm_data_merger.py:76:25: F821 undefined name 'np'
train, validate, test = np.split(dt.sample(frac=1), [int(.8*len(dt)), int(.1*len(dt))])
                        ^
./code/helper/cnn_dm_data_merger.py:83:9: F821 undefined name 'Counter'
vocab = Counter()
        ^
./code/helper/cnn_dm_data_merger.py:86:30: F821 undefined name 'izip'
    for article, abstract in izip(data[filetype]['article'],data[filetype]['abstract']):
                             ^
./code/helper/cnn_dm_data_merger.py:87:22: F821 undefined name 'example_pb2'
        tf_example = example_pb2.Example()
                     ^
./code/helper/cnn_dm_data_merger.py:92:22: F821 undefined name 'struct'
        writer.write(struct.pack('q', str_len))
                     ^
./code/helper/cnn_dm_data_merger.py:93:22: F821 undefined name 'struct'
        writer.write(struct.pack('%ds' % str_len, tf_example_str))
                     ^
./code/helper/cnn_dm_downloader.py:16:5: F821 undefined name 'reload'
    reload(sys)
    ^
./code/helper/cnn_dm_downloader.py:32:26: F821 undefined name 'unicode'
        return unidecode(unicode(text, encoding = "utf-8"))
                         ^
./code/helper/newsroom_data_maker.py:31:16: F821 undefined name 'unicode'
        return unicode(unidecode(unicode(text, encoding = "utf-8")))
               ^
./code/helper/newsroom_data_maker.py:31:34: F821 undefined name 'unicode'
        return unicode(unidecode(unicode(text, encoding = "utf-8")))
                                 ^
4     E999 SyntaxError: invalid syntax
34    F821 undefined name 'xrange'
38
yaserkl commented 6 years ago

Yes, as mentioned in the documentation, we only support Python 2.7, for now. For more information, please check the requirement section.