Issues when running USAD2 for some evals

#1
by aryan3212 - opened

This problem might very much be some dependency issue on my end so wanted to know the versions of the libraries you are using.

[usad2_small] loading MIT-SLS/USAD2-Small
Loading weights: 100%|β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 272/272 [00:00<00:00, 1988.15it/s]
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/home/user7/continuous-latent-autoencoder/eval/eval_emotion.py", line 103, in <module>
    main()
  File "/home/user7/continuous-latent-autoencoder/eval/eval_emotion.py", line 74, in main
    data = extract(name, utts, ckpt=args.ckpt, pool=args.pool, use_cache=not args.no_cache)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/eval/repr_bench.py", line 837, in extract
    vecs.append(_pool(emb.fn(u.wav), pool))
                      ^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/utils/_contextlib.py", line 124, in decorate_context
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/eval/repr_bench.py", line 644, in embed
    output = model(wavs=wavs, wav_lengths=wav_lengths, target_layer=None)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1779, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1790, in _call_impl
    return forward_call(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/modeling_usad2.py", line 20, in forward
    return self.model(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1779, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1790, in _call_impl
    return forward_call(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_model.py", line 250, in forward
    x, x_len, layer_results = self.encoder(
                              ^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1779, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1790, in _call_impl
    return forward_call(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_modules.py", line 1014, in forward
    outputs, other = layer(
                     ^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1779, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1790, in _call_impl
    return forward_call(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_modules.py", line 766, in forward
    return self.forward_transformer(x, pos_embedding, padding_mask)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_modules.py", line 703, in forward_transformer
    attn_out, attn, pos_embedding = self.forward_attention(
                                    ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_modules.py", line 652, in forward_attention
    attn_out, attn, pos_embedding = self.attention(
                                    ^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1779, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1790, in _call_impl
    return forward_call(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_modules.py", line 565, in forward
    pos_embedding = self.positional_encoding(inputs)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1779, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/continuous-latent-autoencoder/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1790, in _call_impl
    return forward_call(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_modules.py", line 398, in forward
    self.extend_pe(x)
  File "/home/user7/.cache/huggingface/modules/transformers_modules/MIT_hyphen_SLS/USAD2_hyphen_Small/d867ebd3abe6fea7d62ada182a6d4acf65d5d85e/usad_modules.py", line 373, in extend_pe
    self.pe = self.pe.to(dtype=x.dtype, device=x.device)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
NotImplementedError: Cannot copy out of meta tensor; no data!
Spoken Language Systems org

Thanks for raising the issue.
4.49.0 and 4.52.4 both worked for me. A quick fix on your end is:

from transformers import AutoModel
import torch

model = AutoModel.from_pretrained(
    "MIT-SLS/USAD2-Small",
    trust_remote_code=True,
)

for module in model.modules():
    pe = getattr(module, "pe", None)
    if isinstance(pe, torch.Tensor) and pe.is_meta:
        module.pe = None

model = model.cuda().eval()

I'll patch the code when I'm available

Spoken Language Systems org
vectominist changed discussion status to closed

Sign up or log in to comment