Пример #1
0
 def __call__(self, *input_tensor_list):
     tensor_row = [
         cde.Tensor(np.asarray(tensor)) for tensor in input_tensor_list
     ]
     callable_op = cde.Execute(self.parse())
     output_tensor_list = callable_op(tensor_row)
     for i, element in enumerate(output_tensor_list):
         arr = element.as_array()
         if arr.dtype.char == 'S':
             output_tensor_list[i] = np.char.decode(arr)
         else:
             output_tensor_list[i] = arr
     return output_tensor_list[0] if len(
         output_tensor_list) == 1 else tuple(output_tensor_list)
Пример #2
0
 def __call__(self, *input_tensor_list):
     tensor_row = []
     for tensor in input_tensor_list:
         try:
             tensor_row.append(cde.Tensor(np.asarray(tensor)))
         except RuntimeError:
             raise TypeError("Invalid user input. Got {}: {}, cannot be converted into tensor." \
                   .format(type(tensor), tensor))
     callable_op = cde.Execute(self.parse())
     output_tensor_list = callable_op(tensor_row)
     for i, element in enumerate(output_tensor_list):
         arr = element.as_array()
         if arr.dtype.char == 'S':
             output_tensor_list[i] = np.char.decode(arr)
         else:
             output_tensor_list[i] = arr
     return output_tensor_list[0] if len(output_tensor_list) == 1 else tuple(output_tensor_list)
Пример #3
0
 def __call__(self, input_tensor):
     if not isinstance(input_tensor, list):
         input_list = [input_tensor]
     else:
         input_list = input_tensor
     tensor_list = []
     for tensor in input_list:
         if not isinstance(tensor, str):
             raise TypeError("Input should be string or list of strings, got {}.".format(type(tensor)))
         tensor_list.append(cde.Tensor(np.asarray(tensor)))
     callable_op = cde.Execute(self.parse())
     output_list = callable_op(tensor_list)
     for i, element in enumerate(output_list):
         arr = element.as_array()
         if arr.dtype.char == 'S':
             output_list[i] = to_str(arr)
         else:
             output_list[i] = arr
     if not isinstance(input_tensor, list) and len(output_list) == 1:
         output_list = output_list[0]
     return output_list