From a1a4bceb9acba4361d80f1fe788ef87565d44523 Mon Sep 17 00:00:00 2001 From: Xin Wang Date: Tue, 29 Apr 2025 15:03:02 +0800 Subject: [PATCH] Add api server code and workflow --- .gitignore | 0 pytest.ini | 3 + requirements.txt | 8 + src/api/endpoints.py | 493 +++ src/core/__init__.py | 1 + src/core/config.py | 11 + src/main.py | 16 + src/schemas/__init__.py | 1 + src/schemas/models.py | 50 + workflow/事故信息采集20250419.json | 5776 ++++++++++++++++++++++++++++ workflow/单车拍照流程插件.json | 3697 ++++++++++++++++++ workflow/单车插件.json | 2687 +++++++++++++ workflow/双车拍照流程插件.json | 3919 +++++++++++++++++++ 13 files changed, 16662 insertions(+) create mode 100644 .gitignore create mode 100644 pytest.ini create mode 100644 requirements.txt create mode 100644 src/api/endpoints.py create mode 100644 src/core/__init__.py create mode 100644 src/core/config.py create mode 100644 src/main.py create mode 100644 src/schemas/__init__.py create mode 100644 src/schemas/models.py create mode 100644 workflow/事故信息采集20250419.json create mode 100644 workflow/单车拍照流程插件.json create mode 100644 workflow/单车插件.json create mode 100644 workflow/双车拍照流程插件.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/pytest.ini b/pytest.ini new file mode 100644 index 0000000..ed2e4b8 --- /dev/null +++ b/pytest.ini @@ -0,0 +1,3 @@ +[pytest] +markers = + integration: marks tests that need access to external services \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..8fbd8d0 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,8 @@ +fastapi>=0.104.0 +uvicorn>=0.24.0 +pydantic>=2.4.2 +python-dotenv>=1.0.0 +httpx>=0.25.0 +pytest>=7.4.0 +pytest-asyncio>=0.21.0 +pytest-cov>=4.1.0 \ No newline at end of file diff --git a/src/api/endpoints.py b/src/api/endpoints.py new file mode 100644 index 0000000..47a755d --- /dev/null +++ b/src/api/endpoints.py @@ -0,0 +1,493 @@ +from fastapi import APIRouter, HTTPException +from ..schemas.models import ProcessRequest_chat, ProcessResponse_chat, ProcessRequest_get, ProcessResponse_get, ProcessRequest_set, ProcessResponse_set, ProcessResponse_delete_session, ProcessRequest_delete_session +import httpx +from datetime import datetime +import os +from dotenv import load_dotenv +from urllib import parse as parse +import json + +load_dotenv() + +router = APIRouter() + +ANALYSIS_SERVICE_URL = os.getenv("ANALYSIS_SERVICE_URL", None) +if ANALYSIS_SERVICE_URL is None: + raise ValueError("ANALYSIS_SERVICE_URL environment variable not set") +ANALYSIS_AUTH_TOKEN = os.getenv("ANALYSIS_AUTH_TOKEN", None) +if ANALYSIS_AUTH_TOKEN is None: + raise ValueError("ANALYSIS_AUTH_TOKEN environment variable not set") +DELETE_SESSION_URL = os.getenv("DELETE_SESSION_URL", None) +if DELETE_SESSION_URL is None: + raise ValueError("DELETE_SESSION_URL environment variable not set") +APP_ID = os.getenv("APP_ID", None) +if APP_ID is None: + raise ValueError("APP_ID environment variable not set") +DELETE_CHAT_URL = os.getenv("DELETE_CHAT_URL", None) +if DELETE_CHAT_URL is None: + raise ValueError("DELETE_CHAT_URL environment variable not set") +GET_CHAT_RECORDS_URL = os.getenv("GET_CHAT_RECORDS_URL", None) +if GET_CHAT_RECORDS_URL is None: + raise ValueError("GET_CHAT_RECORDS_URL environment variable not set") +STATUS_CODE_MAP = { + '0000': '结束通话', + '0001': '转接人工', + '1001': '未准备好通话', + '1002': '通话中', + '2000': '进入单车拍照', + '2001': '请对准车辆碰撞部位拍摄照片', + '2002': '请对准被撞物品拍摄照片', + '2003': '请切换摄像头对准本人拍摄一张正面照片', + '2004': '确认单车车牌', + '2005': '请确认车损位置是在车辆前方、后方还是侧面', + '2010': '进入双车拍照', + '2011': '请对准第一辆车碰撞部位拍摄', + '2012': '请对准第二辆车碰撞部位拍摄', + '2013': '请对准第二方车辆侧后方,看清车牌拍摄', + '2014': '请拍摄另一方驾驶人的正面照片', + '2015': '请切换前置摄像头对准本人拍摄一张正面照片', + '2016': '确认双车中的车牌' +} + + +async def delete_last_two_chat_records(sessionId): + # 获取最后两条聊天记录 + headers = { + "Authorization": f"Bearer {ANALYSIS_AUTH_TOKEN}", + "Content-Type": "application/json" + } + chat_data = { + "appId": APP_ID, + "chatId": sessionId, + "offset": 0, + } + async with httpx.AsyncClient() as client: + response = await client.post( + GET_CHAT_RECORDS_URL, + json=chat_data, + headers=headers, + timeout=None + ) + response.raise_for_status() + data = response.json() + last_two_dataId = [x['dataId'] for x in data['data']['list'][-2:]] + + # 删除最后聊天聊天记录 + for contentId in last_two_dataId: + headers = { + "Authorization": f"Bearer {ANALYSIS_AUTH_TOKEN}", + "Content-Type": "application/json" + } + url = DELETE_CHAT_URL.format(contentId=contentId, chatId=sessionId, appId=APP_ID) + async with httpx.AsyncClient() as client: + response = await client.delete( + url, + headers=headers, + timeout=None + ) + response.raise_for_status() + data = response.json() + + +# @app.exception_handler(RequestValidationError) +# async def validation_exception_handler(request: Request, exc: RequestValidationError): +# logging.error(f"Validation Error: {exc.errors()}") +# raise HTTPException(status_code=422, detail=exc.errors()) + +@router.post("/chat", response_model=ProcessResponse_chat) +async def chat(request: ProcessRequest_chat): + try: + headers = { + "Authorization": f"Bearer {ANALYSIS_AUTH_TOKEN}", + "Content-Type": "application/json" + } + json_data = request.model_dump() + chat_data = { + "chatId": json_data['sessionId'], + "stream": False, + "detail": True, + "messages": [ + { + "role": "user", + "content": json_data['text'] + } + ] + } + + # Call external analysis service + async with httpx.AsyncClient() as client: + response = await client.post( + ANALYSIS_SERVICE_URL, + json=chat_data, + headers=headers, + timeout=None + ) + response.raise_for_status() + data = response.json() + except Exception as e: + print(e) + return ProcessResponse_chat( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + outputText="", + nextStage="", + nextStageCode="", + code="500", + msg="大模型服务器无响应" + ) + + try: + # Extract content from FastGPT response + content = data['choices'][0]['message']['content'] + finish_reason = data['choices'][0]['finish_reason'] + + transfer_to_human = data['newVariables']['state'].get("transfer_to_human", False) + ywrysw = data['newVariables']['state'].get("ywrysw", False) + ywfjdc = data['newVariables']['state'].get("ywfjdc", False) + ywmtc = data['newVariables']['state'].get("ywmtc", False) + jdcsl = data['newVariables']['state'].get("jdcsl", 0) + accident_info_complete = data['newVariables']['state'].get("accident_info_complete", False) + user_is_ready = data['newVariables']['state'].get("user_is_ready", False) + if isinstance(user_is_ready, str): + user_is_ready = user_is_ready.lower() == 'true' + driver_info_complete = data['newVariables']['state'].get("driver_info_complete", False) + drivers_info_complete = data['newVariables']['state'].get("drivers_info_complete", False) + driver_info_check = data['newVariables']['state'].get("drivers_info_check", False) + drivers_info_check = data['newVariables']['state'].get("drivers_info_check", False) + + print(data['newVariables']) + + nextStageCode=data['newVariables']['status_code'] + nextStage=STATUS_CODE_MAP[nextStageCode] + + return ProcessResponse_chat( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + outputText=content, + nextStage=nextStage, + nextStageCode=nextStageCode, + code="200", + msg="", + ) + except Exception as e: + print(e) + return ProcessResponse_chat( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + outputText="", + nextStage="", + nextStageCode="", + code="500", + msg="大模型服务返回消息不完整" + ) + + +@router.post("/set_info", response_model=ProcessResponse_set) +async def set_info(request: ProcessRequest_set): + # 获取当前state + try: + headers = { + "Authorization": f"Bearer {ANALYSIS_AUTH_TOKEN}", + "Content-Type": "application/json" + } + json_data = request.model_dump() + chat_data = { + "chatId": json_data['sessionId'], + "stream": False, + "detail": True, + "messages": [ + { + "role": "user", + "content": "" + } + ] + } + + # Call external analysis service + async with httpx.AsyncClient() as client: + response = await client.post( + ANALYSIS_SERVICE_URL, + json=chat_data, + headers=headers, + timeout=None + ) + response.raise_for_status() + data = response.json() + current_state = data['newVariables']['state'] + if isinstance(current_state, str): + current_state = json.loads(current_state) + print(current_state) + except Exception as e: + print(e) + return ProcessResponse_set( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="500", + msg="大模型服务器无响应" + ) + + try: + await delete_last_two_chat_records(json_data['sessionId']) + except Exception as e: + print(e) + return ProcessResponse_set( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="500", + msg="大模型后台无响应" + ) + + # 修改当前state + try: + headers = { + "Authorization": f"Bearer {ANALYSIS_AUTH_TOKEN}", + "Content-Type": "application/json" + } + json_data = request.model_dump() + # key_map = {"xm1": "xm1", "hpzl1": "hpzl1", "hphm1": "driver1License", "sfzmhm1": "driver1ID", "sfzmwh1": "sfzmwh1", "sjhm1": "driver1Phonenumber","sjwh1": "sjwh1", "xm2":"xm2", "hpzl2": "hpzl2", "hphm2": "driver2License", "sfzmhm2": "driver2ID", "sfzmwh2": "sfzmwh2", "sjhm2": "driver2Phonenumber", "sjwh2": "sjwh2"} + # if json_data['key'] not in key_map: + # raise Exception("check your key") + # key = key_map.get(json_data['key']) + key = json_data['key'] + value = json_data['value'] + current_state[json_data['key']] = value + print(f'即将上传 {current_state}') + # if key == 'driver1ID' or key == 'driver2ID' or key == 'driver1Phonenumber' or key == 'driver2Phonenumber': + # current_state[json_data['key'].replace('hm','wh')] = value[-4:] + + chat_data = { + "chatId": json_data['sessionId'], + "stream": False, + "detail": True, + "variables": {'state':current_state}, + "messages": [ + { + "role": "user", + "content": "" + } + ] + } + # Call external analysis service + async with httpx.AsyncClient() as client: + response = await client.post( + ANALYSIS_SERVICE_URL, + json=chat_data, + headers=headers, + timeout=None + ) + response.raise_for_status() + + return ProcessResponse_set( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="200", + msg="" + ) + + except Exception as e: + print(e) + return ProcessResponse_set( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="500", + msg="大模型后台无响应" + ) + + try: + await delete_last_two_chat_records(json_data['sessionId']) + except Exception as e: + print(e) + return ProcessResponse_set( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="500", + msg="大模型后台无响应" + ) + +@router.post("/get_info", response_model=ProcessResponse_get) +async def get_info(request: ProcessRequest_get): + # 获取当前state + try: + headers = { + "Authorization": f"Bearer {ANALYSIS_AUTH_TOKEN}", + "Content-Type": "application/json" + } + json_data = request.model_dump() + chat_data = { + "chatId": json_data['sessionId'], + "stream": False, + "detail": True, + "messages": [ + { + "role": "user", + "content": "" + } + ] + } + + # Call external analysis service + async with httpx.AsyncClient() as client: + response = await client.post( + ANALYSIS_SERVICE_URL, + json=chat_data, + headers=headers, + timeout=None + ) + response.raise_for_status() + data = response.json() + current_state = data['newVariables']['state'] + if isinstance(current_state, str): + current_state = json.loads(current_state) + print(current_state) + except Exception as e: + print(e) + return ProcessResponse_get( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + value="", + code="500", + msg="大模型服务器无响应" + ) + + try: + await delete_last_two_chat_records(json_data['sessionId']) + except Exception as e: + print(e) + return ProcessResponse_get( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + value="", + code="500", + msg="大模型后台无响应" + ) + + try: + key = json_data['key'] + # key_map = {"hpzl1": "hpzl1", "hphm1": "driver1License", "sfzmhm1": "driver1ID", "sfzmwh1": "sfzmwh1", "sjhm1": "driver1Phonenumber","sjwh1": "sjwh1", "hpzl2": "hpzl2", "hphm2": "driver2License", "sfzmhm2": "driver2ID", "sfzmwh2": "sfzmwh2", "sjhm2": "driver2Phonenumber", "sjwh2": "sjwh2"} + acd_keys = ['ywrysw', 'ywfjdc', 'ywmtc', 'bjrjs', 'sgfssj', 'sfsgxc', 'jdcsl', 'sgyy'] + human1_keys = ['xm1', 'hpzl1', 'hphm1', 'sfzmhm1', 'sfzmwh1', 'sjhm1', 'sjwh1', 'csbw1'] + human2_keys = ['xm2', 'hpzl2', 'hphm2', 'sfzmhm2', 'sfzmwh2', 'sjhm2', 'sjwh2', 'csbw2'] + if key == 'all': + acd_values = {} + for k in acd_keys: + v = current_state.get(k, '') + if isinstance(v, bool): + v = '1' if v==True else '0' + acd_values[k] = v + human1_values = {} + for k in human1_keys: + v = current_state.get(k, '') + if isinstance(v, bool): + v = '1' if v==True else '0' + human1_values[k] = v + human2_values = {} + for k in human2_keys: + v = current_state.get(k, '') + if isinstance(v, bool): + v = '1' if v==True else '0' + human2_values[k] = v + value = {'acdinfo': acd_values, 'acdhuman1': human1_values, 'acdhuman2': human2_values} + value = json.dumps(value) + elif key == "acdinfo": + acd_values = {} + for k in acd_keys: + v = current_state.get(k, '') + if isinstance(v, bool): + v = '1' if v==True else '0' + acd_values[k] = v + value = json.dumps(acd_values) + elif key == 'acdhuman1': + human1_values = {} + for k in human1_keys: + v = current_state.get(k, '') + if isinstance(v, bool): + v = '1' if v==True else '0' + human1_values[k] = v + value = json.dumps(human1_value) + elif key == 'acdhuman2': + human2_values = {} + for k in human1_keys: + v = current_state.get(k, '') + if isinstance(v, bool): + v = '1' if v==True else '0' + human2_values[k] = v + value = json.dumps(human2_value) + else: + # if key in key_map: + # real_key = key_map.get(key) + # else: + # real_key = key + value = current_state.get(key, '') + value = json.dumps(value) + # if value == 'null': + # raise Exception("check your key") + + print(json_data) + return ProcessResponse_get( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + value=value, + code="200", + msg="" + ) + except Exception as e: + print(e) + return ProcessResponse_get( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + value="", + code="500", + msg="入参不规范" + ) + + +@router.delete("/delete_session", response_model=ProcessResponse_delete_session) +async def delete_session(request: ProcessRequest_delete_session): + try: + headers = { + "Authorization": f"Bearer {ANALYSIS_AUTH_TOKEN}", + "Content-Type": "application/json" + } + json_data = request.model_dump() + chatId = json_data.get('sessionId', None) + if chatId is None: + raise ValueError(f'Error in chatId.') + url = DELETE_SESSION_URL.format(appId=APP_ID, chatId=chatId) + + # Call external analysis service + async with httpx.AsyncClient() as client: + response = await client.delete( + url, + headers=headers, + timeout=None + ) + response.raise_for_status() + data = response.json() + # print(data) + except Exception as e: + print(e) + return ProcessResponse_chat( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="500", + msg="大模型服务器无响应" + ) + + try: + if data['code'] == 200: + return ProcessResponse_delete_session( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="200", + msg="" + ) + else: + raise ValueError("删除会话失败") + except Exception as e: + print(e) + return ProcessResponse_delete_session( + sessionId=json_data['sessionId'], + timeStamp=json_data['timeStamp'], + code="500", + msg="删除会话失败" + ) diff --git a/src/core/__init__.py b/src/core/__init__.py new file mode 100644 index 0000000..82789f2 --- /dev/null +++ b/src/core/__init__.py @@ -0,0 +1 @@ +# This file is intentionally left blank. \ No newline at end of file diff --git a/src/core/config.py b/src/core/config.py new file mode 100644 index 0000000..14d15ab --- /dev/null +++ b/src/core/config.py @@ -0,0 +1,11 @@ +import os +from dotenv import load_dotenv + +load_dotenv() + +class Config: + PROJECT_NAME = "Flexible Employment Analysis API" + API_V1_STR = "/api/v1" + SECRET_KEY = os.getenv("SECRET_KEY", "your-secret-key") + DATABASE_URL = os.getenv("DATABASE_URL", "sqlite:///./test.db") + DEBUG = os.getenv("DEBUG", "false").lower() in ("true", "1", "t") \ No newline at end of file diff --git a/src/main.py b/src/main.py new file mode 100644 index 0000000..d783452 --- /dev/null +++ b/src/main.py @@ -0,0 +1,16 @@ +from fastapi import FastAPI +import sys +sys.path.append('..') +from api.endpoints import router as api_router + +app = FastAPI( + title="AI Accident Information Collection API", + description="AI Accident Information Collection API", + version="1.0.0" +) + +@app.get("/") +def read_root(): + return {"message": "Server is running."} + +app.include_router(api_router) \ No newline at end of file diff --git a/src/schemas/__init__.py b/src/schemas/__init__.py new file mode 100644 index 0000000..82789f2 --- /dev/null +++ b/src/schemas/__init__.py @@ -0,0 +1 @@ +# This file is intentionally left blank. \ No newline at end of file diff --git a/src/schemas/models.py b/src/schemas/models.py new file mode 100644 index 0000000..88116f0 --- /dev/null +++ b/src/schemas/models.py @@ -0,0 +1,50 @@ +from pydantic import BaseModel, Field +from typing import Optional + +class ProcessRequest_chat(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + text: str = Field(...) + +class ProcessResponse_chat(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + outputText: str = Field(...) + nextStage: str = Field(..., max_length=32) + nextStageCode: str = Field(..., max_length=4) + code: str = Field(..., max_length=4) + msg: Optional[str] = None + +class ProcessRequest_get(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + key: str = Field(...) + +class ProcessResponse_get(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + value: str = Field(...) + code: str = Field(..., max_length=4) + msg: Optional[str] = None + +class ProcessRequest_set(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + key: str = Field(...) + value: str = Field(...) + +class ProcessResponse_set(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + code: str = Field(..., max_length=4) + msg: Optional[str] = None + +class ProcessRequest_delete_session(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + +class ProcessResponse_delete_session(BaseModel): + sessionId: str = Field(..., max_length=64) + timeStamp: str = Field(..., max_length=32) + code: str = Field(..., max_length=4) + msg: Optional[str] = None diff --git a/workflow/事故信息采集20250419.json b/workflow/事故信息采集20250419.json new file mode 100644 index 0000000..0087b8c --- /dev/null +++ b/workflow/事故信息采集20250419.json @@ -0,0 +1,5776 @@ +{ + "nodes": [ + { + "nodeId": "userGuide", + "name": "common:core.module.template.system_config", + "intro": "common:core.module.template.system_config_info", + "avatar": "core/workflow/template/systemConfig", + "flowNodeType": "userGuide", + "position": { + "x": -4227.761913436917, + "y": -810.6968520991372 + }, + "version": "481", + "inputs": [ + { + "key": "welcomeText", + "renderTypeList": [ + "hidden" + ], + "valueType": "string", + "label": "core.app.Welcome Text", + "value": "" + }, + { + "key": "variables", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "core.app.Chat Variable", + "value": [] + }, + { + "key": "questionGuide", + "valueType": "any", + "renderTypeList": [ + "hidden" + ], + "label": "core.app.Question Guide", + "value": { + "open": 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": "448745", + "name": "common:core.module.template.work_start", + "intro": "", + "avatar": "core/workflow/template/workflowStart", + "flowNodeType": "workflowStart", + "position": { + "x": -3716.2397673738346, + "y": -722.3747623057059 + }, + "version": "481", + "inputs": [ + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "common:core.module.input.label.user question", + "required": true, + "toolDescription": "User Question", + "debugLabel": "" + } + ], + "outputs": [ + { + "id": "userChatInput", + "key": "userChatInput", + "label": "common:core.module.input.label.user question", + "type": "static", + "valueType": "string", + "description": "" + } + ] + }, + { + "nodeId": "xBsEsifWxOhc", + "name": "事故情况提取", + "intro": "Can extract specified data from text, such as SQL statements, search keywords, code, etc.", + "avatar": "core/workflow/template/extractJson", + "flowNodeType": "contentExtract", + "showStatus": true, + "position": { + "x": 565.7093213497524, + "y": -1677.4435144035858 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "extractFields", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "selectedTypeIndex": 0 + }, + { + "key": "description", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "string", + "label": "Extraction Requirements Description", + "description": "workflow:extraction_requirements_description_detail", + "placeholder": "workflow:extraction_requirements_placeholder", + "value": "你是一个交通事故信息采集专员,正在根据交警和用户的历史对话信息采集交通事故相关信息。\n只有当存在自行车,电动自行车被撞倒的时候显示有非机动车被撞倒\n只有当用户确认有摩托车而不是汽车被撞倒的时候显示有摩托车被撞倒\n交通事故发生的原因种类包括:追尾、变道、未让行、违反信号、逆行、倒车、溜车、撞停、超速、其他", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "content", + "renderTypeList": [ + "reference", + "textarea" + ], + "label": "Text to Extract", + "required": true, + "valueType": "string", + "toolDescription": "Content to Retrieve", + "value": [ + "448745", + "userChatInput" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "selectedTypeIndex": 0 + }, + { + "key": "extractKeys", + "renderTypeList": [ + "custom" + ], + "label": "", + "valueType": "any", + "description": "workflow:target_fields_description", + "value": [ + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "有无人员伤亡", + "key": "ywrysw", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "有无非机动车被撞到", + "key": "ywfjdc", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "有无摩托车被撞倒", + "key": "ywmtc", + "enum": "" + }, + { + "valueType": "boolean", + "required": false, + "defaultValue": "", + "desc": "报警人是否为事故车辆驾驶人", + "key": "bjrjs", + "enum": "" + }, + { + "valueType": "string", + "required": false, + "defaultValue": "", + "desc": "事故发生标准化时间", + "key": "sgfssj", + "enum": "" + }, + { + "valueType": "boolean", + "required": false, + "defaultValue": "", + "desc": "报警人是否在事故现场", + "key": "sfsgxc", + "enum": "" + }, + { + "valueType": "number", + "required": false, + "defaultValue": "", + "desc": "事故机动车数量", + "key": "jdcsl", + "enum": "" + }, + { + "valueType": "string", + "required": false, + "defaultValue": "", + "desc": "交通事故发生的原因", + "key": "sgyy", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "用户是否明确提出要转接人工", + "key": "transfer_to_human", + "enum": "" + } + ], + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "success", + "key": "success", + "label": "workflow:full_field_extraction", + "required": true, + "description": "Returns true when all fields are fully extracted (success includes model extraction or using default values)", + "valueType": "boolean", + "type": "static" + }, + { + "id": "fields", + "key": "fields", + "label": "workflow:complete_extraction_result", + "required": true, + "description": "A JSON string, e.g., {\"name\":\"YY\",\"Time\":\"2023/7/2 18:00\"}", + "valueType": "string", + "type": "static" + }, + { + "id": "rLkKr49Ad3lb", + "key": "ywrysw", + "label": "Extraction Results-ywrysw", + "valueType": "boolean", + "type": "static" + }, + { + "id": "rhXgOJdLYIfn", + "key": "ywfjdc", + "label": "Extraction Results-ywfjdc", + "valueType": "boolean", + "type": "static" + }, + { + "id": "uFbYsvzL4tn2", + "key": "ywmtc", + "label": "Extraction Results-ywmtc", + "valueType": "boolean", + "type": "static" + }, + { + "id": "jHXjhSofOa3U", + "key": "bjrjs", + "label": "Extraction Results-bjrjs", + "valueType": "boolean", + "type": "static" + }, + { + "id": "wPaeLr2Uik5l", + "key": "sgfssj", + "label": "提取结果-sgfssj", + "valueType": "string", + "type": "static" + }, + { + "id": "mnKgvSNAJ9Qu", + "key": "sfsgxc", + "label": "Extraction Results-sfsgxc", + "valueType": "boolean", + "type": "static" + }, + { + "id": "kyE36lVgbiU7", + "key": "jdcsl", + "label": "提取结果-jdcsl", + "valueType": "number", + "type": "static" + }, + { + "id": "pLwu17uw7Qcq", + "key": "sgyy", + "label": "Extraction Results-sgyy", + "valueType": "string", + "type": "static" + }, + { + "id": "skrUfLaRdD61", + "key": "transfer_to_human", + "label": "Extraction Results-transfer_to_human", + "valueType": "boolean", + "type": "static" + } + ] + }, + { + "nodeId": "pvArMm3FFJeb", + "name": "Condition", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 3458.2710908393055, + "y": -1221.7431037009235 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "oZO5DXI7cgIN", + "qLUQfhG0ILRX" + ], + "condition": "equalTo", + "value": "someone_is_hurt" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "oZO5DXI7cgIN", + "qLUQfhG0ILRX" + ], + "condition": "equalTo", + "value": "transfer_to_human" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "oZO5DXI7cgIN", + "qLUQfhG0ILRX" + ], + "condition": "equalTo", + "value": "multi_parties" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "oZO5DXI7cgIN", + "qLUQfhG0ILRX" + ], + "condition": "equalTo", + "value": "accident_info_complete" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "uX2IzK9fx9zo", + "name": "Assigned Reply", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5658.676728128356, + "y": -1325.80066738384 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "由于事故有人受伤,正在转接人工处理\n\n\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "fvvP1xj1OJkZ", + "name": "Assigned Reply#2", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5642.058222537283, + "y": -902.136825814838 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "gu5ZFJKsE4GJ", + "name": "询问事故现场情况", + "intro": "AI Large Model Chat", + "avatar": "core/workflow/template/aiChat", + "flowNodeType": "chatNode", + "showStatus": true, + "position": { + "x": 5670.333988725728, + "y": -2636.2244294325665 + }, + "version": "490", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "settingLLMModel", + "reference" + ], + "label": "AI Model", + "valueType": "string", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "temperature", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "maxToken", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "isResponseAnswerText", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": true, + "valueType": "boolean", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatQuoteRole", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "value": "system", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quoteTemplate", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quotePrompt", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatVision", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "boolean", + "value": true, + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatReasoning", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "boolean", + "value": true, + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatTopP", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatStopSign", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatResponseFormat", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatJsonSchema", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Prompt", + "description": "core.app.tip.systemPromptTip", + "placeholder": "core.app.tip.chatNodeSystemPromptTip", + "value": "# 角色\n你是一个在电话收集交通事故信息的交警机器人\n\n# 语言风格\n简洁、适合语音实时交互,没有特殊符号,一次询问一个问题。拒绝跳过问题,拒绝回答任务以外的问题。\n\n# 任务\n当前时间是{{$VARIABLE_NODE_ID.cTime$}}。你需要通过电话询问依次向用户搜集:\n\n有无人员伤亡、有无非机动车或者摩托车被撞到\n报警人是否是事故车辆驾驶人\n事故发生的时间\n通过复述标准化的时间向用户确认事故时间\n用户是否在事故现场\n事故机动车数量\n交通事故原因\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 8, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quoteQA", + "renderTypeList": [ + "settingDatasetQuotePrompt" + ], + "label": "", + "debugLabel": "Dataset Reference", + "description": "", + "valueType": "datasetQuote", + "valueDesc": "", + "toolDescription": "" + }, + { + "key": "fileUrlList", + "renderTypeList": [ + "reference", + "input" + ], + "label": "Files", + "debugLabel": "Files", + "valueType": "arrayString", + "value": [ + [ + "448745", + "userFiles" + ] + ], + "valueDesc": "", + "description": "app:workflow.user_file_input_desc", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User Question", + "required": true, + "value": [ + "448745", + "userChatInput" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + } + ], + "outputs": [ + { + "id": "history", + "key": "history", + "required": true, + "label": "common:core.module.output.label.New context", + "description": "Splice the current reply content with the history records and return it as the new context", + "valueType": "chatHistory", + "valueDesc": "{\n obj: System | Human | AI;\n value: string;\n}[]", + "type": "static" + }, + { + "id": "answerText", + "key": "answerText", + "required": true, + "label": "common:core.module.output.label.Ai response content", + "description": "Will be triggered after the stream reply is completed", + "valueType": "string", + "type": "static" + }, + { + "id": "reasoningText", + "key": "reasoningText", + "required": false, + "label": "workflow:reasoning_text", + "valueType": "string", + "type": "static", + "invalid": true, + "description": "" + } + ] + }, + { + "nodeId": "gArhI4puX6gn", + "name": "Assigned Reply#4", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5658.676728128356, + "y": -438.69126786236313 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "由于涉及多方事故,正在转接人工处理,请稍候\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ry5G22Qk6Tox", + "name": "Assigned Reply#4", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 407.31699110784086, + "y": -3944.890682031594 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "您好,这里是无锡交警,我将为您远程处理交通事故。请将人员撤离至路侧安全区域,开启危险报警双闪灯、放置三角警告牌、做好安全防护,谨防二次事故伤害。若您已经准备好了,请点击继续办理,如需人工服务,请说转人工。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "hFlE9YB8LdGB", + "name": "Condition#6", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": -2871.6839234896324, + "y": -1246.6968520991372 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "n4C51phGZY1A", + "gR0mkQpJ4Og8" + ], + "condition": "equalTo", + "value": "true" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "n4C51phGZY1A", + "iz9Ecx54TvGS" + ], + "condition": "equalTo", + "value": "false" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "condition": "equalTo", + "value": "1002" + }, + { + "variable": [ + "n4C51phGZY1A", + "hk9zZjblTaS1" + ], + "condition": "equalTo", + "value": "false" + }, + { + "variable": [ + "n4C51phGZY1A", + "d3mC4o1ejnFE" + ], + "condition": "equalTo", + "value": "false" + }, + { + "variable": [ + "n4C51phGZY1A", + "ya6I5sWXJsNJ" + ], + "condition": "equalTo", + "value": "false" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "condition": "startWith", + "value": "200" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "condition": "startWith", + "value": "201" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "condition": "equalTo", + "value": "1002" + }, + { + "variable": [ + "n4C51phGZY1A", + "dXRhdlsfO22o" + ], + "condition": "equalTo", + "value": "1" + }, + { + "variable": [ + "n4C51phGZY1A", + "hUCLyoM573CS" + ], + "condition": "equalTo", + "value": "false" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "n4C51phGZY1A", + "dXRhdlsfO22o" + ], + "condition": "equalTo", + "value": "2" + }, + { + "variable": [ + "n4C51phGZY1A", + "hk9zZjblTaS1" + ], + "condition": "equalTo", + "value": "true" + }, + { + "variable": [ + "n4C51phGZY1A", + "yeQFXpxUR0pq" + ], + "condition": "equalTo", + "value": "false" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "jmmJzldTiMkP", + "name": "Variable Update#7", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 1717.2923866395925, + "y": -4059.7525633656487 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "yrmf3AuoOjnI", + "gR0mkQpJ4Og8" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "gECEtWA1FJ7B", + "name": "是否准备好提取#2", + "intro": "Can extract specified data from text, such as SQL statements, search keywords, code, etc.", + "avatar": "core/workflow/template/extractJson", + "flowNodeType": "contentExtract", + "showStatus": true, + "position": { + "x": 369.30271837612247, + "y": -3608.1334735184296 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "extractFields", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "selectedTypeIndex": 0 + }, + { + "key": "description", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "string", + "label": "Extraction Requirements Description", + "description": "workflow:extraction_requirements_description_detail", + "placeholder": "workflow:extraction_requirements_placeholder", + "value": "你是一个交通事故信息采集专员,正在根据交警和用户的历史对话信息判断用户是否准备好采集交通事故相关信息。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "content", + "renderTypeList": [ + "reference", + "textarea" + ], + "label": "Text to Extract", + "required": true, + "valueType": "string", + "toolDescription": "Content to Retrieve", + "value": [ + "448745", + "userChatInput" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "selectedTypeIndex": 0 + }, + { + "key": "extractKeys", + "renderTypeList": [ + "custom" + ], + "label": "", + "valueType": "any", + "description": "workflow:target_fields_description", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "", + "value": [ + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "有无人员伤亡", + "key": "ywrysw", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "有无非机动车被撞到", + "key": "ywfjdc", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "有无摩托车被撞倒", + "key": "ywmtc", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "用户是否明确提出要转接人工", + "key": "transfer_to_human", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "false", + "desc": "用户准备好了", + "key": "user_is_ready", + "enum": "" + } + ] + } + ], + "outputs": [ + { + "id": "success", + "key": "success", + "label": "workflow:full_field_extraction", + "required": true, + "description": "Returns true when all fields are fully extracted (success includes model extraction or using default values)", + "valueType": "boolean", + "type": "static" + }, + { + "id": "fields", + "key": "fields", + "label": "workflow:complete_extraction_result", + "required": true, + "description": "A JSON string, e.g., {\"name\":\"YY\",\"Time\":\"2023/7/2 18:00\"}", + "valueType": "string", + "type": "static" + }, + { + "id": "rLkKr49Ad3lb", + "key": "ywrysw", + "label": "Extraction Results-ywrysw", + "valueType": "boolean", + "type": "static" + }, + { + "id": "rhXgOJdLYIfn", + "key": "ywfjdc", + "label": "Extraction Results-ywfjdc", + "valueType": "boolean", + "type": "static" + }, + { + "id": "uFbYsvzL4tn2", + "key": "ywmtc", + "label": "Extraction Results-ywmtc", + "valueType": "boolean", + "type": "static" + }, + { + "id": "skrUfLaRdD61", + "key": "transfer_to_human", + "label": "Extraction Results-transfer_to_human", + "valueType": "boolean", + "type": "static" + }, + { + "id": "eXEjNMCMhjEE", + "key": "user_is_ready", + "label": "Extraction Results-user_is_ready", + "valueType": "boolean", + "type": "static" + } + ] + }, + { + "nodeId": "y8MkLLzUfT1i", + "name": "询问是否准备好", + "intro": "AI Large Model Chat", + "avatar": "core/workflow/template/aiChat", + "flowNodeType": "chatNode", + "showStatus": true, + "position": { + "x": 3889.8416086544803, + "y": -2931.886324393669 + }, + "version": "490", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "settingLLMModel", + "reference" + ], + "label": "AI Model", + "valueType": "string", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "temperature", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "maxToken", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "isResponseAnswerText", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": true, + "valueType": "boolean", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatQuoteRole", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "value": "system", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quoteTemplate", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quotePrompt", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatVision", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "boolean", + "value": true, + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatReasoning", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "boolean", + "value": true, + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatTopP", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatStopSign", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatResponseFormat", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatJsonSchema", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Prompt", + "description": "core.app.tip.systemPromptTip", + "placeholder": "core.app.tip.chatNodeSystemPromptTip", + "value": "你是一个在电话收集交通事故信息的交警机器人。语言风格简洁、适合语音实时交互,没有特殊符号,拒绝跳过问题,拒绝回答任务以外的问题。\n​你唯一的任务是询问:用户是否准备好继续办理\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 2, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quoteQA", + "renderTypeList": [ + "settingDatasetQuotePrompt" + ], + "label": "", + "debugLabel": "Dataset Reference", + "description": "", + "valueType": "datasetQuote", + "valueDesc": "", + "toolDescription": "" + }, + { + "key": "fileUrlList", + "renderTypeList": [ + "reference", + "input" + ], + "label": "Files", + "debugLabel": "Files", + "valueType": "arrayString", + "value": [ + [ + "448745", + "userFiles" + ] + ], + "valueDesc": "", + "description": "app:workflow.user_file_input_desc", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User Question", + "required": true, + "value": [ + "448745", + "userChatInput" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + } + ], + "outputs": [ + { + "id": "history", + "key": "history", + "required": true, + "label": "common:core.module.output.label.New context", + "description": "Splice the current reply content with the history records and return it as the new context", + "valueType": "chatHistory", + "valueDesc": "{\n obj: System | Human | AI;\n value: string;\n}[]", + "type": "static" + }, + { + "id": "answerText", + "key": "answerText", + "required": true, + "label": "common:core.module.output.label.Ai response content", + "description": "Will be triggered after the stream reply is completed", + "valueType": "string", + "type": "static" + }, + { + "id": "reasoningText", + "key": "reasoningText", + "required": false, + "label": "workflow:reasoning_text", + "valueType": "string", + "type": "static", + "invalid": true, + "description": "" + } + ] + }, + { + "nodeId": "smMmut5jHUcz", + "name": "Variable Update#8", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 1969.6865999181177, + "y": -3221.7540004797597 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "c8GsYOxxPKd9", + "gR0mkQpJ4Og8" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "vLh9Kas6PyH1", + "name": "Condition#6", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2553.126402633063, + "y": -3456.5012759619995 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "OR", + "list": [ + { + "variable": [ + "gECEtWA1FJ7B", + "rLkKr49Ad3lb" + ], + "condition": "equalTo", + "value": "true" + }, + { + "variable": [ + "gECEtWA1FJ7B", + "rhXgOJdLYIfn" + ], + "condition": "equalTo", + "value": "true" + }, + { + "variable": [ + "gECEtWA1FJ7B", + "uFbYsvzL4tn2" + ], + "condition": "equalTo", + "value": "true" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gECEtWA1FJ7B", + "skrUfLaRdD61" + ], + "condition": "equalTo", + "value": "true" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gECEtWA1FJ7B", + "eXEjNMCMhjEE" + ], + "condition": "equalTo", + "value": "false" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "oXj6YnbVHTjW", + "name": "Assigned Reply#5", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3867.9048389878517, + "y": -3647.4479631623353 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "由于事故有人受伤,正在转接人工处理\n\n\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "kYq7r2seIZHF", + "name": "Assigned Reply#6", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3867.9048389878512, + "y": -3276.8302611074855 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候\n\n\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "n4C51phGZY1A", + "name": "Code Sandbox#4", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": -3364.3143043866053, + "y": -967.1199533612536 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1}){\n return {\n is_first_message: data1.is_first_message,\n user_is_ready: data1.user_is_ready,\n accident_info_complete: data1.accident_info_complete,\n jdcsl: data1.jdcsl,\n driver_info_complete: data1.driver_info_complete,\n drivers_info_complete: data1.drivers_info_complete,\n driver_info_check: data1.driver_info_check,\n drivers_info_check: data1.drivers_info_check,\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "is_first_message", + "valueType": "boolean", + "label": "is_first_message", + "valueDesc": "", + "description": "" + }, + { + "id": "iz9Ecx54TvGS", + "valueType": "boolean", + "type": "dynamic", + "key": "user_is_ready", + "label": "user_is_ready" + }, + { + "id": "hk9zZjblTaS1", + "valueType": "boolean", + "type": "dynamic", + "key": "accident_info_complete", + "label": "accident_info_complete" + }, + { + "id": "dXRhdlsfO22o", + "valueType": "number", + "type": "dynamic", + "key": "jdcsl", + "label": "jdcsl" + }, + { + "id": "d3mC4o1ejnFE", + "valueType": "boolean", + "type": "dynamic", + "key": "driver_info_complete", + "label": "driver_info_complete" + }, + { + "id": "ya6I5sWXJsNJ", + "valueType": "boolean", + "type": "dynamic", + "key": "drivers_info_complete", + "label": "drivers_info_complete" + }, + { + "id": "hUCLyoM573CS", + "valueType": "boolean", + "type": "dynamic", + "key": "driver_info_check", + "label": "driver_info_check" + }, + { + "id": "yeQFXpxUR0pq", + "valueType": "boolean", + "type": "dynamic", + "key": "drivers_info_check", + "label": "drivers_info_check" + }, + { + "id": "zGUstg1H8F4F", + "valueType": "number", + "type": "dynamic", + "key": "user_no_response", + "label": "user_no_response" + } + ] + }, + { + "nodeId": "yrmf3AuoOjnI", + "name": "Code Sandbox#5", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 1156.6568917166119, + "y": -4321.252563365649 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state}){\n state.is_first_message=false;\n return {\n state: state\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "c8GsYOxxPKd9", + "name": "Code Sandbox#6", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 1327.2745985105391, + "y": -3390.901464036014 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state, ywrysw, ywfjdc, ywmtc, transfer_to_human, user_is_ready}){\n state.ywrysw=ywrysw;\n state.ywfjdc=ywfjdc;\n state.ywmtc=ywmtc;\n state.transfer_to_human=transfer_to_human;\n state.user_is_ready=user_is_ready;\n return {\n state: state\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywrysw", + "label": "ywrysw", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "gECEtWA1FJ7B", + "rLkKr49Ad3lb" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywfjdc", + "label": "ywfjdc", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "gECEtWA1FJ7B", + "rhXgOJdLYIfn" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywmtc", + "label": "ywmtc", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "gECEtWA1FJ7B", + "uFbYsvzL4tn2" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "transfer_to_human", + "label": "transfer_to_human", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "gECEtWA1FJ7B", + "skrUfLaRdD61" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "user_is_ready", + "label": "user_is_ready", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "gECEtWA1FJ7B", + "eXEjNMCMhjEE" + ] + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "q5ycm7LqWXWE", + "name": "Variable Update#7", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4769.758596668034, + "y": -3672.9479631623353 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "g4kfmyuPAXtQ", + "name": "Variable Update#8", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4769.758596668034, + "y": -3302.3302611074855 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "waJFRBjvQEv9", + "name": "Variable Update#9", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 7170.164738678791, + "y": -2246.8952443529906 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "1002" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ysRPAq7tp8Hg", + "name": "Code Sandbox#7", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 1478.105324852098, + "y": -1612.244918977058 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({\n state, ywrysw, ywfjdc, ywmtc, transfer_to_human,\n bjrjs,sgfssj,sfsgxc,jdcsl,sgyy\n}){\n state.ywrysw=ywrysw;\n state.ywfjdc=ywfjdc;\n state.ywmtc=ywmtc;\n state.transfer_to_human=transfer_to_human;\n if (bjrjs !== null && bjrjs !== undefined) {\n state.bjrjs = bjrjs;\n }\n if (sgfssj !== null && sgfssj !== undefined) {\n state.sgfssj = sgfssj;\n }\n if (sfsgxc !== null && sfsgxc !== undefined) {\n state.sfsgxc = sfsgxc;\n }\n if (jdcsl != null && jdcsl !== undefined) {\n state.jdcsl = jdcsl;\n }\n if (sgyy != null && sgyy !== undefined) {\n state.sgyy = sgyy;\n }\n return {\n state: state\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywrysw", + "label": "ywrysw", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "rLkKr49Ad3lb" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywfjdc", + "label": "ywfjdc", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "rhXgOJdLYIfn" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywmtc", + "label": "ywmtc", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "uFbYsvzL4tn2" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "transfer_to_human", + "label": "transfer_to_human", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "skrUfLaRdD61" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "bjrjs", + "label": "bjrjs", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "jHXjhSofOa3U" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "sgfssj", + "label": "sgfssj", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "wPaeLr2Uik5l" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "sfsgxc", + "label": "sfsgxc", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "mnKgvSNAJ9Qu" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "number", + "canEdit": true, + "key": "jdcsl", + "label": "jdcsl", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "kyE36lVgbiU7" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "sgyy", + "label": "sgyy", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "xBsEsifWxOhc", + "pLwu17uw7Qcq" + ] + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "fwaYvHFYGDAj", + "name": "Variable Update#10", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 2111.28608282742, + "y": -1039.7222961189864 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "ysRPAq7tp8Hg", + "gR0mkQpJ4Og8" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "bFtnxuUrDbuI", + "name": "Variable Update#10", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 7129.228004579305, + "y": -1367.9581472726181 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "bbQgpM0MUMtc", + "name": "Variable Update#11", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 7146.632104901555, + "y": -955.136825814838 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "wEy3YTCK40uG", + "name": "Variable Update#12", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 7146.632104901555, + "y": -482.40103458375495 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "hSzvdCjjB71d", + "name": "Code Sandbox#8", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 5229.676728128356, + "y": -70.34951539554692 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state}){\n state.accident_info_complete=true;\n return {\n state: state\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "jHeeLikXfH1z", + "name": "Variable Update#12", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 5971.055897129906, + "y": 191.15048460445308 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "hSzvdCjjB71d", + "gR0mkQpJ4Og8" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ckg0TgZFKv2F", + "name": "Assigned Reply#7", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 8860.269826828857, + "y": 187.65048460445308 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "下面开始拍照流程。请对准车辆前方看清车牌,拍摄车前方照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "yvvFH7iyMHCO", + "name": "Variable Update#13", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 10045.792098100948, + "y": 161.15048460445308 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "2000" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tyezGSJtysAP", + "name": "Condition#7", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 7537.589072841614, + "y": 139.15048460445308 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "i9dNcDDqlC3g", + "gR0mkQpJ4Og8" + ], + "condition": "equalTo", + "value": "single" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "oZO5DXI7cgIN", + "name": "Code Sandbox#9", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 2725.514265219497, + "y": -1160.136825814838 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state}){\n if (state.ywrysw || state.ywfjdc || state.ywmtc) {\n return { result: 'someone_is_hurt' };\n } else if (state.transfer_to_human) {\n return { result: 'transfer_to_human' };\n } else if(state.jdcsl > 2){\n return { result: 'multi_parties' };\n } else if (\n state.bjrjs !== null && state.bjrjs !== undefined &&\n state.sgfssj !== null && state.sgfssj !== undefined && state.sgfssj !== 'null' &&\n state.sfsgxc !== null && state.sfsgxc !== undefined &&\n state.jdcsl !== null && state.jdcsl !== undefined && \n state.sgyy !== null && state.sgyy !== undefined && state.sgyy !== 'null'\n ) {\n return {result: 'accident_info_complete'};\n }\n return {\n result: 'continue'\n };\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "result", + "valueType": "string", + "label": "result", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "i9dNcDDqlC3g", + "name": "Code Sandbox#9", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 6783.382854053828, + "y": 5.767001503336758 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state}){\n if (state.jdcsl === 1) {\n return {\n result: 'single'\n }\n } else {\n return {\n result: 'double'\n }\n }\n\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "result", + "valueType": "string", + "label": "result", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "gEcYC2j2qL17", + "name": "Assigned Reply#8", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 8873.889334432186, + "y": 678.0362498249059 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "下面开始拍照流程。请对准第一辆车的侧前方,看清车牌拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "fzHdRxIy04GC", + "name": "Variable Update#14", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 10059.411605704277, + "y": 641.6399404941092 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "2010" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "fCdRtFDIczmJ", + "name": "Variable Update#14", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 1765.573509407675, + "y": 65.24892731909137 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "sABVeuACxyOt", + "status_code" + ], + "valueType": "string", + "renderType": "reference" + }, + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "sABVeuACxyOt", + "state" + ], + "renderType": "reference", + "valueType": "object" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "otFgcPblkQ2i", + "name": "Variable Update#15", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 2080.9755020100647, + "y": 661.7332994223469 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "eSETDMThKva0", + "status_code" + ], + "valueType": "string", + "renderType": "reference" + }, + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "eSETDMThKva0", + "state" + ], + "renderType": "reference", + "valueType": "object" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "scqb8erNCXkK", + "name": "Assigned Reply#11", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": -515.8603619741782, + "y": -2230.301100294996 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "因您长时间未回复,本次服务将结束,如需报案请您再次呼入", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "pK8mcwqBcxqE", + "name": "Variable Update#16", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 318.74322229340646, + "y": -2371.2998862010436 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "1004" + ], + "valueType": "string", + "renderType": "input" + }, + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "qKHI3maEL4SU", + "qLUQfhG0ILRX" + ], + "renderType": "reference", + "valueType": "object" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "qKHI3maEL4SU", + "name": "Code Sandbox#9", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": -1779.2729555352714, + "y": -2471.1142418207105 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state, user_question}){\n let decision = \"continue\";\n if (user_question === \"【用户无回复】\") {\n state.user_no_response += 1;\n } else {\n state.user_no_response =0;\n }\n if (state.user_no_response < 2) {\n decision = \"continue\";\n } else {\n decision = \"end\";\n }\n return {\n state: state,\n decision: decision\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "user_question", + "label": "user_question", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "448745", + "userChatInput" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "decision", + "valueType": "string", + "label": "decision", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "nZUm7LuJxr5a", + "name": "Condition#5", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": -563.4647232799128, + "y": -2732.248271826956 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "qKHI3maEL4SU", + "gR0mkQpJ4Og8" + ], + "condition": "equalTo", + "value": "end" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "wFnInUpCQeJV", + "name": "Variable Update#17", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": -1229.114603569731, + "y": -2565.0698623021194 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "qKHI3maEL4SU", + "qLUQfhG0ILRX" + ], + "renderType": "reference", + "valueType": "object" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ntkSX8ViE4ZK", + "name": "Code Sandbox#9", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": -1698.8869186355423, + "y": -1394.984364000085 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state, user_question}){\n let decision = \"continue\";\n if (user_question === \"【用户无回复】\") {\n state.user_no_response += 1;\n } else {\n state.user_no_response =0;\n }\n if (state.user_no_response < 2) {\n decision = \"continue\";\n } else {\n decision = \"end\";\n }\n return {\n state: state,\n decision: decision\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "VARIABLE_NODE_ID", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "user_question", + "label": "user_question", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "448745", + "userChatInput" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "decision", + "valueType": "string", + "label": "decision", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "bKmudspMNnxL", + "name": "Condition#6", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": -357.25677770659354, + "y": -1574.12827816296 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "ntkSX8ViE4ZK", + "gR0mkQpJ4Og8" + ], + "condition": "equalTo", + "value": "end" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "syzmFUt5tjQc", + "name": "Variable Update#18", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": -1166.0385964615787, + "y": -1246.6968520991372 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "ntkSX8ViE4ZK", + "qLUQfhG0ILRX" + ], + "renderType": "reference", + "valueType": "object" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "yQOFHC40g1uw", + "name": "Assigned Reply#12", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": -298.4531508559866, + "y": -1094.6320794661547 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "因您长时间未回复,本次服务将结束,如需报案请您再次呼入", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "j2LPKAgbCCho", + "name": "Variable Update#19", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": -152.85071041653555, + "y": -722.3747623057059 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "1004" + ], + "valueType": "string", + "renderType": "input" + }, + { + "variable": [ + "VARIABLE_NODE_ID", + "state" + ], + "value": [ + "ntkSX8ViE4ZK", + "qLUQfhG0ILRX" + ], + "renderType": "reference", + "valueType": "object" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "gfBHnQ0ks5iK", + "name": "Assigned Reply#11", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": -1023.2567777065935, + "y": 305.3944865893809 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "后续阶段施工中,即将结束通话", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "xYFIPF36BjOm", + "name": "Variable Update#19", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": -119.45315085598662, + "y": 621.8578997249015 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "VARIABLE_NODE_ID", + "status_code" + ], + "value": [ + "", + "0000" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "eSETDMThKva0", + "name": "双车拍照流程插件", + "intro": "", + "avatar": "core/app/type/pluginFill", + "flowNodeType": "pluginModule", + "showStatus": true, + "position": { + "x": 678.8586841435086, + "y": 240.51079782417702 + }, + "version": "680b47dee11c874476fdaf9b", + "inputs": [ + { + "key": "system_forbid_stream", + "renderTypeList": [ + "switch" + ], + "valueType": "boolean", + "label": "workflow:template.forbid_stream", + "description": "workflow:template.forbid_stream_desc", + "value": false + }, + { + "renderTypeList": [ + "reference", + "input" + ], + "selectedTypeIndex": 0, + "valueType": "object", + "canEdit": false, + "key": "state", + "label": "state", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false, + "value": [ + "VARIABLE_NODE_ID", + "state" + ] + }, + { + "renderTypeList": [ + "reference", + "input" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": false, + "key": "status_code", + "label": "status_code", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false, + "value": [ + "VARIABLE_NODE_ID", + "status_code" + ] + }, + { + "renderTypeList": [ + "reference", + "input" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": false, + "key": "user_question", + "label": "user_question", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false, + "value": [ + "448745", + "userChatInput" + ] + } + ], + "outputs": [ + { + "id": "state", + "type": "static", + "key": "state", + "valueType": "object", + "label": "state", + "description": "" + }, + { + "id": "status_code", + "type": "static", + "key": "status_code", + "valueType": "string", + "label": "status_code", + "description": "" + } + ], + "pluginId": "6809bc52e11c874476fd8700" + }, + { + "nodeId": "sABVeuACxyOt", + "name": "单车拍照流程插件", + "intro": "", + "avatar": "core/app/type/pluginFill", + "flowNodeType": "pluginModule", + "showStatus": true, + "position": { + "x": -332.65160644048433, + "y": -231.9158752479845 + }, + "version": "680dbf3602359c74bc7f6893", + "inputs": [ + { + "key": "system_forbid_stream", + "renderTypeList": [ + "switch" + ], + "valueType": "boolean", + "label": "workflow:template.forbid_stream", + "description": "workflow:template.forbid_stream_desc", + "value": false + }, + { + "renderTypeList": [ + "reference", + "input" + ], + "selectedTypeIndex": 0, + "valueType": "object", + "canEdit": false, + "key": "state", + "label": "state", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false, + "value": [ + "VARIABLE_NODE_ID", + "state" + ] + }, + { + "renderTypeList": [ + "reference", + "input" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": false, + "key": "status_code", + "label": "status_code", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false, + "value": [ + "VARIABLE_NODE_ID", + "status_code" + ] + }, + { + "renderTypeList": [ + "reference", + "input" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": false, + "key": "user_question", + "label": "user_question", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false, + "value": [ + "448745", + "userChatInput" + ] + } + ], + "outputs": [ + { + "id": "state", + "type": "static", + "key": "state", + "valueType": "object", + "label": "state", + "description": "" + }, + { + "id": "status_code", + "type": "static", + "key": "status_code", + "valueType": "string", + "label": "status_code", + "description": "" + } + ], + "pluginId": "6809bc70e11c874476fd87a6" + }, + { + "nodeId": "xsJJTkTsEAMW", + "name": "Condition#7", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": -1420.114603569731, + "y": -464.808454264758 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "448745", + "userChatInput" + ], + "condition": "isEmpty" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "sswEbGwdJu7H", + "name": "Condition#8", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": -1456.6894965950437, + "y": -50.30357021529878 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "448745", + "userChatInput" + ], + "condition": "isEmpty" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + } + ], + "edges": [ + { + "source": "pvArMm3FFJeb", + "target": "gu5ZFJKsE4GJ", + "sourceHandle": "pvArMm3FFJeb-source-ELSE", + "targetHandle": "gu5ZFJKsE4GJ-target-left" + }, + { + "source": "pvArMm3FFJeb", + "target": "uX2IzK9fx9zo", + "sourceHandle": "pvArMm3FFJeb-source-IF", + "targetHandle": "uX2IzK9fx9zo-target-left" + }, + { + "source": "pvArMm3FFJeb", + "target": "fvvP1xj1OJkZ", + "sourceHandle": "pvArMm3FFJeb-source-ELSE IF 1", + "targetHandle": "fvvP1xj1OJkZ-target-left" + }, + { + "source": "pvArMm3FFJeb", + "target": "gArhI4puX6gn", + "sourceHandle": "pvArMm3FFJeb-source-ELSE IF 2", + "targetHandle": "gArhI4puX6gn-target-left" + }, + { + "source": "hFlE9YB8LdGB", + "target": "ry5G22Qk6Tox", + "sourceHandle": "hFlE9YB8LdGB-source-IF", + "targetHandle": "ry5G22Qk6Tox-target-left" + }, + { + "source": "smMmut5jHUcz", + "target": "vLh9Kas6PyH1", + "sourceHandle": "smMmut5jHUcz-source-right", + "targetHandle": "vLh9Kas6PyH1-target-left" + }, + { + "source": "vLh9Kas6PyH1", + "target": "oXj6YnbVHTjW", + "sourceHandle": "vLh9Kas6PyH1-source-IF", + "targetHandle": "oXj6YnbVHTjW-target-left" + }, + { + "source": "vLh9Kas6PyH1", + "target": "kYq7r2seIZHF", + "sourceHandle": "vLh9Kas6PyH1-source-ELSE IF 1", + "targetHandle": "kYq7r2seIZHF-target-left" + }, + { + "source": "vLh9Kas6PyH1", + "target": "y8MkLLzUfT1i", + "sourceHandle": "vLh9Kas6PyH1-source-ELSE IF 2", + "targetHandle": "y8MkLLzUfT1i-target-left" + }, + { + "source": "vLh9Kas6PyH1", + "target": "gu5ZFJKsE4GJ", + "sourceHandle": "vLh9Kas6PyH1-source-ELSE", + "targetHandle": "gu5ZFJKsE4GJ-target-left" + }, + { + "source": "448745", + "target": "n4C51phGZY1A", + "sourceHandle": "448745-source-right", + "targetHandle": "n4C51phGZY1A-target-left" + }, + { + "source": "n4C51phGZY1A", + "target": "hFlE9YB8LdGB", + "sourceHandle": "n4C51phGZY1A-source-right", + "targetHandle": "hFlE9YB8LdGB-target-left" + }, + { + "source": "ry5G22Qk6Tox", + "target": "yrmf3AuoOjnI", + "sourceHandle": "ry5G22Qk6Tox-source-right", + "targetHandle": "yrmf3AuoOjnI-target-left" + }, + { + "source": "yrmf3AuoOjnI", + "target": "jmmJzldTiMkP", + "sourceHandle": "yrmf3AuoOjnI-source-right", + "targetHandle": "jmmJzldTiMkP-target-left" + }, + { + "source": "gECEtWA1FJ7B", + "target": "c8GsYOxxPKd9", + "sourceHandle": "gECEtWA1FJ7B-source-right", + "targetHandle": "c8GsYOxxPKd9-target-left" + }, + { + "source": "c8GsYOxxPKd9", + "target": "smMmut5jHUcz", + "sourceHandle": "c8GsYOxxPKd9-source-right", + "targetHandle": "smMmut5jHUcz-target-left" + }, + { + "source": "oXj6YnbVHTjW", + "target": "q5ycm7LqWXWE", + "sourceHandle": "oXj6YnbVHTjW-source-right", + "targetHandle": "q5ycm7LqWXWE-target-left" + }, + { + "source": "kYq7r2seIZHF", + "target": "g4kfmyuPAXtQ", + "sourceHandle": "kYq7r2seIZHF-source-right", + "targetHandle": "g4kfmyuPAXtQ-target-left" + }, + { + "source": "gu5ZFJKsE4GJ", + "target": "waJFRBjvQEv9", + "sourceHandle": "gu5ZFJKsE4GJ-source-right", + "targetHandle": "waJFRBjvQEv9-target-left" + }, + { + "source": "xBsEsifWxOhc", + "target": "ysRPAq7tp8Hg", + "sourceHandle": "xBsEsifWxOhc-source-right", + "targetHandle": "ysRPAq7tp8Hg-target-left" + }, + { + "source": "ysRPAq7tp8Hg", + "target": "fwaYvHFYGDAj", + "sourceHandle": "ysRPAq7tp8Hg-source-right", + "targetHandle": "fwaYvHFYGDAj-target-left" + }, + { + "source": "uX2IzK9fx9zo", + "target": "bFtnxuUrDbuI", + "sourceHandle": "uX2IzK9fx9zo-source-right", + "targetHandle": "bFtnxuUrDbuI-target-left" + }, + { + "source": "fvvP1xj1OJkZ", + "target": "bbQgpM0MUMtc", + "sourceHandle": "fvvP1xj1OJkZ-source-right", + "targetHandle": "bbQgpM0MUMtc-target-left" + }, + { + "source": "gArhI4puX6gn", + "target": "wEy3YTCK40uG", + "sourceHandle": "gArhI4puX6gn-source-right", + "targetHandle": "wEy3YTCK40uG-target-left" + }, + { + "source": "pvArMm3FFJeb", + "target": "hSzvdCjjB71d", + "sourceHandle": "pvArMm3FFJeb-source-ELSE IF 3", + "targetHandle": "hSzvdCjjB71d-target-left" + }, + { + "source": "hSzvdCjjB71d", + "target": "jHeeLikXfH1z", + "sourceHandle": "hSzvdCjjB71d-source-right", + "targetHandle": "jHeeLikXfH1z-target-left" + }, + { + "source": "ckg0TgZFKv2F", + "target": "yvvFH7iyMHCO", + "sourceHandle": "ckg0TgZFKv2F-source-right", + "targetHandle": "yvvFH7iyMHCO-target-left" + }, + { + "source": "fwaYvHFYGDAj", + "target": "oZO5DXI7cgIN", + "sourceHandle": "fwaYvHFYGDAj-source-right", + "targetHandle": "oZO5DXI7cgIN-target-left" + }, + { + "source": "oZO5DXI7cgIN", + "target": "pvArMm3FFJeb", + "sourceHandle": "oZO5DXI7cgIN-source-right", + "targetHandle": "pvArMm3FFJeb-target-left" + }, + { + "source": "jHeeLikXfH1z", + "target": "i9dNcDDqlC3g", + "sourceHandle": "jHeeLikXfH1z-source-right", + "targetHandle": "i9dNcDDqlC3g-target-left" + }, + { + "source": "i9dNcDDqlC3g", + "target": "tyezGSJtysAP", + "sourceHandle": "i9dNcDDqlC3g-source-right", + "targetHandle": "tyezGSJtysAP-target-left" + }, + { + "source": "tyezGSJtysAP", + "target": "ckg0TgZFKv2F", + "sourceHandle": "tyezGSJtysAP-source-IF", + "targetHandle": "ckg0TgZFKv2F-target-left" + }, + { + "source": "tyezGSJtysAP", + "target": "gEcYC2j2qL17", + "sourceHandle": "tyezGSJtysAP-source-ELSE", + "targetHandle": "gEcYC2j2qL17-target-left" + }, + { + "source": "gEcYC2j2qL17", + "target": "fzHdRxIy04GC", + "sourceHandle": "gEcYC2j2qL17-source-right", + "targetHandle": "fzHdRxIy04GC-target-left" + }, + { + "source": "hFlE9YB8LdGB", + "target": "qKHI3maEL4SU", + "sourceHandle": "hFlE9YB8LdGB-source-ELSE IF 1", + "targetHandle": "qKHI3maEL4SU-target-left" + }, + { + "source": "nZUm7LuJxr5a", + "target": "scqb8erNCXkK", + "sourceHandle": "nZUm7LuJxr5a-source-IF", + "targetHandle": "scqb8erNCXkK-target-left" + }, + { + "source": "scqb8erNCXkK", + "target": "pK8mcwqBcxqE", + "sourceHandle": "scqb8erNCXkK-source-right", + "targetHandle": "pK8mcwqBcxqE-target-left" + }, + { + "source": "hFlE9YB8LdGB", + "target": "ntkSX8ViE4ZK", + "sourceHandle": "hFlE9YB8LdGB-source-ELSE IF 2", + "targetHandle": "ntkSX8ViE4ZK-target-left" + }, + { + "source": "yQOFHC40g1uw", + "target": "j2LPKAgbCCho", + "sourceHandle": "yQOFHC40g1uw-source-right", + "targetHandle": "j2LPKAgbCCho-target-left" + }, + { + "source": "hFlE9YB8LdGB", + "target": "gfBHnQ0ks5iK", + "sourceHandle": "hFlE9YB8LdGB-source-ELSE IF 5", + "targetHandle": "gfBHnQ0ks5iK-target-left" + }, + { + "source": "hFlE9YB8LdGB", + "target": "gfBHnQ0ks5iK", + "sourceHandle": "hFlE9YB8LdGB-source-ELSE IF 6", + "targetHandle": "gfBHnQ0ks5iK-target-left" + }, + { + "source": "gfBHnQ0ks5iK", + "target": "xYFIPF36BjOm", + "sourceHandle": "gfBHnQ0ks5iK-source-right", + "targetHandle": "xYFIPF36BjOm-target-left" + }, + { + "source": "ntkSX8ViE4ZK", + "target": "syzmFUt5tjQc", + "sourceHandle": "ntkSX8ViE4ZK-source-right", + "targetHandle": "syzmFUt5tjQc-target-left" + }, + { + "source": "syzmFUt5tjQc", + "target": "bKmudspMNnxL", + "sourceHandle": "syzmFUt5tjQc-source-right", + "targetHandle": "bKmudspMNnxL-target-left" + }, + { + "source": "bKmudspMNnxL", + "target": "yQOFHC40g1uw", + "sourceHandle": "bKmudspMNnxL-source-IF", + "targetHandle": "yQOFHC40g1uw-target-left" + }, + { + "source": "bKmudspMNnxL", + "target": "xBsEsifWxOhc", + "sourceHandle": "bKmudspMNnxL-source-ELSE", + "targetHandle": "xBsEsifWxOhc-target-left" + }, + { + "source": "qKHI3maEL4SU", + "target": "wFnInUpCQeJV", + "sourceHandle": "qKHI3maEL4SU-source-right", + "targetHandle": "wFnInUpCQeJV-target-left" + }, + { + "source": "wFnInUpCQeJV", + "target": "nZUm7LuJxr5a", + "sourceHandle": "wFnInUpCQeJV-source-right", + "targetHandle": "nZUm7LuJxr5a-target-left" + }, + { + "source": "nZUm7LuJxr5a", + "target": "gECEtWA1FJ7B", + "sourceHandle": "nZUm7LuJxr5a-source-ELSE", + "targetHandle": "gECEtWA1FJ7B-target-left" + }, + { + "source": "hFlE9YB8LdGB", + "target": "xsJJTkTsEAMW", + "sourceHandle": "hFlE9YB8LdGB-source-ELSE IF 3", + "targetHandle": "xsJJTkTsEAMW-target-left" + }, + { + "source": "xsJJTkTsEAMW", + "target": "sABVeuACxyOt", + "sourceHandle": "xsJJTkTsEAMW-source-ELSE", + "targetHandle": "sABVeuACxyOt-target-left" + }, + { + "source": "sABVeuACxyOt", + "target": "fCdRtFDIczmJ", + "sourceHandle": "sABVeuACxyOt-source-right", + "targetHandle": "fCdRtFDIczmJ-target-left" + }, + { + "source": "hFlE9YB8LdGB", + "target": "sswEbGwdJu7H", + "sourceHandle": "hFlE9YB8LdGB-source-ELSE IF 4", + "targetHandle": "sswEbGwdJu7H-target-left" + }, + { + "source": "sswEbGwdJu7H", + "target": "eSETDMThKva0", + "sourceHandle": "sswEbGwdJu7H-source-ELSE", + "targetHandle": "eSETDMThKva0-target-left" + }, + { + "source": "eSETDMThKva0", + "target": "otFgcPblkQ2i", + "sourceHandle": "eSETDMThKva0-source-right", + "targetHandle": "otFgcPblkQ2i-target-left" + } + ], + "chatConfig": { + "welcomeText": "您好,这里是无锡交警,我将为您远程处理交通事故。请将人员撤离至路侧安全区域,开启危险报警双闪灯、放置三角警告牌、做好安全防护,谨防二次事故伤害。若您已经准备好了,请点击继续办理,如需人工服务,请说转人工。", + "variables": [ + { + "id": "r9bb16", + "key": "state", + "label": "state", + "type": "custom", + "description": "", + "required": false, + "valueType": "object", + "list": [ + { + "value": "", + "label": "" + } + ], + "defaultValue": "{\"is_first_message\": false, \"user_is_ready\": false, \"accident_info_complete\": false,\n\"driver_info_check\": false,\n\"drivers_info_check\": false,\n\"driver_info_complete\": false,\n\"drivers_info_complete\": false,\n\"hpzl1\": \"小型蓝色车辆\",\n\"hphm1\": \"沪C1121\",\n\"driver1Phonenumber\": \"12918881212\",\n\"driver1ID\": \"310111198812223323\",\n\"user_no_response\": 0}", + "enums": [ + { + "value": "", + "label": "" + } + ], + "icon": "core/workflow/inputType/customVariable" + }, + { + "id": "2066r4", + "key": "status_code", + "label": "status_code", + "type": "custom", + "description": "", + "required": false, + "valueType": "string", + "list": [ + { + "value": "", + "label": "" + } + ], + "defaultValue": "1001", + "enums": [ + { + "value": "", + "label": "" + } + ] + } + ], + "scheduledTriggerConfig": { + "cronString": "", + "timezone": "Asia/Shanghai", + "defaultPrompt": "" + }, + "_id": "67d74f9ce45d4c228e914253" + } +} \ No newline at end of file diff --git a/workflow/单车拍照流程插件.json b/workflow/单车拍照流程插件.json new file mode 100644 index 0000000..162eb3b --- /dev/null +++ b/workflow/单车拍照流程插件.json @@ -0,0 +1,3697 @@ +{ + "nodes": [ + { + "nodeId": "pluginInput", + "name": "workflow:template.plugin_start", + "intro": "workflow:intro_plugin_input", + "avatar": "core/workflow/template/workflowStart", + "flowNodeType": "pluginInput", + "showStatus": false, + "position": { + "x": 616.4226348688949, + "y": -165.05298493910115 + }, + "version": "481", + "inputs": [ + { + "renderTypeList": [ + "customVariable" + ], + "selectedTypeIndex": 0, + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + }, + { + "renderTypeList": [ + "customVariable" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": true, + "key": "status_code", + "label": "status_code", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + }, + { + "renderTypeList": [ + "customVariable" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": true, + "key": "user_question", + "label": "user_question", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + } + ], + "outputs": [ + { + "id": "state", + "valueType": "object", + "key": "state", + "label": "state", + "type": "hidden" + }, + { + "id": "status_code", + "valueType": "string", + "key": "status_code", + "label": "status_code", + "type": "hidden" + }, + { + "id": "user_question", + "valueType": "string", + "key": "user_question", + "label": "user_question", + "type": "hidden" + } + ] + }, + { + "nodeId": "pluginOutput", + "name": "common:core.module.template.self_output", + "intro": "workflow:intro_custom_plugin_output", + "avatar": "core/workflow/template/pluginOutput", + "flowNodeType": "pluginOutput", + "showStatus": false, + "position": { + "x": 9115.438160764748, + "y": 1787.5360223407083 + }, + "version": "481", + "inputs": [ + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "isToolOutput": true, + "description": "", + "required": true, + "value": [ + "pluginInput", + "state" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "status_code", + "label": "status_code", + "isToolOutput": true, + "description": "", + "required": true, + "value": [ + "pluginInput", + "status_code" + ] + } + ], + "outputs": [] + }, + { + "nodeId": "pluginConfig", + "name": "common:core.module.template.system_config", + "intro": "", + "avatar": "core/workflow/template/systemConfig", + "flowNodeType": "pluginConfig", + "position": { + "x": 129.71865108872498, + "y": -165.05298493910115 + }, + "version": "4811", + "inputs": [], + "outputs": [] + }, + { + "nodeId": "zxQfmimk125O", + "name": "Condition", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 1267.1851065591718, + "y": -413.40181371528934 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2000" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2001" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2002" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2003" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2004" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2005" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "hdv5GoosMBHa", + "name": "Assigned Reply", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3949.191590738169, + "y": -1929.0542992364997 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准车辆前方看清车牌,拍摄车前方照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tvAhmyGZGJFK", + "name": "Assigned Reply#2", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3080.7638516461034, + "y": -1496.533033695888 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准车辆碰撞部位拍摄照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "uQOYrbV0gEUc", + "name": "Condition#2", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2177.2078129294746, + "y": -1701.9735572957231 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "x5fLdT0iZHwS", + "name": "workflow:question_classification", + "intro": "workflow:intro_question_classification", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3080.7638516461034, + "y": -2380.936588322326 + }, + "version": "4.9.2", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "common:core.module.input.label.aiModel", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "debugLabel": "", + "toolDescription": "" + }, + { + "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": "你是一个电话客服助手,根据对话记录判断客户意图。", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "common:core.module.input.label.chat history", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "workflow:user_question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "debugLabel": "" + }, + { + "key": "agents", + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ], + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "wV4XkmDRw3wv", + "name": "Assigned Reply#3", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3949.191590738169, + "y": -2295.8010296208304 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "vLZps4mdth6X", + "name": "Variable Update", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4769.622608677713, + "y": -2322.3010296208304 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "eLKTeiHZSJX5", + "name": "Variable Update#2", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4086.8404389816033, + "y": -1592.1724152147096 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "lbm1znwOWznd", + "name": "Condition#3", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2188.4042237593226, + "y": -632.2190075962699 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "os9xJR84X6rS", + "name": "Assigned Reply#4", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3090.3409007861924, + "y": -321.0349358234895 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准被撞物品拍摄照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "mHIsV4YQ2N4d", + "name": "Variable Update#3", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4115.133459347004, + "y": -374.0349358234895 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2002" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "dxzYyvYArES3", + "name": "workflow:question_classification", + "intro": "workflow:intro_question_classification", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3080.7638516461034, + "y": -1188.9736949174871 + }, + "version": "4.9.2", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "common:core.module.input.label.aiModel", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "debugLabel": "", + "toolDescription": "" + }, + { + "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": "你是一个电话客服助手,根据对话记录判断客户意图。", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "common:core.module.input.label.chat history", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "workflow:user_question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "debugLabel": "" + }, + { + "key": "agents", + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ], + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "priypoGuIQkz", + "name": "Assigned Reply#5", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4025.6334593470037, + "y": -1177.6348349124573 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "j7XarWgQ6mOZ", + "name": "Assigned Reply#6", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4056.626082300995, + "y": -771.2402612358323 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准车辆碰撞部位拍摄照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ysQYvXdh8RAu", + "name": "Variable Update#4", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4859.511741814405, + "y": -1213.533033695888 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "kzUQVND3RsVp", + "name": "Condition#4", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2196.749344223759, + "y": 417.17374834770607 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "qHmueoo9BMEJ", + "name": "workflow:question_classification", + "intro": "workflow:intro_question_classification", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3090.3409007861924, + "y": -0.6161502188676309 + }, + "version": "4.9.2", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "common:core.module.input.label.aiModel", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "debugLabel": "", + "toolDescription": "" + }, + { + "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": "你是一个电话客服助手,根据对话记录判断客户意图。", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "common:core.module.input.label.chat history", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "workflow:user_question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "debugLabel": "" + }, + { + "key": "agents", + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ], + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "coCCLqSMU3FE", + "name": "Assigned Reply#7", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3080.7638516461034, + "y": 982.0408110540607 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请切换摄像头对准本人拍摄一张正面照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ls6BNUSlIPYd", + "name": "Variable Update#5", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 3989.6652438297915, + "y": 955.5408110540607 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2003" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ignvQlRRpZrF", + "name": "Assigned Reply#8", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4043.2609328061408, + "y": 14.96506417651051 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tLFNll01UmDa", + "name": "Variable Update#6", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4933.027570181225, + "y": -38.03493582348949 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "vbf763lG0E5O", + "name": "Assigned Reply#9", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4043.2609328061408, + "y": 487.0047580129981 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准被撞物品拍摄照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "pYsC5xki4QxU", + "name": "Condition#5", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2188.4042237593226, + "y": 1627.6459543256753 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "aWRVpPDfbZSo", + "name": "Assigned Reply#10", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3864.975450279539, + "y": 2403.858351767778 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请确认您驾驶的车辆是否为{{$wubZesJkoAPT.qLUQfhG0ILRX$}} {{$wubZesJkoAPT.gR0mkQpJ4Og8$}}?", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "gUW65TgWLRD2", + "name": "workflow:question_classification", + "intro": "workflow:intro_question_classification", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3080.7638516461034, + "y": 1346.8766264571177 + }, + "version": "4.9.2", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "common:core.module.input.label.aiModel", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "debugLabel": "", + "toolDescription": "" + }, + { + "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": "你是一个电话客服助手,根据对话记录判断客户意图。", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "common:core.module.input.label.chat history", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "workflow:user_question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "debugLabel": "" + }, + { + "key": "agents", + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ], + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "gcFqKEmmBxsq", + "name": "Assigned Reply#11", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3974.385560232946, + "y": 1414.4633627105443 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tav57O4HFffB", + "name": "Variable Update#7", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4841.105737101757, + "y": 1387.9633627105443 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "l5KvlvRX2mhT", + "name": "Assigned Reply#12", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3954.366056749379, + "y": 1893.6280648760387 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请切换摄像头对准本人拍摄一张正面照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "sWFhlCtJQzcb", + "name": "Variable Update#8", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4790.615959264525, + "y": 2377.358351767778 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2004" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "wubZesJkoAPT", + "name": "Code Sandbox", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 3174.7421644452947, + "y": 2246.330042025579 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1}){\n \n return {\n hpzl1: data1['hpzl1'],\n hphm1: data1['hphm1'],\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "hpzl1", + "valueType": "string", + "label": "hpzl1", + "valueDesc": "", + "description": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "hphm1", + "valueType": "string", + "label": "hphm1", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "gUh0oVVuslSB", + "name": "workflow:text_content_extraction", + "intro": "workflow:intro_text_content_extraction", + "avatar": "core/workflow/template/extractJson", + "flowNodeType": "contentExtract", + "showStatus": true, + "position": { + "x": 3056.2421644452947, + "y": 3358.4274533864027 + }, + "version": "4.9.2", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "common:core.module.input.label.aiModel", + "required": true, + "valueType": "string", + "llmModelType": "extractFields", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "description", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "string", + "label": "workflow:extraction_requirements_description", + "description": "workflow:extraction_requirements_description_detail", + "placeholder": "workflow:extraction_requirements_placeholder", + "value": "你是一个电话客服助手,根据对话记录判断:用户是否确认驾驶的车辆为{{$drW8jjcnmMtj.qLUQfhG0ILRX$}} {{$drW8jjcnmMtj.gR0mkQpJ4Og8$}}?", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "common:core.module.input.label.chat history", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "content", + "renderTypeList": [ + "reference", + "textarea" + ], + "label": "workflow:text_to_extract", + "required": true, + "valueType": "string", + "toolDescription": "Content to Retrieve", + "value": [ + "pluginInput", + "user_question" + ], + "debugLabel": "" + }, + { + "key": "extractKeys", + "renderTypeList": [ + "custom" + ], + "label": "", + "valueType": "any", + "description": "workflow:target_fields_description", + "debugLabel": "", + "toolDescription": "", + "value": [ + { + "valueType": "string", + "required": true, + "defaultValue": "", + "desc": "用户是否确认车辆正确", + "key": "carIsCorrect", + "enum": "是\n否\n不确定" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "用户希望转接人工处理", + "key": "transfer_to_human", + "enum": "" + } + ] + } + ], + "outputs": [ + { + "id": "success", + "key": "success", + "label": "workflow:full_field_extraction", + "required": true, + "description": "Returns true when all fields are fully extracted (success includes model extraction or using default values)", + "valueType": "boolean", + "type": "static" + }, + { + "id": "fields", + "key": "fields", + "label": "workflow:complete_extraction_result", + "required": true, + "description": "A JSON string, e.g., {\"name\":\"YY\",\"Time\":\"2023/7/2 18:00\"}", + "valueType": "string", + "type": "static" + }, + { + "id": "cqBAXxYHREqCd3ka", + "key": "carIsCorrect", + "label": "Extraction Results-carIsCorrect", + "valueType": "string", + "type": "static" + }, + { + "id": "jhyGI3uad4QgKmD3", + "key": "transfer_to_human", + "label": "Extraction Results-transfer_to_human", + "valueType": "boolean", + "type": "static" + } + ] + }, + { + "nodeId": "drW8jjcnmMtj", + "name": "Code Sandbox#2", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 2338.640999201667, + "y": 3432.9274533864027 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1}){\n \n return {\n hpzl1: data1['hpzl1'],\n hphm1: data1['hphm1'],\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "hpzl1", + "valueType": "string", + "label": "hpzl1", + "valueDesc": "", + "description": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "hphm1", + "valueType": "string", + "label": "hphm1", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "it5Z7TucaPnb", + "name": "Condition#6", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 3954.366056749379, + "y": 3418.146882772296 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "jhyGI3uad4QgKmD3" + ], + "condition": "equalTo", + "value": "true" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "cqBAXxYHREqCd3ka" + ], + "condition": "equalTo", + "value": "是" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "cqBAXxYHREqCd3ka" + ], + "condition": "equalTo", + "value": "否" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "cqBAXxYHREqCd3ka" + ], + "condition": "equalTo", + "value": "不确定" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "shrDoG2MH0h5", + "name": "Assigned Reply#13", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5152.657468117011, + "y": 3108.646882772296 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "hKHdh5iDkLxA", + "name": "Variable Update#9", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 6112.138524688303, + "y": 3082.146882772296 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "iBXnYng2HdjO", + "name": "Assigned Reply#14", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5141.134212501918, + "y": 3561.225398678613 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请确认车损位置是在车辆前方、后方还是侧面?", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "hZ1chmKTCxph", + "name": "Variable Update#10", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 6126.8149010965435, + "y": 3545.031043765638 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2005" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "mvdaWgBHPGU6", + "name": "Assigned Reply#15", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5141.134212501918, + "y": 3942.1423897388054 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "由于未能确认车牌,正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "jmE3QjFV30dI", + "name": "Assigned Reply#16", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5141.134212501918, + "y": 4357.8090114094375 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "未能理解您的意思。请确认您驾驶的车辆是否为{{$drW8jjcnmMtj.qLUQfhG0ILRX$}} {{$drW8jjcnmMtj.gR0mkQpJ4Og8$}}", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tmZXiMjmSxJC", + "name": "workflow:text_content_extraction", + "intro": "workflow:intro_text_content_extraction", + "avatar": "core/workflow/template/extractJson", + "flowNodeType": "contentExtract", + "showStatus": true, + "position": { + "x": 2314.979626635852, + "y": 4766.600748208963 + }, + "version": "4.9.2", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "common:core.module.input.label.aiModel", + "required": true, + "valueType": "string", + "llmModelType": "extractFields", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "description", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "string", + "label": "workflow:extraction_requirements_description", + "description": "workflow:extraction_requirements_description_detail", + "placeholder": "workflow:extraction_requirements_placeholder", + "value": "你是一个电话客服助手,根据对话记录判断:用户确认车损位置是在车辆前方、后方还是侧面?", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "common:core.module.input.label.chat history", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "content", + "renderTypeList": [ + "reference", + "textarea" + ], + "label": "workflow:text_to_extract", + "required": true, + "valueType": "string", + "toolDescription": "Content to Retrieve", + "value": [ + "pluginInput", + "user_question" + ], + "debugLabel": "" + }, + { + "key": "extractKeys", + "renderTypeList": [ + "custom" + ], + "label": "", + "valueType": "any", + "description": "workflow:target_fields_description", + "debugLabel": "", + "toolDescription": "", + "value": [ + { + "valueType": "string", + "required": true, + "defaultValue": "", + "desc": "车损位置", + "key": "carAccidentPos", + "enum": "前方\n后方\n侧面\n不确定" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "", + "desc": "用户希望转接人工处理", + "key": "transfer_to_human", + "enum": "" + } + ] + } + ], + "outputs": [ + { + "id": "success", + "key": "success", + "label": "workflow:full_field_extraction", + "required": true, + "description": "Returns true when all fields are fully extracted (success includes model extraction or using default values)", + "valueType": "boolean", + "type": "static" + }, + { + "id": "fields", + "key": "fields", + "label": "workflow:complete_extraction_result", + "required": true, + "description": "A JSON string, e.g., {\"name\":\"YY\",\"Time\":\"2023/7/2 18:00\"}", + "valueType": "string", + "type": "static" + }, + { + "id": "lUgUWEAe9y3ckCaf", + "key": "carAccidentPos", + "label": "Extraction Results-carAccidentPos", + "valueType": "string", + "type": "static" + }, + { + "id": "m5zV6AP9sv25okZD", + "key": "transfer_to_human", + "label": "Extraction Results-transfer_to_human", + "valueType": "boolean", + "type": "static" + } + ] + }, + { + "nodeId": "cff54fX8Iipd", + "name": "Condition#7", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 3500.8947117712364, + "y": 4969.960545336155 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "tmZXiMjmSxJC", + "m5zV6AP9sv25okZD" + ], + "condition": "equalTo", + "value": "true" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "tmZXiMjmSxJC", + "lUgUWEAe9y3ckCaf" + ], + "condition": "equalTo", + "value": "不确定" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "u9IEDBUpiinl", + "name": "Assigned Reply#17", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5052.469418416178, + "y": 4732.1600663689715 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "no00SBaVMwmr", + "name": "Variable Update#11", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 6099.938205376848, + "y": 4705.6600663689715 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "wU2XuUcHUfk2", + "name": "Assigned Reply#18", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5052.469418416178, + "y": 5100.460545336155 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "未能理解您的意思。请确认车损位置是在车辆前方、后方还是侧面?", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "de8ODYhEAR1V", + "name": "Assigned Reply#19", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5860.6211058130175, + "y": 5574.836628177508 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "下面进行身份确认。请确认您是车辆{{$boWtch8zzazA.gR0mkQpJ4Og8$}}的车主吗?", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "zSN3Uj8vDHAU", + "name": "Variable Update#12", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 6939.518987256945, + "y": 5548.336628177508 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "1002" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "boWtch8zzazA", + "name": "Code Sandbox#3", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 5116.406246553818, + "y": 5504.543153250239 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1}){\n \n return {\n hpzl1: data1['hpzl1'],\n hphm1: data1['hphm1'],\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "hpzl1", + "valueType": "string", + "label": "hpzl1", + "valueDesc": "", + "description": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "hphm1", + "valueType": "string", + "label": "hphm1", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "yv8fIT65iUT4", + "name": "Code Sandbox#4", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 7635.790143881404, + "y": 5256.836628177508 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1,}){\n data1.driver_info_complete=true;\n return {\n result: data1, \n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "valueType": "string" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "result", + "valueType": "object", + "label": "result", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "jEx3Sbr7rJpd", + "name": "Variable Update#13", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 8209.105449633926, + "y": 5511.9167188062465 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "state" + ], + "value": [ + "yv8fIT65iUT4", + "qLUQfhG0ILRX" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + } + ], + "edges": [ + { + "source": "zxQfmimk125O", + "target": "uQOYrbV0gEUc", + "sourceHandle": "zxQfmimk125O-source-IF", + "targetHandle": "uQOYrbV0gEUc-target-left" + }, + { + "source": "uQOYrbV0gEUc", + "target": "tvAhmyGZGJFK", + "sourceHandle": "uQOYrbV0gEUc-source-IF", + "targetHandle": "tvAhmyGZGJFK-target-left" + }, + { + "source": "uQOYrbV0gEUc", + "target": "x5fLdT0iZHwS", + "sourceHandle": "uQOYrbV0gEUc-source-ELSE", + "targetHandle": "x5fLdT0iZHwS-target-left" + }, + { + "source": "x5fLdT0iZHwS", + "target": "wV4XkmDRw3wv", + "sourceHandle": "x5fLdT0iZHwS-source-wqre", + "targetHandle": "wV4XkmDRw3wv-target-left" + }, + { + "source": "x5fLdT0iZHwS", + "target": "hdv5GoosMBHa", + "sourceHandle": "x5fLdT0iZHwS-source-sdfa", + "targetHandle": "hdv5GoosMBHa-target-left" + }, + { + "source": "wV4XkmDRw3wv", + "target": "vLZps4mdth6X", + "sourceHandle": "wV4XkmDRw3wv-source-right", + "targetHandle": "vLZps4mdth6X-target-left" + }, + { + "source": "tvAhmyGZGJFK", + "target": "eLKTeiHZSJX5", + "sourceHandle": "tvAhmyGZGJFK-source-right", + "targetHandle": "eLKTeiHZSJX5-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "lbm1znwOWznd", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 1", + "targetHandle": "lbm1znwOWznd-target-left" + }, + { + "source": "lbm1znwOWznd", + "target": "os9xJR84X6rS", + "sourceHandle": "lbm1znwOWznd-source-IF", + "targetHandle": "os9xJR84X6rS-target-left" + }, + { + "source": "os9xJR84X6rS", + "target": "mHIsV4YQ2N4d", + "sourceHandle": "os9xJR84X6rS-source-right", + "targetHandle": "mHIsV4YQ2N4d-target-left" + }, + { + "source": "lbm1znwOWznd", + "target": "dxzYyvYArES3", + "sourceHandle": "lbm1znwOWznd-source-ELSE", + "targetHandle": "dxzYyvYArES3-target-left" + }, + { + "source": "dxzYyvYArES3", + "target": "priypoGuIQkz", + "sourceHandle": "dxzYyvYArES3-source-wqre", + "targetHandle": "priypoGuIQkz-target-left" + }, + { + "source": "dxzYyvYArES3", + "target": "j7XarWgQ6mOZ", + "sourceHandle": "dxzYyvYArES3-source-sdfa", + "targetHandle": "j7XarWgQ6mOZ-target-left" + }, + { + "source": "priypoGuIQkz", + "target": "ysQYvXdh8RAu", + "sourceHandle": "priypoGuIQkz-source-right", + "targetHandle": "ysQYvXdh8RAu-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "kzUQVND3RsVp", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 2", + "targetHandle": "kzUQVND3RsVp-target-left" + }, + { + "source": "kzUQVND3RsVp", + "target": "coCCLqSMU3FE", + "sourceHandle": "kzUQVND3RsVp-source-IF", + "targetHandle": "coCCLqSMU3FE-target-left" + }, + { + "source": "kzUQVND3RsVp", + "target": "qHmueoo9BMEJ", + "sourceHandle": "kzUQVND3RsVp-source-ELSE", + "targetHandle": "qHmueoo9BMEJ-target-left" + }, + { + "source": "qHmueoo9BMEJ", + "target": "ignvQlRRpZrF", + "sourceHandle": "qHmueoo9BMEJ-source-wqre", + "targetHandle": "ignvQlRRpZrF-target-left" + }, + { + "source": "ignvQlRRpZrF", + "target": "tLFNll01UmDa", + "sourceHandle": "ignvQlRRpZrF-source-right", + "targetHandle": "tLFNll01UmDa-target-left" + }, + { + "source": "qHmueoo9BMEJ", + "target": "vbf763lG0E5O", + "sourceHandle": "qHmueoo9BMEJ-source-sdfa", + "targetHandle": "vbf763lG0E5O-target-left" + }, + { + "source": "coCCLqSMU3FE", + "target": "ls6BNUSlIPYd", + "sourceHandle": "coCCLqSMU3FE-source-right", + "targetHandle": "ls6BNUSlIPYd-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "pYsC5xki4QxU", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 3", + "targetHandle": "pYsC5xki4QxU-target-left" + }, + { + "source": "pYsC5xki4QxU", + "target": "gUW65TgWLRD2", + "sourceHandle": "pYsC5xki4QxU-source-ELSE", + "targetHandle": "gUW65TgWLRD2-target-left" + }, + { + "source": "gUW65TgWLRD2", + "target": "gcFqKEmmBxsq", + "sourceHandle": "gUW65TgWLRD2-source-wqre", + "targetHandle": "gcFqKEmmBxsq-target-left" + }, + { + "source": "gcFqKEmmBxsq", + "target": "tav57O4HFffB", + "sourceHandle": "gcFqKEmmBxsq-source-right", + "targetHandle": "tav57O4HFffB-target-left" + }, + { + "source": "gUW65TgWLRD2", + "target": "l5KvlvRX2mhT", + "sourceHandle": "gUW65TgWLRD2-source-sdfa", + "targetHandle": "l5KvlvRX2mhT-target-left" + }, + { + "source": "aWRVpPDfbZSo", + "target": "sWFhlCtJQzcb", + "sourceHandle": "aWRVpPDfbZSo-source-right", + "targetHandle": "sWFhlCtJQzcb-target-left" + }, + { + "source": "pYsC5xki4QxU", + "target": "wubZesJkoAPT", + "sourceHandle": "pYsC5xki4QxU-source-IF", + "targetHandle": "wubZesJkoAPT-target-left" + }, + { + "source": "wubZesJkoAPT", + "target": "aWRVpPDfbZSo", + "sourceHandle": "wubZesJkoAPT-source-right", + "targetHandle": "aWRVpPDfbZSo-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "drW8jjcnmMtj", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 4", + "targetHandle": "drW8jjcnmMtj-target-left" + }, + { + "source": "drW8jjcnmMtj", + "target": "gUh0oVVuslSB", + "sourceHandle": "drW8jjcnmMtj-source-right", + "targetHandle": "gUh0oVVuslSB-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "shrDoG2MH0h5", + "sourceHandle": "it5Z7TucaPnb-source-IF", + "targetHandle": "shrDoG2MH0h5-target-left" + }, + { + "source": "shrDoG2MH0h5", + "target": "hKHdh5iDkLxA", + "sourceHandle": "shrDoG2MH0h5-source-right", + "targetHandle": "hKHdh5iDkLxA-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "iBXnYng2HdjO", + "sourceHandle": "it5Z7TucaPnb-source-ELSE IF 1", + "targetHandle": "iBXnYng2HdjO-target-left" + }, + { + "source": "iBXnYng2HdjO", + "target": "hZ1chmKTCxph", + "sourceHandle": "iBXnYng2HdjO-source-right", + "targetHandle": "hZ1chmKTCxph-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "mvdaWgBHPGU6", + "sourceHandle": "it5Z7TucaPnb-source-ELSE IF 2", + "targetHandle": "mvdaWgBHPGU6-target-left" + }, + { + "source": "mvdaWgBHPGU6", + "target": "hKHdh5iDkLxA", + "sourceHandle": "mvdaWgBHPGU6-source-right", + "targetHandle": "hKHdh5iDkLxA-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "jmE3QjFV30dI", + "sourceHandle": "it5Z7TucaPnb-source-ELSE IF 3", + "targetHandle": "jmE3QjFV30dI-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "tmZXiMjmSxJC", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 5", + "targetHandle": "tmZXiMjmSxJC-target-left" + }, + { + "source": "tmZXiMjmSxJC", + "target": "cff54fX8Iipd", + "sourceHandle": "tmZXiMjmSxJC-source-right", + "targetHandle": "cff54fX8Iipd-target-left" + }, + { + "source": "cff54fX8Iipd", + "target": "u9IEDBUpiinl", + "sourceHandle": "cff54fX8Iipd-source-IF", + "targetHandle": "u9IEDBUpiinl-target-left" + }, + { + "source": "u9IEDBUpiinl", + "target": "no00SBaVMwmr", + "sourceHandle": "u9IEDBUpiinl-source-right", + "targetHandle": "no00SBaVMwmr-target-left" + }, + { + "source": "cff54fX8Iipd", + "target": "wU2XuUcHUfk2", + "sourceHandle": "cff54fX8Iipd-source-ELSE IF 1", + "targetHandle": "wU2XuUcHUfk2-target-left" + }, + { + "source": "de8ODYhEAR1V", + "target": "zSN3Uj8vDHAU", + "sourceHandle": "de8ODYhEAR1V-source-right", + "targetHandle": "zSN3Uj8vDHAU-target-left" + }, + { + "source": "cff54fX8Iipd", + "target": "boWtch8zzazA", + "sourceHandle": "cff54fX8Iipd-source-ELSE", + "targetHandle": "boWtch8zzazA-target-left" + }, + { + "source": "boWtch8zzazA", + "target": "de8ODYhEAR1V", + "sourceHandle": "boWtch8zzazA-source-right", + "targetHandle": "de8ODYhEAR1V-target-left" + }, + { + "source": "zSN3Uj8vDHAU", + "target": "yv8fIT65iUT4", + "sourceHandle": "zSN3Uj8vDHAU-source-right", + "targetHandle": "yv8fIT65iUT4-target-left" + }, + { + "source": "pluginInput", + "target": "zxQfmimk125O", + "sourceHandle": "pluginInput-source-right", + "targetHandle": "zxQfmimk125O-target-left" + }, + { + "source": "vLZps4mdth6X", + "target": "pluginOutput", + "sourceHandle": "vLZps4mdth6X-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "hdv5GoosMBHa", + "target": "pluginOutput", + "sourceHandle": "hdv5GoosMBHa-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "eLKTeiHZSJX5", + "target": "pluginOutput", + "sourceHandle": "eLKTeiHZSJX5-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "ysQYvXdh8RAu", + "target": "pluginOutput", + "sourceHandle": "ysQYvXdh8RAu-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "j7XarWgQ6mOZ", + "target": "pluginOutput", + "sourceHandle": "j7XarWgQ6mOZ-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "mHIsV4YQ2N4d", + "target": "pluginOutput", + "sourceHandle": "mHIsV4YQ2N4d-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "tLFNll01UmDa", + "target": "pluginOutput", + "sourceHandle": "tLFNll01UmDa-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "vbf763lG0E5O", + "target": "pluginOutput", + "sourceHandle": "vbf763lG0E5O-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "ls6BNUSlIPYd", + "target": "pluginOutput", + "sourceHandle": "ls6BNUSlIPYd-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "tav57O4HFffB", + "target": "pluginOutput", + "sourceHandle": "tav57O4HFffB-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "l5KvlvRX2mhT", + "target": "pluginOutput", + "sourceHandle": "l5KvlvRX2mhT-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "sWFhlCtJQzcb", + "target": "pluginOutput", + "sourceHandle": "sWFhlCtJQzcb-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "hKHdh5iDkLxA", + "target": "pluginOutput", + "sourceHandle": "hKHdh5iDkLxA-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "hZ1chmKTCxph", + "target": "pluginOutput", + "sourceHandle": "hZ1chmKTCxph-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "jmE3QjFV30dI", + "target": "pluginOutput", + "sourceHandle": "jmE3QjFV30dI-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "no00SBaVMwmr", + "target": "pluginOutput", + "sourceHandle": "no00SBaVMwmr-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "wU2XuUcHUfk2", + "target": "pluginOutput", + "sourceHandle": "wU2XuUcHUfk2-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "yv8fIT65iUT4", + "target": "jEx3Sbr7rJpd", + "sourceHandle": "yv8fIT65iUT4-source-right", + "targetHandle": "jEx3Sbr7rJpd-target-left" + }, + { + "source": "jEx3Sbr7rJpd", + "target": "pluginOutput", + "sourceHandle": "jEx3Sbr7rJpd-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "jmE3QjFV30dI", + "sourceHandle": "it5Z7TucaPnb-source-ELSE", + "targetHandle": "jmE3QjFV30dI-target-left" + }, + { + "source": "gUh0oVVuslSB", + "target": "it5Z7TucaPnb", + "sourceHandle": "gUh0oVVuslSB-source-right", + "targetHandle": "it5Z7TucaPnb-target-left" + } + ], + "chatConfig": { + "welcomeText": "请对准车辆前方看清车牌,拍摄车前方照片。", + "variables": [ + { + "id": "zr57c2", + "key": "state", + "label": "state", + "type": "custom", + "description": "", + "required": false, + "valueType": "object", + "list": [ + { + "value": "", + "label": "" + } + ], + "defaultValue": "{\"hpzl1\": \"小型汽车蓝牌\", \"hphm1\": \"沪A1121\"}", + "enums": [ + { + "value": "", + "label": "" + } + ], + "icon": "core/workflow/inputType/customVariable" + }, + { + "id": "uypz7h", + "key": "status_code", + "label": "status_code", + "type": "custom", + "description": "", + "required": false, + "valueType": "string", + "list": [ + { + "value": "", + "label": "" + } + ], + "defaultValue": "2000", + "enums": [ + { + "value": "", + "label": "" + } + ], + "icon": "core/workflow/inputType/customVariable" + } + ], + "questionGuide": { + "open": false, + "model": "gpt-4o-mini", + "customPrompt": "" + }, + "ttsConfig": { + "type": "web" + }, + "whisperConfig": { + "open": false, + "autoSend": false, + "autoTTSResponse": false + }, + "scheduledTriggerConfig": { + "cronString": "", + "timezone": "Asia/Shanghai", + "defaultPrompt": "" + }, + "chatInputGuide": { + "open": false, + "textList": [], + "customUrl": "" + }, + "instruction": "", + "autoExecute": { + "open": false, + "defaultPrompt": "" + }, + "_id": "6805d651bacd8a3542ab26c1" + } +} \ No newline at end of file diff --git a/workflow/单车插件.json b/workflow/单车插件.json new file mode 100644 index 0000000..f552f10 --- /dev/null +++ b/workflow/单车插件.json @@ -0,0 +1,2687 @@ +{ + "nodes": [ + { + "nodeId": "pluginInput", + "name": "workflow:template.plugin_start", + "intro": "workflow:intro_plugin_input", + "avatar": "core/workflow/template/workflowStart", + "flowNodeType": "pluginInput", + "showStatus": false, + "position": { + "x": -2124.670503700416, + "y": 175.32594802882716 + }, + "version": "481", + "inputs": [ + { + "renderTypeList": [ + "reference" + ], + "selectedTypeIndex": 0, + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + }, + { + "renderTypeList": [ + "reference" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": true, + "key": "status_code", + "label": "status_code", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + }, + { + "renderTypeList": [ + "reference" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": true, + "key": "user_question", + "label": "user_question", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + } + ], + "outputs": [ + { + "id": "state", + "valueType": "object", + "key": "state", + "label": "state", + "type": "hidden" + }, + { + "id": "status_code", + "valueType": "string", + "key": "status_code", + "label": "status_code", + "type": "hidden" + }, + { + "id": "user_question", + "valueType": "string", + "key": "user_question", + "label": "user_question", + "type": "hidden" + } + ] + }, + { + "nodeId": "pluginOutput", + "name": "common:core.module.template.self_output", + "intro": "workflow:intro_custom_plugin_output", + "avatar": "core/workflow/template/pluginOutput", + "flowNodeType": "pluginOutput", + "showStatus": false, + "position": { + "x": 7309.289681358644, + "y": -414.86573708136 + }, + "version": "481", + "inputs": [ + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "isToolOutput": true, + "description": "", + "required": true, + "value": [ + "pluginInput", + "state" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "status_code", + "label": "status_code", + "isToolOutput": true, + "description": "", + "required": true, + "value": [ + "pluginInput", + "status_code" + ] + } + ], + "outputs": [] + }, + { + "nodeId": "pluginConfig", + "name": "common:core.module.template.system_config", + "intro": "", + "avatar": "core/workflow/template/systemConfig", + "flowNodeType": "pluginConfig", + "position": { + "x": -2508.670503700416, + "y": 210.82594802882716 + }, + "version": "4811", + "inputs": [], + "outputs": [] + }, + { + "nodeId": "uX2IzK9fx9zo", + "name": "Assigned Reply", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 2656.699488323434, + "y": -590.2850128054174 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "由于事故有人受伤,正在转接人工处理\n\n\n\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "fvvP1xj1OJkZ", + "name": "Assigned Reply#2", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 2681.421643953214, + "y": -225.02700466575172 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理\n\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "cijcer2ddJRN", + "name": "车牌号码更新", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 3386.278237991628, + "y": 605.5065799719679 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "state" + ], + "value": [ + "cvInl80Uutax", + "qLUQfhG0ILRX" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "y6u6eDqmYZB9", + "name": "Assigned Reply#4", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5980.857168663424, + "y": 1739.127703847232 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "信息收集完毕,感谢您的配合。\n\n", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "", + "selectedTypeIndex": 0 + } + ], + "outputs": [] + }, + { + "nodeId": "y9LWYUwf3FT0", + "name": "AI 对话#4", + "intro": "AI 大模型对话", + "avatar": "core/workflow/template/aiChat", + "flowNodeType": "chatNode", + "showStatus": true, + "position": { + "x": 6074.851968649288, + "y": 291.4832972085448 + }, + "version": "490", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "settingLLMModel", + "reference" + ], + "label": "AI 模型", + "valueType": "string", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "temperature", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "maxToken", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "isResponseAnswerText", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": true, + "valueType": "boolean", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatQuoteRole", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "value": "system", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quoteTemplate", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quotePrompt", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatVision", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "boolean", + "value": true, + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatReasoning", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "boolean", + "value": true, + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatTopP", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "number", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatStopSign", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatResponseFormat", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "aiChatJsonSchema", + "renderTypeList": [ + "hidden" + ], + "label": "", + "valueType": "string", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "提示词", + "description": "core.app.tip.systemPromptTip", + "placeholder": "core.app.tip.chatNodeSystemPromptTip", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "", + "value": "# 角色\n你是一个在电话收集交通事故信息的交警机器人\n\n# 语言风格\n简洁、适合语音实时交互,没有特殊符号,一次询问一个问题。\n\n# 任务\n当前时间是{{$hoLZBXefBnt7.time$}}。你需要通过电话询问依次向用户确认三个问题:\n\n驾驶员的车牌号是否是;\n驾驶员的身份证号码是否是{{$oaBjkvGmL0Cn.gR0mkQpJ4Og8$}};\n驾驶员的手机号码是否是{{$oaBjkvGmL0Cn.x7bibmiuQ99Y$}}\n\n对于不正确的信息进行更正,并再次向用户核对。" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "聊天记录", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 8, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "quoteQA", + "renderTypeList": [ + "settingDatasetQuotePrompt" + ], + "label": "", + "debugLabel": "Dataset Reference", + "description": "", + "valueType": "datasetQuote", + "valueDesc": "", + "toolDescription": "" + }, + { + "key": "fileUrlList", + "renderTypeList": [ + "reference", + "input" + ], + "label": "文件链接", + "debugLabel": "Files", + "valueType": "arrayString", + "value": [ + [ + "448745", + "userFiles" + ] + ], + "valueDesc": "", + "description": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "用户问题", + "toolDescription": "User Question", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + } + ], + "outputs": [ + { + "id": "history", + "key": "history", + "required": true, + "label": "common:core.module.output.label.New context", + "description": "Splice the current reply content with the history records and return it as the new context", + "valueType": "chatHistory", + "valueDesc": "{\n obj: System | Human | AI;\n value: string;\n}[]", + "type": "static" + }, + { + "id": "answerText", + "key": "answerText", + "required": true, + "label": "common:core.module.output.label.Ai response content", + "description": "Will be triggered after the stream reply is completed", + "valueType": "string", + "type": "static" + }, + { + "id": "reasoningText", + "key": "reasoningText", + "required": false, + "label": "workflow:reasoning_text", + "valueType": "string", + "type": "static", + "invalid": true, + "description": "" + } + ] + }, + { + "nodeId": "mU4ZpcL8aw8n", + "name": "单车驾驶人信息提取", + "intro": "可从文本中提取指定的数据,例如:sql语句、搜索关键词、代码等", + "avatar": "core/workflow/template/extractJson", + "flowNodeType": "contentExtract", + "showStatus": true, + "position": { + "x": -207.68689804830433, + "y": -340.35807390454573 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI 模型", + "required": true, + "valueType": "string", + "llmModelType": "extractFields", + "value": "Qwen2.5-14B-Instruct-GPTQ-Int4", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "description", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "string", + "label": "提取要求描述", + "description": "workflow:extraction_requirements_description_detail", + "placeholder": "workflow:extraction_requirements_placeholder", + "value": "你是一个交通事故信息采集专员,正在根据交警和用户的历史对话信息采集交通事故相关信息。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "聊天记录", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 8, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "content", + "renderTypeList": [ + "reference", + "textarea" + ], + "label": "需要提取的文本", + "required": true, + "valueType": "string", + "toolDescription": "Content to Retrieve", + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "key": "extractKeys", + "renderTypeList": [ + "custom" + ], + "label": "", + "valueType": "any", + "description": "workflow:target_fields_description", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "", + "value": [ + { + "valueType": "string", + "required": false, + "defaultValue": "", + "desc": "驾驶人的号牌号码", + "key": "driver1License", + "enum": "" + }, + { + "valueType": "string", + "required": false, + "defaultValue": "", + "desc": "驾驶员的身份证明号码", + "key": "driver1ID", + "enum": "" + }, + { + "valueType": "string", + "required": false, + "defaultValue": "", + "desc": "驾驶人的手机号码", + "key": "driver1Phonenumber", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "false", + "desc": "有无非机动车", + "key": "ywrysw", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "false", + "desc": "有无非机动车被撞到", + "key": "ywfjdc", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "false", + "desc": "有无摩托车被撞到", + "key": "ywmtc", + "enum": "" + }, + { + "valueType": "boolean", + "required": true, + "defaultValue": "false", + "desc": "用户是否希望转接人工", + "key": "transfer_to_human", + "enum": "" + } + ] + } + ], + "outputs": [ + { + "id": "success", + "key": "success", + "label": "workflow:full_field_extraction", + "required": true, + "description": "Returns true when all fields are fully extracted (success includes model extraction or using default values)", + "valueType": "boolean", + "type": "static" + }, + { + "id": "fields", + "key": "fields", + "label": "workflow:complete_extraction_result", + "required": true, + "description": "A JSON string, e.g., {\"name\":\"YY\",\"Time\":\"2023/7/2 18:00\"}", + "valueType": "string", + "type": "static" + }, + { + "id": "yHlQZC1Q8Wl5", + "key": "driver1License", + "label": "提取结果-driver1License", + "valueType": "string", + "type": "static" + }, + { + "id": "ky69lRsOoHgo", + "key": "driver1ID", + "label": "提取结果-driver1ID", + "valueType": "string", + "type": "static" + }, + { + "id": "nAwSoyw6abro", + "key": "driver1Phonenumber", + "label": "提取结果-driver1Phonenumber", + "valueType": "string", + "type": "static" + }, + { + "id": "tGXRLUbF03HL", + "key": "ywrysw", + "label": "提取结果-ywrysw", + "valueType": "boolean", + "type": "static" + }, + { + "id": "xqLIsloOkhV1", + "key": "ywfjdc", + "label": "提取结果-ywfjdc", + "valueType": "boolean", + "type": "static" + }, + { + "id": "mJfaHgfRjaIj", + "key": "ywmtc", + "label": "提取结果-ywmtc", + "valueType": "boolean", + "type": "static" + }, + { + "id": "hOCkxYcC8Sja", + "key": "transfer_to_human", + "label": "提取结果-transfer_to_human", + "valueType": "boolean", + "type": "static" + } + ] + }, + { + "nodeId": "t61UjcWzNWKW", + "name": "驾驶人信息核对完毕判断器", + "intro": "根据一定的条件,执行不同的分支。", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 4051.01804727695, + "y": 553.5065799719679 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "mU4ZpcL8aw8n", + "success" + ], + "condition": "equalTo", + "value": "false" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "n0mVrgLNrOt7", + "name": "变量更新#13", + "intro": "可以更新指定节点的输出值或更新全局变量", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 5381.578784366374, + "y": 1605.5034029866376 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "state" + ], + "value": [ + "qQsWnUe2Ac9A", + "jNHeOlIHcFLx" + ], + "valueType": "object", + "renderType": "reference" + }, + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0000" + ], + "renderType": "input", + "valueType": "string" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "eZ4FR1V7mfs1", + "name": "判断器#5", + "intro": "根据一定的条件,执行不同的分支。", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 1201.7095666231287, + "y": -1.4387541399708539 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "OR", + "list": [ + { + "variable": [ + "mU4ZpcL8aw8n", + "tGXRLUbF03HL" + ], + "condition": "equalTo", + "value": "true" + }, + { + "variable": [ + "mU4ZpcL8aw8n", + "xqLIsloOkhV1" + ], + "condition": "equalTo", + "value": "true" + }, + { + "variable": [ + "mU4ZpcL8aw8n", + "mJfaHgfRjaIj" + ], + "condition": "equalTo", + "value": "true" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "mU4ZpcL8aw8n", + "hOCkxYcC8Sja" + ], + "condition": "equalTo", + "value": "true" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "cvInl80Uutax", + "name": "代码运行#3", + "intro": "执行一段简单的脚本代码,通常用于进行复杂的数据处理。", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 2614.614229497251, + "y": 208.46006529654892 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state, driver1License, driver1ID, driver1Phoneumber}){\n if (driver1License !== null && driver1License !== undefined) {\n state.driver1License = driver1License;\n }\n if (driver1ID !== null && driver1ID !== undefined) {\n state.driver1ID = driver1ID;\n }\n if (driver1Phoneumber !== null && driver1Phoneumber !== undefined) {\n state.driver1Phoneumber = driver1Phoneumber;\n }\n return state;\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "driver1License", + "label": "driver1License", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "mU4ZpcL8aw8n", + "yHlQZC1Q8Wl5" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "driver1ID", + "label": "driver1ID", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "mU4ZpcL8aw8n", + "ky69lRsOoHgo" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "driver1Phonenumber", + "label": "driver1Phonenumber", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "mU4ZpcL8aw8n", + "nAwSoyw6abro" + ] + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "将代码中 return 的对象作为输出,传递给后续的节点。变量名需要对应 return 的 key", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "qQsWnUe2Ac9A", + "name": "代码运行#4", + "intro": "执行一段简单的脚本代码,通常用于进行复杂的数据处理。", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 4851.319807908609, + "y": 1325.460065296549 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state}){\n state.driver_info_check = true;\n return state;\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "将代码中 return 的对象作为输出,传递给后续的节点。变量名需要对应 return 的 key", + "valueDesc": "" + }, + { + "id": "jNHeOlIHcFLx", + "valueType": "object", + "type": "dynamic", + "key": "state", + "label": "state" + } + ] + }, + { + "nodeId": "zanMgjypjEHE", + "name": "变量更新#6", + "intro": "可以更新指定节点的输出值或更新全局变量", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 3497.651993232849, + "y": -590.2850128054174 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "z2pX8KFsBGSX", + "name": "代码运行#6", + "intro": "执行一段简单的脚本代码,通常用于进行复杂的数据处理。", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 558.0217712859005, + "y": -209.85807390454573 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state, ywrysw, ywfjdc, ywmtc, transfer_to_human}){\n state.ywrysw = ywrysw;\n state.ywfjdc = ywfjdc;\n state.ywmtc = ywmtc;\n state.transfer_to_human = transfer_to_human;\n return state;\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywrysw", + "label": "ywrysw", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "mU4ZpcL8aw8n", + "tGXRLUbF03HL" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywfjdc", + "label": "ywfjdc", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "mU4ZpcL8aw8n", + "xqLIsloOkhV1" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "ywmtc", + "label": "ywmtc", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "mU4ZpcL8aw8n", + "mJfaHgfRjaIj" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "boolean", + "canEdit": true, + "key": "transfer_to_human", + "label": "transfer_to_human", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "mU4ZpcL8aw8n", + "hOCkxYcC8Sja" + ] + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "将代码中 return 的对象作为输出,传递给后续的节点。变量名需要对应 return 的 key", + "valueDesc": "" + }, + { + "id": "oUKUyXLQ4Ndw", + "valueType": "object", + "type": "dynamic", + "key": "state", + "label": "state" + } + ] + }, + { + "nodeId": "bQt34UCF1XbN", + "name": "变量更新#7", + "intro": "可以更新指定节点的输出值或更新全局变量", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 638.305874754564, + "y": 1037.647846188843 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "state" + ], + "value": [ + "z2pX8KFsBGSX", + "oUKUyXLQ4Ndw" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "kPfeEZybshPH", + "name": "判断器#6", + "intro": "根据一定的条件,执行不同的分支。", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": -1552.5307978021754, + "y": 148.32594802882716 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "value": "【用户未回复】", + "condition": "equalTo" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "hUye6cIdYMeQ", + "name": "代码运行#7", + "intro": "执行一段简单的脚本代码,通常用于进行复杂的数据处理。", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": -736.0135894759022, + "y": -220.23588254762868 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state}){\n state.user_no_response = 0;\n return {\n state: state\n };\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "将代码中 return 的对象作为输出,传递给后续的节点。变量名需要对应 return 的 key", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "state", + "valueType": "object", + "label": "state", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "mP37q4IaTDya", + "name": "代码运行#8", + "intro": "执行一段简单的脚本代码,通常用于进行复杂的数据处理。", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": -760.7280399819567, + "y": -1305.7494754021855 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({state}){\n state.user_no_response += 1;\n return {\n state: state,\n user_no_response: state.user_no_response\n };\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "将代码中 return 的对象作为输出,传递给后续的节点。变量名需要对应 return 的 key", + "valueDesc": "" + }, + { + "id": "yRotQkFF2dlU", + "valueType": "object", + "type": "dynamic", + "key": "state", + "label": "state" + }, + { + "id": "ecNYn1j4nKqD", + "valueType": "number", + "type": "dynamic", + "key": "user_no_response", + "label": "user_no_response" + } + ] + }, + { + "nodeId": "imlSKwYy0OdW", + "name": "变量更新#8", + "intro": "可以更新指定节点的输出值或更新全局变量", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": -325.5231065923951, + "y": -1024.2494754021855 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "state" + ], + "value": [ + "mP37q4IaTDya", + "yRotQkFF2dlU" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "o80KlWmcZM5c", + "name": "变量更新#9", + "intro": "可以更新指定节点的输出值或更新全局变量", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": -684.0135894759022, + "y": 653.9624413794872 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "state" + ], + "value": [ + "hUye6cIdYMeQ", + "qLUQfhG0ILRX" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "sLQ7NrwDWS0F", + "name": "指定回复#4", + "intro": "该模块可以直接回复一段指定的内容。常用于引导、提示。非字符串内容传入时,会转成字符串进行输出。", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 1584.8564415157357, + "y": -952.2850128054174 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "回复的内容", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "因您长时间未回复,本次服务将结束,如需报案请您再次呼入", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tHn1wlOxYmO5", + "name": "判断器#7", + "intro": "根据一定的条件,执行不同的分支。", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 91.36184997374392, + "y": -1022.2850128054174 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "mP37q4IaTDya", + "ecNYn1j4nKqD" + ], + "condition": "equalTo", + "value": "2" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "eLkUFqk2pKPj", + "name": "变量更新#9", + "intro": "可以更新指定节点的输出值或更新全局变量", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 1074.305874754564, + "y": -978.2850128054174 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "1004" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "hoLZBXefBnt7", + "name": "获取当前时间", + "intro": "获取用户当前时区的时间。", + "avatar": "core/workflow/template/getTime", + "flowNodeType": "pluginModule", + "showStatus": false, + "position": { + "x": 5290.688831827424, + "y": 23.48513477901804 + }, + "version": "481", + "inputs": [ + { + "key": "system_forbid_stream", + "renderTypeList": [ + "switch" + ], + "valueType": "boolean", + "label": "Forbid stream mode", + "description": "Forces the output mode of nested application streams to be disabled", + "value": false, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "time", + "type": "static", + "key": "time", + "valueType": "string", + "label": "time", + "description": "", + "valueDesc": "" + } + ], + "pluginId": "community-getTime" + } + ], + "edges": [ + { + "source": "hoLZBXefBnt7", + "target": "y9LWYUwf3FT0", + "sourceHandle": "hoLZBXefBnt7-source-right", + "targetHandle": "y9LWYUwf3FT0-target-left" + }, + { + "source": "pluginInput", + "target": "kPfeEZybshPH", + "sourceHandle": "pluginInput-source-right", + "targetHandle": "kPfeEZybshPH-target-left" + }, + { + "source": "kPfeEZybshPH", + "target": "mP37q4IaTDya", + "sourceHandle": "kPfeEZybshPH-source-IF", + "targetHandle": "mP37q4IaTDya-target-left" + }, + { + "source": "mP37q4IaTDya", + "target": "imlSKwYy0OdW", + "sourceHandle": "mP37q4IaTDya-source-right", + "targetHandle": "imlSKwYy0OdW-target-left" + }, + { + "source": "imlSKwYy0OdW", + "target": "tHn1wlOxYmO5", + "sourceHandle": "imlSKwYy0OdW-source-right", + "targetHandle": "tHn1wlOxYmO5-target-left" + }, + { + "source": "tHn1wlOxYmO5", + "target": "eLkUFqk2pKPj", + "sourceHandle": "tHn1wlOxYmO5-source-IF", + "targetHandle": "eLkUFqk2pKPj-target-left" + }, + { + "source": "eLkUFqk2pKPj", + "target": "sLQ7NrwDWS0F", + "sourceHandle": "eLkUFqk2pKPj-source-right", + "targetHandle": "sLQ7NrwDWS0F-target-left" + }, + { + "source": "sLQ7NrwDWS0F", + "target": "pluginOutput", + "sourceHandle": "sLQ7NrwDWS0F-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "kPfeEZybshPH", + "target": "hUye6cIdYMeQ", + "sourceHandle": "kPfeEZybshPH-source-ELSE", + "targetHandle": "hUye6cIdYMeQ-target-left" + }, + { + "source": "hUye6cIdYMeQ", + "target": "o80KlWmcZM5c", + "sourceHandle": "hUye6cIdYMeQ-source-right", + "targetHandle": "o80KlWmcZM5c-target-top" + }, + { + "source": "o80KlWmcZM5c", + "target": "mU4ZpcL8aw8n", + "sourceHandle": "o80KlWmcZM5c-source-right", + "targetHandle": "mU4ZpcL8aw8n-target-left" + }, + { + "source": "tHn1wlOxYmO5", + "target": "mU4ZpcL8aw8n", + "sourceHandle": "tHn1wlOxYmO5-source-ELSE", + "targetHandle": "mU4ZpcL8aw8n-target-left" + }, + { + "source": "mU4ZpcL8aw8n", + "target": "z2pX8KFsBGSX", + "sourceHandle": "mU4ZpcL8aw8n-source-right", + "targetHandle": "z2pX8KFsBGSX-target-left" + }, + { + "source": "z2pX8KFsBGSX", + "target": "bQt34UCF1XbN", + "sourceHandle": "z2pX8KFsBGSX-source-right", + "targetHandle": "bQt34UCF1XbN-target-left" + }, + { + "source": "bQt34UCF1XbN", + "target": "eZ4FR1V7mfs1", + "sourceHandle": "bQt34UCF1XbN-source-right", + "targetHandle": "eZ4FR1V7mfs1-target-left" + }, + { + "source": "eZ4FR1V7mfs1", + "target": "uX2IzK9fx9zo", + "sourceHandle": "eZ4FR1V7mfs1-source-IF", + "targetHandle": "uX2IzK9fx9zo-target-left" + }, + { + "source": "eZ4FR1V7mfs1", + "target": "fvvP1xj1OJkZ", + "sourceHandle": "eZ4FR1V7mfs1-source-ELSE IF 1", + "targetHandle": "fvvP1xj1OJkZ-target-left" + }, + { + "source": "uX2IzK9fx9zo", + "target": "zanMgjypjEHE", + "sourceHandle": "uX2IzK9fx9zo-source-right", + "targetHandle": "zanMgjypjEHE-target-left" + }, + { + "source": "fvvP1xj1OJkZ", + "target": "zanMgjypjEHE", + "sourceHandle": "fvvP1xj1OJkZ-source-right", + "targetHandle": "zanMgjypjEHE-target-left" + }, + { + "source": "zanMgjypjEHE", + "target": "pluginOutput", + "sourceHandle": "zanMgjypjEHE-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "cvInl80Uutax", + "target": "cijcer2ddJRN", + "sourceHandle": "cvInl80Uutax-source-right", + "targetHandle": "cijcer2ddJRN-target-left" + }, + { + "source": "cijcer2ddJRN", + "target": "t61UjcWzNWKW", + "sourceHandle": "cijcer2ddJRN-source-right", + "targetHandle": "t61UjcWzNWKW-target-left" + }, + { + "source": "y9LWYUwf3FT0", + "target": "pluginOutput", + "sourceHandle": "y9LWYUwf3FT0-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "t61UjcWzNWKW", + "target": "qQsWnUe2Ac9A", + "sourceHandle": "t61UjcWzNWKW-source-ELSE", + "targetHandle": "qQsWnUe2Ac9A-target-left" + }, + { + "source": "qQsWnUe2Ac9A", + "target": "n0mVrgLNrOt7", + "sourceHandle": "qQsWnUe2Ac9A-source-right", + "targetHandle": "n0mVrgLNrOt7-target-left" + }, + { + "source": "n0mVrgLNrOt7", + "target": "y6u6eDqmYZB9", + "sourceHandle": "n0mVrgLNrOt7-source-right", + "targetHandle": "y6u6eDqmYZB9-target-left" + }, + { + "source": "y6u6eDqmYZB9", + "target": "pluginOutput", + "sourceHandle": "y6u6eDqmYZB9-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "eZ4FR1V7mfs1", + "target": "cvInl80Uutax", + "sourceHandle": "eZ4FR1V7mfs1-source-ELSE", + "targetHandle": "cvInl80Uutax-target-left" + }, + { + "source": "t61UjcWzNWKW", + "target": "y9LWYUwf3FT0", + "sourceHandle": "t61UjcWzNWKW-source-IF", + "targetHandle": "y9LWYUwf3FT0-target-left" + } + ], + "chatConfig": { + "welcomeText": "", + "variables": [], + "questionGuide": { + "open": false, + "model": "gpt-4o-mini", + "customPrompt": "" + }, + "ttsConfig": { + "type": "web" + }, + "whisperConfig": { + "open": false, + "autoSend": false, + "autoTTSResponse": false + }, + "chatInputGuide": { + "open": false, + "textList": [], + "customUrl": "" + }, + "instruction": "", + "autoExecute": { + "open": false, + "defaultPrompt": "" + }, + "_id": "6809a04fc967410d29126cf6" + } +} \ No newline at end of file diff --git a/workflow/双车拍照流程插件.json b/workflow/双车拍照流程插件.json new file mode 100644 index 0000000..93da1c3 --- /dev/null +++ b/workflow/双车拍照流程插件.json @@ -0,0 +1,3919 @@ +{ + "nodes": [ + { + "nodeId": "pluginInput", + "name": "workflow:template.plugin_start", + "intro": "workflow:intro_plugin_input", + "avatar": "core/workflow/template/workflowStart", + "flowNodeType": "pluginInput", + "showStatus": false, + "position": { + "x": 616.4226348688949, + "y": -165.05298493910115 + }, + "version": "481", + "inputs": [ + { + "renderTypeList": [ + "customVariable" + ], + "selectedTypeIndex": 0, + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + }, + { + "renderTypeList": [ + "customVariable" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": true, + "key": "status_code", + "label": "status_code", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + }, + { + "renderTypeList": [ + "customVariable" + ], + "selectedTypeIndex": 0, + "valueType": "string", + "canEdit": true, + "key": "user_question", + "label": "user_question", + "description": "", + "defaultValue": "", + "list": [ + { + "label": "", + "value": "" + } + ], + "maxFiles": 5, + "canSelectFile": true, + "canSelectImg": true, + "required": false + } + ], + "outputs": [ + { + "id": "state", + "valueType": "object", + "key": "state", + "label": "state", + "type": "hidden" + }, + { + "id": "status_code", + "valueType": "string", + "key": "status_code", + "label": "status_code", + "type": "hidden" + }, + { + "id": "user_question", + "valueType": "string", + "key": "user_question", + "label": "user_question", + "type": "hidden" + } + ] + }, + { + "nodeId": "pluginOutput", + "name": "common:core.module.template.self_output", + "intro": "workflow:intro_custom_plugin_output", + "avatar": "core/workflow/template/pluginOutput", + "flowNodeType": "pluginOutput", + "showStatus": false, + "position": { + "x": 8999.696378146049, + "y": 2554.844587477686 + }, + "version": "481", + "inputs": [ + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "state", + "label": "state", + "isToolOutput": true, + "description": "", + "required": true, + "value": [ + "pluginInput", + "state" + ] + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "string", + "canEdit": true, + "key": "status_code", + "label": "status_code", + "isToolOutput": true, + "description": "", + "required": true, + "value": [ + "pluginInput", + "status_code" + ] + } + ], + "outputs": [] + }, + { + "nodeId": "pluginConfig", + "name": "common:core.module.template.system_config", + "intro": "", + "avatar": "core/workflow/template/systemConfig", + "flowNodeType": "pluginConfig", + "position": { + "x": 129.71865108872498, + "y": -165.05298493910115 + }, + "version": "4811", + "inputs": [], + "outputs": [] + }, + { + "nodeId": "zxQfmimk125O", + "name": "Condition", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 1380.6644123444757, + "y": -236.87844916037216 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2010" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2011" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2012" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2013" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2014" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2015" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "condition": "equalTo", + "value": "2016" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "hdv5GoosMBHa", + "name": "Assigned Reply", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3977.1146042971795, + "y": -2018.2314623348677 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准第一辆车的侧前方,看清车牌拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tvAhmyGZGJFK", + "name": "Assigned Reply#2", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3080.7638516461034, + "y": -1496.533033695888 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准第一辆车碰撞部位拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "uQOYrbV0gEUc", + "name": "Condition#2", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2177.2078129294746, + "y": -1701.9735572957231 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "x5fLdT0iZHwS", + "name": "Classify", + "intro": "Determine the type of question based on the user's history and current question. Multiple question types can be added. Below is a template example:\nType 1: Greeting\nType 2: Questions about product 'usage'\nType 3: Questions about product 'purchase'\nType 4: Other questions", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3080.7638516461034, + "y": -2380.936588322326 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "qwen2.5:14b-instruct", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Background Knowledge", + "description": "core.module.input.description.Background", + "placeholder": "core.module.input.placeholder.Classify background", + "value": "你是一个电话客服助手,根据对话记录判断客户意图。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "key": "agents", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ] + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "wV4XkmDRw3wv", + "name": "Assigned Reply#3", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3977.1146042971795, + "y": -2396.939485639238 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "vLZps4mdth6X", + "name": "Variable Update", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4769.622608677713, + "y": -2322.3010296208304 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "eLKTeiHZSJX5", + "name": "Variable Update#2", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4086.8404389816033, + "y": -1592.1724152147096 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2011" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "lbm1znwOWznd", + "name": "Condition#3", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2188.4042237593226, + "y": -632.2190075962699 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "os9xJR84X6rS", + "name": "Assigned Reply#4", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3090.3409007861924, + "y": -321.0349358234895 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准第二辆车碰撞部位拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "mHIsV4YQ2N4d", + "name": "Variable Update#3", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4115.133459347004, + "y": -374.0349358234895 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2012" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "dxzYyvYArES3", + "name": "Classify#2", + "intro": "Determine the type of question based on the user's history and current question. Multiple question types can be added. Below is a template example:\nType 1: Greeting\nType 2: Questions about product 'usage'\nType 3: Questions about product 'purchase'\nType 4: Other questions", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3080.7638516461034, + "y": -1188.9736949174871 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "qwen2.5:14b-instruct", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Background Knowledge", + "description": "core.module.input.description.Background", + "placeholder": "core.module.input.placeholder.Classify background", + "value": "你是一个电话客服助手,根据对话记录判断客户意图。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "key": "agents", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ] + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "priypoGuIQkz", + "name": "Assigned Reply#5", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4025.6334593470037, + "y": -1177.6348349124573 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "j7XarWgQ6mOZ", + "name": "Assigned Reply#6", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4056.626082300995, + "y": -771.2402612358323 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准第一辆车碰撞部位拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ysQYvXdh8RAu", + "name": "Variable Update#4", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4885.628258713288, + "y": -1204.1348349124573 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "kzUQVND3RsVp", + "name": "Condition#4", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2196.749344223759, + "y": 417.17374834770607 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "qHmueoo9BMEJ", + "name": "Classify#3", + "intro": "Determine the type of question based on the user's history and current question. Multiple question types can be added. Below is a template example:\nType 1: Greeting\nType 2: Questions about product 'usage'\nType 3: Questions about product 'purchase'\nType 4: Other questions", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3090.3409007861924, + "y": -0.6161502188676309 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "qwen2.5:14b-instruct", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Background Knowledge", + "description": "core.module.input.description.Background", + "placeholder": "core.module.input.placeholder.Classify background", + "value": "你是一个电话客服助手,根据对话记录判断客户意图。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "key": "agents", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ] + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "coCCLqSMU3FE", + "name": "Assigned Reply#7", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3080.7638516461034, + "y": 982.0408110540607 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准第二方车辆侧后方,看清车牌拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ls6BNUSlIPYd", + "name": "Variable Update#5", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 3989.6652438297915, + "y": 955.5408110540607 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2013" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "ignvQlRRpZrF", + "name": "Assigned Reply#8", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4043.2609328061408, + "y": 14.96506417651051 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tLFNll01UmDa", + "name": "Variable Update#6", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4933.027570181225, + "y": -38.03493582348949 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "vbf763lG0E5O", + "name": "Assigned Reply#9", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 4043.2609328061408, + "y": 487.0047580129981 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准第二辆车碰撞部位拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "pYsC5xki4QxU", + "name": "Condition#5", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2188.4042237593226, + "y": 1627.6459543256753 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "aWRVpPDfbZSo", + "name": "Assigned Reply#10", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3020.460069281957, + "y": 2367.6817260060657 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请拍摄另一方驾驶人的正面照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "gUW65TgWLRD2", + "name": "Classify#4", + "intro": "Determine the type of question based on the user's history and current question. Multiple question types can be added. Below is a template example:\nType 1: Greeting\nType 2: Questions about product 'usage'\nType 3: Questions about product 'purchase'\nType 4: Other questions", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3080.7638516461034, + "y": 1346.8766264571177 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "qwen2.5:14b-instruct", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Background Knowledge", + "description": "core.module.input.description.Background", + "placeholder": "core.module.input.placeholder.Classify background", + "value": "你是一个电话客服助手,根据对话记录判断客户意图。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "key": "agents", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ] + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "gcFqKEmmBxsq", + "name": "Assigned Reply#11", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3974.385560232946, + "y": 1414.4633627105443 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "tav57O4HFffB", + "name": "Variable Update#7", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4841.105737101757, + "y": 1387.9633627105443 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "l5KvlvRX2mhT", + "name": "Assigned Reply#12", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3954.366056749379, + "y": 1893.6280648760387 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请对准第二方车辆侧后方,看清车牌拍摄。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "sWFhlCtJQzcb", + "name": "Variable Update#8", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4043.866056749379, + "y": 2331.285416675269 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2014" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "gUh0oVVuslSB", + "name": "Text Extract", + "intro": "Can extract specified data from text, such as SQL statements, search keywords, code, etc.", + "avatar": "core/workflow/template/extractJson", + "flowNodeType": "contentExtract", + "showStatus": true, + "position": { + "x": 3021.781213795384, + "y": 6155.507947804175 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "extractFields", + "value": "qwen2.5:14b-instruct", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "description", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "string", + "label": "Extraction Requirements Description", + "description": "workflow:extraction_requirements_description_detail", + "placeholder": "workflow:extraction_requirements_placeholder", + "value": "你是一个电话客服助手,根据对话记录判断:用户是否确认{{$drW8jjcnmMtj.qLUQfhG0ILRX$}} {{$drW8jjcnmMtj.gR0mkQpJ4Og8$}}为事故一方车辆?", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "content", + "renderTypeList": [ + "reference", + "textarea" + ], + "label": "Text to Extract", + "required": true, + "valueType": "string", + "toolDescription": "Content to Retrieve", + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "key": "extractKeys", + "renderTypeList": [ + "custom" + ], + "label": "", + "valueType": "any", + "description": "workflow:target_fields_description", + "value": [ + { + "valueType": "string", + "required": false, + "defaultValue": "", + "desc": "用户是否确认车辆为事故一方车辆", + "key": "carIsCorrect", + "enum": "是\n否\n不确定" + }, + { + "valueType": "boolean", + "required": false, + "defaultValue": "", + "desc": "用户希望转接人工处理", + "key": "transfer_to_human", + "enum": "" + } + ], + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "success", + "key": "success", + "label": "workflow:full_field_extraction", + "required": true, + "description": "Returns true when all fields are fully extracted (success includes model extraction or using default values)", + "valueType": "boolean", + "type": "static" + }, + { + "id": "fields", + "key": "fields", + "label": "workflow:complete_extraction_result", + "required": true, + "description": "A JSON string, e.g., {\"name\":\"YY\",\"Time\":\"2023/7/2 18:00\"}", + "valueType": "string", + "type": "static" + }, + { + "id": "aibScMj0TpbQ", + "key": "carIsCorrect", + "label": "Extraction Results-carIsCorrect", + "valueType": "string", + "type": "static" + }, + { + "id": "c6kHpd6sPAoL", + "key": "transfer_to_human", + "label": "Extraction Results-transfer_to_human", + "valueType": "boolean", + "type": "static" + } + ] + }, + { + "nodeId": "drW8jjcnmMtj", + "name": "Code Sandbox#2", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 2381.807455484539, + "y": 6217.444836064995 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1}){\n \n return {\n hpzl1: data1['hpzl1'],\n hphm1: data1['hphm1'],\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "hpzl1", + "valueType": "string", + "label": "hpzl1", + "valueDesc": "", + "description": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "hphm1", + "valueType": "string", + "label": "hphm1", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "it5Z7TucaPnb", + "name": "Condition#6", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 3965.8530402993492, + "y": 6146.305475890246 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "c6kHpd6sPAoL" + ], + "condition": "equalTo", + "value": "true" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "aibScMj0TpbQ" + ], + "condition": "equalTo", + "value": "是" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "aibScMj0TpbQ" + ], + "condition": "equalTo", + "value": "否" + } + ] + }, + { + "condition": "AND", + "list": [ + { + "variable": [ + "gUh0oVVuslSB", + "aibScMj0TpbQ" + ], + "condition": "equalTo", + "value": "不确定" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "shrDoG2MH0h5", + "name": "Assigned Reply#13", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5037.787632617308, + "y": 5934.444836064995 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "hKHdh5iDkLxA", + "name": "Variable Update#9", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 6031.729639838511, + "y": 5810.305475890246 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "iBXnYng2HdjO", + "name": "Assigned Reply#14", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5037.787632617308, + "y": 6264.475557809409 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "下面开始身份信息确认。请问您是否为{{$drW8jjcnmMtj.gR0mkQpJ4Og8$}}的车主?", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "hZ1chmKTCxph", + "name": "Variable Update#10", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 6086.610458671647, + "y": 6264.475557809409 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "1002" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "mvdaWgBHPGU6", + "name": "Assigned Reply#15", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5048.208164315399, + "y": 6645.736341537641 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "由于未能确认车牌,正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "azHHwpSROKs3", + "name": "Condition#7", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2188.4042237593226, + "y": 3211.2485262171954 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "lqEZPYvcg3dI", + "name": "Classify#5", + "intro": "Determine the type of question based on the user's history and current question. Multiple question types can be added. Below is a template example:\nType 1: Greeting\nType 2: Questions about product 'usage'\nType 3: Questions about product 'purchase'\nType 4: Other questions", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3051.024180646697, + "y": 2788.5246835360213 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "qwen2.5:14b-instruct", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Background Knowledge", + "description": "core.module.input.description.Background", + "placeholder": "core.module.input.placeholder.Classify background", + "value": "你是一个电话客服助手,根据对话记录判断客户意图。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "key": "agents", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ] + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "oIQHerX9JAps", + "name": "Assigned Reply#17", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3067.729147995265, + "y": 3714.0982483404305 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请切换前置摄像头对准本人拍摄一张正面照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "w63KXAex0UF1", + "name": "Variable Update#11", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4003.86605674938, + "y": 3676.358351767774 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2015" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "gzFugr6dEgqx", + "name": "Assigned Reply#18", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3900.1652438297915, + "y": 3211.2485262171954 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请拍摄另一方驾驶人的正面照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "dZD5JPUmp0zu", + "name": "Assigned Reply#19", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3900.1652438297915, + "y": 2826.325200394593 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "jD8iEPiyxwNR", + "name": "Variable Update#12", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4744.338810510667, + "y": 2799.825200394593 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "x9S15NNh5h2Q", + "name": "Condition#8", + "intro": "Execute different branches based on conditions.", + "avatar": "core/workflow/template/ifelse", + "flowNodeType": "ifElseNode", + "showStatus": true, + "position": { + "x": 2205.634699084278, + "y": 4627.294934418593 + }, + "version": "481", + "inputs": [ + { + "key": "ifElseList", + "renderTypeList": [ + "hidden" + ], + "valueType": "any", + "label": "", + "value": [ + { + "condition": "AND", + "list": [ + { + "variable": [ + "pluginInput", + "user_question" + ], + "condition": "equalTo", + "value": "【拍摄完成】" + } + ] + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "ifElseResult", + "key": "ifElseResult", + "label": "workflow:judgment_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "h6Do6pWmsJwd", + "name": "Classify#6", + "intro": "Determine the type of question based on the user's history and current question. Multiple question types can be added. Below is a template example:\nType 1: Greeting\nType 2: Questions about product 'usage'\nType 3: Questions about product 'purchase'\nType 4: Other questions", + "avatar": "core/workflow/template/questionClassify", + "flowNodeType": "classifyQuestion", + "showStatus": true, + "position": { + "x": 3051.024180646697, + "y": 4073.5246835360167 + }, + "version": "481", + "inputs": [ + { + "key": "model", + "renderTypeList": [ + "selectLLMModel", + "reference" + ], + "label": "AI Model", + "required": true, + "valueType": "string", + "llmModelType": "classify", + "value": "qwen2.5:14b-instruct", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "systemPrompt", + "renderTypeList": [ + "textarea", + "reference" + ], + "max": 3000, + "valueType": "string", + "label": "Background Knowledge", + "description": "core.module.input.description.Background", + "placeholder": "core.module.input.placeholder.Classify background", + "value": "你是一个电话客服助手,根据对话记录判断客户意图。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "history", + "renderTypeList": [ + "numberInput", + "reference" + ], + "valueType": "chatHistory", + "label": "Chat History", + "description": "workflow:max_dialog_rounds", + "required": true, + "min": 0, + "max": 50, + "value": 6, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "userChatInput", + "renderTypeList": [ + "reference", + "textarea" + ], + "valueType": "string", + "label": "User Question", + "toolDescription": "User input questions (questions need to be improved)", + "required": true, + "value": [ + "pluginInput", + "user_question" + ], + "valueDesc": "", + "description": "", + "debugLabel": "" + }, + { + "renderTypeList": [ + "custom" + ], + "valueType": "any", + "label": "", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "", + "key": "agents", + "value": [ + { + "value": "用户表示希望转接人工处理", + "key": "wqre" + }, + { + "value": "用户没有表示希望转接人工处理", + "key": "sdfa" + } + ] + } + ], + "outputs": [ + { + "id": "cqResult", + "key": "cqResult", + "required": true, + "label": "workflow:classification_result", + "valueType": "string", + "type": "static", + "description": "" + } + ] + }, + { + "nodeId": "ua08T9ZlxTb3", + "name": "Assigned Reply#20", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3928.496941310669, + "y": 5067.112310228659 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请确认{{$w1vhCFxDYKIU.qLUQfhG0ILRX$}} {{$w1vhCFxDYKIU.gR0mkQpJ4Og8$}}是不是事故一方车辆。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "s5GVmAT86CeC", + "name": "Variable Update#13", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4801.855540380135, + "y": 5005.857944427371 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "2016" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "kECapAY0U9GD", + "name": "Assigned Reply#21", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3914.36605674938, + "y": 4131.27815322885 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "正在转接人工处理,请稍候。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "mBtCWy0egLn7", + "name": "Assigned Reply#22", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 3914.36605674938, + "y": 4545.463383154402 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "请切换前置摄像头对准本人拍摄一张正面照片。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "k7zh1c1jRFrQ", + "name": "Variable Update#14", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 4730.60725383719, + "y": 4104.77815322885 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "status_code" + ], + "value": [ + "", + "0001" + ], + "valueType": "string", + "renderType": "input" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "w1vhCFxDYKIU", + "name": "Code Sandbox#2", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 3186.229147995265, + "y": 4990.546404543047 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1}){\n \n return {\n hpzl1: data1['hpzl1'],\n hphm1: data1['hphm1'],\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "hpzl1", + "valueType": "string", + "label": "hpzl1", + "valueDesc": "", + "description": "" + }, + { + "id": "gR0mkQpJ4Og8", + "type": "dynamic", + "key": "hphm1", + "valueType": "string", + "label": "hphm1", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "wqVEJOvom35j", + "name": "Assigned Reply#22", + "intro": "This module can directly reply with a specified content. Commonly used for guidance or prompts. Non-string content will be converted to string for output.", + "avatar": "core/workflow/template/reply", + "flowNodeType": "answerNode", + "position": { + "x": 5037.787632617308, + "y": 7033.697550626283 + }, + "version": "481", + "inputs": [ + { + "key": "text", + "renderTypeList": [ + "textarea", + "reference" + ], + "valueType": "any", + "required": true, + "label": "Response Content", + "description": "common:core.module.input.description.Response content", + "placeholder": "common:core.module.input.description.Response content", + "value": "未能理解您的意思。请确认{{$drW8jjcnmMtj.qLUQfhG0ILRX$}} {{$drW8jjcnmMtj.gR0mkQpJ4Og8$}}是不是事故一方车辆。", + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + }, + { + "nodeId": "qh1cW1scoV2X", + "name": "Code Sandbox#3", + "intro": "Execute a simple script code, usually for complex data processing.", + "avatar": "core/workflow/template/codeRun", + "flowNodeType": "code", + "showStatus": true, + "position": { + "x": 6732.994943421448, + "y": 6009.736341537641 + }, + "version": "482", + "inputs": [ + { + "key": "system_addInputParam", + "renderTypeList": [ + "addInputParam" + ], + "valueType": "dynamic", + "label": "", + "required": false, + "description": "workflow:these_variables_will_be_input_parameters_for_code_execution", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "valueDesc": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "codeType", + "renderTypeList": [ + "hidden" + ], + "label": "", + "value": "js", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "key": "code", + "renderTypeList": [ + "custom" + ], + "label": "", + "value": "function main({data1, }){\n data1.drivers_info_complete=true;\n return {\n result: data1,\n }\n}", + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + }, + { + "renderTypeList": [ + "reference" + ], + "valueType": "object", + "canEdit": true, + "key": "data1", + "label": "data1", + "customInputConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": true + }, + "required": true, + "value": [ + "pluginInput", + "state" + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [ + { + "id": "system_rawResponse", + "key": "system_rawResponse", + "label": "workflow:full_response_data", + "valueType": "object", + "type": "static", + "description": "" + }, + { + "id": "error", + "key": "error", + "label": "workflow:execution_error", + "description": "Error information of code execution, returns empty on success", + "valueType": "object", + "type": "static" + }, + { + "id": "system_addOutputParam", + "key": "system_addOutputParam", + "type": "dynamic", + "valueType": "dynamic", + "label": "", + "customFieldConfig": { + "selectValueTypeList": [ + "string", + "number", + "boolean", + "object", + "arrayString", + "arrayNumber", + "arrayBoolean", + "arrayObject", + "arrayAny", + "any", + "chatHistory", + "datasetQuote", + "dynamic", + "selectDataset", + "selectApp" + ], + "showDescription": false, + "showDefaultValue": false + }, + "description": "Pass the object returned in the code as output to the next nodes. The variable name needs to correspond to the return key.", + "valueDesc": "" + }, + { + "id": "qLUQfhG0ILRX", + "type": "dynamic", + "key": "result", + "valueType": "object", + "label": "result", + "valueDesc": "", + "description": "" + } + ] + }, + { + "nodeId": "ln1CV3uuilB5", + "name": "Variable Update#15", + "intro": "Can update the output value of a specified node or update global variables", + "avatar": "core/workflow/template/variableUpdate", + "flowNodeType": "variableUpdate", + "showStatus": false, + "position": { + "x": 7260.127918490368, + "y": 6284.31762310727 + }, + "version": "481", + "inputs": [ + { + "key": "updateList", + "valueType": "any", + "label": "", + "renderTypeList": [ + "hidden" + ], + "value": [ + { + "variable": [ + "pluginInput", + "state" + ], + "value": [ + "qh1cW1scoV2X", + "qLUQfhG0ILRX" + ], + "valueType": "object", + "renderType": "reference" + } + ], + "valueDesc": "", + "description": "", + "debugLabel": "", + "toolDescription": "" + } + ], + "outputs": [] + } + ], + "edges": [ + { + "source": "zxQfmimk125O", + "target": "uQOYrbV0gEUc", + "sourceHandle": "zxQfmimk125O-source-IF", + "targetHandle": "uQOYrbV0gEUc-target-left" + }, + { + "source": "uQOYrbV0gEUc", + "target": "tvAhmyGZGJFK", + "sourceHandle": "uQOYrbV0gEUc-source-IF", + "targetHandle": "tvAhmyGZGJFK-target-left" + }, + { + "source": "uQOYrbV0gEUc", + "target": "x5fLdT0iZHwS", + "sourceHandle": "uQOYrbV0gEUc-source-ELSE", + "targetHandle": "x5fLdT0iZHwS-target-left" + }, + { + "source": "x5fLdT0iZHwS", + "target": "wV4XkmDRw3wv", + "sourceHandle": "x5fLdT0iZHwS-source-wqre", + "targetHandle": "wV4XkmDRw3wv-target-left" + }, + { + "source": "x5fLdT0iZHwS", + "target": "hdv5GoosMBHa", + "sourceHandle": "x5fLdT0iZHwS-source-sdfa", + "targetHandle": "hdv5GoosMBHa-target-left" + }, + { + "source": "wV4XkmDRw3wv", + "target": "vLZps4mdth6X", + "sourceHandle": "wV4XkmDRw3wv-source-right", + "targetHandle": "vLZps4mdth6X-target-left" + }, + { + "source": "tvAhmyGZGJFK", + "target": "eLKTeiHZSJX5", + "sourceHandle": "tvAhmyGZGJFK-source-right", + "targetHandle": "eLKTeiHZSJX5-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "lbm1znwOWznd", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 1", + "targetHandle": "lbm1znwOWznd-target-left" + }, + { + "source": "lbm1znwOWznd", + "target": "os9xJR84X6rS", + "sourceHandle": "lbm1znwOWznd-source-IF", + "targetHandle": "os9xJR84X6rS-target-left" + }, + { + "source": "os9xJR84X6rS", + "target": "mHIsV4YQ2N4d", + "sourceHandle": "os9xJR84X6rS-source-right", + "targetHandle": "mHIsV4YQ2N4d-target-left" + }, + { + "source": "lbm1znwOWznd", + "target": "dxzYyvYArES3", + "sourceHandle": "lbm1znwOWznd-source-ELSE", + "targetHandle": "dxzYyvYArES3-target-left" + }, + { + "source": "dxzYyvYArES3", + "target": "priypoGuIQkz", + "sourceHandle": "dxzYyvYArES3-source-wqre", + "targetHandle": "priypoGuIQkz-target-left" + }, + { + "source": "dxzYyvYArES3", + "target": "j7XarWgQ6mOZ", + "sourceHandle": "dxzYyvYArES3-source-sdfa", + "targetHandle": "j7XarWgQ6mOZ-target-left" + }, + { + "source": "priypoGuIQkz", + "target": "ysQYvXdh8RAu", + "sourceHandle": "priypoGuIQkz-source-right", + "targetHandle": "ysQYvXdh8RAu-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "kzUQVND3RsVp", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 2", + "targetHandle": "kzUQVND3RsVp-target-left" + }, + { + "source": "kzUQVND3RsVp", + "target": "coCCLqSMU3FE", + "sourceHandle": "kzUQVND3RsVp-source-IF", + "targetHandle": "coCCLqSMU3FE-target-left" + }, + { + "source": "kzUQVND3RsVp", + "target": "qHmueoo9BMEJ", + "sourceHandle": "kzUQVND3RsVp-source-ELSE", + "targetHandle": "qHmueoo9BMEJ-target-left" + }, + { + "source": "qHmueoo9BMEJ", + "target": "ignvQlRRpZrF", + "sourceHandle": "qHmueoo9BMEJ-source-wqre", + "targetHandle": "ignvQlRRpZrF-target-left" + }, + { + "source": "ignvQlRRpZrF", + "target": "tLFNll01UmDa", + "sourceHandle": "ignvQlRRpZrF-source-right", + "targetHandle": "tLFNll01UmDa-target-left" + }, + { + "source": "qHmueoo9BMEJ", + "target": "vbf763lG0E5O", + "sourceHandle": "qHmueoo9BMEJ-source-sdfa", + "targetHandle": "vbf763lG0E5O-target-left" + }, + { + "source": "coCCLqSMU3FE", + "target": "ls6BNUSlIPYd", + "sourceHandle": "coCCLqSMU3FE-source-right", + "targetHandle": "ls6BNUSlIPYd-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "pYsC5xki4QxU", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 3", + "targetHandle": "pYsC5xki4QxU-target-left" + }, + { + "source": "pYsC5xki4QxU", + "target": "gUW65TgWLRD2", + "sourceHandle": "pYsC5xki4QxU-source-ELSE", + "targetHandle": "gUW65TgWLRD2-target-left" + }, + { + "source": "gUW65TgWLRD2", + "target": "gcFqKEmmBxsq", + "sourceHandle": "gUW65TgWLRD2-source-wqre", + "targetHandle": "gcFqKEmmBxsq-target-left" + }, + { + "source": "gcFqKEmmBxsq", + "target": "tav57O4HFffB", + "sourceHandle": "gcFqKEmmBxsq-source-right", + "targetHandle": "tav57O4HFffB-target-left" + }, + { + "source": "gUW65TgWLRD2", + "target": "l5KvlvRX2mhT", + "sourceHandle": "gUW65TgWLRD2-source-sdfa", + "targetHandle": "l5KvlvRX2mhT-target-left" + }, + { + "source": "aWRVpPDfbZSo", + "target": "sWFhlCtJQzcb", + "sourceHandle": "aWRVpPDfbZSo-source-right", + "targetHandle": "sWFhlCtJQzcb-target-left" + }, + { + "source": "drW8jjcnmMtj", + "target": "gUh0oVVuslSB", + "sourceHandle": "drW8jjcnmMtj-source-right", + "targetHandle": "gUh0oVVuslSB-target-left" + }, + { + "source": "gUh0oVVuslSB", + "target": "it5Z7TucaPnb", + "sourceHandle": "gUh0oVVuslSB-source-right", + "targetHandle": "it5Z7TucaPnb-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "shrDoG2MH0h5", + "sourceHandle": "it5Z7TucaPnb-source-IF", + "targetHandle": "shrDoG2MH0h5-target-left" + }, + { + "source": "shrDoG2MH0h5", + "target": "hKHdh5iDkLxA", + "sourceHandle": "shrDoG2MH0h5-source-right", + "targetHandle": "hKHdh5iDkLxA-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "iBXnYng2HdjO", + "sourceHandle": "it5Z7TucaPnb-source-ELSE IF 1", + "targetHandle": "iBXnYng2HdjO-target-left" + }, + { + "source": "iBXnYng2HdjO", + "target": "hZ1chmKTCxph", + "sourceHandle": "iBXnYng2HdjO-source-right", + "targetHandle": "hZ1chmKTCxph-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "mvdaWgBHPGU6", + "sourceHandle": "it5Z7TucaPnb-source-ELSE IF 2", + "targetHandle": "mvdaWgBHPGU6-target-left" + }, + { + "source": "mvdaWgBHPGU6", + "target": "hKHdh5iDkLxA", + "sourceHandle": "mvdaWgBHPGU6-source-right", + "targetHandle": "hKHdh5iDkLxA-target-left" + }, + { + "source": "pYsC5xki4QxU", + "target": "aWRVpPDfbZSo", + "sourceHandle": "pYsC5xki4QxU-source-IF", + "targetHandle": "aWRVpPDfbZSo-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "azHHwpSROKs3", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 4", + "targetHandle": "azHHwpSROKs3-target-left" + }, + { + "source": "azHHwpSROKs3", + "target": "oIQHerX9JAps", + "sourceHandle": "azHHwpSROKs3-source-IF", + "targetHandle": "oIQHerX9JAps-target-left" + }, + { + "source": "oIQHerX9JAps", + "target": "w63KXAex0UF1", + "sourceHandle": "oIQHerX9JAps-source-right", + "targetHandle": "w63KXAex0UF1-target-left" + }, + { + "source": "azHHwpSROKs3", + "target": "lqEZPYvcg3dI", + "sourceHandle": "azHHwpSROKs3-source-ELSE", + "targetHandle": "lqEZPYvcg3dI-target-left" + }, + { + "source": "lqEZPYvcg3dI", + "target": "gzFugr6dEgqx", + "sourceHandle": "lqEZPYvcg3dI-source-sdfa", + "targetHandle": "gzFugr6dEgqx-target-left" + }, + { + "source": "lqEZPYvcg3dI", + "target": "dZD5JPUmp0zu", + "sourceHandle": "lqEZPYvcg3dI-source-wqre", + "targetHandle": "dZD5JPUmp0zu-target-left" + }, + { + "source": "dZD5JPUmp0zu", + "target": "jD8iEPiyxwNR", + "sourceHandle": "dZD5JPUmp0zu-source-right", + "targetHandle": "jD8iEPiyxwNR-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "x9S15NNh5h2Q", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 5", + "targetHandle": "x9S15NNh5h2Q-target-left" + }, + { + "source": "x9S15NNh5h2Q", + "target": "h6Do6pWmsJwd", + "sourceHandle": "x9S15NNh5h2Q-source-ELSE", + "targetHandle": "h6Do6pWmsJwd-target-left" + }, + { + "source": "h6Do6pWmsJwd", + "target": "kECapAY0U9GD", + "sourceHandle": "h6Do6pWmsJwd-source-wqre", + "targetHandle": "kECapAY0U9GD-target-left" + }, + { + "source": "h6Do6pWmsJwd", + "target": "mBtCWy0egLn7", + "sourceHandle": "h6Do6pWmsJwd-source-sdfa", + "targetHandle": "mBtCWy0egLn7-target-left" + }, + { + "source": "kECapAY0U9GD", + "target": "k7zh1c1jRFrQ", + "sourceHandle": "kECapAY0U9GD-source-right", + "targetHandle": "k7zh1c1jRFrQ-target-left" + }, + { + "source": "ua08T9ZlxTb3", + "target": "s5GVmAT86CeC", + "sourceHandle": "ua08T9ZlxTb3-source-right", + "targetHandle": "s5GVmAT86CeC-target-left" + }, + { + "source": "x9S15NNh5h2Q", + "target": "w1vhCFxDYKIU", + "sourceHandle": "x9S15NNh5h2Q-source-IF", + "targetHandle": "w1vhCFxDYKIU-target-left" + }, + { + "source": "w1vhCFxDYKIU", + "target": "ua08T9ZlxTb3", + "sourceHandle": "w1vhCFxDYKIU-source-right", + "targetHandle": "ua08T9ZlxTb3-target-left" + }, + { + "source": "zxQfmimk125O", + "target": "drW8jjcnmMtj", + "sourceHandle": "zxQfmimk125O-source-ELSE IF 6", + "targetHandle": "drW8jjcnmMtj-target-left" + }, + { + "source": "it5Z7TucaPnb", + "target": "wqVEJOvom35j", + "sourceHandle": "it5Z7TucaPnb-source-ELSE IF 3", + "targetHandle": "wqVEJOvom35j-target-left" + }, + { + "source": "hZ1chmKTCxph", + "target": "qh1cW1scoV2X", + "sourceHandle": "hZ1chmKTCxph-source-right", + "targetHandle": "qh1cW1scoV2X-target-left" + }, + { + "source": "qh1cW1scoV2X", + "target": "ln1CV3uuilB5", + "sourceHandle": "qh1cW1scoV2X-source-right", + "targetHandle": "ln1CV3uuilB5-target-left" + }, + { + "source": "pluginInput", + "target": "zxQfmimk125O", + "sourceHandle": "pluginInput-source-right", + "targetHandle": "zxQfmimk125O-target-left" + }, + { + "source": "vLZps4mdth6X", + "target": "pluginOutput", + "sourceHandle": "vLZps4mdth6X-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "hdv5GoosMBHa", + "target": "pluginOutput", + "sourceHandle": "hdv5GoosMBHa-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "eLKTeiHZSJX5", + "target": "pluginOutput", + "sourceHandle": "eLKTeiHZSJX5-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "ysQYvXdh8RAu", + "target": "pluginOutput", + "sourceHandle": "ysQYvXdh8RAu-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "j7XarWgQ6mOZ", + "target": "pluginOutput", + "sourceHandle": "j7XarWgQ6mOZ-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "mHIsV4YQ2N4d", + "target": "pluginOutput", + "sourceHandle": "mHIsV4YQ2N4d-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "tLFNll01UmDa", + "target": "pluginOutput", + "sourceHandle": "tLFNll01UmDa-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "vbf763lG0E5O", + "target": "pluginOutput", + "sourceHandle": "vbf763lG0E5O-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "ls6BNUSlIPYd", + "target": "pluginOutput", + "sourceHandle": "ls6BNUSlIPYd-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "tav57O4HFffB", + "target": "pluginOutput", + "sourceHandle": "tav57O4HFffB-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "l5KvlvRX2mhT", + "target": "pluginOutput", + "sourceHandle": "l5KvlvRX2mhT-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "sWFhlCtJQzcb", + "target": "pluginOutput", + "sourceHandle": "sWFhlCtJQzcb-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "jD8iEPiyxwNR", + "target": "pluginOutput", + "sourceHandle": "jD8iEPiyxwNR-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "gzFugr6dEgqx", + "target": "pluginOutput", + "sourceHandle": "gzFugr6dEgqx-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "w63KXAex0UF1", + "target": "pluginOutput", + "sourceHandle": "w63KXAex0UF1-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "k7zh1c1jRFrQ", + "target": "pluginOutput", + "sourceHandle": "k7zh1c1jRFrQ-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "mBtCWy0egLn7", + "target": "pluginOutput", + "sourceHandle": "mBtCWy0egLn7-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "s5GVmAT86CeC", + "target": "pluginOutput", + "sourceHandle": "s5GVmAT86CeC-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "hKHdh5iDkLxA", + "target": "pluginOutput", + "sourceHandle": "hKHdh5iDkLxA-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "ln1CV3uuilB5", + "target": "pluginOutput", + "sourceHandle": "ln1CV3uuilB5-source-right", + "targetHandle": "pluginOutput-target-left" + }, + { + "source": "wqVEJOvom35j", + "target": "pluginOutput", + "sourceHandle": "wqVEJOvom35j-source-right", + "targetHandle": "pluginOutput-target-left" + } + ], + "chatConfig": { + "welcomeText": "请对准第一辆车的侧前方,看清车牌拍摄。", + "variables": [ + { + "id": "zr57c2", + "key": "state", + "label": "state", + "type": "custom", + "description": "", + "required": false, + "valueType": "object", + "list": [ + { + "value": "", + "label": "" + } + ], + "defaultValue": "{\"hpzl1\": \"小型汽车蓝牌\", \"driver1License\": \"沪A1121\"}", + "enums": [ + { + "value": "", + "label": "" + } + ], + "icon": "core/workflow/inputType/customVariable" + }, + { + "id": "uypz7h", + "key": "status_code", + "label": "status_code", + "type": "custom", + "description": "", + "required": false, + "valueType": "string", + "list": [ + { + "value": "", + "label": "" + } + ], + "defaultValue": "2010", + "enums": [ + { + "value": "", + "label": "" + } + ], + "icon": "core/workflow/inputType/customVariable" + } + ], + "questionGuide": { + "open": false, + "model": "gpt-4o-mini", + "customPrompt": "" + }, + "ttsConfig": { + "type": "web" + }, + "whisperConfig": { + "open": false, + "autoSend": false, + "autoTTSResponse": false + }, + "scheduledTriggerConfig": { + "cronString": "", + "timezone": "Asia/Shanghai", + "defaultPrompt": "" + }, + "chatInputGuide": { + "open": false, + "textList": [], + "customUrl": "" + }, + "instruction": "", + "autoExecute": { + "open": false, + "defaultPrompt": "" + }, + "_id": "6805d651bacd8a3542ab26c1" + } +} \ No newline at end of file