Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

choose_your_knowledge_base_agent.json 21KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417
  1. {
  2. "id": 19,
  3. "title": "Choose Your Knowledge Base Agent",
  4. "description": "Select your desired knowledge base from the dropdown menu. The Agent will only retrieve from the selected knowledge base and use this content to generate responses.",
  5. "canvas_type": "Agent",
  6. "dsl": {
  7. "components": {
  8. "Agent:BraveParksJoke": {
  9. "downstream": [
  10. "Message:HotMelonsObey"
  11. ],
  12. "obj": {
  13. "component_name": "Agent",
  14. "params": {
  15. "delay_after_error": 1,
  16. "description": "",
  17. "exception_default_value": "",
  18. "exception_goto": [],
  19. "exception_method": "",
  20. "frequencyPenaltyEnabled": false,
  21. "frequency_penalty": 0.7,
  22. "llm_id": "deepseek-chat@DeepSeek",
  23. "maxTokensEnabled": false,
  24. "max_retries": 3,
  25. "max_rounds": 1,
  26. "max_tokens": 256,
  27. "mcp": [],
  28. "message_history_window_size": 12,
  29. "outputs": {
  30. "content": {
  31. "type": "string",
  32. "value": ""
  33. }
  34. },
  35. "presencePenaltyEnabled": false,
  36. "presence_penalty": 0.4,
  37. "prompts": [
  38. {
  39. "content": "{sys.query}",
  40. "role": "user"
  41. }
  42. ],
  43. "sys_prompt": "#Role\nYou are a **Docs QA Agent**, a specialized knowledge base assistant responsible for providing accurate answers based strictly on the connected documentation repository.\n\n# Core Principles\n1. **Rapid Output**\nRetrieve and answer questions directly from the knowledge base using the retrieval tool. Immediately return results upon successful retrieval without additional reflection rounds. Prioritize rapid output even before reaching maximum iteration limits.\n2. **Knowledge Base Only**: Answer questions EXCLUSIVELY based on information retrieved from the connected knowledge base.\n3. **No Content Creation**: Never generate, infer, or create information that is not explicitly present in the retrieved documents.\n4. **Source Transparency**: Always indicate when information comes from the knowledge base vs. when it's unavailable.\n5. **Accuracy Over Completeness**: Prefer incomplete but accurate answers over complete but potentially inaccurate ones.\n# Response Guidelines\n## When Information is Available\n- Provide direct answers based on retrieved content\n- Quote relevant sections when helpful\n- Cite the source document/section if available\n- Use phrases like: \"According to the documentation...\" or \"Based on the knowledge base...\"\n## When Information is Unavailable\n- Clearly state: \"I cannot find this information in the current knowledge base.\"\n- Do NOT attempt to fill gaps with general knowledge\n- Suggest alternative questions that might be covered in the docs\n- Use phrases like: \"The documentation does not cover...\" or \"This information is not available in the knowledge base.\"\n# Response Format\n```markdown\n## Answer\n[Your response based strictly on knowledge base content]\n**Always do these:**\n- Use the Retrieval tool for every question\n- Be transparent about information availability\n- Stick to documented facts only\n- Acknowledge knowledge base limitations",
  44. "temperature": 0.1,
  45. "temperatureEnabled": true,
  46. "tools": [
  47. {
  48. "component_name": "Retrieval",
  49. "name": "Retrieval",
  50. "params": {
  51. "cross_languages": [],
  52. "description": "Retrieve from the knowledge bases.",
  53. "empty_response": "",
  54. "kb_ids": [
  55. "begin@knowledge base"
  56. ],
  57. "keywords_similarity_weight": 0.7,
  58. "outputs": {
  59. "formalized_content": {
  60. "type": "string",
  61. "value": ""
  62. }
  63. },
  64. "rerank_id": "",
  65. "similarity_threshold": 0.2,
  66. "top_k": 1024,
  67. "top_n": 8,
  68. "use_kg": false
  69. }
  70. }
  71. ],
  72. "topPEnabled": false,
  73. "top_p": 0.3,
  74. "user_prompt": "",
  75. "visual_files_var": ""
  76. }
  77. },
  78. "upstream": [
  79. "begin"
  80. ]
  81. },
  82. "Message:HotMelonsObey": {
  83. "downstream": [],
  84. "obj": {
  85. "component_name": "Message",
  86. "params": {
  87. "content": [
  88. "{Agent:BraveParksJoke@content}"
  89. ]
  90. }
  91. },
  92. "upstream": [
  93. "Agent:BraveParksJoke"
  94. ]
  95. },
  96. "begin": {
  97. "downstream": [
  98. "Agent:BraveParksJoke"
  99. ],
  100. "obj": {
  101. "component_name": "Begin",
  102. "params": {
  103. "enablePrologue": true,
  104. "inputs": {
  105. "knowledge base": {
  106. "name": "knowledge base",
  107. "optional": false,
  108. "options": [
  109. "knowledge base 1",
  110. "knowledge base 2",
  111. "knowledge base 3"
  112. ],
  113. "type": "options"
  114. }
  115. },
  116. "mode": "conversational",
  117. "prologue": "Hi! I'm your retrieval assistant. What do you want to ask?"
  118. }
  119. },
  120. "upstream": []
  121. }
  122. },
  123. "globals": {
  124. "sys.conversation_turns": 0,
  125. "sys.files": [],
  126. "sys.query": "",
  127. "sys.user_id": ""
  128. },
  129. "graph": {
  130. "edges": [
  131. {
  132. "data": {
  133. "isHovered": false
  134. },
  135. "id": "xy-edge__beginstart-Agent:BraveParksJokeend",
  136. "selected": false,
  137. "source": "begin",
  138. "sourceHandle": "start",
  139. "target": "Agent:BraveParksJoke",
  140. "targetHandle": "end"
  141. },
  142. {
  143. "data": {
  144. "isHovered": false
  145. },
  146. "id": "xy-edge__Agent:BraveParksJoketool-Tool:TangyWolvesDreamend",
  147. "source": "Agent:BraveParksJoke",
  148. "sourceHandle": "tool",
  149. "target": "Tool:TangyWolvesDream",
  150. "targetHandle": "end"
  151. },
  152. {
  153. "data": {
  154. "isHovered": false
  155. },
  156. "id": "xy-edge__Agent:BraveParksJokestart-Message:HotMelonsObeyend",
  157. "source": "Agent:BraveParksJoke",
  158. "sourceHandle": "start",
  159. "target": "Message:HotMelonsObey",
  160. "targetHandle": "end"
  161. }
  162. ],
  163. "nodes": [
  164. {
  165. "data": {
  166. "form": {
  167. "enablePrologue": true,
  168. "inputs": {
  169. "knowledge base": {
  170. "name": "knowledge base",
  171. "optional": false,
  172. "options": [
  173. "knowledge base 1",
  174. "knowledge base 2",
  175. "knowledge base 3"
  176. ],
  177. "type": "options"
  178. }
  179. },
  180. "mode": "conversational",
  181. "prologue": "Hi! I'm your retrieval assistant. What do you want to ask?"
  182. },
  183. "label": "Begin",
  184. "name": "begin"
  185. },
  186. "dragging": false,
  187. "id": "begin",
  188. "measured": {
  189. "height": 76,
  190. "width": 200
  191. },
  192. "position": {
  193. "x": 174.93384234796846,
  194. "y": -272.9638317458806
  195. },
  196. "selected": false,
  197. "sourcePosition": "left",
  198. "targetPosition": "right",
  199. "type": "beginNode"
  200. },
  201. {
  202. "data": {
  203. "form": {
  204. "delay_after_error": 1,
  205. "description": "",
  206. "exception_default_value": "",
  207. "exception_goto": [],
  208. "exception_method": "",
  209. "frequencyPenaltyEnabled": false,
  210. "frequency_penalty": 0.7,
  211. "llm_id": "deepseek-chat@DeepSeek",
  212. "maxTokensEnabled": false,
  213. "max_retries": 3,
  214. "max_rounds": 1,
  215. "max_tokens": 256,
  216. "mcp": [],
  217. "message_history_window_size": 12,
  218. "outputs": {
  219. "content": {
  220. "type": "string",
  221. "value": ""
  222. }
  223. },
  224. "presencePenaltyEnabled": false,
  225. "presence_penalty": 0.4,
  226. "prompts": [
  227. {
  228. "content": "{sys.query}",
  229. "role": "user"
  230. }
  231. ],
  232. "sys_prompt": "#Role\nYou are a **Docs QA Agent**, a specialized knowledge base assistant responsible for providing accurate answers based strictly on the connected documentation repository.\n\n# Core Principles\n1. **Rapid Output**\nRetrieve and answer questions directly from the knowledge base using the retrieval tool. Immediately return results upon successful retrieval without additional reflection rounds. Prioritize rapid output even before reaching maximum iteration limits.\n2. **Knowledge Base Only**: Answer questions EXCLUSIVELY based on information retrieved from the connected knowledge base.\n3. **No Content Creation**: Never generate, infer, or create information that is not explicitly present in the retrieved documents.\n4. **Source Transparency**: Always indicate when information comes from the knowledge base vs. when it's unavailable.\n5. **Accuracy Over Completeness**: Prefer incomplete but accurate answers over complete but potentially inaccurate ones.\n# Response Guidelines\n## When Information is Available\n- Provide direct answers based on retrieved content\n- Quote relevant sections when helpful\n- Cite the source document/section if available\n- Use phrases like: \"According to the documentation...\" or \"Based on the knowledge base...\"\n## When Information is Unavailable\n- Clearly state: \"I cannot find this information in the current knowledge base.\"\n- Do NOT attempt to fill gaps with general knowledge\n- Suggest alternative questions that might be covered in the docs\n- Use phrases like: \"The documentation does not cover...\" or \"This information is not available in the knowledge base.\"\n# Response Format\n```markdown\n## Answer\n[Your response based strictly on knowledge base content]\n**Always do these:**\n- Use the Retrieval tool for every question\n- Be transparent about information availability\n- Stick to documented facts only\n- Acknowledge knowledge base limitations",
  233. "temperature": 0.1,
  234. "temperatureEnabled": true,
  235. "tools": [
  236. {
  237. "component_name": "Retrieval",
  238. "name": "Retrieval",
  239. "params": {
  240. "cross_languages": [],
  241. "description": "Retrieve from the knowledge bases.",
  242. "empty_response": "",
  243. "kb_ids": [
  244. "begin@knowledge base"
  245. ],
  246. "keywords_similarity_weight": 0.7,
  247. "outputs": {
  248. "formalized_content": {
  249. "type": "string",
  250. "value": ""
  251. }
  252. },
  253. "rerank_id": "",
  254. "similarity_threshold": 0.2,
  255. "top_k": 1024,
  256. "top_n": 8,
  257. "use_kg": false
  258. }
  259. }
  260. ],
  261. "topPEnabled": false,
  262. "top_p": 0.3,
  263. "user_prompt": "",
  264. "visual_files_var": ""
  265. },
  266. "label": "Agent",
  267. "name": "Agent"
  268. },
  269. "dragging": false,
  270. "id": "Agent:BraveParksJoke",
  271. "measured": {
  272. "height": 84,
  273. "width": 200
  274. },
  275. "position": {
  276. "x": 699.8147585743118,
  277. "y": -512.1229013834202
  278. },
  279. "selected": false,
  280. "sourcePosition": "right",
  281. "targetPosition": "left",
  282. "type": "agentNode"
  283. },
  284. {
  285. "data": {
  286. "form": {
  287. "description": "This is an agent for a specific task.",
  288. "user_prompt": "This is the order you need to send to the agent."
  289. },
  290. "label": "Tool",
  291. "name": "flow.tool_0"
  292. },
  293. "id": "Tool:TangyWolvesDream",
  294. "measured": {
  295. "height": 48,
  296. "width": 200
  297. },
  298. "position": {
  299. "x": 617.8147585743118,
  300. "y": -372.1229013834202
  301. },
  302. "selected": false,
  303. "sourcePosition": "right",
  304. "targetPosition": "left",
  305. "type": "toolNode"
  306. },
  307. {
  308. "data": {
  309. "form": {
  310. "content": [
  311. "{Agent:BraveParksJoke@content}"
  312. ]
  313. },
  314. "label": "Message",
  315. "name": "Message"
  316. },
  317. "id": "Message:HotMelonsObey",
  318. "measured": {
  319. "height": 56,
  320. "width": 200
  321. },
  322. "position": {
  323. "x": 999.8147585743118,
  324. "y": -512.1229013834202
  325. },
  326. "selected": false,
  327. "sourcePosition": "right",
  328. "targetPosition": "left",
  329. "type": "messageNode"
  330. },
  331. {
  332. "data": {
  333. "form": {
  334. "text": "Configure the dropdown menu with your knowledge bases for retrieval."
  335. },
  336. "label": "Note",
  337. "name": "Note: Begin"
  338. },
  339. "dragHandle": ".note-drag-handle",
  340. "id": "Note:CurlyGoatsRun",
  341. "measured": {
  342. "height": 136,
  343. "width": 250
  344. },
  345. "position": {
  346. "x": 240,
  347. "y": -135
  348. },
  349. "selected": false,
  350. "sourcePosition": "right",
  351. "targetPosition": "left",
  352. "type": "noteNode"
  353. },
  354. {
  355. "data": {
  356. "form": {
  357. "text": "The Agent will only retrieve from the selected knowledge base and use this content to generate responses.\n\nThe Agent prioritizes rapid response per system prompt configuration. Adjust reflection rounds by modifying the system prompt or via Agent > Advanced Settings > Max Rounds."
  358. },
  359. "label": "Note",
  360. "name": "Note: Agent"
  361. },
  362. "dragHandle": ".note-drag-handle",
  363. "dragging": false,
  364. "height": 186,
  365. "id": "Note:GentleShowersAct",
  366. "measured": {
  367. "height": 186,
  368. "width": 456
  369. },
  370. "position": {
  371. "x": 759.6166714488969,
  372. "y": -303.3174949046285
  373. },
  374. "resizing": false,
  375. "selected": false,
  376. "sourcePosition": "right",
  377. "targetPosition": "left",
  378. "type": "noteNode",
  379. "width": 456
  380. },
  381. {
  382. "data": {
  383. "form": {
  384. "text": "Select your desired knowledge base from the dropdown menu. \nThe Agent will only retrieve from the selected knowledge base and use this content to generate responses."
  385. },
  386. "label": "Note",
  387. "name": "Workflow overall description"
  388. },
  389. "dragHandle": ".note-drag-handle",
  390. "dragging": false,
  391. "height": 169,
  392. "id": "Note:FineCandlesDig",
  393. "measured": {
  394. "height": 169,
  395. "width": 357
  396. },
  397. "position": {
  398. "x": 177.69466666666665,
  399. "y": -531.9333333333334
  400. },
  401. "resizing": false,
  402. "selected": false,
  403. "sourcePosition": "right",
  404. "targetPosition": "left",
  405. "type": "noteNode",
  406. "width": 357
  407. }
  408. ]
  409. },
  410. "history": [],
  411. "messages": [],
  412. "path": [],
  413. "retrieval": []
  414. },
  415. "avatar": "data:image/png;base64,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"
  416. }