助手
扣子 AI 帮助与支持
你好,我是 扣子 文档问答助手 🎉 你在阅读当前文档的过程中,无论对文档概念的解释,还是文档内容方面的疑问,都可以随时向我提问,我会全力为你解答
推荐问题
如何快速了解这个空间的核心内容?
有哪些近期更新的重点文档?
我应该从哪些文档开始阅读?
文档反馈

通过循环生成长文本

更新于: 2026-06-24 15:47:07

本文档演示如何搭建一个生成长文本的低代码工作流,其核心是通过循环节点多轮扩写大纲。

场景描述

大语言模型具备强大的自然语言处理能力,可以生成高质量的文本内容,但是其输入输出长度受限,通过一轮简单的交互难以实现长文写作场景。但是从而实现长文生成。
低代码工作流提供了流程定制化的能力,我们可以把长文生成的流程拆分为多个步骤,例如先通过大模型节点生成大纲、再使用循环节点依次扩写各个段落,最后将各个段落组合起来,从而实现长文生成流程。此低代码工作流可适用于学术写作、商业报告、小说创作等多种场景。

效果演示

Image

低代码工作流设计

低代码工作流运行流程如下:

  1. 开始节点接收用户输入,确定长文主题。
  2. 大模型节点(生成大纲)用于生成文章大纲。
  3. 循环节点将大纲中的每个小标题扩写为完整的段落。
  4. 文本处理节点将扩写后的段落进行拼接。
  5. 结束节点输出完整的长文。

低代码工作流整体结构如下:
Image

核心节点

低代码工作流核心节点配置如下:

节点名称

说明

示例

开始节点

开始节点用于接收用户设置的文章标题,也就是长文的主题。
在开始节点定义变量 title,并为变量设置描述文章主题

Image

大模型节点(生成大纲)

大模型节点根据用户设置的文章标题生成大纲。
我们需要在系统提示词中要求模型输出包含层级结构的文章大纲,且为字符串数组格式,每个数组元素是一个字符串,代表一个子章节主题。这样处理是为了便于循环节点遍历这个数组的每个元素(子章节主题)来生成各个段落。
大模型节点设置如下:

  • 输入:定义变量 title,引用开始节点的 title 变量。
  • 系统提示词:定义一段系统提示词,你可以直接参考生成大纲提示词,或者输入你的需求,让AI帮助你生成提示词。
  • 用户提示词帮我写个文档大纲,主题是{{title}}
  • 输出:定义输出变量 output,格式为 Array of String。

Image

循环节点

循环节点遍历大纲数组中的每个元素(子章节主题)来生成各个段落。其中包含两个节点:

  • 大模型节点:每次执行时,根据子章节主题生成对应的段落。多次循环后生成全部段落。
  • 设置变量节点:每次执行时,将大模型生成的段落设置为变量,在下一次循环中作为参考信息传递给大模型节点。

循环节点设置如下:

  • 循环类型:使用数组循环。
  • 循环数组:设置变量 outline,引用生成大纲节点的输出变量 outline。
  • 中间变量:设置变量 last_paragraph,这个变量用于传递上次已生成的段落内容,会在下次循环中提供给段落扩写节点作为参考
    中间变量值设置为一个空格,因为首次循环时没有上个段落,只传递一个空格即可。
  • 输出:设置变量 content,引用循环体中段落扩写节点的输出变量 output。格式固定为字符串数组。

Image

循环中的大模型节点(段落扩写)

段落扩写节点根据子章节主题生成对应的段落,写作时会参考用户指定的标题、整体大纲等信息,严格遵循字数要求。
段落扩写设置方式如下:

  • 输入:定义以下输入变量,便于提示词引用。
    • subtitle:本次要扩写的小标题。引用循环节点输入变量 outline 中的 item(in outline)。
    • title:文章的整体标题。引用开始节点变量 title,作为大模型的参考信息。
    • last_paragraph:上次循环中已生成的段落内容。引用循环节点中间变量 last_paragraph,作为大模型的参考信息。
    • outline:文章的整体大纲。引用生成大纲节点的变量 outline,作为大模型的参考信息。
  • 系统提示词:定义一段系统提示词,你可以直接参考段落扩写提示词,或者输入你的需求,让AI帮助你生成提示词。
    注意提示词中需要指定段落的大致长度等要求,提示词质量会直接影响内容生成质量。
  • 用户提示词:你可以直接参考段落扩写用户提示词。建议将用户指定的标题、大纲等信息引用到提示词中,提供给大模型参考,以便生成的内容上下文衔接、风格一致。
  • 输出:定义输出格式为 Markdown,并定义输出变量 output,格式为 String。每一轮生成的段落会保存为字符串,其中是 Markdown 格式的文本段落。

Image

循环中的设置变量节点

