🧠 大模型节点(LLM Node)说明(结构化版)


一、节点概述

  • 功能:调用大语言模型(LLM),根据输入和提示词生成文本。
  • 典型用途:文案生成、文本摘要、扩写、改写、问答、推理等。
  • 核心能力
    • 依赖模型的语言理解与生成能力;
    • 可通过提示词(Prompt)控制人设、风格、任务;
    • 支持配置模型参数(如温度、最大输出长度等);
    • 支持技能扩展(插件、工作流、知识库);
    • 支持视觉理解(图片输入);
    • 支持续写(长文本生成);
    • 支持异常处理流式输出

二、核心配置项

1. 模型(Model)

  • 作用:选择底层 LLM。
  • 影响:输出质量、支持能力(如 Function Call、视觉理解、续写)。
  • 账号限制
    • 个人免费/进阶版:有限模型,有调用次数限制;
    • 团队/企业版:可使用火山引擎方舟平台模型。
  • 配置方式:可点击“配置图标”调整模型参数(如 temperature、max_tokens)。

⚠️ 仅支持 Function Call 的模型才能配置技能。


2. 技能(Skills)

扩展模型能力,自动调用外部资源。

技能类型说明限制
插件调用外部工具(如天气、搜索、链接读取)不支持端插件;输入/输出参数可设“模型可见”
工作流调用已发布子工作流不支持含中断节点(如问答、输入节点)的工作流
知识库检索扣子官方或火山方舟知识库内容支持上传文档、段落检索

✅ 技能启用后,模型会自动判断调用时机与参数,无需人工编排流程。

技能 vs 独立技能节点对比
对比项大模型节点内配置技能独立插件/工作流节点
调用逻辑模型自动判断(Function Call)开发者固定编排
灵活性高(动态决策)低(静态流程)
稳定性依赖模型理解能力更可控、更稳定
适用场景复杂意图、多工具组合确定性流程、强依赖顺序

3. 输入(Inputs)

  • 作用:将动态内容注入提示词。
  • 支持类型:所有系统数据类型(包括 image)。
  • 引用方式:在系统/用户提示词中使用 {{变量名}}
  • 特殊能力
    • 会话历史:开启后自动注入最近多轮对话(适用于多轮场景);
    • 视觉理解:对支持模型,可传入图片(URL 或上传),并在提示词中引用:图片{{img_var}}中有什么?

❗ 图片必须通过视觉理解输入传入,不可直接作为普通输入参数


4. 提示词(Prompts)

类型说明支持变量引用
系统提示词定义人设、风格、规则{{var}}{{obj.field}}{{arr[0]}}
用户提示词本轮用户指令或问题✅ 同上

可插入提示词模板、团队资源库提示词,或手动编写。


5. 输出(Outputs)

输出格式选项:
格式说明
文本纯文本,单输出参数 output
MarkdownMarkdown 文本,单输出参数 output
JSON结构化输出,可定义多个参数(支持导入 JSON 样例自动生成结构)

💡 多参数时,建议为每个参数设置清晰名称 + 描述,帮助模型正确填充。

异常情况下的输出
  • 若异常处理设为“返回设定内容”或“执行异常流程”,输出强制为 JSON,并包含:
    • isSuccess: false
    • errorBody: { code, message, ... }

6. 续写(Continue Writing)

  • 目的:解决因 max_token 限制导致的截断问题。
  • 机制:自动多次调用模型,拼接完整回复。
  • 前提
    • 模型支持续写(查看模型标签);
    • 开启“续写”开关。
  • 代价
    • 响应时间增加;
    • 输入 Token 消耗增加(每次续写需带上历史输出);
    • 可能因超时导致工作流失败。

7. 异常处理(Error Handling)

配置项说明
超时时间默认 180s,可设为 0.1s ~ 600s
重试次数默认 0,最多 1 次;可指定备选模型
异常处理方式
中断流程(默认)
返回设定内容(需提供合法 JSON)
执行异常流程(需额外编排异常分支)

