import type { FlowNode } from "/$/flow/types"; import component from "./index.vue"; import FormModel from "../llm/form/model.vue"; import FormInputParams from "../_base/form/input-params.vue"; import FormOutputParams from "../_base/form/output-params.vue"; export default (): FlowNode => { return { group: "扩展", label: "智能解析", description: "智能提取内容的关键信息", color: "#fd9d2f", component, form: { items: [ { label: "输入变量", prop: "inputParams", component: { vm: FormInputParams, props: { editField: false, disabled: true } } }, { label: "模型", prop: "options.model", component: { vm: FormModel } }, { label: "输出变量", prop: "outputParams", component: { vm: FormOutputParams, props: { typeInput: true, disabledFields: ["result"] } } } ] }, data: { options: { model: { options: [], params: { model: "" } } }, inputParams: [ { field: "text" } ], outputParams: [ { field: "result", type: "输入结果" } ] }, validator(data) { const { model } = data.options; // 验证变量是否绑定值 const param = data.inputParams?.find((e) => !e.nodeId); if (param) { return `请绑定变量:${param.field}`; } // 验证模型是否选择 if (!model.params.model) { return "请选择模型"; } } }; };