Skip to content

Input Block

定义文档的输入参数,让用户或外部调用者在运行时提供数据。

功能说明

Input Block 是文档结构节点,用于声明文档运行时需要接收的输入参数。每个 Input Block 定义一个参数,包含类型、描述、是否必填等配置。在编辑器中运行文档时,用户需要在输入区域填写这些参数;当被 Flow Block 调用时,调用方通过 inputJSON 传入参数值。

当你需要让文档接受外部输入、构建可复用的参数化工作流、或定义 API 接口时,使用 Input Block。

使用场景

  • 参数化工作流:定义文本、数字等输入参数,让同一工作流可以处理不同的输入数据
  • 文件上传处理:定义图片、音频、PDF、CSV 类型的输入,接收用户上传的文件
  • 结构化输入:通过 list 和 object 类型定义复杂的输入结构,收集结构化数据

配置参数

属性名类型说明默认值
namestring参数名称(同时作为变量引用名)自动生成
typestring输入类型(见下表)'text'
descriptionstring参数描述,向用户说明该参数的用途''
requiredboolean是否必填false
schemaSchemaDefinition类型特有的详细配置null

支持的输入类型

类型说明特有配置
text文本输入longText: 是否为长文本(多行);default: 默认值
number数字输入default: 默认值
boolean布尔开关default: 默认值
image图片上传acceptedFormats: 接受的格式;maxFileSize: 最大文件大小;maxWidth/maxHeight: 最大尺寸(px)
audio音频上传acceptedFormats: 接受的格式;maxFileSize: 最大文件大小
pdfPDF 上传acceptedFormats: 接受的格式;maxFileSize: 最大文件大小
csvCSV 上传acceptedFormats: 接受的格式;maxFileSize: 最大文件大小
list列表输入items: 列表元素的 Schema 定义
object对象输入properties: 各属性的 Schema 定义
select下拉选择options: 可选项数组;default: 默认值

文件类型默认格式

类型默认接受格式
image.jpg, .jpeg, .png, .gif, .svg, .webp
audio.mp3, .wav, .ogg, .m4a
pdf.pdf
csv.csv

输出变量

变量名类型说明
__default__dynamic用户输入的值,实际类型由 input type 决定

引用语法

{{input_0}}                    -- 第一个 Input 的值
{{input_name}}                 -- 通过自定义名称引用(如果设置了 name)

Input 的输出类型是动态的:text 类型输出 string,number 类型输出 number,image 类型输出文件 URL,以此类推。

使用示例

示例 1:文本参数输入

定义一个问题输入,传给 AI 生成回答:

[Input Block: question] — type: text, required: true, 描述: "请输入你的问题"
    |
[Generation Block] — "请回答以下问题: {{question}}"

示例 2:多参数输入

定义多个不同类型的输入参数:

[Input Block: topic] — type: text, required: true, 描述: "文章主题"
[Input Block: word_count] — type: number, 描述: "目标字数", default: 1000
[Input Block: style] — type: select, options: ["正式", "轻松", "学术"], default: "正式"
    |
[Generation Block] — "写一篇关于 {{topic}} 的文章,{{word_count}} 字左右,风格: {{style}}"

运行时约束

  • 适用文档类型:所有文档类型(workflow、skill 均可使用)
  • 固定位置:Input Block 必须放在文档顶部的 Inputs 容器内,不能在文档任意位置插入
  • 不可嵌套场景:Input Block 不能放在 Condition、Loop、Promise 等容器内

文档结构

Input Block 由 Inputs 容器节点包裹,文档结构如下:

doc
├─ inputs (容器)
│  ├─ input (参数 1)
│  ├─ input (参数 2)
│  └─ input (参数 3)
├─ (其他 Block...)

注意事项

  1. 无独立执行器:Input Block 是文档结构节点,不经过后端执行器。它的值在文档运行前由用户填写或由调用方传入
  2. 动态类型:Input 的输出变量类型由配置的 type 决定。在变量引用菜单中显示为 dynamic 类型
  3. Schema 驱动:Input 的详细配置(如文件大小限制、选项列表等)通过 schema 属性承载,schema 的 type 字段与 Input 的 type 保持同步
  4. Flow 调用传参:当文档被 Flow Block 调用时,调用方通过 inputJSON 传入的值会映射到对应 Input 的变量。参数名称需与 Input 的 name 一致
  5. 必填校验:标记为 required 的 Input 在运行前会校验是否已填写,未填写时无法执行
  6. 默认值:每种类型可通过 schema 的 default 字段设置默认值,用户未填写时使用默认值

AI Workflow Editor