This commit is contained in:
fengchuanhn@gmail.com
2026-05-17 12:54:13 +08:00
parent 1b8ca10ec9
commit 3db327d93b
38 changed files with 2820 additions and 14 deletions

View File

@@ -0,0 +1,66 @@
"use strict";
/** 仿写提示词(对齐 zhenqianba VideoRewriteOptimizer */
class VideoRewriteOptimizer {
static replacePromptVariables(template, content) {
return String(template)
.replace(/\{\{content\}\}/g, content)
.replace(/\{content\}/g, content)
.replace(/\{\{text\}\}/g, content)
.replace(/\{text\}/g, content);
}
static getStyleGuide(style) {
const guides = {
casual: "轻松随意、接地气、易产生共鸣,像和朋友聊天一样",
professional: "正式专业、有信服力、适合商务或教育内容",
emotional: "充满情感、富有感染力、能打动人心",
humorous: "幽默诙谐、容易引起笑声和转发、保持积极态度",
};
return guides[style] || guides.casual;
}
static getLengthGuide(length) {
const guides = {
short: "简洁有力100字以内快速传达核心信息",
medium: "适中篇幅100-300字既能完整表达又不显冗长",
long: "详细深入300-500字充分展开论点和细节",
};
return guides[length] || guides.medium;
}
static buildDefaultPrompt(content, config) {
const cfg = config || {};
const styleGuide = this.getStyleGuide(cfg.style || "casual");
const lengthGuide = this.getLengthGuide(cfg.length || "medium");
return `你是一个专业的视频内容创意编写专家,擅长创作吸引人的视频文案。
## 原始文案:
${content}
## 仿写要求:
1. **风格**: ${styleGuide}
2. **长度**: ${lengthGuide}
3. **核心保持**: 保留原文案的核心信息和主题
4. **创意提升**: 在措辞、表述角度、情感吸引力上创新
5. **格式**:
${cfg.keepHashtags !== false ? "- 保留原有话题标签(#开头的内容)" : "- 不使用话题标签"}
${cfg.keepEmoji !== false ? "- 可以适当添加表情符号增加生动性" : "- 不使用表情符号"}
6. **禁止事项**:
- 不要改变事实信息
- 不要添加虚假承诺
- 不要包含敏感词汇
请直接输出仿写后的文案,不需要任何额外说明或标记。`;
}
static buildRewritePrompt(content, config = {}, customPrompt) {
if (customPrompt && String(customPrompt).trim()) {
return this.replacePromptVariables(customPrompt, content);
}
return this.buildDefaultPrompt(content, config);
}
}
module.exports = { VideoRewriteOptimizer };