mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-23 13:03:50 +00:00
App template market (#2337)
* feat: add app template market (#2012) * feat: add app template market * fix * fix * i18n * fix * perf: template market ux * perf: simple mode app ui * perf: tempalte modal ui * perf: tempalte market ui * perf: template position * feat: create app modal * regiter default app * perf: icon * change templates position (#2331) * change templates position * fix * perf: template market ux --------- Co-authored-by: heheer <heheer@sealos.io>
This commit is contained in:
467
projects/app/public/appMarketTemplates/CQ/template.json
Normal file
467
projects/app/public/appMarketTemplates/CQ/template.json
Normal file
@@ -0,0 +1,467 @@
|
||||
{
|
||||
"name": "问题分类 + 知识库",
|
||||
"intro": "先对用户的问题进行分类,再根据不同类型问题,执行不同的操作",
|
||||
"author": "Fastgpt",
|
||||
"avatar": "core/workflow/template/questionClassify",
|
||||
"tags": ["office-services"],
|
||||
"type": "advanced",
|
||||
"workflow": {
|
||||
"nodes": [
|
||||
{
|
||||
"nodeId": "userGuide",
|
||||
"name": "系统配置",
|
||||
"intro": "可以配置应用的系统参数",
|
||||
"avatar": "core/workflow/template/systemConfig",
|
||||
"flowNodeType": "FlowNodeTypeEnum.systemConfig",
|
||||
"position": {
|
||||
"x": 531.2422736065552,
|
||||
"y": -486.7611729549753
|
||||
},
|
||||
"version": "481",
|
||||
"inputs": [
|
||||
{
|
||||
"key": "welcomeText",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "core.app.Welcome Text",
|
||||
"value": "你好,我是知识库助手,请不要忘记选择知识库噢~\n[你是谁]\n[如何使用]"
|
||||
},
|
||||
{
|
||||
"key": "variables",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.any",
|
||||
"label": "core.app.Chat Variable",
|
||||
"value": []
|
||||
},
|
||||
{
|
||||
"key": "questionGuide",
|
||||
"valueType": "WorkflowIOValueTypeEnum.boolean",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "core.app.Question Guide",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "tts",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.any",
|
||||
"label": "",
|
||||
"value": {
|
||||
"type": "web"
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "whisper",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.any",
|
||||
"label": "",
|
||||
"value": {
|
||||
"open": false,
|
||||
"autoSend": false,
|
||||
"autoTTSResponse": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "scheduleTrigger",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.any",
|
||||
"label": "",
|
||||
"value": null
|
||||
}
|
||||
],
|
||||
"outputs": []
|
||||
},
|
||||
{
|
||||
"nodeId": "workflowStartNodeId",
|
||||
"name": "流程开始",
|
||||
"intro": "",
|
||||
"avatar": "core/workflow/template/workflowStart",
|
||||
"flowNodeType": "FlowNodeTypeEnum.workflowStart",
|
||||
"position": {
|
||||
"x": 558.4082376415505,
|
||||
"y": 123.72387429194112
|
||||
},
|
||||
"version": "481",
|
||||
"inputs": [
|
||||
{
|
||||
"key": "userChatInput",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.reference", "FlowNodeInputTypeEnum.textarea"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "用户问题",
|
||||
"required": true,
|
||||
"toolDescription": "用户问题"
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"id": "userChatInput",
|
||||
"key": "userChatInput",
|
||||
"label": "core.module.input.label.user question",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"type": "FlowNodeOutputTypeEnum.static"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"nodeId": "7BdojPlukIQw",
|
||||
"name": "AI 对话",
|
||||
"intro": "AI 大模型对话",
|
||||
"avatar": "core/workflow/template/aiChat",
|
||||
"flowNodeType": "FlowNodeTypeEnum.chatNode",
|
||||
"showStatus": true,
|
||||
"position": {
|
||||
"x": 2701.1267277679685,
|
||||
"y": -767.8956312653042
|
||||
},
|
||||
"version": "481",
|
||||
"inputs": [
|
||||
{
|
||||
"key": "model",
|
||||
"renderTypeList": [
|
||||
"FlowNodeInputTypeEnum.settingLLMModel",
|
||||
"FlowNodeInputTypeEnum.reference"
|
||||
],
|
||||
"label": "core.module.input.label.aiModel",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"value": "gpt-4o-mini"
|
||||
},
|
||||
{
|
||||
"key": "temperature",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"value": 3,
|
||||
"valueType": "WorkflowIOValueTypeEnum.number",
|
||||
"min": 0,
|
||||
"max": 10,
|
||||
"step": 1
|
||||
},
|
||||
{
|
||||
"key": "maxToken",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"value": 1950,
|
||||
"valueType": "WorkflowIOValueTypeEnum.number",
|
||||
"min": 100,
|
||||
"max": 4000,
|
||||
"step": 50
|
||||
},
|
||||
{
|
||||
"key": "isResponseAnswerText",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"value": true,
|
||||
"valueType": "WorkflowIOValueTypeEnum.boolean"
|
||||
},
|
||||
{
|
||||
"key": "quoteTemplate",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string"
|
||||
},
|
||||
{
|
||||
"key": "quotePrompt",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string"
|
||||
},
|
||||
{
|
||||
"key": "systemPrompt",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.textarea", "FlowNodeInputTypeEnum.reference"],
|
||||
"max": 3000,
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "core.ai.Prompt",
|
||||
"description": "core.app.tip.chatNodeSystemPromptTip",
|
||||
"placeholder": "core.app.tip.chatNodeSystemPromptTip",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"key": "history",
|
||||
"renderTypeList": [
|
||||
"FlowNodeInputTypeEnum.numberInput",
|
||||
"FlowNodeInputTypeEnum.reference"
|
||||
],
|
||||
"valueType": "WorkflowIOValueTypeEnum.chatHistory",
|
||||
"label": "core.module.input.label.chat history",
|
||||
"required": true,
|
||||
"min": 0,
|
||||
"max": 30,
|
||||
"value": 6
|
||||
},
|
||||
{
|
||||
"key": "userChatInput",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.reference", "FlowNodeInputTypeEnum.textarea"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "用户问题",
|
||||
"required": true,
|
||||
"toolDescription": "用户问题",
|
||||
"value": ["workflowStartNodeId", "userChatInput"]
|
||||
},
|
||||
{
|
||||
"key": "quoteQA",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.settingDatasetQuotePrompt"],
|
||||
"label": "",
|
||||
"debugLabel": "知识库引用",
|
||||
"description": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.datasetQuote",
|
||||
"value": ["MNMMMIjjWyMU", "quoteQA"]
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"id": "history",
|
||||
"key": "history",
|
||||
"label": "core.module.output.label.New context",
|
||||
"description": "core.module.output.description.New context",
|
||||
"valueType": "WorkflowIOValueTypeEnum.chatHistory",
|
||||
"type": "FlowNodeOutputTypeEnum.static"
|
||||
},
|
||||
{
|
||||
"id": "answerText",
|
||||
"key": "answerText",
|
||||
"label": "core.module.output.label.Ai response content",
|
||||
"description": "core.module.output.description.Ai response content",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"type": "FlowNodeOutputTypeEnum.static"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"nodeId": "rvbo634w3AYj",
|
||||
"name": "问题分类",
|
||||
"intro": "根据用户的历史记录和当前问题判断该次提问的类型。可以添加多组问题类型,下面是一个模板例子:\n类型1: 打招呼\n类型2: 关于商品\"使用\"问题\n类型3: 关于商品\"购买\"问题\n类型4: 其他问题",
|
||||
"avatar": "core/workflow/template/questionClassify",
|
||||
"flowNodeType": "FlowNodeTypeEnum.classifyQuestion",
|
||||
"showStatus": true,
|
||||
"position": {
|
||||
"x": 1020.9667229609946,
|
||||
"y": -385.0060974413916
|
||||
},
|
||||
"version": "481",
|
||||
"inputs": [
|
||||
{
|
||||
"key": "model",
|
||||
"renderTypeList": [
|
||||
"FlowNodeInputTypeEnum.selectLLMModel",
|
||||
"FlowNodeInputTypeEnum.reference"
|
||||
],
|
||||
"label": "core.module.input.label.aiModel",
|
||||
"required": true,
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"llmModelType": "classify",
|
||||
"value": "gpt-4o-mini"
|
||||
},
|
||||
{
|
||||
"key": "systemPrompt",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.textarea", "FlowNodeInputTypeEnum.reference"],
|
||||
"max": 3000,
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "core.module.input.label.Background",
|
||||
"description": "core.module.input.description.Background",
|
||||
"placeholder": "core.module.input.placeholder.Classify background",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"key": "history",
|
||||
"renderTypeList": [
|
||||
"FlowNodeInputTypeEnum.numberInput",
|
||||
"FlowNodeInputTypeEnum.reference"
|
||||
],
|
||||
"valueType": "WorkflowIOValueTypeEnum.chatHistory",
|
||||
"label": "core.module.input.label.chat history",
|
||||
"required": true,
|
||||
"min": 0,
|
||||
"max": 30,
|
||||
"value": 6
|
||||
},
|
||||
{
|
||||
"key": "userChatInput",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.reference", "FlowNodeInputTypeEnum.textarea"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "用户问题",
|
||||
"required": true,
|
||||
"value": ["workflowStartNodeId", "userChatInput"]
|
||||
},
|
||||
{
|
||||
"key": "agents",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.custom"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.any",
|
||||
"label": "",
|
||||
"value": [
|
||||
{
|
||||
"value": "关于电影《星际穿越》的问题",
|
||||
"key": "wqre"
|
||||
},
|
||||
{
|
||||
"value": "打招呼、问候等问题",
|
||||
"key": "sdfa"
|
||||
},
|
||||
{
|
||||
"value": "其他问题",
|
||||
"key": "agex"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"id": "cqResult",
|
||||
"key": "cqResult",
|
||||
"label": "分类结果",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"type": "FlowNodeOutputTypeEnum.static"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"nodeId": "7kwgL1dVlwG6",
|
||||
"name": "指定回复",
|
||||
"intro": "该模块可以直接回复一段指定的内容。常用于引导、提示。非字符串内容传入时,会转成字符串进行输出。",
|
||||
"avatar": "core/workflow/template/reply",
|
||||
"flowNodeType": "FlowNodeTypeEnum.answerNode",
|
||||
"position": {
|
||||
"x": 1874.9167551056487,
|
||||
"y": 434.98431875888207
|
||||
},
|
||||
"version": "481",
|
||||
"inputs": [
|
||||
{
|
||||
"key": "text",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.textarea", "FlowNodeInputTypeEnum.reference"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "core.module.input.label.Response content",
|
||||
"description": "core.module.input.description.Response content",
|
||||
"placeholder": "core.module.input.description.Response content",
|
||||
"selectedTypeIndex": 1,
|
||||
"value": ["rvbo634w3AYj", "cqResult"]
|
||||
}
|
||||
],
|
||||
"outputs": []
|
||||
},
|
||||
{
|
||||
"nodeId": "MNMMMIjjWyMU",
|
||||
"name": "知识库搜索",
|
||||
"intro": "调用\"语义检索\"和\"全文检索\"能力,从\"知识库\"中查找可能与问题相关的参考内容",
|
||||
"avatar": "core/workflow/template/datasetSearch",
|
||||
"flowNodeType": "FlowNodeTypeEnum.datasetSearchNode",
|
||||
"showStatus": true,
|
||||
"position": {
|
||||
"x": 1851.010152279949,
|
||||
"y": -613.3555232387284
|
||||
},
|
||||
"version": "481",
|
||||
"inputs": [
|
||||
{
|
||||
"key": "datasets",
|
||||
"renderTypeList": [
|
||||
"FlowNodeInputTypeEnum.selectDataset",
|
||||
"FlowNodeInputTypeEnum.reference"
|
||||
],
|
||||
"label": "core.module.input.label.Select dataset",
|
||||
"value": [],
|
||||
"valueType": "WorkflowIOValueTypeEnum.selectDataset",
|
||||
"list": [],
|
||||
"required": true
|
||||
},
|
||||
{
|
||||
"key": "similarity",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.selectDatasetParamsModal"],
|
||||
"label": "",
|
||||
"value": 0.4,
|
||||
"valueType": "WorkflowIOValueTypeEnum.number"
|
||||
},
|
||||
{
|
||||
"key": "limit",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"value": 1500,
|
||||
"valueType": "WorkflowIOValueTypeEnum.number"
|
||||
},
|
||||
{
|
||||
"key": "searchMode",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"value": "embedding"
|
||||
},
|
||||
{
|
||||
"key": "usingReRank",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.boolean",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"key": "datasetSearchUsingExtensionQuery",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.boolean",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"key": "datasetSearchExtensionModel",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string"
|
||||
},
|
||||
{
|
||||
"key": "datasetSearchExtensionBg",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.hidden"],
|
||||
"label": "",
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"key": "userChatInput",
|
||||
"renderTypeList": ["FlowNodeInputTypeEnum.reference", "FlowNodeInputTypeEnum.textarea"],
|
||||
"valueType": "WorkflowIOValueTypeEnum.string",
|
||||
"label": "用户问题",
|
||||
"required": true,
|
||||
"toolDescription": "需要检索的内容",
|
||||
"value": ["workflowStartNodeId", "userChatInput"]
|
||||
}
|
||||
],
|
||||
"outputs": [
|
||||
{
|
||||
"id": "quoteQA",
|
||||
"key": "quoteQA",
|
||||
"label": "core.module.Dataset quote.label",
|
||||
"description": "特殊数组格式,搜索结果为空时,返回空数组。",
|
||||
"type": "FlowNodeOutputTypeEnum.static",
|
||||
"valueType": "WorkflowIOValueTypeEnum.datasetQuote"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"edges": [
|
||||
{
|
||||
"source": "workflowStartNodeId",
|
||||
"target": "rvbo634w3AYj",
|
||||
"sourceHandle": "workflowStartNodeId-source-right",
|
||||
"targetHandle": "rvbo634w3AYj-target-left"
|
||||
},
|
||||
{
|
||||
"source": "rvbo634w3AYj",
|
||||
"target": "7kwgL1dVlwG6",
|
||||
"sourceHandle": "rvbo634w3AYj-source-agex",
|
||||
"targetHandle": "7kwgL1dVlwG6-target-left"
|
||||
},
|
||||
{
|
||||
"source": "rvbo634w3AYj",
|
||||
"target": "MNMMMIjjWyMU",
|
||||
"sourceHandle": "rvbo634w3AYj-source-wqre",
|
||||
"targetHandle": "MNMMMIjjWyMU-target-left"
|
||||
},
|
||||
{
|
||||
"source": "MNMMMIjjWyMU",
|
||||
"target": "7BdojPlukIQw",
|
||||
"sourceHandle": "MNMMMIjjWyMU-source-right",
|
||||
"targetHandle": "7BdojPlukIQw-target-left"
|
||||
},
|
||||
{
|
||||
"source": "rvbo634w3AYj",
|
||||
"target": "7kwgL1dVlwG6",
|
||||
"sourceHandle": "rvbo634w3AYj-source-sdfa",
|
||||
"targetHandle": "7kwgL1dVlwG6-target-left"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user