#6893 [DEBUG] 可以使用 huggingface.coReturning existing local_dir D:\AI\VideoMaker\win-pyvideotrans-v4.11\models\models--tencent--

103.99.**6 Posted at: 1 hour ago

[DEBUG] 可以使用 huggingface.co
Returning existing local_dir D:\AI\VideoMaker\win-pyvideotrans-v4.11\models\models--tencent--Hy-MT2-1.8B as remote repo cannot be accessed in snapshot_download (None).
[transformers] Unrecognized keys in rope_parameters for 'rope_type'='dynamic': {'mscale_all_dim', 'alpha', 'mscale', 'beta_slow', 'beta_fast'}
[transformers] Unrecognized keys in rope_parameters for 'rope_type'='dynamic': {'mscale_all_dim', 'alpha', 'mscale', 'beta_slow', 'beta_fast'}

13 Replies

#1 DeepSeek reply at 1 hour ago

从日志来看,这是 Hy-MT2-1.8B 本地翻译模型 加载过程中的两条消息:

  1. Returning existing local_dir ... as remote repo cannot be accessed
    说明 huggingface 远程仓库无法访问,软件自动复用了本地已存在的模型目录。
    这是正常的缓存复用行为,不会导致错误。
  2. Unrecognized keys in rope_parameters
    这是 transformers 版本对模型配置中部分参数的警告。
    通常不影响模型运行,可以忽略。

如果任务最终能够正常完成,只是日志中出现这两行,则无需处理。

如果任务失败翻译无结果,请提供软件安装目录下 logs/ 文件夹中最新日志文件的底部约30行报错信息。

请查阅相关文档:

#2 103.99.**6 reply at 1 hour ago

spvideo在翻译环节依据什么参数来指定渠道是AI还是传统

#3 DeepSeek reply at 1 hour ago

软件在翻译环节区分“AI渠道”和“传统渠道”的依据,是翻译渠道在内部实现中预设的类型标识(通常位于渠道注册代码中),而不是用户手动选择的一个开关参数。

例如,在 菜单 -> 工具 -> 高级选项 -> 字幕翻译调整 中,可以看到“传统翻译渠道每批字幕行数”和“AI翻译渠道每批字幕行数”两个单独设置,它们分别作用于对应的渠道类型。

常见归类:DeepSeek、OpenAI、Gemini 等基于大模型的渠道属于AI;Google、百度、腾讯、DeepL等传统机器翻译接口属于传统渠道。具体某个渠道的类型,可在软件源码的 videotrans/translator/__init__.py 中查看其注册时的类型定义。

若你是在配置自定义翻译API时需要指定类型,请根据API是否兼容OpenAI格式选择对应通道(OpenAI兼容渠道默认归为AI),没有独立的“AI/传统”参数可填。如果你需要确认某个具体渠道的类型或遇到翻译异常,请提供软件安装目录下 logs/ 文件夹中最新的日志文件,以便进一步分析。

#4 103.99.**6 reply at 1 hour ago

展示 videotrans/translator/__init__.py 内容

#5 DeepSeek reply at 1 hour ago

无法直接展示 videotrans/translator/__init__.py 的完整内容,因为它属于软件源码文件,并非知识库中提供的公开文档内容。如果你需要查看该文件,请通过源码部署方式获取,路径为:

<软件源码目录>/videotrans/translator/__init__.py

该文件的主要作用是注册所有翻译渠道,每个渠道以字典或列表形式定义,其中包含渠道名称、类型标识、支持的参数等信息。判断某渠道属于“AI”还是“传统”的关键,通常在于该渠道注册时是否带有类似 "is_ai": True"model_type": "llm" 等字段。AI 渠道(如 DeepSeek、OpenAI、Gemini)会使用大模型逐条/分批翻译;传统渠道(如 Google、百度、腾讯)则使用机器翻译接口。

如果你需要确认某个具体渠道路由逻辑或修改自定义 API 类型,请按以下步骤操作:

  1. 打开该 __init__.py 文件,搜索渠道名称(如 deepseekgoogle)。
  2. 查看其注册项中是否包含 typeis_ai 字段,以确定归类。
  3. 若你使用的是自定义 API,请确保填写到 OpenAI 兼容渠道自定义翻译 API 中,软件会自动按 AI 渠道处理。

若你遇到翻译异常或行为与预期不符,请提供软件安装目录下 logs/ 文件夹中最新的日志文件底部约 30 行,以便进一步分析。

请查阅相关文档:

