#4283 术语表是不是区分大小写的?

2409:8a55* Posted at: 20 days ago 👁83

比如原始词是3d,替换词是3滴,也就是把所有的3d替换为3滴,那如果字幕中的原始词是3D,就无法被3滴替换是吗

18 Replies

术语表的匹配行为并不是简单的字符串查找替换。

核心原因在于,术语表功能是通过提示词(Prompt)发送给 AI 翻译模型的接口,最终的匹配逻辑由 AI 模型根据上下文自行判断,而非软件内置的强制大小写敏感匹配规则。这意味着:

  1. 并非精确匹配:AI 翻译模型在处理术语表时,通常具备一定的上下文理解能力。因此,如果字幕中是 "3D",AI 很有可能依然将其识别为数字 "3" 和字母 "D" 的组合,并尝试根据术语表指令将其替换为 "3滴"。
  2. 行为取决于模型:不同的 AI 模型(如 GPT-4、DeepSeek、Gemini)对提示词的遵循程度和语义理解方式不同。对于 "3d" 和 "3D" 这种仅大小写不同的词,大多数先进的模型倾向于忽略大小写差异,将其视为同一个词进行替换。但也无法完全保证所有模型在任何上下文都 100% 识别并替换。
  3. 优化建议:为确保 AI 准确执行,建议在填写术语表时,将可能出现的变体都加入,例如:

    • 原始词:3d, 3D
    • 替换词:3滴
      这样做可以最大程度地向 AI 明确你的替换意图。

此外,你也可以在 菜单 -> 工具/选项 中的翻译设置里,为对应渠道自定义调试翻译提示词,将术语表的替换指令描述得更严格。

请查阅相关文档:

为对应渠道自定义调试翻译提示词 具体在哪

在软件顶部菜单栏中,依次点击 菜单 -> 工具/选项,在打开的设置窗口左侧选择 翻译设置,然后在下拉列表中选择你正在使用的 AI 翻译渠道(例如 OpenAI、DeepSeek 或兼容AI接口),即可看到该渠道专属的 提示词(Prompt) 编辑区域。修改后保存即可生效。

请查阅相关文档:

【发送完整字幕】选中时的提示词文件:[软件目录/videotrans/prompts/srt/deepseek.txt]
未选中时的提示词文件:[软件目录/videotrans/prompts/text/deepseek.txt]

若需修改提示词,打开该txt文件修改即可,花括号内容是变量,勿修改或删除

上面是提示词输入框中的提示,我是直接在这个框里填写就行吗,还是找到目录文件,在文件中修改才能生效?

直接在提示词输入框中填写并保存即可生效,软件会自动将内容应用到对应渠道的翻译任务中。

[软件目录]/videotrans/prompts/ 下的 .txt 文件是默认模板,方便你批量替换或分享。若你通过界面修改,软件会优先使用你编辑后的内容,并不会影响原始模板文件。两种方式效果一致,任选其一即可。修改后点击窗口底部的“保存”按钮。

请查阅相关文档:修改 AI翻译提示词prompt

给我个示例,填写格式是怎样的,还是直接写我想要的,比如”术语替换时,忽略原始词大小写,只要字母匹配即可替换”,这样?还有是要英文填还是中文?

直接在提示词输入框中用自然语言书写即可,没有特殊的格式要求。无论是输入框还是 .txt 文件,逻辑都是一样的:在保留 {变量名} 不变的前提下,用中文补充你的指令。

填写示例:
假设原提示词模板包含变量 {source_language_name},你可以在该变量后直接追加指令。最终填写效果如下:

你是一个专业的视频字幕翻译助手。请将下方的 {source_language_name} 字幕翻译为 {target_language_name}
特别注意:在执行术语表替换时,请忽略原始词的大小写,只要字母匹配即可将其替换为指定的目标词。
以下是待翻译的字幕内容:
{content}

关于语言:
直接填中文指令即可。这些主流 AI 大模型对中文指令的遵循度极高,用中文描述约束条件比写英文 Prompt 更不容易产生歧义。

关键注意:
无论怎么修改,提示词中由 { } 包裹的变量名(如 {source_language_name}{content})是程序调用的占位符,绝对不要修改或删除,否则会导致报错。

请查阅相关文档:

最终是只按我填写的提示词执行,还是会与.txt文件中的提示词合并起来再执行?

软件会仅执行你在输入框中填写的提示词内容,不会与默认 .txt 模板文件的内容进行合并。简单来说,当你在界面中自定义并保存提示词后,软件将完全以你的新版本为准,原始模板文件不再参与此次翻译任务。

.txt文件中包含一些关键的功能,比如术语表,如果我在框中填写的指令完全替换.txt文件,那术语表会完全失效

术语表功能是独立于提示词运行的。当你勾选“发送完整字幕”并在翻译界面填写术语表后,软件会将其作为附加参数发送给 AI,而不是内嵌在提示词文本中。这意味着,即使你将提示词输入框的内容完全重写,只要保留了必需的 { } 变量,术语表依然会正常生效。需要特别注意的是:提示词中由 { } 包裹的变量(如 {source_language_name}{target_language_name}{content} 等)是程序传入字幕文本和语言信息的占位符,绝对不可删除或修改,否则翻译任务会因缺乏数据而报错。因此,只要你自定义的提示词中仍然包含这些核心变量(尤其是 {content}),术语表就会随请求一同发送,不会失效。

