PyTorch NPU 插件 不支持 stft 这个计算操作(算子)
收藏回复举报
PyTorch NPU 插件 不支持 stft 这个计算操作(算子)
t('forum.solved') 已解决
发表于2025-08-18 16:18:27
0 查看

# -*- coding: UTF-8 -*-

# cython: language_level=3

import os

from speechbrain.inference.classifiers import EncoderClassifier

import torch

import torch_npu

import os

os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'

os.environ['OPENBLAS_NUM_THREADS'] = '1'

import torch

import torch_npu

torch_device = "npu"

torch.npu.set_device(torch.device(torch_device))

torch.npu.set_compile_mode(jit_compile=False)

language_id = EncoderClassifier.from_hparams(

    source="speechbrain/lang-id-voxlingua107-ecapa",

    savedir="tmp",

    run_opts={"device": "npu"}  # <--- 添加这一行

)

def tibetan_lid(video_path):

    signal = language_id.load_audio(video_path)

    pred = language_id.classify_batch(signal)

    lang = pred[3][0]

    # score = pred[1].exp().max().item()

    # 'bo: Tibetan' = > 10

    # 'en: English' = > 20

    # 'zh: Chinese' = > 106

    # 'hi: Hindi' = > 35

    if lang == "bo: Tibetan":

        return "tibetan"

    else:

        return "no_tibetan"

lid_result = tibetan_lid(r'/home/audio_process/test_audio/adzw.wav')

print(lid_result)

~     

代码 

报错:
 

(zw3fl) [root@localhost test]# python yz2.py 

/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/speechbrain/utils/autocast.py:188: FutureWarning: `torch.cuda.amp.custom_fwd(args...)` is deprecated. Please use `torch.amp.custom_fwd(args..., device_type='cuda')` instead.

  wrapped_fwd = torch.cuda.amp.custom_fwd(fwd, cast_inputs=cast_inputs)

Traceback (most recent call last):

  File "/home/audio_process/test/yz2.py", line 44, in <module>

    lid_result = tibetan_lid(r'/home/audio_process/test_audio/adzw.wav')

  File "/home/audio_process/test/yz2.py", line 29, in tibetan_lid

    pred = language_id.classify_batch(signal)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/speechbrain/inference/classifiers.py", line 148, in classify_batch

    emb = self.encode_batch(wavs, wav_lens)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/speechbrain/inference/classifiers.py", line 110, in encode_batch

    feats = self.mods.compute_features(wavs)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl

    return self._call_impl(*args, **kwargs)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1747, in _call_impl

    return forward_call(*args, **kwargs)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/speechbrain/utils/autocast.py", line 211, in wrapper

    return wrapped_fwd(*args, **kwargs)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/torch/amp/autocast_mode.py", line 476, in decorate_fwd

    return fwd(*args, **kwargs)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/speechbrain/lobes/features.py", line 160, in forward

    STFT = self.compute_STFT(wav)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl

    return self._call_impl(*args, **kwargs)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1747, in _call_impl

    return forward_call(*args, **kwargs)

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/speechbrain/processing/features.py", line 159, in forward

    stft = torch.stft(

  File "/home/miniconda3/envs/zw3fl/lib/python3.10/site-packages/torch/functional.py", line 704, in stft

    return _VF.stft(  # type: ignore[attr-defined]

RuntimeError: stft:build/CMakeFiles/torch_npu.dir/compiler_depend.ts:106 NPU function error: call aclStft failed, error code is 161002

[ERROR] 2025-08-18-15:57:28 (PID:502373, Device:0, RankID:-1) ERR00100 PTA call acl api failed.

EZ1001: [PID: 502373] 2025-08-18-15:57:28.746.913 STFT is not supported on this platform


 

我要发帖子