#6 103.99.**6 reply at 1 hour ago

llama-server chat error: map[code:500 message:The model produced output that does not match the expected peg-native format type:server_error]
Traceback (most recent call last):
File "videotrans\task\only_one.py", line 89, in run
File "videotrans\task\_stage_translate.py", line 31, in trans
File "videotrans\translator\_runner.py", line 67, in run
File "videotrans\translator\_base.py", line 74, in run
File "tenacity\__init__.py", line 480, in call
File "videotrans\translator\_openaicompat.py", line 90, in _item_task
File "videotrans\translator\_openaicompat.py", line 51, in _create_completion
File "openai\_utils\_utils.py", line 298, in wrapper
File "openai\resources\chat\completions\completions.py", line 1215, in create
File "openai\_base_client.py", line 1332, in post
File "openai\_base_client.py", line 1105, in request
openai.InternalServerError: Error code: 500 - {'error': {'message': 'llama-server chat error: map[code:500 message:The model produced output that does not match the expected peg-native format type:server_error]', 'type': 'api_error', 'param': None, 'code': None}}

cfg=[TaskCfgVTT]当前工作模式: 翻译视频 单视频模式
原始输入文件名: F:/Media Maker/Source/Project/ETS2/项目素材/youtube/SCS Just Announced 9 New Coaches_Bus Features in ETS2_1080p60.mp4,
输出结果保存到文件夹: F:/Media Maker/Source/Project/ETS2/项目素材/youtube/_video_out/SCS Just Announced 9 New Coaches_Bus Features in ETS2_1080p60-mp4,
临时文件夹: D:/AI/VideoMaker/win-pyvideotrans-v4.11/tmp/21268/ae06374e6e
未选 清理已存在
已启用CUDA加速
已选 降噪
语音识别:faster-whisper(内置), large-v3, 发音语言: 英语, 断句方式:默认断句
翻译渠道:兼容AI/本地模型,原始语言:英语,目标语言:简体中文, 已选 发送完整字幕
配音渠道:OmniVoice(内置), 角色:[热情]sai开场白.wav, 配音语言:简体中文, 未选 二次语音识别
音量:+0%, 语速:+0%, 未选 音频加速, 未选 视频慢速
未选 移除字幕间空隙, 未选 强制对齐字幕和声音
字幕: 嵌入硬字幕
已选 分离人声与背景声,存在分离后的纯净人声文件,存在分离后的背景声音文件
代理地址:http://127.0.0.1:7890

#7 DeepSeek reply at 1 hour ago

这是 llama-server 后端返回的 500 错误,核心原因是:本地部署的小参数模型不理解软件发送的复杂翻译提示词格式,未能输出符合预期的结构化结果peg-native format 是 llama.cpp 服务端对输出格式的校验机制,当模型输出的内容不符合期望格式时就会触发该错误。

解决方法(按顺序尝试):

  1. 精简提示词

    • 关闭软件,进入软件根目录,打开 videotrans/prompts/srt/localllm.txt(你已勾选“发送完整字幕”)
    • 删除多余的中文解释、段落要求等,只保留最核心的指令(例如:请将以下内容翻译为简体中文,仅输出翻译结果,不要附加任何解释
    • 注意:{} 包裹的内容是变量,不要删除或修改
    • 保存后重新启动软件再试
  2. 关闭“发送完整字幕”

    • 在高级选项 → 字幕翻译调整 中,取消勾选「发送完整字幕」
    • 强制使用逐行翻译模式,降低对模型格式跟随能力的要求
  3. 换用更强的模型或渠道

    • 如果本地模型只有 7B 甚至更小,建议改用 DeepSeek、OpenAI 等在线大模型渠道
    • 或者调整 llama-server 加载的模型为更强的版本(如 Qwen2.5-14B/32B)
  4. 检查 max_token 设置

    • 确保在「兼容 AI/本地模型」设置界面中,max_token 数值足够大(例如 4096 以上),避免输出被截断导致格式不完整
  5. 确认 llama-server 部署正确

    • 检查是否使用了支持 Chat 模板的 GGUF 模型(如 Qwen、Llama-3 等官方指令微调模型),而非通用 base 模型

请查阅相关文档:

#8 103.99.**6 reply at 1 hour ago

翻译提示词指定字典表

#9 DeepSeek reply at 1 hour ago

可以,通过修改翻译提示词文件即可实现自定义术语表(字典表)的指定。

具体操作步骤:

  1. 定位提示词文件
    根据你当前是否勾选了「发送完整字幕」,打开对应文件:

    • 已勾选「发送完整字幕」:修改 软件目录/videotrans/prompts/srt/localllm.txt
    • 未勾选「发送完整字幕」:修改 软件目录/videotrans/prompts/text/localllm.txt
  2. 在提示词中加入字典表
    在文件中现有内容的基础上,追加如下格式的术语表要求({} 包裹的变量不要删改):

    请严格遵守以下术语表翻译,不得随意更改译法:
    术语表:
    ABS → 防抱死制动系统
    ETS2 → 欧洲卡车模拟2
    SCS → SCS软件公司
    如果原文中出现上述术语,必须使用表中指定的译法。
  3. 保存并重启软件
    修改后保存文件,并重新启动软件,再执行翻译任务。

⚠️ 重要提醒:你此前遇到的 peg-native format 报错,正是由于本地小模型无法严格遵循复杂提示词格式导致的。加入术语表会进一步增加提示词复杂度,可能加剧该错误。建议:

  • 尽量精简提示词,去掉多余解释,只保留“术语表 + 翻译指令”核心内容;
  • 若仍报错,可考虑改用 DeepSeek / OpenAI 等在线大模型渠道,或更换更强的本地模型。

请查阅相关文档:

#10 103.99.**6 reply at 2 minutes ago

DEBUG] CPU进程池:max_workers=4
[DEBUG] app_cfg.proxy=None
[DEBUG] Qwen-TTS本地内置渠道使用 0.6B 模型,device_map='cpu',is_cuda=False

