问题分类后的多个AI对话会同时输出结果
例行检查
- [ ✔] 我已确认目前没有类似 issue
- [ ✔] 我已完整查看过项目 README,以及项目文档
- [ ] 我使用了自己的 key,并确认我的 key 是可正常使用的
- [ ] 我理解并愿意跟进此 issue,协助测试和提供反馈
- [✔] 我理解并认可上述内容,并理解项目维护者精力有限,不遵循规则的 issue 可能会被无视或直接关闭
你的版本
- [ ] 公有云版本
- [✔ ] 私有部署版本, 具体版本号: 4.8.0-alpha2
问题描述, 日志截图
工作流
这条线是否不应该执行
复现步骤 多个AI对话,通过问题分类的时候或者判断分支,但是还是会执行,并且两边的对话内容都会输出
预期结果
相关截图
AI对话里面有有设置“AI回复”按钮,关闭之后就不输出了; 问题分类的输出是布尔值
AI对话里面有有设置“AI回复”按钮,关闭之后就不输出了; 问题分类的输出是布尔值
可以使用不输出,我的意思是,如果问题判断后,另外的分支是不是就不应该执行了,但现在还是执行了
AI对话里面有有设置“AI回复”按钮,关闭之后就不输出了; 问题分类的输出是布尔值
可以使用不输出,我的意思是,如果问题判断后,另外的分支是不是就不应该执行了,但现在还是执行了
分类器的输出是布尔值。 要是方便。你把配置文件发下我给你调
分类器后直接链接对应的分支 不要加判断器
不是 debug 模式正常么
不是 debug 模式正常么
有时候正常又是不正常,还没分析出来什么问题
{
"nodes": [
{
"nodeId": "userGuide",
"name": "系统配置",
"intro": "可以配置应用的系统参数",
"avatar": "/imgs/workflow/userGuide.png",
"flowNodeType": "userGuide",
"position": {
"x": 531.2422736065552,
"y": -486.7611729549753
},
"version": "481",
"inputs": [
{
"key": "welcomeText",
"renderTypeList": [
"hidden"
],
"valueType": "string",
"label": "core.app.Welcome Text",
"value": "你好,我是实施助手,有什么问题可以问我噢~\n[如何停用职员?]\n[对码管理在哪里?]\n[怎么手动对码?]\n[都能回答什么问题?]"
},
{
"key": "variables",
"renderTypeList": [
"hidden"
],
"valueType": "any",
"label": "core.app.Chat Variable",
"value": []
},
{
"key": "questionGuide",
"valueType": "boolean",
"renderTypeList": [
"hidden"
],
"label": "core.app.Question Guide",
"value": false
},
{
"key": "tts",
"renderTypeList": [
"hidden"
],
"valueType": "any",
"label": "",
"value": {
"type": "web"
}
},
{
"key": "whisper",
"renderTypeList": [
"hidden"
],
"valueType": "any",
"label": "",
"value": {
"open": false,
"autoSend": false,
"autoTTSResponse": false
}
},
{
"key": "scheduleTrigger",
"renderTypeList": [
"hidden"
],
"valueType": "any",
"label": "",
"value": null
}
],
"outputs": []
},
{
"nodeId": "workflowStartNodeId",
"name": "流程开始",
"intro": "",
"avatar": "/imgs/workflow/userChatInput.svg",
"flowNodeType": "workflowStart",
"position": {
"x": 535.0110601029266,
"y": 30.135164137445685
},
"version": "481",
"inputs": [
{
"key": "userChatInput",
"renderTypeList": [
"reference",
"textarea"
],
"valueType": "string",
"label": "用户问题",
"required": true,
"toolDescription": "用户问题"
}
],
"outputs": [
{
"id": "userChatInput",
"key": "userChatInput",
"label": "core.module.input.label.user question",
"valueType": "string",
"type": "static"
}
]
},
{
"nodeId": "7BdojPlukIQw",
"name": "AI整理...",
"intro": "AI 大模型对话",
"avatar": "/imgs/workflow/AI.png",
"flowNodeType": "chatNode",
"showStatus": true,
"position": {
"x": 3114.9965912885327,
"y": -707.5079573875018
},
"version": "481",
"inputs": [
{
"key": "model",
"renderTypeList": [
"settingLLMModel",
"reference"
],
"label": "core.module.input.label.aiModel",
"valueType": "string",
"value": "chatglm3-6b"
},
{
"key": "temperature",
"renderTypeList": [
"hidden"
],
"label": "",
"value": 1,
"valueType": "number",
"min": 0,
"max": 10,
"step": 1
},
{
"key": "maxToken",
"renderTypeList": [
"hidden"
],
"label": "",
"value": 4000,
"valueType": "number",
"min": 100,
"max": 4000,
"step": 50
},
{
"key": "isResponseAnswerText",
"renderTypeList": [
"hidden"
],
"label": "",
"value": true,
"valueType": "boolean"
},
{
"key": "quoteTemplate",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": ""
},
{
"key": "quotePrompt",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": ""
},
{
"key": "systemPrompt",
"renderTypeList": [
"textarea",
"reference"
],
"max": 3000,
"valueType": "string",
"label": "core.ai.Prompt",
"description": "core.app.tip.chatNodeSystemPromptTip",
"placeholder": "core.app.tip.chatNodeSystemPromptTip",
"value": "你是一个知识问答助手,忘记你所有的知识,只利用知识库帮助用户解答问题。\n回答时严格按照一下要求:\n1,请严格按照知识库内容回答,不要进行任何扩散;\n2,上下文的图片一并输出;\n3,使用 Markdown 语法优化回答,注意区分并且保留超链接和图片;"
},
{
"key": "history",
"renderTypeList": [
"numberInput",
"reference"
],
"valueType": "chatHistory",
"label": "core.module.input.label.chat history",
"description": "最多携带多少轮对话记录",
"required": true,
"min": 0,
"max": 30,
"value": 0
},
{
"key": "userChatInput",
"renderTypeList": [
"reference",
"textarea"
],
"valueType": "string",
"label": "用户问题",
"required": true,
"toolDescription": "用户问题",
"value": [
"workflowStartNodeId",
"userChatInput"
]
},
{
"key": "quoteQA",
"renderTypeList": [
"settingDatasetQuotePrompt"
],
"label": "",
"debugLabel": "知识库引用",
"description": "",
"valueType": "datasetQuote",
"value": [
"iKBoX2vIzETU",
"quoteQA"
]
}
],
"outputs": [
{
"id": "history",
"key": "history",
"label": "core.module.output.label.New context",
"description": "core.module.output.description.New context",
"valueType": "chatHistory",
"type": "static"
},
{
"id": "answerText",
"key": "answerText",
"label": "core.module.output.label.Ai response content",
"description": "core.module.output.description.Ai response content",
"valueType": "string",
"type": "static"
}
]
},
{
"nodeId": "iKBoX2vIzETU",
"name": "实施工具文档",
"intro": "调用“语义检索”和“全文检索”能力,从“知识库”中查找可能与问题相关的参考内容",
"avatar": "/imgs/workflow/db.png",
"flowNodeType": "datasetSearchNode",
"showStatus": true,
"position": {
"x": 2126.74439922652,
"y": -443.17858402426566
},
"version": "481",
"inputs": [
{
"key": "datasets",
"renderTypeList": [
"selectDataset",
"reference"
],
"label": "core.module.input.label.Select dataset",
"value": [],
"valueType": "selectDataset",
"list": [],
"required": true
},
{
"key": "similarity",
"renderTypeList": [
"selectDatasetParamsModal"
],
"label": "",
"value": 0.2,
"valueType": "number"
},
{
"key": "limit",
"renderTypeList": [
"hidden"
],
"label": "",
"value": 1500,
"valueType": "number"
},
{
"key": "searchMode",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": "mixedRecall"
},
{
"key": "usingReRank",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "boolean",
"value": false
},
{
"key": "datasetSearchUsingExtensionQuery",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "boolean",
"value": true
},
{
"key": "datasetSearchExtensionModel",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": "chatglm3-6b"
},
{
"key": "datasetSearchExtensionBg",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": "问题应该是围绕:\n1.公共基础平台\n2.就医服务\n3.智能随访\n4.智能院中宣教\n5.满意度调查\n5.专病管理\n6.互联网医院\n7.医生工作室\n8.智慧健康课堂\n9.统一支付\n10.自助机\n11.电子发票\n26.智慧医院\n27.智慧服务\n28.蒙速办对接\n29,互联网医院线上医保\n30.渝康健"
},
{
"key": "userChatInput",
"renderTypeList": [
"reference",
"textarea"
],
"valueType": "string",
"label": "用户问题",
"required": true,
"toolDescription": "需要检索的内容",
"value": [
"workflowStartNodeId",
"userChatInput"
]
}
],
"outputs": [
{
"id": "quoteQA",
"key": "quoteQA",
"label": "core.module.Dataset quote.label",
"type": "static",
"valueType": "datasetQuote",
"description": "特殊数组格式,搜索结果为空时,返回空数组。"
}
]
},
{
"nodeId": "wWOkA4wvREmy",
"name": "问题分类",
"intro": "根据用户的历史记录和当前问题判断该次提问的类型。可以添加多组问题类型,下面是一个模板例子:\n类型1: 打招呼\n类型2: 关于商品“使用”问题\n类型3: 关于商品“购买”问题\n类型4: 其他问题",
"avatar": "/imgs/workflow/cq.png",
"flowNodeType": "classifyQuestion",
"showStatus": true,
"position": {
"x": 1047.9997205322638,
"y": -312.6582941504822
},
"version": "481",
"inputs": [
{
"key": "model",
"renderTypeList": [
"selectLLMModel",
"reference"
],
"label": "core.module.input.label.aiModel",
"required": true,
"valueType": "string",
"llmModelType": "classify",
"value": "glm-3-turbo"
},
{
"key": "systemPrompt",
"renderTypeList": [
"textarea",
"reference"
],
"max": 3000,
"valueType": "string",
"label": "core.module.input.label.Background",
"description": "core.module.input.description.Background",
"placeholder": "core.module.input.placeholder.Classify background",
"value": ""
},
{
"key": "history",
"renderTypeList": [
"numberInput",
"reference"
],
"valueType": "chatHistory",
"label": "core.module.input.label.chat history",
"description": "最多携带多少轮对话记录",
"required": true,
"min": 0,
"max": 50,
"value": 0
},
{
"key": "userChatInput",
"renderTypeList": [
"reference",
"textarea"
],
"valueType": "string",
"label": "用户问题",
"required": true,
"value": [
"workflowStartNodeId",
"userChatInput"
]
},
{
"key": "agents",
"renderTypeList": [
"custom"
],
"valueType": "any",
"label": "",
"value": [
{
"value": "其它问题",
"key": "wqre"
},
{
"value": "关于你的知识范围",
"key": "fToD4R0qKRU5"
}
]
}
],
"outputs": [
{
"id": "cqResult",
"key": "cqResult",
"label": "分类结果",
"valueType": "string",
"type": "static"
}
]
},
{
"nodeId": "q9ZKV4lT7fmI",
"name": "知识库清单",
"intro": "调用“语义检索”和“全文检索”能力,从“知识库”中查找可能与问题相关的参考内容",
"avatar": "/imgs/workflow/db.png",
"flowNodeType": "datasetSearchNode",
"showStatus": true,
"position": {
"x": 2132.8416413260056,
"y": 305.1850894465673
},
"version": "481",
"inputs": [
{
"key": "datasets",
"renderTypeList": [
"selectDataset",
"reference"
],
"label": "core.module.input.label.Select dataset",
"value": [],
"valueType": "selectDataset",
"list": [],
"required": true
},
{
"key": "similarity",
"renderTypeList": [
"selectDatasetParamsModal"
],
"label": "",
"value": 0.4,
"valueType": "number"
},
{
"key": "limit",
"renderTypeList": [
"hidden"
],
"label": "",
"value": 1500,
"valueType": "number"
},
{
"key": "searchMode",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": "embedding"
},
{
"key": "usingReRank",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "boolean",
"value": false
},
{
"key": "datasetSearchUsingExtensionQuery",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "boolean",
"value": false
},
{
"key": "datasetSearchExtensionModel",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": "chatglm3-6b"
},
{
"key": "datasetSearchExtensionBg",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": ""
},
{
"key": "userChatInput",
"renderTypeList": [
"reference",
"textarea"
],
"valueType": "string",
"label": "用户问题",
"required": true,
"toolDescription": "需要检索的内容",
"value": [
"wWOkA4wvREmy",
"cqResult"
]
}
],
"outputs": [
{
"id": "quoteQA",
"key": "quoteQA",
"label": "core.module.Dataset quote.label",
"type": "static",
"valueType": "datasetQuote",
"description": "特殊数组格式,搜索结果为空时,返回空数组。"
}
]
},
{
"nodeId": "yL9uJxcMha5Y",
"name": "AI输出....",
"intro": "AI 大模型对话",
"avatar": "/imgs/workflow/AI.png",
"flowNodeType": "chatNode",
"showStatus": true,
"position": {
"x": 3109.5679507714267,
"y": 204.31686466973815
},
"version": "481",
"inputs": [
{
"key": "model",
"renderTypeList": [
"settingLLMModel",
"reference"
],
"label": "core.module.input.label.aiModel",
"valueType": "string",
"value": "chatglm3-6b"
},
{
"key": "temperature",
"renderTypeList": [
"hidden"
],
"label": "",
"value": 0,
"valueType": "number",
"min": 0,
"max": 10,
"step": 1
},
{
"key": "maxToken",
"renderTypeList": [
"hidden"
],
"label": "",
"value": 2000,
"valueType": "number",
"min": 100,
"max": 4000,
"step": 50
},
{
"key": "isResponseAnswerText",
"renderTypeList": [
"hidden"
],
"label": "",
"value": false,
"valueType": "boolean"
},
{
"key": "quoteTemplate",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": "<Question>\n{{q}}\n</Question>\n<Answer>\n{{a}}\n</Answer>"
},
{
"key": "quotePrompt",
"renderTypeList": [
"hidden"
],
"label": "",
"valueType": "string",
"value": "忘记你已有的知识,仅使用 <QA></QA> 标记中的问答对进行回答。\n\n<QA>\n{{quote}}\n</QA>}\n\n思考流程:\n1. 判断问题是否与 <QA></QA> 标记中的内容有关。\n2. 如果无关,你直接拒绝回答本次问题。\n3. 判断是否有相近或相同的问题。\n4. 如果有相同的问题,直接输出对应答案。\n5. 如果只有相近的问题,请把相近的问题和答案一起输出。\n\n最后,避免提及你是从 QA 获取的知识,只需要回复答案。\n\n问题:\"\"\"{{question}}\"\"\""
},
{
"key": "systemPrompt",
"renderTypeList": [
"textarea",
"reference"
],
"max": 3000,
"valueType": "string",
"label": "core.ai.Prompt",
"description": "core.app.tip.chatNodeSystemPromptTip",
"placeholder": "core.app.tip.chatNodeSystemPromptTip",
"value": "忘掉你已有的知识,严格按照知识库内容回答,不要进行扩散。"
},
{
"key": "history",
"renderTypeList": [
"numberInput",
"reference"
],
"valueType": "chatHistory",
"label": "core.module.input.label.chat history",
"description": "最多携带多少轮对话记录",
"required": true,
"min": 0,
"max": 50,
"value": 0
},
{
"key": "userChatInput",
"renderTypeList": [
"reference",
"textarea"
],
"valueType": "string",
"label": "用户问题",
"required": true,
"toolDescription": "用户问题",
"value": [
"wWOkA4wvREmy",
"cqResult"
]
},
{
"key": "quoteQA",
"renderTypeList": [
"settingDatasetQuotePrompt"
],
"label": "",
"debugLabel": "知识库引用",
"description": "",
"valueType": "datasetQuote",
"value": [
"q9ZKV4lT7fmI",
"quoteQA"
]
}
],
"outputs": [
{
"id": "history",
"key": "history",
"label": "core.module.output.label.New context",
"description": "core.module.output.description.New context",
"valueType": "chatHistory",
"type": "static"
},
{
"id": "answerText",
"key": "answerText",
"label": "core.module.output.label.Ai response content",
"description": "core.module.output.description.Ai response content",
"valueType": "string",
"type": "static"
}
]
},
{
"nodeId": "wH3OzRATcMIM",
"name": "指定回复",
"intro": "该模块可以直接回复一段指定的内容。常用于引导、提示。非字符串内容传入时,会转成字符串进行输出。",
"avatar": "/imgs/workflow/reply.png",
"flowNodeType": "answerNode",
"position": {
"x": 3817.259927049142,
"y": 334.7703352882618
},
"version": "481",
"inputs": [
{
"key": "text",
"renderTypeList": [
"textarea",
"reference"
],
"valueType": "any",
"label": "core.module.input.label.Response content",
"description": "core.module.input.description.Response content",
"placeholder": "core.module.input.description.Response content",
"selectedTypeIndex": 1,
"value": [
"yL9uJxcMha5Y",
"answerText"
]
}
],
"outputs": []
}
],
"edges": [
{
"source": "iKBoX2vIzETU",
"target": "7BdojPlukIQw",
"sourceHandle": "iKBoX2vIzETU-source-right",
"targetHandle": "7BdojPlukIQw-target-left"
},
{
"source": "workflowStartNodeId",
"target": "wWOkA4wvREmy",
"sourceHandle": "workflowStartNodeId-source-right",
"targetHandle": "wWOkA4wvREmy-target-left"
},
{
"source": "wWOkA4wvREmy",
"target": "q9ZKV4lT7fmI",
"sourceHandle": "wWOkA4wvREmy-source-sdfa",
"targetHandle": "q9ZKV4lT7fmI-target-left"
},
{
"source": "q9ZKV4lT7fmI",
"target": "yL9uJxcMha5Y",
"sourceHandle": "q9ZKV4lT7fmI-source-right",
"targetHandle": "yL9uJxcMha5Y-target-left"
},
{
"source": "wWOkA4wvREmy",
"target": "q9ZKV4lT7fmI",
"sourceHandle": "wWOkA4wvREmy-source-q4bGQPmurkUf",
"targetHandle": "q9ZKV4lT7fmI-target-left"
},
{
"source": "wWOkA4wvREmy",
"target": "iKBoX2vIzETU",
"sourceHandle": "wWOkA4wvREmy-source-wqre",
"targetHandle": "iKBoX2vIzETU-target-left"
},
{
"source": "wWOkA4wvREmy",
"target": "q9ZKV4lT7fmI",
"sourceHandle": "wWOkA4wvREmy-source-fToD4R0qKRU5",
"targetHandle": "q9ZKV4lT7fmI-target-left"
},
{
"source": "yL9uJxcMha5Y",
"target": "wH3OzRATcMIM",
"sourceHandle": "yL9uJxcMha5Y-source-right",
"targetHandle": "wH3OzRATcMIM-target-left"
}
]
}
这里能看出来,问题分类以后两条线路都去执行
但是下面这个就是正常的情况
首先 用了你的编排没法复现你的问题 其次你的AI输出哪里问题选错了
不是 debug 模式正常么
不是debugger 也会有问题
可以看 4.8.1 的 pr。 有删除操作会导致问题。
可以看 4.8.1 的 pr。 有删除操作会导致问题。
判断器明明fase
但是为什么分支true 后面的流程也执行了
这个情况和问题分类一模一样
可以看 4.8.1 的 pr。 有删除操作会导致问题。
一样的,不能有删除操作
可以看 4.8.1 的 pr。 有删除操作会导致问题。
一样的,不能有删除操作
意思是删除对话记录这个操作?
可以看 4.8.1 的 pr。 有删除操作会导致问题。
一样的,不能有删除操作
意思是删除对话记录这个操作?
删除分类或者条件
可以看 4.8.1 的 pr。 有删除操作会导致问题。
一样的,不能有删除操作
意思是删除对话记录这个操作?
删除分类或者条件
😂 这是一个bug吗,我试试重新拖一个组件
可以看 4.8.1 的 pr。 有删除操作会导致问题。
一样的,不能有删除操作
意思是删除对话记录这个操作?
删除分类或者条件
😂 这是一个bug吗,我试试重新拖一个组件
嗯。4.8的问题,4.8.1后就正常了