⚠️ 开启流式输出后,一旦开始输出,无法重试或跳转异常分支


三、常见问题(FAQ)

问题解答
Q:为什么模型输出和节点输出不一致?建议为输出参数设置明确名称与描述,引导模型正确填充字段。
Q:为什么返回的是 JSON 而不是变量值?单参数时可流式输出原始值;多参数时需等待完整结果,故以 JSON 返回。
Q:如何避免 JSON 输出?在提示词中明确要求“只输出纯文本”,或在后续加代码节点解析格式。

📄 示例 YAML 配置

场景:使用插件技能 + JSON 输出(天气穿搭推荐)

schema_version: "1.0.0"
name: "llm_with_weather_plugin"
description: "大模型自动调用天气插件生成穿搭建议"
mode: workflow
icon: plugin_icon/workflow.png

nodes:
  - id: "100001"
    type: start
    title: 开始
    icon: https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-Start-v2.jpg
    description: 输入城市
    position: { x: 200, y: 100 }
    parameters:
      node_outputs:
        city:
          type: string
          required: true
          description: 用户所在城市

  - id: "200001"
    type: llm
    title: 穿搭推荐
    icon: https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-LLM-v2.jpg
    description: 调用天气插件并生成推荐
    position: { x: 600, y: 100 }
    parameters:
      # 模型选择
      modelConfig:
        modelName: "豆包·工具调用"  # 必须支持 Function Call
      # 输入参数
      node_inputs:
        - name: city
          input:
            value:
              ref_node: "100001"
              path: "city"
      # 系统提示词(引用变量 + 技能)
      systemPrompt: |
        你是一个时尚顾问。请先调用天气插件查询 {{city}} 的天气,
        然后根据天气推荐合适的穿搭。
        输出必须为 JSON 格式,包含字段:
        - outfit: 推荐的穿搭(字符串)
        - reason: 推荐理由(字符串)
      # 用户提示词
      userPrompt: "请为 {{city}} 推荐今日穿搭。"
      # 技能配置:添加天气插件
      skills:
        plugins:
          - pluginId: "weather_plugin_v1"
            inputs:
              - name: location
                fromModel: true  # 由模型自动生成参数值
                value: null
            outputs:
              - name: temperature
                visibleToModel: true  # 模型可见,用于生成回复
              - name: condition
                visibleToModel: true
      # 输出格式:JSON
      outputFormat: json
      node_outputs:
        outfit:
          type: string
          description: 推荐的穿搭
        reason:
          type: string
          description: 推荐理由
      # 异常处理
      settingOnError:
        switch: true
        processType: 2  # 返回设定内容
        timeoutMs: 120000
        retryTimes: 1

  - id: "900001"
    type: end
    title: 结束
    icon: https://lf3-static.bytednsdoc.com/obj/eden-cn/dvsmryvd_avi_dvsm/ljhwZthlaukjlkulzlp/icon/icon-End-v2.jpg
    position: { x: 1000, y: 100 }
    parameters:
      node_inputs:
        - name: result
          input:
            type: object
            properties:
              outfit: { type: string }
              reason: { type: string }
            value:
              ref_node: "200001"
              path: "."
      terminatePlan: returnVariables

edges:
  - source_node: "100001"
    target_node: "200001"
  - source_node: "200001"
    target_node: "900001"

🖼️ 关键特性对比图示(文字版)

特性支持情况说明
Function Call✅ 仅限特定模型决定能否使用技能
视觉理解✅ 仅限支持模型需通过“视觉理解输入”传图
续写✅ 仅限带“续写”标签模型解决长文本截断
流式输出但开启后无法异常重试
多输出参数✅(JSON 格式)需明确定义结构
技能自动调用模型自主决策,非固定流程
异常流程分支✅(需手动编排)仅当 processType: 3 时生效

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