设置变量节点将大模型生成的段落设置为变量,在下一次循环中作为参考信息传递给大模型节点
这里我们将循环节点已设置好的中间变量 last_paragraph 设置为段落扩写节点的输出变量 output。

Image

文本处理节点

文本处理节点拼接 Array 中的每一个元素,将循环节点生成的数组格式文章拼接为一个完整的字符串,便于结束节点返回与展示。

  • 选择应用:选择字符串拼接
  • 输入:默认变量 String1,变量值选择引用循环节点的输出变量content。
  • 字符串拼接:输入 {{String1}},表示拼接 String1 中的每个元素。

注意拼接时数组之间的连接符需要设置为换行符(\n)。
Image

Image

结束节点

结束节点用于输出和展示完整的文章内容。

  • 输出模式:选择返回文本
  • 输出:定义变量 output,引用文本处理节点的输出变量 output。
  • 回答内容:设置为 {{output}},表示直接输出完整的文章内容。

Image

编排完成后,可以单击试运行,查看工作流的运行结果,观察各个节点的输入输出是否符合预期。
试运行结束后,可以在输出节点的末行,单击预览,查看完整长文渲染后的效果。

试运行并预览:
Image

预览效果:
Image

相关资源

生成大纲系统提示词

大模型节点(生成大纲)的系统提示词如下,你也可以根据具体场景的需求调整,例如设置字数要求、段落数量等。

## 角色
你是一个专业的大纲写作助手,擅长根据各种主题和需求,生成逻辑清晰、结构合理的大纲。无论是小说、论文、报告还是其他类型的写作,你都能提供高质量的大纲框架。
## 技能
### 技能 1: 根据主题生成大纲
- 根据用户提供的主题和要求,生成一份详细的大纲。
- 大纲应包含主章节标题和子章节标题,体现文章逻辑结构。
- 所输出的大纲内容必须逻辑清晰、层次分明,符合一般的写作规范。

## 限制
- 大纲中的标题应简洁清晰,避免过于冗长和复杂的表述。
- 输出格式必须为字符串数组,每个完整的主题及其子主题是一个字符串,是数组中的元素
- 子章节大纲深度不超过3层

## 示例
用户输入:熬夜的危害
你的输出:
"1. 引言\n 1.1 熬夜现象的普遍性\n 1.2 探讨熬夜危害的重要性",
"2. 身体生理层面危害\n 2.1 免疫系统受损\n 2.1.1 免疫力下降易生病\n 2.1.2 疾病恢复时间延长\n 2.2 心血管问题\n 2.2.1 血压异常波动\n 2.2.2 心律不齐风险增加\n 2.3 内分泌失调\n 2.3.1 激素分泌紊乱\n 2.3.2 对新陈代谢的不良影响”,
"3. 心理健康方面危害\n 3.1 情绪问题\n 3.1.1 焦虑抑郁倾向\n 3.1.2 情绪波动大\n 3.2 认知功能受损\n 3.2.1 记忆力减退\n 3.2.2 注意力不集中”,
"4. 结论\n 4.1 总结熬夜危害要点\n 4.2 倡导健康作息习惯”

段落扩写系统提示词

大模型节点(段落扩写)的系统提示词如下,你也可以根据具体场景的需求调整,例如设置字数要求、段落数量等。

# 角色
你是一位专业的写作专家,在长文生成领域经验丰富。具备深厚的文字功底和敏锐的逻辑思维,能够根据各种要求创作出高质量的文本。尤其擅长按照指定的标题、大纲生成对应的段落,确保生成内容逻辑连贯、条理清晰,语言表达精准、流畅自然。

## 技能:根据主题扩写段落
- 你负责文章的扩写工作,即根据文章大纲的某一部分,扩写文章,在大纲小标题的基础上补全对应的内容段落。
- 用户会提供文章的主题、文章的整体大纲、你正在写的部分、你已经写好的上一个段落,供你理解和学习。
- 扩写前应仔细分析文章主题和整体大纲,确保理解文章的整体方向和目标。
- 根据用户指定的风格要求,例如正式、活泼、学术、平实等,调整段落的语言风格,保证生成的段落从用词到句式结构都契合用户预期的风格。
- 扩写时保证文章风格与提供给你的参考内容风格一致,和你已经写好的上一个段落保持内容连贯、衔接自然。
- 所输出的段落内容必须结构合理,条理清晰。
## 限制
- 使用 Markdown 格式回复。
- 生成的段落需严格符合用户给定的标题、大纲、风格等要求。 不需要输出与文章内容无关的描述。
- 内容的长度应与大纲层级相适应,通常为300-500字左右,但可以根据主题的复杂程度和重要性进行适当调整。 

段落扩写用户提示词

请根据 {{subtitle}}这个主题生成一段文章。

以下信息供你参考:
文章的主题:{{title}}
文章的整体大纲:{{outline}}
你正在写的部分: {{subtitle}}
你已经写好的上一个段落:{{last_paragraph}}