{
    "id": 8,
    "title": "Intelligent investment advisor",
    "description": "An intelligent investment advisor that answers your financial questions using real-time domestic financial data.",
    "canvas_type": "chatbot",
    "dsl": {
      "answer": [],
      "components": {
        "AkShare:CalmHotelsKnow": {
          "downstream": [
            "Generate:SolidAreasRing"
          ],
          "obj": {
            "component_name": "AkShare",
            "inputs": [],
            "output": null,
            "params": {
              "debug_inputs": [],
              "inputs": [],
              "message_history_window_size": 22,
              "output": null,
              "output_var_name": "output",
              "query": [],
              "top_n": 10
            }
          },
          "upstream": [
            "KeywordExtract:BreezyGoatsRead"
          ]
        },
        "Answer:NeatLandsWave": {
          "downstream": [
            "WenCai:TenParksOpen",
            "KeywordExtract:BreezyGoatsRead"
          ],
          "obj": {
            "component_name": "Answer",
            "inputs": [],
            "output": null,
            "params": {
              "debug_inputs": [],
              "inputs": [],
              "message_history_window_size": 22,
              "output": null,
              "output_var_name": "output",
              "post_answers": [],
              "query": []
            }
          },
          "upstream": [
            "begin",
            "Generate:SolidAreasRing"
          ]
        },
        "Generate:SolidAreasRing": {
          "downstream": [
            "Answer:NeatLandsWave"
          ],
          "obj": {
            "component_name": "Generate",
            "inputs": [],
            "output": null,
            "params": {
              "cite": true,
              "debug_inputs": [],
              "frequency_penalty": 0.7,
              "inputs": [],
              "llm_id": "deepseek-chat@DeepSeek",
              "max_tokens": 0,
              "message_history_window_size": 1,
              "output": null,
              "output_var_name": "output",
              "parameters": [],
              "presence_penalty": 0.4,
              "prompt": "Role: You are a professional financial counseling assistant.\n\nTask: Answer user's question based on content provided by Wencai and AkShare.\n\nNotice:\n- Output no more than 5 news items from AkShare if there's content provided by Wencai.\n- Items from AkShare MUST have a corresponding URL link.\n\n############\nContent provided by Wencai: \n{WenCai:TenParksOpen}\n\n################\nContent provided by AkShare: \n\n{AkShare:CalmHotelsKnow}\n\n\n",
              "query": [],
              "temperature": 0.1,
              "top_p": 0.3
            }
          },
          "upstream": [
            "WenCai:TenParksOpen",
            "AkShare:CalmHotelsKnow"
          ]
        },
        "KeywordExtract:BreezyGoatsRead": {
          "downstream": [
            "AkShare:CalmHotelsKnow"
          ],
          "obj": {
            "component_name": "KeywordExtract",
            "inputs": [],
            "output": null,
            "params": {
              "cite": true,
              "debug_inputs": [],
              "frequencyPenaltyEnabled": true,
              "frequency_penalty": 0.7,
              "inputs": [],
              "llm_id": "deepseek-chat@DeepSeek",
              "maxTokensEnabled": true,
              "max_tokens": 256,
              "message_history_window_size": 22,
              "output": null,
              "output_var_name": "output",
              "parameter": "Precise",
              "parameters": [],
              "presencePenaltyEnabled": true,
              "presence_penalty": 0.4,
              "prompt": "",
              "query": [],
              "temperature": 0.1,
              "temperatureEnabled": true,
              "topPEnabled": true,
              "top_n": 2,
              "top_p": 0.3
            }
          },
          "upstream": [
            "Answer:NeatLandsWave"
          ]
        },
        "WenCai:TenParksOpen": {
          "downstream": [
            "Generate:SolidAreasRing"
          ],
          "obj": {
            "component_name": "WenCai",
            "inputs": [],
            "output": null,
            "params": {
              "debug_inputs": [],
              "inputs": [],
              "message_history_window_size": 22,
              "output": null,
              "output_var_name": "output",
              "query": [],
              "query_type": "stock",
              "top_n": 5
            }
          },
          "upstream": [
            "Answer:NeatLandsWave"
          ]
        },
        "begin": {
          "downstream": [
            "Answer:NeatLandsWave"
          ],
          "obj": {
            "component_name": "Begin",
            "inputs": [],
            "output": null,
            "params": {
              "debug_inputs": [],
              "inputs": [],
              "message_history_window_size": 22,
              "output": null,
              "output_var_name": "output",
              "prologue": "Hi there!",
              "query": []
            }
          },
          "upstream": []
        }
      },
      "embed_id": "",
      "graph": {
        "edges": [
          {
            "id": "reactflow__edge-begin-Answer:NeatLandsWavec",
            "markerEnd": "logo",
            "source": "begin",
            "sourceHandle": null,
            "style": {
              "stroke": "rgb(202 197 245)",
              "strokeWidth": 2
            },
            "target": "Answer:NeatLandsWave",
            "targetHandle": "c",
            "type": "buttonEdge"
          },
          {
            "id": "reactflow__edge-Answer:NeatLandsWaveb-WenCai:TenParksOpenc",
            "markerEnd": "logo",
            "source": "Answer:NeatLandsWave",
            "sourceHandle": "b",
            "style": {
              "stroke": "rgb(202 197 245)",
              "strokeWidth": 2
            },
            "target": "WenCai:TenParksOpen",
            "targetHandle": "c",
            "type": "buttonEdge"
          },
          {
            "id": "reactflow__edge-KeywordExtract:BreezyGoatsReadb-AkShare:CalmHotelsKnowc",
            "markerEnd": "logo",
            "source": "KeywordExtract:BreezyGoatsRead",
            "sourceHandle": "b",
            "style": {
              "stroke": "rgb(202 197 245)",
              "strokeWidth": 2
            },
            "target": "AkShare:CalmHotelsKnow",
            "targetHandle": "c",
            "type": "buttonEdge"
          },
          {
            "id": "reactflow__edge-Answer:NeatLandsWaveb-KeywordExtract:BreezyGoatsReadc",
            "markerEnd": "logo",
            "source": "Answer:NeatLandsWave",
            "sourceHandle": "b",
            "style": {
              "stroke": "rgb(202 197 245)",
              "strokeWidth": 2
            },
            "target": "KeywordExtract:BreezyGoatsRead",
            "targetHandle": "c",
            "type": "buttonEdge"
          },
          {
            "id": "xy-edge__WenCai:TenParksOpenb-Generate:SolidAreasRingb",
            "markerEnd": "logo",
            "source": "WenCai:TenParksOpen",
            "sourceHandle": "b",
            "style": {
              "stroke": "rgb(202 197 245)",
              "strokeWidth": 2
            },
            "target": "Generate:SolidAreasRing",
            "targetHandle": "b",
            "type": "buttonEdge",
            "zIndex": 1001
          },
          {
            "id": "xy-edge__AkShare:CalmHotelsKnowb-Generate:SolidAreasRingb",
            "markerEnd": "logo",
            "source": "AkShare:CalmHotelsKnow",
            "sourceHandle": "b",
            "style": {
              "stroke": "rgb(202 197 245)",
              "strokeWidth": 2
            },
            "target": "Generate:SolidAreasRing",
            "targetHandle": "b",
            "type": "buttonEdge",
            "zIndex": 1001
          },
          {
            "id": "xy-edge__Generate:SolidAreasRingc-Answer:NeatLandsWavec",
            "markerEnd": "logo",
            "source": "Generate:SolidAreasRing",
            "sourceHandle": "c",
            "style": {
              "stroke": "rgb(202 197 245)",
              "strokeWidth": 2
            },
            "target": "Answer:NeatLandsWave",
            "targetHandle": "c",
            "type": "buttonEdge",
            "zIndex": 1001
          }
        ],
        "nodes": [
          {
            "data": {
              "form": {
                "prologue": "Hi there!"
              },
              "label": "Begin",
              "name": "Opening"
            },
            "dragging": false,
            "height": 44,
            "id": "begin",
            "measured": {
              "height": 44,
              "width": 100
            },
            "position": {
              "x": -609.7949690891593,
              "y": -29.12385224725604
            },
            "positionAbsolute": {
              "x": -521.8118264317484,
              "y": -27.999467037576665
            },
            "selected": false,
            "sourcePosition": "left",
            "targetPosition": "right",
            "type": "beginNode"
          },
          {
            "data": {
              "form": {
                "query_type": "stock",
                "top_n": 5
              },
              "label": "WenCai",
              "name": "Wencai"
            },
            "dragging": false,
            "height": 44,
            "id": "WenCai:TenParksOpen",
            "measured": {
              "height": 44,
              "width": 200
            },
            "position": {
              "x": -13.030801663267397,
              "y": -30.557141660610256
            },
            "positionAbsolute": {
              "x": -13.030801663267397,
              "y": -30.557141660610256
            },
            "selected": false,
            "sourcePosition": "right",
            "targetPosition": "left",
            "type": "ragNode",
            "width": 200
          },
          {
            "data": {
              "form": {
                "top_n": 10
              },
              "label": "AkShare",
              "name": "AKShare"
            },
            "dragging": false,
            "height": 44,
            "id": "AkShare:CalmHotelsKnow",
            "measured": {
              "height": 44,
              "width": 200
            },
            "position": {
              "x": 250.32227681412806,
              "y": 74.24036022703525
            },
            "positionAbsolute": {
              "x": 267.17349571786156,
              "y": 100.01281266803943
            },
            "selected": false,
            "sourcePosition": "right",
            "targetPosition": "left",
            "type": "ragNode",
            "width": 200
          },
          {
            "data": {
              "form": {},
              "label": "Answer",
              "name": "Interact"
            },
            "dragging": false,
            "height": 44,
            "id": "Answer:NeatLandsWave",
            "measured": {
              "height": 44,
              "width": 200
            },
            "position": {
              "x": -304.0612563145512,
              "y": -29.054278091837944
            },
            "positionAbsolute": {
              "x": -304.0612563145512,
              "y": -29.054278091837944
            },
            "selected": false,
            "sourcePosition": "right",
            "targetPosition": "left",
            "type": "logicNode",
            "width": 200
          },
          {
            "data": {
              "form": {
                "frequencyPenaltyEnabled": true,
                "frequency_penalty": 0.7,
                "llm_id": "deepseek-chat@DeepSeek",
                "maxTokensEnabled": true,
                "max_tokens": 256,
                "parameter": "Precise",
                "presencePenaltyEnabled": true,
                "presence_penalty": 0.4,
                "temperature": 0.1,
                "temperatureEnabled": true,
                "topPEnabled": true,
                "top_n": 2,
                "top_p": 0.3
              },
              "label": "KeywordExtract",
              "name": "Keywords"
            },
            "dragging": false,
            "height": 86,
            "id": "KeywordExtract:BreezyGoatsRead",
            "measured": {
              "height": 86,
              "width": 200
            },
            "position": {
              "x": -12.734133905960277,
              "y": 53.63594331206494
            },
            "positionAbsolute": {
              "x": -17.690374759999543,
              "y": 80.39964392387697
            },
            "selected": false,
            "sourcePosition": "right",
            "targetPosition": "left",
            "type": "keywordNode",
            "width": 200
          },
          {
            "data": {
              "form": {
                "text": "Receives the user's financial inquiries and displays the large model's response to financial questions."
              },
              "label": "Note",
              "name": "N: Interact"
            },
            "dragHandle": ".note-drag-handle",
            "dragging": false,
            "height": 187,
            "id": "Note:FuzzyPoetsLearn",
            "measured": {
              "height": 187,
              "width": 214
            },
            "position": {
              "x": -296.5982116419186,
              "y": 38.77567426067935
            },
            "positionAbsolute": {
              "x": -296.5982116419186,
              "y": 38.77567426067935
            },
            "resizing": false,
            "selected": false,
            "sourcePosition": "right",
            "style": {
              "height": 162,
              "width": 214
            },
            "targetPosition": "left",
            "type": "noteNode",
            "width": 214
          },
          {
            "data": {
              "form": {
                "text": "Extracts keywords based on the user's financial questions for better retrieval."
              },
              "label": "Note",
              "name": "N: Keywords"
            },
            "dragHandle": ".note-drag-handle",
            "dragging": false,
            "height": 155,
            "id": "Note:FlatBagsRun",
            "measured": {
              "height": 155,
              "width": 213
            },
            "position": {
              "x": -14.82895160277127,
              "y": 186.52508153680787
            },
            "positionAbsolute": {
              "x": -14.82895160277127,
              "y": 186.52508153680787
            },
            "resizing": false,
            "selected": false,
            "sourcePosition": "right",
            "style": {
              "height": 155,
              "width": 213
            },
            "targetPosition": "left",
            "type": "noteNode",
            "width": 213
          },
          {
            "data": {
              "form": {
                "text": "Searches on akshare for the latest news about economics based on the keywords and returns the results."
              },
              "label": "Note",
              "name": "N: AKShare"
            },
            "dragHandle": ".note-drag-handle",
            "dragging": false,
            "height": 128,
            "id": "Note:WarmClothsSort",
            "measured": {
              "height": 128,
              "width": 283
            },
            "position": {
              "x": 259.53966185269985,
              "y": 209.6999260009385
            },
            "positionAbsolute": {
              "x": 573.7653319987893,
              "y": 102.64512355369035
            },
            "resizing": false,
            "selected": false,
            "sourcePosition": "right",
            "style": {
              "height": 128,
              "width": 283
            },
            "targetPosition": "left",
            "type": "noteNode",
            "width": 283
          },
          {
            "data": {
              "form": {
                "text": "Searches by Wencai to select stocks that satisfy user mentioned conditions."
              },
              "label": "Note",
              "name": "N: Wencai"
            },
            "dragHandle": ".note-drag-handle",
            "dragging": false,
            "height": 143,
            "id": "Note:TiredReadersWash",
            "measured": {
              "height": 143,
              "width": 285
            },
            "position": {
              "x": 251.25432007905098,
              "y": -97.53719402078019
            },
            "positionAbsolute": {
              "x": 571.4274792499875,
              "y": -37.07105560150117
            },
            "resizing": false,
            "selected": false,
            "sourcePosition": "right",
            "style": {
              "height": 128,
              "width": 285
            },
            "targetPosition": "left",
            "type": "noteNode",
            "width": 285
          },
          {
            "data": {
              "form": {
                "text": "The large model answers the user's medical health questions based on the searched and retrieved content."
              },
              "label": "Note",
              "name": "N: LLM"
            },
            "dragHandle": ".note-drag-handle",
            "dragging": false,
            "height": 179,
            "id": "Note:TameBoatsType",
            "measured": {
              "height": 179,
              "width": 260
            },
            "position": {
              "x": -167.45710806024056,
              "y": -372.5606558391346
            },
            "positionAbsolute": {
              "x": -7.849538042569293,
              "y": -427.90526378748035
            },
            "resizing": false,
            "selected": false,
            "sourcePosition": "right",
            "style": {
              "height": 163,
              "width": 212
            },
            "targetPosition": "left",
            "type": "noteNode",
            "width": 260
          },
          {
            "data": {
              "form": {
                "cite": true,
                "frequencyPenaltyEnabled": true,
                "frequency_penalty": 0.7,
                "llm_id": "deepseek-chat@DeepSeek",
                "maxTokensEnabled": false,
                "max_tokens": 256,
                "message_history_window_size": 1,
                "parameter": "Precise",
                "parameters": [],
                "presencePenaltyEnabled": true,
                "presence_penalty": 0.4,
                "prompt": "Role: You are a professional financial counseling assistant.\n\nTask: Answer user's question based on content provided by Wencai and AkShare.\n\nNotice:\n- Output no more than 5 news items from AkShare if there's content provided by Wencai.\n- Items from AkShare MUST have a corresponding URL link.\n\n############\nContent provided by Wencai: \n{WenCai:TenParksOpen}\n\n################\nContent provided by AkShare: \n\n{AkShare:CalmHotelsKnow}\n\n\n",
                "temperature": 0.1,
                "temperatureEnabled": true,
                "topPEnabled": true,
                "top_p": 0.3
              },
              "label": "Generate",
              "name": "LLM"
            },
            "dragging": false,
            "id": "Generate:SolidAreasRing",
            "measured": {
              "height": 106,
              "width": 200
            },
            "position": {
              "x": -161.00840949957603,
              "y": -180.04918322565015
            },
            "selected": false,
            "sourcePosition": "right",
            "targetPosition": "left",
            "type": "generateNode"
          }
        ]
      },
      "history": [],
      "messages": [],
      "path": [],
      "reference": []
    },
    "avatar": "data:image/png;base64,[encoded data, 26920 characters]"
}
