def testVocabTokenToIdLoadId(self): with self.session(use_gpu=False): vocab = [ '<S> 3', '</S> 5', '<UNK> 7', '<epsilon> 9', 'a 2', 'b c d e 4', 'øut 8', 'über 10', '♣ -1', '愤青 -3', '← -5', ] self.assertEqual( 3, py_x_ops.vocab_token_to_id( '<S>', vocab=vocab, load_token_ids_from_vocab=True).eval()) self.assertEqual( 2, py_x_ops.vocab_token_to_id( 'a', vocab=vocab, load_token_ids_from_vocab=True).eval()) self.assertAllEqual([4, -1], py_x_ops.vocab_token_to_id( ['b c d e', '♣'], vocab=vocab, load_token_ids_from_vocab=True).eval()) self.assertEqual( 7, py_x_ops.vocab_token_to_id( 'unknown', vocab=vocab, load_token_ids_from_vocab=True).eval())
def testVocabTokenToId(self): with self.session(use_gpu=False): vocab = [ '<S>', '</S>', '<UNK>', '<epsilon>', 'a', 'b c d e', 'øut', 'über', '♣', '愤青', '←', ] self.assertEqual( 0, py_x_ops.vocab_token_to_id('<S>', vocab=vocab).eval()) self.assertEqual( 4, py_x_ops.vocab_token_to_id('a', vocab=vocab).eval()) self.assertAllEqual([5, 8], py_x_ops.vocab_token_to_id(['b c d e', '♣'], vocab=vocab).eval()) self.assertEqual( 2, py_x_ops.vocab_token_to_id('unknown', vocab=vocab).eval())
def _StringToToken(self, tokstr): return tf.where(py_x_ops.token_in_vocab(tokstr, vocab=self._pieces), py_x_ops.vocab_token_to_id(tokstr, vocab=self._pieces), tf.broadcast_to(NO_TOKEN, tf.shape(tokstr)))