NVIDIA / mellotron

Mellotron: a multispeaker voice synthesis model based on Tacotron 2 GST that can make a voice emote and sing without emotive or singing training data
BSD 3-Clause "New" or "Revised" License
853 stars 184 forks source link

error during inference #9

Closed yxt132 closed 4 years ago

yxt132 commented 4 years ago

I bumped into an error while importing tensorboardX during inference. The error is:

TypeError Traceback (most recent call last)

in 19 from waveglow.denoiser import Denoiser 20 from layers import TacotronSTFT ---> 21 from train import load_model 22 from data_utils import TextMelLoader, TextMelCollate 23 from text import cmudict, text_to_sequence /app/train.py in 14 from data_utils import TextMelLoader, TextMelCollate 15 from loss_function import Tacotron2Loss ---> 16 from logger import Tacotron2Logger 17 from hparams import create_hparams 18 /app/logger.py in 1 import random 2 import torch ----> 3 from tensorboardX import SummaryWriter 4 from plotting_utils import plot_alignment_to_numpy, plot_spectrogram_to_numpy 5 from plotting_utils import plot_gate_outputs_to_numpy /usr/local/lib/python3.6/dist-packages/tensorboardX/__init__.py in 2 """ 3 ----> 4 from .writer import FileWriter, SummaryWriter 5 from .record_writer import RecordWriter /usr/local/lib/python3.6/dist-packages/tensorboardX/writer.py in 22 import json 23 import os ---> 24 from .src import event_pb2 25 from .src import summary_pb2 26 from .src import graph_pb2 /usr/local/lib/python3.6/dist-packages/tensorboardX/src/event_pb2.py in 14 15 ---> 16 from tensorboardX.src import summary_pb2 as tensorboardX_dot_src_dot_summary__pb2 17 18 /usr/local/lib/python3.6/dist-packages/tensorboardX/src/summary_pb2.py in 14 15 ---> 16 from tensorboardX.src import tensor_pb2 as tensorboardX_dot_src_dot_tensor__pb2 17 18 /usr/local/lib/python3.6/dist-packages/tensorboardX/src/tensor_pb2.py in 14 15 ---> 16 from tensorboardX.src import resource_handle_pb2 as tensorboardX_dot_src_dot_resource__handle__pb2 17 from tensorboardX.src import tensor_shape_pb2 as tensorboardX_dot_src_dot_tensor__shape__pb2 18 from tensorboardX.src import types_pb2 as tensorboardX_dot_src_dot_types__pb2 /usr/local/lib/python3.6/dist-packages/tensorboardX/src/resource_handle_pb2.py in 20 package='tensorboard', 21 syntax='proto3', ---> 22 serialized_pb=_b('\n&tensorboardX/src/resource_handle.proto\x12\x0btensorboard\"r\n\x13ResourceHandleProto\x12\x0e\n\x06\x64\x65vice\x18\x01 \x01(\t\x12\x11\n\tcontainer\x18\x02 \x01(\t\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x11\n\thash_code\x18\x04 \x01(\x04\x12\x17\n\x0fmaybe_type_name\x18\x05 \x01(\tB/\n\x18org.tensorflow.frameworkB\x0eResourceHandleP\x01\xf8\x01\x01\x62\x06proto3') 23 ) 24 /usr/local/lib/python3.6/dist-packages/google/protobuf/descriptor.py in __new__(cls, name, package, options, serialized_options, serialized_pb, dependencies, public_dependencies, syntax, pool) 882 raise RuntimeError('Please link in cpp generated lib for %s' % (name)) 883 elif serialized_pb: --> 884 return _message.default_pool.AddSerializedFile(serialized_pb) 885 else: 886 return super(FileDescriptor, cls).__new__(cls) TypeError: Couldn't build proto file into descriptor pool! Invalid proto descriptor for file "tensorboardX/src/resource_handle.proto": tensorboard.ResourceHandleProto.device: "tensorboard.ResourceHandleProto.device" is already defined in file "tensorboard/compat/proto/resource_handle.proto". tensorboard.ResourceHandleProto.container: "tensorboard.ResourceHandleProto.container" is already defined in file "tensorboard/compat/proto/resource_handle.proto". tensorboard.ResourceHandleProto.name: "tensorboard.ResourceHandleProto.name" is already defined in file "tensorboard/compat/proto/resource_handle.proto". tensorboard.ResourceHandleProto.hash_code: "tensorboard.ResourceHandleProto.hash_code" is already defined in file "tensorboard/compat/proto/resource_handle.proto". tensorboard.ResourceHandleProto.maybe_type_name: "tensorboard.ResourceHandleProto.maybe_type_name" is already defined in file "tensorboard/compat/proto/resource_handle.proto". tensorboard.ResourceHandleProto: "tensorboard.ResourceHandleProto" is already defined in file "tensorboard/compat/proto/resource_handle.proto". Any idea why this is happening? compatibility issue? Thank you!
rafaelvalle commented 4 years ago

The issue is probably related to your tensorboard or tensorboardX versions. Pull from master and try again: now there should be no dependency on tensorboard during inference.

yxt132 commented 4 years ago

Thank you! I installed:

tensorboard==1.14.0 tensorboardX==1.8

the error went away.