#3259 TaskCfg(cache_folder='C:/SOFT/pyvideotrans/tmp/60944/193542a978', target_dir='c:/soft/pyvideotrans/output/recogn', remov

240e:3b7* Posted at: 21 hours ago 👁14

语音识别阶段出错 [阿里FunASR(本地)] 程序内部错误:partially initialized module 'pandas' has no attribute '_pandas_datetime_CAPI' (most likely due to a circular import)
concurrent.futures.process._RemoteTraceback:
"""
Traceback (most recent call last):
File "concurrent\futures\process.py", line 243, in _process_worker
File "videotrans\process\stt_fun.py", line 722, in funasr_mlt
File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "pyimod02_importers.py", line 457, in exec_module
File "modelscope\pipelines\__init__.py", line 4, in

from .base import Pipeline

File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "pyimod02_importers.py", line 457, in exec_module
File "modelscope\pipelines\base.py", line 16, in

from modelscope.msdatasets import MsDataset

File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "pyimod02_importers.py", line 457, in exec_module
File "modelscope\msdatasets\__init__.py", line 2, in

from modelscope.msdatasets.ms_dataset import MsDataset

File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "pyimod02_importers.py", line 457, in exec_module
File "modelscope\msdatasets\ms_dataset.py", line 9, in

from datasets import (Dataset, DatasetDict, Features, IterableDataset,

File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "pyimod02_importers.py", line 457, in exec_module
File "datasets\__init__.py", line 17, in

from .arrow_dataset import Dataset

File "", line 1027, in _find_and_load
File "", line 1006, in _find_and_load_unlocked
File "", line 688, in _load_unlocked
File "pyimod02_importers.py", line 457, in exec_module
File "datasets\arrow_dataset.py", line 59, in

import pandas as pd

File "C:\SOFT\pyvideotrans\_internal\pandas\__init__.py", line 61, in

from pandas.core.api import (

File "C:\SOFT\pyvideotrans\_internal\pandas\core\api.py", line 1, in

from pandas._libs import (

File "C:\SOFT\pyvideotrans\_internal\pandas\_libs\__init__.py", line 18, in

from pandas._libs.interval import Interval

File "pandas/_libs/interval.pyx", line 1, in init pandas._libs.interval
File "pandas/_libs/hashtable.pyx", line 1, in init pandas._libs.hashtable
File "pandas/_libs/missing.pyx", line 40, in init pandas._libs.missing
AttributeError: partially initialized module 'pandas' has no attribute '_pandas_datetime_CAPI' (most likely due to a circular import)
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "videotrans\task\job.py", line 106, in run
File "videotrans\task\_speech2text.py", line 156, in recogn
File "videotrans\recognition\__init__.py", line 245, in run
File "videotrans\recognition\_base.py", line 141, in run
File "videotrans\recognition\_funasr.py", line 71, in _exec
File "videotrans\configure\_base.py", line 287, in _new_process
File "concurrent\futures\_base.py", line 446, in result
File "concurrent\futures\_base.py", line 391, in __get_result
AttributeError: partially initialized module 'pandas' has no attribute '_pandas_datetime_CAPI' (most likely due to a circular import)
TaskCfg(cache_folder='C:/SOFT/pyvideotrans/tmp/60944/193542a978', target_dir='c:/soft/pyvideotrans/output/recogn', remove_noise=False, is_separate=False, detect_language='zh-cn', subtitle_language=None, source_language=None, target_language=None, source_language_code=None, target_language_code=None, source_sub=None, target_sub='c:/soft/pyvideotrans/output/recogn/R_MIC_260205-105115.srt', source_wav=None, source_wav_output=None, target_wav=None, target_wav_output=None, subtitles='', novoice_mp4=None, noextname='R_MIC_260205-105115', shibie_audio='C:/SOFT/pyvideotrans/tmp/60944/193542a978/R_MIC_260205-105115-1771118779.0453558.wav', targetdir_mp4=None, instrument=None, vocal=None, back_audio=None, background_music=None, app_mode='biaozhun', subtitle_type=0, volume='+0%', pitch='+0Hz', voice_rate='+0%', voice_role=None, copysrt_rawvideo=False, clear_cache=False, translate_type=None, tts_type=None, recogn_type=3, model_name='Fun-ASR-Nano-2512', voice_autorate=False, video_autorate=False, is_cuda=True, name='C:/260203-260211/R_MIC_260205-105115.mp3', basename='R_MIC_260205-105115.mp3', ext='mp3', dirname='C:/260203-260211', shound_del_name=None, uuid='193542a978', remove_silent_mid=False, align_sub_audio=True, enable_diariz=False, nums_diariz=0, rephrase=0, only_out_mp4=False, fix_punc=False, recogn2pass=False)


=
system:Windows-10-10.0.22631-SP0
version:v3.97
frozen:True
language:zh
root_dir:C:/SOFT/pyvideotrans

3 Replies

这是由于软件内部依赖的 pandas 库在 Windows 预打包版中出现了循环导入错误,导致 FunASR 本地模型无法正常加载。

  1. 临时解决方案:更换语音识别渠道。由于此错误与预打包版(.exe)的特定环境有关,建议暂时使用其他语音识别渠道,例如:

    • faster-whisper(推荐,需下载模型)
    • Edge-TTS(在线,免费)
    • OpenAI Whisper API(在线,付费)
  2. 根本解决方案:等待官方修复或使用源码部署。此问题可能需要在未来的软件版本中修复依赖包冲突。作为替代方案,您可以考虑在 Windows 上使用 uv 进行源码部署,这可以避免预打包环境中的依赖问题。

请查阅相关文档:

如何在Windows 上使用 uv 进行源码部署?

在 Windows 上使用 uv 进行源码部署,可以避免预打包版的环境依赖问题。以下是详细步骤。

  1. 安装前置依赖

    • Python 3.10:从 Python 官网下载并安装 3.10.x 版本。安装时务必勾选“Add Python to PATH”。
    • FFmpeg:下载 FFmpeg 的 Windows 版本,解压后将其 bin 目录(例如 D:\ffmpeg\bin)添加到系统的环境变量 Path 中。
    • uv:打开 PowerShell 或 CMD,运行 pip install uv 进行安装。
  2. 获取源码并安装依赖

    • 打开 PowerShell 或 CMD,进入你计划存放项目的目录(例如 D:\)。
    • 克隆仓库:git clone https://github.com/jianchang512/pyvideotrans
    • 进入项目目录:cd pyvideotrans
    • 使用 uv 安装依赖:uv sync
  3. 启动软件

    • 依赖安装完成后,运行 uv run sp.py 即可启动 pyVideoTrans 图形界面。

重要提示

  • 源码部署路径同样严禁包含中文或空格
  • 首次启动时,软件会下载必要的模型文件(如 faster-whisper),请确保网络通畅或已配置代理。
  • 如需 GPU 加速,仍需单独安装 CUDA 12.8 和 cuDNN 9.x,并配置环境变量。

请查阅相关文档:

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Related resource