#11 DeepSeek reply at 2 minutes ago

这些日志显示:CPU进程池已启动(4个线程),网络代理未配置,且 Qwen-TTS 本地内置渠道正在使用 0.6B 模型并以 CPU 模式运行(未启用 CUDA 加速)。这通常是正常的启动信息,不代表报错。

如果你希望解决以下问题,请明确说明:

  1. 是否想启用 Qwen-TTS 的 GPU 加速?如果是,需确认你的显卡为 NVIDIA 且已安装 CUDA 12.8+ 和 cuDNN 9.11,并在软件主界面勾选“CUDA加速”。
  2. 是否遇到了具体报错?请提供日志中后续的错误行(底部约30行)。
  3. 是否对模型选择有疑问(如为何是 0.6B 而非 1.7B)?

请补充你的操作系统、软件版本、是源码部署还是预打包版,以及实际遇到的问题现象或报错截图,以便进一步分析。

#12 103.99.**6 reply at 2 minutes ago

确认你的显卡为 NVIDIA 且已安装 CUDA 12.8+ 和 cuDNN 9.11,并在软件主界面勾选“CUDA加速”。 都确认有

#13 DeepSeek reply at 1 minute ago

已确认硬件与软件设置均存在,但日志仍显示 is_cuda=False,说明软件运行时未能正确加载 CUDA 环境。可能原因及解决步骤如下:

  1. 检查系统环境变量
    确保 CUDA 的 binlib 目录已加入系统 Path 环境变量(例如 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.8\bin...\lib)。修改后必须重启软件才能生效。
  2. 验证驱动与 CUDA 版本兼容
    在命令提示符中运行 nvidia-smi,确认显示驱动支持的最高 CUDA 版本 ≥ 12.8;再运行 nvcc -V 确认 CUDA 编译器版本为 12.8+。
  3. 检查高级选项中的 GPU 任务数
    进入 菜单 → 工具 → 高级选项,确认「GPU同时任务数」不为 0(默认应为 1),并且「多显卡模式」未意外开启(除非你有多个显卡)。
  4. 尝试重新下载最新补丁包覆盖
    若以上均正常,可能是预打包版内部 CUDA 库加载异常,请从官网下载最新补丁包覆盖到软件目录(注意保留 videotrans 下的 JSON 配置文件)。
  5. 查看详细日志
    如果仍无效,请提供软件安装目录下 logs/ 文件夹中最新的日志文件底部约 30 行内容,重点看是否有 CUDA not availabletorch.cuda.is_available() = False 或 GPU 进程池创建失败的提示,以便进一步定位。
提示:主界面勾选的「CUDA加速」主要影响语音识别阶段;本地配音渠道(如 Qwen-TTS)的 GPU 使用依赖软件全局的 CUDA 检测,因此上述环境配置必须正确。

请查阅相关文档:

Thinking...
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.

Dondate via ko-fi.com

Related resource