Generation Block
调用 AI 大语言模型生成文本内容,是工作流中最核心的 AI 节点。
功能说明
Generation Block 是外脑编辑器的核心 AI 生成节点。它以内联(inline)形式嵌入文档中,将当前上下文(前文内容 + 变量引用)作为 prompt 发送给指定的 AI 模型,并以流式方式返回生成结果。
Generation Block 支持多种 AI 能力扩展,包括工具调用(tool calls)、图片生成、思考推理等,具体取决于所选模型的能力。
使用场景
- 文本生成:根据上下文 prompt 让 AI 生成文章、摘要、翻译、代码等文本内容。
- 工具调用:启用
tools能力后,AI 可调用已注册的工具(如搜索、数据库查询)来增强回答。 - 图片生成:启用
image能力后,可调用图片生成模型产出图片。
配置参数
| 属性名 | 类型 | 说明 | 默认值 |
|---|---|---|---|
id | string | 节点唯一标识(自动生成) | — |
name | string | 节点名称(自动生成,可自定义) | — |
kind | string | 节点类型标识 | 'ai' |
modelId | string | AI 模型 ID(必填) | 自动选择默认模型 |
creativity | number | 创造力 / Temperature(0-1) | 0.5 |
reasoningEffort | 'minimal' | 'low' | 'medium' | 'high' | 推理努力级别(支持 reasoning_effort 的模型) | 'medium' |
thinkingEnabled | boolean | 思考开关(支持 think 参数的模型) | true |
advancedSettings.enabled | boolean | 是否启用高级设置 | false |
advancedSettings.stopSequences | string[] | 停止序列列表 | [] |
abilities | string[] | 启用的模型能力列表(如 ['tools', 'image']) | [] |
creativity 参数说明
0:更确定性,适合需要一致性的任务(如数据提取、格式转换)0.5:平衡模式(默认)1:更有创造性,适合写作、头脑风暴等发散型任务
abilities 可选值
| 能力 | 说明 |
|---|---|
tools | 启用工具调用,AI 可调用已注册的工具 |
image | 启用图片生成能力 |
structured | 启用结构化输出(通常由 Structure Block 自动启用) |
输出变量
| 变量名 | 类型 | 说明 |
|---|---|---|
__default__ | string | 默认输出,即 AI 生成的文本内容 |
thinking | string | AI 的思考/推理过程(仅模型支持 thinking 能力时可用) |
tool_calls | any | 工具调用记录(仅启用 tools 能力时可用) |
image | any | 第一张生成的图片(仅启用 image 能力时可用) |
images | any | 所有生成的图片数组(仅启用 image 能力时可用) |
所有变量在 Generation Block 完成生成后才可被引用。
引用语法示例:
AI 的回答:{{gen_1}}
思考过程:{{gen_1.thinking}}
生成的图片:{{gen_1.image}}使用示例
示例 1:基本文本生成
请帮我将以下内容翻译为英文:
{{input_1}}
[Generation Block] name: gen_1, model: claude-3.5-sonnet, creativity: 0.3Generation Block 会将其前面的所有文本内容作为 prompt 发送给模型,生成结果存入 gen_1 变量。
示例 2:带工具调用的智能助手
请搜索最新的 AI 新闻并总结要点。
[Generation Block] name: gen_1, model: gpt-4o, abilities: [tools]启用 tools 能力后,AI 可以调用已注册的搜索工具获取实时信息,再基于搜索结果生成总结。工具调用最多进行 20 轮迭代。
Prompt 收集规则
Generation Block 会自动收集从文档开头(或上一个 Generation Block)到当前位置之间的所有内容作为 prompt,包括:
- 段落中的纯文本
- 通过
{{变量名}}引用的其他 Block 输出值
不同类型的 Block 对 prompt 的贡献方式不同——有些会输出提示词文本,有些仅提供数据而不参与 prompt 构建。因此,合理安排文本和 Block 在文档中的位置非常重要,它直接影响每个 Generation Block 收到的 prompt 内容。
文档 Title 和 Description 的作用
当文档作为工具(通过 Tools Block 或 Flow Block)被其他工作流引用时,文档的 Title(标题)和 Description(描述)会作为 AI 理解该工具用途的摘要信息。请为工具类文档编写清晰的标题和描述,帮助 AI 准确判断何时应该调用它。
运行时约束
- 适用文档类型:普通文档(document)。不可用于 skill 文档。
- 节点类型:内联节点(inline),嵌入在段落文本中。
- 可插入上下文:文档中任意段落内。
- 上下文构建:Generation Block 会收集其前面所有 Block 的输出内容作为 prompt 上下文(详见上方「Prompt 收集规则」)。
注意事项
modelId为必填项。如果未配置模型,执行时将报错并终止。- 工具调用存在最大轮次限制(20 轮)。超过上限后会报错。
- Generation Block 以流式(streaming)方式返回内容,前端会实时显示生成进度。
creativity对应模型的temperature参数,不同模型对此参数的响应程度可能不同。- 启用
image能力时,image变量返回第一张图片,images返回所有生成的图片数组。 - 启用
thinking能力时,AI 的内部推理过程会记录在thinking变量中,但不会出现在默认输出里。