From db71b290092ec79f7a48a4beb34142032552f3c4 Mon Sep 17 00:00:00 2001 From: "Azmat@qq.com" Date: Mon, 31 Aug 2026 13:01:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=9B=BF=E6=8D=A2=E8=A7=92?= =?UTF-8?q?=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/backend/apps/ai/test_video_replace.py | 2 ++ core/backend/apps/ai/video_replace.py | 4 +++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/core/backend/apps/ai/test_video_replace.py b/core/backend/apps/ai/test_video_replace.py index 0965a06..98905e3 100644 --- a/core/backend/apps/ai/test_video_replace.py +++ b/core/backend/apps/ai/test_video_replace.py @@ -587,6 +587,8 @@ class SubmitVideoReplaceTests(TestCase): self.assertIn("@目标角色", prompt) self.assertIn("@参考视频", prompt) self.assertIn("商品", prompt) + self.assertIn("绝不继承参考视频中任何人的原始声线", prompt) + self.assertIn("目标角色为男性时使用自然成年男声", prompt) self.assertNotIn("@目标商品", prompt) def test_digest_generates_once_without_source_video(self): diff --git a/core/backend/apps/ai/video_replace.py b/core/backend/apps/ai/video_replace.py index af050f7..ccd97a8 100644 --- a/core/backend/apps/ai/video_replace.py +++ b/core/backend/apps/ai/video_replace.py @@ -88,7 +88,9 @@ PRODUCT_PROMPT = ( CHARACTER_PROMPT = ( "以@参考视频的镜头、人物动作、场景、节奏、口播和剪辑为唯一基准生成视频。" "将画面中所有可见的原人物替换为@目标角色;五官、发型、体态和服装以角色参考图为准。" - "保留原商品、场景、镜头运动、动作顺序和声音节奏,不添加字幕、花字或额外人物。" + "保留原商品、场景、镜头运动、动作顺序、语速、停顿和情绪节奏,不添加字幕、花字或额外人物。" + "绝不继承参考视频中任何人的原始声线或人声:所有对白、旁白、口型和声音都必须与@目标角色的性别与身份一致," + "目标角色为男性时使用自然成年男声,目标角色为女性时使用自然成年女声。" ) # 拆解期间的占位提示词。真正的提示词在 worker 拆完后回写。