Files
MemoryBear/web/变量信息.md

18 KiB
Raw Blame History

系统变量:需和开始节点拆分

end: string/number/boolean/object/array[file]/array[object]/array[number]/array[string]

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __is_success / __reason
  • memory-read: answer / intermediate_outputs
  • question-classifier: class_name / output
  • iteration: output
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • jinja-render: output

llm: 不能选 boolean 类型

上下文string/number/array[file]/array[object]/array[string]/array[number]; 不要object

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • knowledge-retrieval: output
  • parameter-extractor: __is_success / __reason
  • memory-read: answer / intermediate_outputs
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

提示词: string/number/array[file]/array[number]/array[string]; 不要object,boolean

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __is_success / __reason
  • memory-read: answer / intermediate_outputs
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

knowledge-retrieval: string

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body
  • tool: data
  • code: output_variables
  • jinja-render: output

parameter-extractor:

输入变量: string

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body
  • tool: data
  • code: output_variables
  • jinja-render: output

指令string/number

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __is_success / __reason
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

memory-read: string

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body
  • tool: data
  • code: output_variables
  • jinja-render: output

memory-write: string

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body
  • tool: data
  • code: output_variables
  • jinja-render: output

if-else: boolean/string/number/array[file]/array[object]/array[string]/object

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • knowledge-retrieval: output
  • parameter-extractor: __is_success / __reason
  • memory-read: answer
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

question-classifier

输入变量: string

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body
  • tool: data
  • code: output_variables
  • jinja-render: output

分类: string

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body
  • tool: data
  • code: output_variables
  • jinja-render: output

iteration

输入变量: array[file] | array[object] | array[string] | array[number] | array[boolean]

  • knowledge-retrieval: output
  • parameter-extractor: array类型的提取参数 params
  • iteration: output
  • loop: cycle_vars
  • code: output_variables

输出变量

  • 系统变量
  • 子节点的输出变量
    • llm: output
    • knowledge-retrieval: output
    • parameter-extractor: __reason, params
    • memory-read: answer
    • memory-write
    • question-classifier: class_name
    • var-aggregator
      • group = false 时output
      • group = true 时group_variables
    • http-request: body
    • tool: data
    • code: output_variables
    • jinja-render: output

loop

循环变量

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • knowledge-retrieval: output
  • parameter-extractor: __is_success / __reason / params
  • memory-read: answer
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

循环终止条件

left

  • 系统变量
  • 会话变量
  • loop: cycle_vars 当前loop节点的
  • code: output_variables
  • 子节点的输出变量
    • llm: output
    • knowledge-retrieval: output
    • parameter-extractor: __reason
    • memory-read: answer
    • memory-write
    • question-classifier: class_name
    • var-aggregator
      • group = false 时output
      • group = true 时group_variables
    • http-request: body
    • tool: data
    • jinja-render: output

right: number

  • 系统变量
  • 会话变量
  • start: variables / sys
  • parameter-extractor: __is_success
  • loop: cycle_vars 当前loop节点的
  • http-request: status_code
  • code: output_variables

var-aggregator: string/number/boolean

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • knowledge-retrieval: output
  • parameter-extractor: __reason
  • memory-read: answer
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars 当前loop节点的
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

assigner

variable_selector

  • 会话变量
  • loop: cycle_vars 当前loop节点的

value

  • 会话变量
  • start: variables / sys
  • llm: output
  • knowledge-retrieval: output
  • parameter-extractor: __reason / __is_success
  • memory-read: answer
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars 当前loop节点的
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body
  • tool: data
  • code: output_variables
  • jinja-render: output

http-request

url/headers/params: string/number

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason / __is_success
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars 当前loop节点的
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

['body', 'data']

body?.content_type = form-data/x-www-form-urlencoded/json/raw: string/number

body?.content_type = binary: file/array[file]

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • parameter-extractor: __reason / __is_success
  • memory-read: answer
  • question-classifier: class_name
  • loop: cycle_vars 当前loop节点的
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

tool: 不需要

jinja-render

mappingList 输入变量

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • knowledge-retrieval: output
  • parameter-extractor: __reason / __is_success
  • memory-read: answer
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars 当前loop节点的
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • code: output_variables
  • jinja-render: output

code

input_variables

  • 系统变量
  • 会话变量
  • start: variables / sys
  • llm: output
  • knowledge-retrieval: output
  • parameter-extractor: __reason / __is_success
  • memory-read: answer
  • question-classifier: class_name
  • iteration: output
  • loop: cycle_vars 当前loop节点的
  • var-aggregator
    • group = false 时output
    • group = true 时group_variables
  • http-request: body / status_code
  • tool: data
  • jinja-render: output
  • code: output_variables
  • code: output_variables

迭代子节点

  • llm

  • if-else

  • parameter-extractor && prompt

  • var-aggregator

  • assigner

  • http-request && body.content_type !== 'binary'

  • tool

  • jinja-render

    • iteration: item / index
  • knowledge-retrieval

  • parameter-extractor && !prompt

  • memory-read

  • memory-write

  • question-classifier

    • iteration的输入变量是array[string]时可选item
  • iteration

  • loop

    • 不可添加此类节点

循环子节点

  • llm

  • knowledge-retrieval

  • parameter-extractor

  • memory-read

  • memory-write

  • if-else

  • question-classifier

  • var-aggregator

  • assigner

  • http-request

  • tool

  • jinja-render

    • loop: cycle_vars
  • iteration

  • loop

    • 不可添加此类节点

TODO

需要后端支持的需求

  1. 集群调试:对话过程数据输出【需后端】
  1. 应用调试、分享增加变量配置【需后端】
  2. 应用导入导出,导出已完成,导入【需后端】
  3. 单个节点的运行【需后端】
  4. 列表 节点的配置【需后端】
  5. 对话支持附件(非图片)【需后端】

前端需求

  1. 工作流整理布局、历史撤销、回退
  2. 问题分类节点,分类中英文
  3. 感知记忆:文本类型增加片段展示
  • variableConfig
  1. 工作流UI
  • 变量聚合器
  1. 记忆萃取
  • 本体场景不可编辑
  • rb:truncate
  • 注释翻译
    • RbCard
      • src/views/KnowledgeBase/index.tsx
    • src/components/Upload/UploadFiles.tsx
    • src/components/Chat

分支

0.2.6

  • feature/workflow_import_zy
    • 工作流导入 | 导出
      • input_type: Constant / Variable 统一成小写
      • 结束节点内容被覆写
      • 增加未知节点
      • http 节点
        • 变量下拉列表替换成编辑器
        • body form-data file时值支持选择sys.files
  • feature/form_zy
    • 表单校验规则
    • 流式输出时,向上滚动后,自动滚动到最底部的效果失效
    • 应用 API URL更新
  • feature/memory_zy
    • 记忆萃取增加剪枝

20260212

  1. A2A 协议适配
  2. 日志跟踪系统
  3. Agent、集群、工作流共享
  4. 试运行、分享会话支持文件(包含语言、其他附件)【待联调】
  5. 导入 Agent、工作流 - 合并到应用管理创建方式

a7da914dcbb80186b9aaf9ac4d21a9881e60ecb5 e115353811b34de2fd359962860fdafe87fef503