You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

technical_docs_qa.json 28KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331
  1. {
  2. "id": 9,
  3. "title": "Technical Docs QA",
  4. "description": "This is a document question-and-answer system based on a knowledge base. When a user asks a question, it retrieves relevant document content to provide accurate answers.",
  5. "canvas_type": "Customer Support",
  6. "dsl": {
  7. "components": {
  8. "Agent:StalePandasDream": {
  9. "downstream": [
  10. "Message:BrownPugsStick"
  11. ],
  12. "obj": {
  13. "component_name": "Agent",
  14. "params": {
  15. "delay_after_error": 1,
  16. "description": "",
  17. "exception_comment": "",
  18. "exception_default_value": "",
  19. "exception_goto": [],
  20. "exception_method": null,
  21. "frequencyPenaltyEnabled": false,
  22. "frequency_penalty": 0.7,
  23. "llm_id": "deepseek-chat@DeepSeek",
  24. "maxTokensEnabled": false,
  25. "max_retries": 3,
  26. "max_rounds": 5,
  27. "max_tokens": 256,
  28. "mcp": [],
  29. "message_history_window_size": 12,
  30. "outputs": {
  31. "content": {
  32. "type": "string",
  33. "value": ""
  34. }
  35. },
  36. "presencePenaltyEnabled": false,
  37. "presence_penalty": 0.4,
  38. "prompts": [
  39. {
  40. "content": "The user query is {sys.query}",
  41. "role": "user"
  42. }
  43. ],
  44. "sys_prompt": "# Role\n\nYou are the **Docs QA Agent**, a specialized knowledge base assistant responsible for providing accurate answers based strictly on the connected documentation repository.\n\n# Core Principles\n\n1. **Knowledge Base Only**: Answer questions EXCLUSIVELY based on information retrieved from the connected knowledge base.\n\n2. **No Content Creation**: Never generate, infer, or create information that is not explicitly present in the retrieved documents.\n\n3. **Source Transparency**: Always indicate when information comes from the knowledge base vs. when it's unavailable.\n\n4. **Accuracy Over Completeness**: Prefer incomplete but accurate answers over complete but potentially inaccurate ones.\n\n# Response Guidelines\n\n## When Information is Available\n\n- Provide direct answers based on retrieved content\n\n- Quote relevant sections when helpful\n\n- Cite the source document/section if available\n\n- Use phrases like: \"According to the documentation...\" or \"Based on the knowledge base...\"\n\n## When Information is Unavailable\n\n- Clearly state: \"I cannot find this information in the current knowledge base.\"\n\n- Do NOT attempt to fill gaps with general knowledge\n\n- Suggest alternative questions that might be covered in the docs\n\n- Use phrases like: \"The documentation does not cover...\" or \"This information is not available in the knowledge base.\"\n\n# Response Format\n\n```markdown\n\n## Answer\n\n[Your response based strictly on knowledge base content]\n\n**Always do these:**\n\n- Use the Retrieval tool for every question\n\n- Be transparent about information availability\n\n- Stick to documented facts only\n\n- Acknowledge knowledge base limitations\n\n",
  45. "temperature": 0.1,
  46. "temperatureEnabled": true,
  47. "tools": [
  48. {
  49. "component_name": "Retrieval",
  50. "name": "Retrieval",
  51. "params": {
  52. "cross_languages": [],
  53. "description": "This is a technical docs knowledge bases.",
  54. "empty_response": "",
  55. "kb_ids": [],
  56. "keywords_similarity_weight": 0.7,
  57. "outputs": {
  58. "formalized_content": {
  59. "type": "string",
  60. "value": ""
  61. }
  62. },
  63. "rerank_id": "",
  64. "similarity_threshold": 0.2,
  65. "top_k": 1024,
  66. "top_n": 8,
  67. "use_kg": false
  68. }
  69. }
  70. ],
  71. "topPEnabled": false,
  72. "top_p": 0.3,
  73. "user_prompt": "",
  74. "visual_files_var": ""
  75. }
  76. },
  77. "upstream": [
  78. "begin"
  79. ]
  80. },
  81. "Message:BrownPugsStick": {
  82. "downstream": [],
  83. "obj": {
  84. "component_name": "Message",
  85. "params": {
  86. "content": [
  87. "{Agent:StalePandasDream@content}"
  88. ]
  89. }
  90. },
  91. "upstream": [
  92. "Agent:StalePandasDream"
  93. ]
  94. },
  95. "begin": {
  96. "downstream": [
  97. "Agent:StalePandasDream"
  98. ],
  99. "obj": {
  100. "component_name": "Begin",
  101. "params": {}
  102. },
  103. "upstream": []
  104. }
  105. },
  106. "globals": {
  107. "sys.conversation_turns": 0,
  108. "sys.files": [],
  109. "sys.query": "",
  110. "sys.user_id": ""
  111. },
  112. "graph": {
  113. "edges": [
  114. {
  115. "data": {
  116. "isHovered": false
  117. },
  118. "id": "xy-edge__beginstart-Agent:StalePandasDreamend",
  119. "source": "begin",
  120. "sourceHandle": "start",
  121. "target": "Agent:StalePandasDream",
  122. "targetHandle": "end"
  123. },
  124. {
  125. "data": {
  126. "isHovered": false
  127. },
  128. "id": "xy-edge__Agent:StalePandasDreamstart-Message:BrownPugsStickend",
  129. "source": "Agent:StalePandasDream",
  130. "sourceHandle": "start",
  131. "target": "Message:BrownPugsStick",
  132. "targetHandle": "end"
  133. },
  134. {
  135. "id": "xy-edge__Agent:StalePandasDreamtool-Tool:PrettyMasksFloatend",
  136. "source": "Agent:StalePandasDream",
  137. "sourceHandle": "tool",
  138. "target": "Tool:PrettyMasksFloat",
  139. "targetHandle": "end"
  140. }
  141. ],
  142. "nodes": [
  143. {
  144. "data": {
  145. "label": "Begin",
  146. "name": "begin"
  147. },
  148. "dragging": false,
  149. "id": "begin",
  150. "measured": {
  151. "height": 48,
  152. "width": 200
  153. },
  154. "position": {
  155. "x": 47.500000000000014,
  156. "y": 199.5
  157. },
  158. "selected": false,
  159. "sourcePosition": "left",
  160. "targetPosition": "right",
  161. "type": "beginNode"
  162. },
  163. {
  164. "data": {
  165. "form": {
  166. "delay_after_error": 1,
  167. "description": "",
  168. "exception_comment": "",
  169. "exception_default_value": "",
  170. "exception_goto": [],
  171. "exception_method": null,
  172. "frequencyPenaltyEnabled": false,
  173. "frequency_penalty": 0.7,
  174. "llm_id": "deepseek-chat@DeepSeek",
  175. "maxTokensEnabled": false,
  176. "max_retries": 3,
  177. "max_rounds": 5,
  178. "max_tokens": 256,
  179. "mcp": [],
  180. "message_history_window_size": 12,
  181. "outputs": {
  182. "content": {
  183. "type": "string",
  184. "value": ""
  185. }
  186. },
  187. "presencePenaltyEnabled": false,
  188. "presence_penalty": 0.4,
  189. "prompts": [
  190. {
  191. "content": "The user query is {sys.query}",
  192. "role": "user"
  193. }
  194. ],
  195. "sys_prompt": "# Role\n\nYou are the **Docs QA Agent**, a specialized knowledge base assistant responsible for providing accurate answers based strictly on the connected documentation repository.\n\n# Core Principles\n\n1. **Knowledge Base Only**: Answer questions EXCLUSIVELY based on information retrieved from the connected knowledge base.\n\n2. **No Content Creation**: Never generate, infer, or create information that is not explicitly present in the retrieved documents.\n\n3. **Source Transparency**: Always indicate when information comes from the knowledge base vs. when it's unavailable.\n\n4. **Accuracy Over Completeness**: Prefer incomplete but accurate answers over complete but potentially inaccurate ones.\n\n# Response Guidelines\n\n## When Information is Available\n\n- Provide direct answers based on retrieved content\n\n- Quote relevant sections when helpful\n\n- Cite the source document/section if available\n\n- Use phrases like: \"According to the documentation...\" or \"Based on the knowledge base...\"\n\n## When Information is Unavailable\n\n- Clearly state: \"I cannot find this information in the current knowledge base.\"\n\n- Do NOT attempt to fill gaps with general knowledge\n\n- Suggest alternative questions that might be covered in the docs\n\n- Use phrases like: \"The documentation does not cover...\" or \"This information is not available in the knowledge base.\"\n\n# Response Format\n\n```markdown\n\n## Answer\n\n[Your response based strictly on knowledge base content]\n\n**Always do these:**\n\n- Use the Retrieval tool for every question\n\n- Be transparent about information availability\n\n- Stick to documented facts only\n\n- Acknowledge knowledge base limitations\n\n",
  196. "temperature": 0.1,
  197. "temperatureEnabled": true,
  198. "tools": [
  199. {
  200. "component_name": "Retrieval",
  201. "name": "Retrieval",
  202. "params": {
  203. "cross_languages": [],
  204. "description": "This is a technical docs knowledge bases.",
  205. "empty_response": "",
  206. "kb_ids": [],
  207. "keywords_similarity_weight": 0.7,
  208. "outputs": {
  209. "formalized_content": {
  210. "type": "string",
  211. "value": ""
  212. }
  213. },
  214. "rerank_id": "",
  215. "similarity_threshold": 0.2,
  216. "top_k": 1024,
  217. "top_n": 8,
  218. "use_kg": false
  219. }
  220. }
  221. ],
  222. "topPEnabled": false,
  223. "top_p": 0.3,
  224. "user_prompt": "",
  225. "visual_files_var": ""
  226. },
  227. "label": "Agent",
  228. "name": "Docs QA Agent"
  229. },
  230. "dragging": false,
  231. "id": "Agent:StalePandasDream",
  232. "measured": {
  233. "height": 87,
  234. "width": 200
  235. },
  236. "position": {
  237. "x": 351.5,
  238. "y": 231
  239. },
  240. "selected": true,
  241. "sourcePosition": "right",
  242. "targetPosition": "left",
  243. "type": "agentNode"
  244. },
  245. {
  246. "data": {
  247. "form": {
  248. "content": [
  249. "{Agent:StalePandasDream@content}"
  250. ]
  251. },
  252. "label": "Message",
  253. "name": "Message_0"
  254. },
  255. "dragging": false,
  256. "id": "Message:BrownPugsStick",
  257. "measured": {
  258. "height": 56,
  259. "width": 200
  260. },
  261. "position": {
  262. "x": 671.5,
  263. "y": 192.5
  264. },
  265. "selected": false,
  266. "sourcePosition": "right",
  267. "targetPosition": "left",
  268. "type": "messageNode"
  269. },
  270. {
  271. "data": {
  272. "form": {
  273. "description": "This is an agent for a specific task.",
  274. "user_prompt": "This is the order you need to send to the agent."
  275. },
  276. "label": "Tool",
  277. "name": "flow.tool_0"
  278. },
  279. "dragging": false,
  280. "id": "Tool:PrettyMasksFloat",
  281. "measured": {
  282. "height": 48,
  283. "width": 200
  284. },
  285. "position": {
  286. "x": 234.5,
  287. "y": 370.5
  288. },
  289. "selected": false,
  290. "sourcePosition": "right",
  291. "targetPosition": "left",
  292. "type": "toolNode"
  293. },
  294. {
  295. "data": {
  296. "form": {
  297. "text": "This is a document question-and-answer system based on a knowledge base. When a user asks a question, it retrieves relevant document content to provide accurate answers.\nProcess Steps\n\n#Begin\n\nWorkflow entry: Receive user questions\n\nDocs QA Agent\n\nAI Model: deepseek-chat\n\nFunction: Analyze user questions and understand query intent\n\nRetrieval\n\nFunction: Search for relevant information from connected document knowledge bases\n\nFeature: Ensures answers are based on actual document content\n\nMessage_0 (Output Response)\n\nReturns accurate answers to the user based on the knowledge base\n\n#Core Features\n\nAccuracy: Answers are strictly based on knowledge base content\n\nReliability: Avoid AI illusions and only provide information that is verifiable\n\nSimplicity: Linear process with fast response\n\n#Applicable Scenarios\n\nProduct Documentation Query\n\nTechnical Support Q&A\n\nInternal Enterprise Knowledge Base Search\n\nUser Manual Consultation"
  298. },
  299. "label": "Note",
  300. "name": "Workflow Overall Description"
  301. },
  302. "dragHandle": ".note-drag-handle",
  303. "dragging": false,
  304. "height": 154,
  305. "id": "Note:SwiftSuitsFlow",
  306. "measured": {
  307. "height": 154,
  308. "width": 374
  309. },
  310. "position": {
  311. "x": 349.65276636527506,
  312. "y": 28.869446726944993
  313. },
  314. "resizing": false,
  315. "selected": false,
  316. "sourcePosition": "right",
  317. "targetPosition": "left",
  318. "type": "noteNode",
  319. "width": 374
  320. }
  321. ]
  322. },
  323. "history": [],
  324. "messages": [],
  325. "path": [],
  326. "retrieval": []
  327. },
  328. "avatar": "data:image/png;base64,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"
  329. }