在学习自动化生成小说的过程中,对长文本进行分段,然后针对分段生成镜头脚本是重要的工作环节。

此方法可以降低图片图片生成数量,但需要配套的逐句生成配音工具。以此保证画面和声音一致。
很多工具以先导入SRT文件,在依托SRT文件中文本分段时间点生成画面,所以没必要进行长文本分段,直接用文本生成音频和SRT使用即可。
之前针对长文本分段一直使用ChatGPT输入长文本,输出CSV格式文本的方式。这样不止累,输出也不是太稳定,尤其是上下文太长时。当然这个方式也有优点:就是可以把语意相近的文字合并为一段。

使用扣子的好处:
- 可以将”文本分段“加入后续工作流,一步完成脚本制作工作。(本文不讲解)
- 代码分段更稳定,执行效率也高,并且可以按照要求过滤无效字符。
操作流程
1.创建工作流,加入代码节点


2.输入代码
async function main({ params }: { params: { input: string } }): Promise<{ content: string, rows: string[] }> {
// 检查 params 和 input 是否存在
const input = params?.input ?? "";
// 分割输入文本
const lines = input.split('\n');
// 存储处理后的行
const rows: string[] = [];
// 处理每一行
for (let i = 0; i < lines.length; i++) {
const line = lines[i].trim();
// 如果行长度大于20,直接加入结果中
if (line && line.length > 20) {
rows.push(line);
} else if (line.length > 0) {
// 如果当前行长度小于等于20且非空,合并到前一行(如果存在)
if (rows.length > 0) {
rows[rows.length - 1] += ' ' + line;
} else {
// 如果 rows 为空(即第一行),直接添加该行
rows.push(line);
}
}
}
// 返回结果对象
return {
content: input, // 返回原始输入内容
rows: rows, // 返回处理后的行数据
};
}
注:单行文本如果太短,会合并行。你可以使用ChatGPT加入更多过滤功能,比如过滤特殊字符。
3.代码节点完整配置

4.链接到结束节点

5.创建一个Bot

6.选择单Agent模式

7.添加步骤4发布的工作流

8.复制输出结果

9.随便找个JOSN转EXCEL的方法(搜索JSON转EXCEL)

10.最后:你将得到一份格式化后的EXCEL

结语
其实很多AI绘图软件都有此功能,一般都要付费,但是某些软件允许免费导入完整脚本文件生成图像。
后续加入生成画面提示词节点,可以得到更加完整的画面脚本EXCEL。
为什么不做出完整工作流?因为后续怕付费,不可持续。

