那我把.txt文件中的内容完全复制到这个框中,然后再作修改呢

完全可行,并且这是推荐的修改方式。

  1. 先打开 软件目录/videotrans/prompts/srt/deepseek.txt(选中发送完整字幕时)或 text/deepseek.txt(未选中时),将里面的内容全部复制。
  2. 粘贴到对应渠道的提示词输入框中。
  3. 在粘贴的内容基础上进行修改,添加你需要的指令(比如“术语替换时忽略大小写”)。
  4. 点击“保存”。

这样做既能保留原有的所有必要结构(确保术语表等参数正常传递),又能加上你自己的定制规则。唯一需要特别注意:不要修改或删除任何被 { } 包裹的变量名(如 {content}{source_language_name} 等)。

提示词描述中,中英文可以混用吗

提示词描述中,中英文可以混用吗

在提示词中混合使用中英文是完全没有问题的。目前主流的大语言模型(如 DeepSeek、ChatGPT、Gemini)均支持多语言混合输入,使用中文来描述复杂的约束条件反而能让模型更准确地理解你的意图,避免歧义。你只需确保自定义的规则描述清晰、逻辑通顺即可。唯一需要严格注意的依然是不要修改或删除任何被 { } 包裹的变量名(如 {content}{source_language_name} 等),它们是程序向 AI 传递字幕文本和语言信息的关键占位符。请查阅相关文档:
修改 AI翻译提示词prompt

我想通过添加提示词,让术语表中只要原词的字母匹配,就能替换成目标词,而不是繁琐的列出某个原词的各种版本,比如3ds max替换为3DS Max,我的术语表填写为3ds max=3DS Max,但这只能替换所有的3ds max,而大小写稍有不同的地方,都不能替换成功,按照上面你的回复,我需要设定好所有的可能性,比如还要写3Ds Max,3ds Max的替换版本,太繁琐,我想通过添加提示词纠正这一点,忽略术语表原词的大小写匹配,只要求字母匹配即可替换目标词,要怎么做

要实现“忽略术语原词大小写,仅匹配字母序列”这一规则,你需要直接在所使用的翻译渠道的 提示词 中添加明确指令。以下是具体的操作步骤和示例:

1. 确定要修改的提示词文件位置

  • 如果你勾选了【发送完整字幕】,需要修改:
    [软件目录]/videotrans/prompts/srt/deepseek.txt (如果使用其他渠道,请选择对应文件)
  • 如果未勾选,需要修改:
    [软件目录]/videotrans/prompts/text/deepseek.txt

2. 在提示词中添加大小写不敏感的术语替换规则

打开上述 .txt 文件,找到以“你是一个专业的视频字幕翻译助手……”开头的提示词模板,在翻译指令部分(通常位于描述翻译任务的位置,例如 请将下方的 {source_language_name} 字幕翻译为 {target_language_name} 之后)追加如下内容:

在执行术语替换时,请忽略原词的大小写,仅根据字母序列进行匹配。即使原词的大小写形式与术语表中的条目不完全一致(例如 "3ds max" 与术语表中的 "3DS Max"),只要字母序列相同,都必须替换为术语表指定的目标词,并保持原文中实际字母的原有大小写风格(但优先确保替换后的目标词完整出现)。

注意: 以上追加的指令必须放在 {content} 变量 之前,并且不要删除或修改任何被 {} 包裹的变量。

3. 完整提示词示例(修改后)

以下是一个修改后的 deepseek.txt 示例片段,你可以直接参考并替换自己使用的渠道:

你是一个专业的视频字幕翻译助手。
请将下方的 {source_language_name} 字幕翻译为 {target_language_name}。
翻译时需要严格遵守以下规则:
- 保留原始时间轴和编号。
- 在执行术语替换时,请忽略原词的大小写,仅根据字母序列进行匹配。即使原词的大小写形式与术语表中的条目不完全一致(例如 "3ds max" 与术语表中的 "3DS Max"),只要字母序列相同,都必须替换为术语表指定的目标词,并保持原文中实际字母的原有大小写风格(但优先确保替换后的目标词完整出现)。
- 若术语表中的原词与目标词相同(无需替换),请照原样输出。
待翻译字幕如下:
{content}

4. 保存并生效

  • 直接在软件界面的 菜单 -> 工具/选项 -> 翻译设置 中,选择对应的翻译渠道,将修改后的完整提示词粘贴到输入框内,并点击“保存”。(推荐)
  • 或者,直接修改 .txt 文件内容,软件也将自动读取。

5. 重要提醒

  • 效果依赖于 AI 模型的理解和遵守能力,DeepSeek、GPT-4、Claude 等先进模型通常能很好执行,但无法 100% 保证所有上下文都完美匹配。
  • 建议你再结合术语表本身,至少填写一个标准形式的原词(如 3ds max),然后通过提示词让 AI 完成模糊匹配。
  • 绝对不要修改或删除 {source_language_name}{target_language_name}{content} 等带花括号的变量,否则会导致任务中断。

补充说明

如果修改后依然出现个别词未被替换的情况,可以尝试将提示词中的指令强调“强制”或“必须”,例如:

你必须严格忽略术语表原词的大小写差异。只要字母序列完全相同,就将其替换为目标词。

这样能进一步提高 AI 的执行率。

参考文档

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