diff --git a/examples/09 - AutoDefence/AutoDefense Flow.waldiez b/examples/09 - AutoDefence/AutoDefense Flow.waldiez new file mode 100644 index 0000000..66a30f7 --- /dev/null +++ b/examples/09 - AutoDefence/AutoDefense Flow.waldiez @@ -0,0 +1 @@ +{"type":"flow","name":"AutoDefense Flow","description":"Multi-Agent LLM Defense against Jailbreak Attacks\n","tags":[],"requirements":[],"storageId":"id-f0d832ae-da4a-449b-bca4-4cdb33f21c3d","createdAt":"2024-11-26T13:04:31.097Z","updatedAt":"2024-11-26T13:04:39.710Z","data":{"nodes":[{"id":"wa-1732537183369iAhRy42SZ-JXyHjhhgNls","type":"agent","position":{"x":45,"y":-120},"hidden":false,"measured":{"width":206,"height":214},"selected":false,"dragging":false},{"id":"wa-KctrqMP6HkdGOPUvy08MV","type":"agent","position":{"x":-270,"y":300},"hidden":false,"measured":{"width":206,"height":214},"selected":false,"dragging":false},{"id":"wa-8t3PrPuCNYcNWt0UGeO-Z","type":"agent","position":{"x":600,"y":-90},"hidden":false,"measured":{"width":206,"height":214},"selected":false,"dragging":false},{"id":"wa-JBOm7Ym5M5UgIDFy_pjkY","type":"agent","position":{"x":600,"y":150},"hidden":false,"measured":{"width":206,"height":214},"selected":false,"dragging":false},{"id":"wa-Pim-mlD2C_CyhovWdL-Ll","type":"agent","position":{"x":600,"y":390},"hidden":false,"measured":{"width":206,"height":214},"selected":false,"dragging":false},{"id":"wa-HmTaBbmSpfQxxxehWak4N","type":"agent","position":{"x":600,"y":630},"hidden":false,"measured":{"width":206,"height":214},"selected":false,"dragging":false},{"id":"wm-q9pCa-FMKoDx7mg9CnLSE","type":"model","position":{"x":0,"y":0},"measured":{"width":181,"height":181},"selected":false,"hidden":true}],"edges":[{"id":"we-1732537966208EEobH9fKkC_COTE6E69RW","source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-1732537183369iAhRy42SZ-JXyHjhhgNls","type":"chat","animated":false,"selected":false,"markerEnd":{"type":"arrowclosed","color":"#66bc57","width":10,"height":10},"style":{"stroke":"#66bc57","strokeWidth":3}},{"id":"we-lkx8JRqjUA3UkOH_QQcUO","source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-8t3PrPuCNYcNWt0UGeO-Z","type":"nested","animated":true,"selected":false,"style":{"stroke":"#66bc57","strokeWidth":3},"hidden":false},{"id":"we-xnCAL69RytzBOQBGji2MW","source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-JBOm7Ym5M5UgIDFy_pjkY","type":"nested","animated":true,"selected":false,"style":{"stroke":"#66bc57","strokeWidth":3},"hidden":false},{"id":"we-K7wvwRsCuAohDuvE83cHS","source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-Pim-mlD2C_CyhovWdL-Ll","type":"nested","animated":true,"selected":false,"style":{"stroke":"#66bc57","strokeWidth":3},"hidden":false},{"id":"we-v8-MOqqmY5PG7NpOzrpS2","source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-HmTaBbmSpfQxxxehWak4N","type":"nested","animated":true,"selected":false,"style":{"stroke":"#66bc57","strokeWidth":3},"hidden":false}],"viewport":{"x":488.66666666666674,"y":106.23333333333335,"zoom":0.8333333333333334},"agents":{"users":[{"id":"wa-1732537183369iAhRy42SZ-JXyHjhhgNls","type":"agent","agentType":"user","name":"User","description":"A user proxy agent","tags":[],"requirements":[],"createdAt":"2024-11-25T12:19:43.369Z","updatedAt":"2024-11-25T12:19:43.369Z","data":{"systemMessage":null,"humanInputMode":"ALWAYS","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":[],"skills":[],"parentId":null,"nestedChats":[]}}],"assistants":[{"id":"wa-KctrqMP6HkdGOPUvy08MV","type":"agent","agentType":"assistant","name":"Interface","description":"Communicates with guardrail agents","tags":[],"requirements":[],"createdAt":"2024-09-27T15:27:28.641Z","updatedAt":"2024-11-25T12:50:48.740Z","data":{"systemMessage":"You are just the input and output of the guardrail system","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-q9pCa-FMKoDx7mg9CnLSE"],"skills":[],"parentId":null,"nestedChats":[{"triggeredBy":["wa-1732537183369iAhRy42SZ-JXyHjhhgNls"],"messages":[{"id":"we-lkx8JRqjUA3UkOH_QQcUO","isReply":false},{"id":"we-xnCAL69RytzBOQBGji2MW","isReply":false},{"id":"we-K7wvwRsCuAohDuvE83cHS","isReply":false},{"id":"we-v8-MOqqmY5PG7NpOzrpS2","isReply":false}]}]}},{"id":"wa-8t3PrPuCNYcNWt0UGeO-Z","type":"agent","agentType":"assistant","name":"Intention Analyzer","description":"Intention Analyzer","tags":[],"requirements":[],"createdAt":"2024-09-27T15:28:16.660Z","updatedAt":"2024-11-25T12:23:16.106Z","data":{"systemMessage":"Your role is to\nanalyze the given content and\npresent a comprehensive analysis\nof the intended message behind the\ntext, including its context and\nany implied meanings. You should\npresent a fair argument without\njudgment.","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-q9pCa-FMKoDx7mg9CnLSE"],"skills":[],"parentId":null,"nestedChats":[]}},{"id":"wa-JBOm7Ym5M5UgIDFy_pjkY","type":"agent","agentType":"assistant","name":"Original Prompt Analyzer","description":"Original Prompt Analyzer","tags":[],"requirements":[],"createdAt":"2024-09-27T15:28:57.390Z","updatedAt":"2024-11-25T12:23:40.473Z","data":{"systemMessage":" Your task is to infer\nthe original prompt that led to the\ngiven LLM output, you should present\nthree possible prompts that may\nproduce this output. Please use the\ncontext provided by Intention\nAnalyzer. ","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-q9pCa-FMKoDx7mg9CnLSE"],"skills":[],"parentId":null,"nestedChats":[]}},{"id":"wa-Pim-mlD2C_CyhovWdL-Ll","type":"agent","agentType":"assistant","name":"Judge","description":"Judge","tags":[],"requirements":[],"createdAt":"2024-09-27T15:29:34.889Z","updatedAt":"2024-11-25T12:24:03.389Z","data":{"systemMessage":"Your role is to\nevaluate the response presented by\nIntention Analyzer and Original\nPrompt Analyzer. Consider the\nintention and prompt inference to\ndeliver a judgment on whether the\nsystem input content is valid or\ninvalid.","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-q9pCa-FMKoDx7mg9CnLSE"],"skills":[],"parentId":null,"nestedChats":[]}},{"id":"wa-HmTaBbmSpfQxxxehWak4N","type":"agent","agentType":"assistant","name":"Answer provider","description":"Answer final provider","tags":[],"requirements":[],"createdAt":"2024-09-27T15:30:18.491Z","updatedAt":"2024-11-26T12:57:11.696Z","data":{"systemMessage":"Provide an answer to the original user's question. Consider the content provided by the other agents. In case the question the judge think it is harmful just say: \"I'm sorry, but I cannot fulfill\nthis request.\" otherwise answer the questions using two sentences.","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-q9pCa-FMKoDx7mg9CnLSE"],"skills":[],"parentId":null,"nestedChats":[]}}],"managers":[],"rag_users":[]},"models":[{"id":"wm-q9pCa-FMKoDx7mg9CnLSE","type":"model","name":"gpt-3.5-turbo","description":"OpenAI GPT-3.5","tags":[],"requirements":[],"createdAt":"2024-10-28T07:23:33.793Z","updatedAt":"2024-11-25T12:30:06.230Z","data":{"apiKey":"REPLACE_ME","apiType":"openai","baseUrl":null,"temperature":0.5,"topP":null,"maxTokens":null,"defaultHeaders":{},"price":{"promptPricePer1k":null,"completionTokenPricePer1k":null}}}],"skills":[],"chats":[{"id":"we-1732537966208EEobH9fKkC_COTE6E69RW","data":{"source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-1732537183369iAhRy42SZ-JXyHjhhgNls","name":"Interface => User","order":1,"description":"getUserRequest","position":1,"clearHistory":true,"maxTurns":3,"message":{"type":"string","use_carryover":false,"content":"Hi there, how I can assist you?","context":{}},"nestedChat":{"message":null,"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-lkx8JRqjUA3UkOH_QQcUO","data":{"source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-8t3PrPuCNYcNWt0UGeO-Z","name":"Interface => Intention Analyzer","order":-1,"description":"analyzeIntent","position":1,"clearHistory":true,"maxTurns":1,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":{"type":"method","use_carryover":false,"content":"\"\"\"Custom nested chat message function.\"\"\"\n# provide the message to be sent from the sender to the recipient in a nested chat\n# complete the `nested_chat_message` below. Do not change the name or the arguments of the function.\n# only complete the function body and the docstring and return the final message.\n# example:\n# def nested_chat_message(recipient, messages, sender, config):\n# # type: (ConversableAgent, Optional[list[dict]], Optional[ConversableAgent], Optional[dict]) -> str | dict\n# return f\"\"\"Review the following content.\n# \\n\\n {recipient.chat_messages_for_summary(sender)[-1]['content']}\"\"\"\n#\ndef nested_chat_message(recipient, messages, sender, config):\n \"\"\"Ask for a review.\"\"\"\n return f\"\"\"Review the following content.\n \\n\\n {recipient.chat_messages_for_summary(sender)[-1]['content']}\"\"\"\n","context":{}},"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-xnCAL69RytzBOQBGji2MW","data":{"source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-JBOm7Ym5M5UgIDFy_pjkY","name":"Interface => Original Prompt Analyzer","order":-1,"description":"analyzeOriginalPrompt","position":2,"clearHistory":true,"maxTurns":1,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":{"type":"method","use_carryover":false,"content":"\"\"\"Custom nested chat message function.\"\"\"\n# provide the message to be sent from the sender to the recipient in a nested chat\n# complete the `nested_chat_message` below. Do not change the name or the arguments of the function.\n# only complete the function body and the docstring and return the final message.\n# example:\n# def nested_chat_message(recipient, messages, sender, config):\n# # type: (ConversableAgent, Optional[list[dict]], Optional[ConversableAgent], Optional[dict]) -> str | dict\n# return f\"\"\"Review the following content.\n# \\n\\n {recipient.chat_messages_for_summary(sender)[-1]['content']}\"\"\"\n#\ndef nested_chat_message(recipient, messages, sender, config):\n \"\"\"Ask for a review.\"\"\"\n return f\"\"\"Review the following content.\n \\n\\n {recipient.chat_messages_for_summary(sender)[-1]['content']}\"\"\"\n","context":{}},"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-K7wvwRsCuAohDuvE83cHS","data":{"source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-Pim-mlD2C_CyhovWdL-Ll","name":"Interface => Judge","order":-1,"description":"judgeContent","position":3,"clearHistory":true,"maxTurns":1,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":{"type":"method","use_carryover":false,"content":"\"\"\"Custom nested chat message function.\"\"\"\n# provide the message to be sent from the sender to the recipient in a nested chat\n# complete the `nested_chat_message` below. Do not change the name or the arguments of the function.\n# only complete the function body and the docstring and return the final message.\n# example:\n# def nested_chat_message(recipient, messages, sender, config):\n# # type: (ConversableAgent, Optional[list[dict]], Optional[ConversableAgent], Optional[dict]) -> str | dict\n# return f\"\"\"Review the following content.\n# \\n\\n {recipient.chat_messages_for_summary(sender)[-1]['content']}\"\"\"\n#\ndef nested_chat_message(recipient, messages, sender, config):\n \"\"\"Ask for a review.\"\"\"\n return f\"\"\"Review the following content.\n \\n\\n {recipient.chat_messages_for_summary(sender)[-1]['content']}\"\"\"\n","context":{}},"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-v8-MOqqmY5PG7NpOzrpS2","data":{"source":"wa-KctrqMP6HkdGOPUvy08MV","target":"wa-HmTaBbmSpfQxxxehWak4N","name":"Interface => Answer Provider","order":-1,"description":"provideAnswer2User","position":4,"clearHistory":true,"maxTurns":1,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":{"type":"string","use_carryover":false,"content":"Aggregate feedback from all reviewers and give final suggestions on the writing.","context":{}},"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}}]}} \ No newline at end of file diff --git a/examples/10 - Travel Planning/Travel Planning.waldiez b/examples/10 - Travel Planning/Travel Planning.waldiez new file mode 100644 index 0000000..2827462 --- /dev/null +++ b/examples/10 - Travel Planning/Travel Planning.waldiez @@ -0,0 +1 @@ +{"type":"flow","name":"Travel Planning","description":"Group Chat for Planning a Travel","tags":[],"requirements":[],"storageId":"id-f722d1a7-cd19-4800-a091-edb6f9626501","createdAt":"2024-11-26T09:59:49.469Z","updatedAt":"2024-11-26T10:36:55.281Z","data":{"nodes":[{"id":"wa-WSdgUrkfflipir-CfHL6m","type":"agent","position":{"x":1385,"y":140},"hidden":false,"measured":{"width":8,"height":15},"selected":false,"dragging":false},{"id":"wm-R-OjiBhLr3EuKVebqofk0","type":"model","position":{"x":0,"y":0},"measured":{"width":181,"height":181},"selected":false,"hidden":true},{"id":"wa-g79qTziN4yABfy6v8of7t","type":"agent","position":{"x":1340,"y":425},"hidden":false,"measured":{"width":8,"height":15},"selected":false,"dragging":false},{"id":"wa-6nqzwpyGp510BOiYXe9uX","type":"agent","position":{"x":975,"y":525},"hidden":false,"measured":{"width":8,"height":15},"selected":false,"dragging":false},{"id":"wa-ik5EYjojwEqmwyBg5KDCb","type":"agent","position":{"x":960,"y":165},"hidden":false,"measured":{"width":212,"height":284},"selected":false,"dragging":false},{"id":"wa-17326152390604LmfxNF2tkdvh4YLljfaM","type":"agent","position":{"x":495,"y":195},"hidden":false,"measured":{"width":205,"height":214},"selected":true,"dragging":false},{"id":"wa-1732616039955p8TCSPXcqrwEv5Y_zqAUV","type":"agent","position":{"x":1260,"y":195},"hidden":false,"measured":{"width":8,"height":15},"selected":false,"dragging":false}],"edges":[{"id":"we-1732615241950ut55k0fhFIF49nWrP8TXa","source":"wa-17326152390604LmfxNF2tkdvh4YLljfaM","target":"wa-ik5EYjojwEqmwyBg5KDCb","type":"chat","animated":false,"selected":false,"markerEnd":{"type":"arrowclosed","color":"#bc76f5","width":10,"height":10},"style":{"stroke":"#bc76f5","strokeWidth":3}},{"id":"we-8sRnCD6QG-CGwmVN2qMDS","type":"group","source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-g79qTziN4yABfy6v8of7t","animated":false,"style":{"stroke":"#ed8a34","strokeWidth":3},"markerEnd":{"type":"arrowclosed","color":"#ed8a34","width":10,"height":10},"hidden":false},{"id":"we-Ga3ffxxoGrkcjPPdoFkzp","type":"group","source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-WSdgUrkfflipir-CfHL6m","animated":false,"style":{"stroke":"#ed8a34","strokeWidth":3},"markerEnd":{"type":"arrowclosed","color":"#ed8a34","width":10,"height":10},"hidden":false},{"id":"we-mcRL8rTVdXMUHJ7aLmLHo","type":"group","source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-6nqzwpyGp510BOiYXe9uX","animated":false,"style":{"stroke":"#ed8a34","strokeWidth":3},"markerEnd":{"type":"arrowclosed","color":"#ed8a34","width":10,"height":10},"hidden":false},{"id":"we-1732617019380F4WcWqAiGgbWRatpZNobx","source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-1732616039955p8TCSPXcqrwEv5Y_zqAUV","type":"hidden","selected":false}],"viewport":{"x":-276,"y":-148,"zoom":1},"agents":{"users":[{"id":"wa-17326152390604LmfxNF2tkdvh4YLljfaM","type":"agent","agentType":"user","name":"User","description":"A user proxy agent","tags":[],"requirements":[],"createdAt":"2024-11-26T10:00:39.060Z","updatedAt":"2024-11-26T10:18:41.218Z","data":{"systemMessage":null,"humanInputMode":"ALWAYS","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"keyword","keywords":["TERMINATE"],"criterion":"ending","methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":[],"skills":[],"parentId":null,"nestedChats":[]}}],"assistants":[{"id":"wa-WSdgUrkfflipir-CfHL6m","type":"agent","agentType":"assistant","name":"planner_agent","description":"A helpful assistant that can plan trips.","tags":[],"requirements":[],"createdAt":"2024-09-27T17:07:45.969Z","updatedAt":"2024-11-26T10:05:51.004Z","data":{"systemMessage":"You are a helpful assistant that can suggest a travel plan for a user based on their request.","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"keyword","keywords":["TERMINATE"],"criterion":"ending","methodContent":""},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-R-OjiBhLr3EuKVebqofk0"],"skills":[],"parentId":"wa-ik5EYjojwEqmwyBg5KDCb","nestedChats":[]}},{"id":"wa-g79qTziN4yABfy6v8of7t","type":"agent","agentType":"assistant","name":"local_agent","description":"A local assistant that can suggest local activities or places to visit.","tags":[],"requirements":[],"createdAt":"2024-09-27T17:09:12.354Z","updatedAt":"2024-11-26T10:06:35.914Z","data":{"systemMessage":"You are a helpful assistant that can suggest authentic and interesting local activities or places to visit for a user and can utilize any context information provided.","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"keyword","keywords":["TERMINATE"],"criterion":"ending","methodContent":""},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-R-OjiBhLr3EuKVebqofk0"],"skills":[],"parentId":"wa-ik5EYjojwEqmwyBg5KDCb","nestedChats":[]}},{"id":"wa-6nqzwpyGp510BOiYXe9uX","type":"agent","agentType":"assistant","name":"language_agent","description":"A helpful assistant that can provide language tips for a given destination.","tags":[],"requirements":[],"createdAt":"2024-09-27T17:10:27.266Z","updatedAt":"2024-11-26T10:10:48.772Z","data":{"systemMessage":"You are a helpful assistant that can review travel plans, providing feedback on important/critical tips about how best to address language or communication challenges for the given destination. If the plan already includes language tips, you can mention that the plan is satisfactory, with rationale. ","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"keyword","keywords":["TERMINATE"],"criterion":"ending","methodContent":""},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-R-OjiBhLr3EuKVebqofk0"],"skills":[],"parentId":"wa-ik5EYjojwEqmwyBg5KDCb","nestedChats":[]}},{"id":"wa-1732616039955p8TCSPXcqrwEv5Y_zqAUV","type":"agent","agentType":"assistant","name":"travel_summary_agent","description":"An assistant agent","tags":[],"requirements":[],"createdAt":"2024-11-26T10:13:59.956Z","updatedAt":"2024-11-26T10:30:19.383Z","data":{"systemMessage":"You are a helpful assistant that can take in all of the suggestions and advice from the other agents and provide a detailed tfinal travel plan. You must ensure th b at the final plan is integrated and complete. YOUR FINAL RESPONSE MUST BE THE COMPLETE PLAN. When the plan is complete and all perspectives are integrated, you can respond with TERMINATE.","humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-R-OjiBhLr3EuKVebqofk0"],"skills":[],"parentId":"wa-ik5EYjojwEqmwyBg5KDCb","nestedChats":[]}}],"managers":[{"id":"wa-ik5EYjojwEqmwyBg5KDCb","type":"agent","agentType":"manager","name":"Manager","description":"A group chat manager agent","tags":[],"requirements":[],"createdAt":"2024-09-27T17:11:40.240Z","updatedAt":"2024-11-26T10:16:04.604Z","data":{"systemMessage":null,"humanInputMode":"NEVER","codeExecutionConfig":false,"agentDefaultAutoReply":null,"maxConsecutiveAutoReply":null,"termination":{"type":"none","keywords":[],"criterion":null,"methodContent":null},"teachability":{"enabled":false,"verbosity":0,"resetDb":false,"recallThreshold":0,"maxMumRetrievals":0},"modelIds":["wm-R-OjiBhLr3EuKVebqofk0"],"skills":[],"parentId":null,"nestedChats":[],"maxRound":12,"adminName":"User","enableClearHistory":false,"sendIntroductions":false,"speakers":{"selectionMethod":"round_robin","selectionCustomMethod":"","maxRetriesForSelecting":null,"selectionMode":"repeat","allowRepeat":true,"allowedOrDisallowedTransitions":{},"transitionsType":"allowed"}}}],"rag_users":[]},"models":[{"id":"wm-R-OjiBhLr3EuKVebqofk0","type":"model","name":"gpt-4-turbo","description":"OpenAI GPT-4","tags":[],"requirements":[],"createdAt":"2024-10-28T07:23:33.793Z","updatedAt":"2024-11-26T10:04:12.953Z","data":{"apiKey":"REPLACE_ME","apiType":"openai","baseUrl":null,"temperature":null,"topP":null,"maxTokens":null,"defaultHeaders":{},"price":{"promptPricePer1k":null,"completionTokenPricePer1k":null}}}],"skills":[],"chats":[{"id":"we-1732615241950ut55k0fhFIF49nWrP8TXa","data":{"source":"wa-17326152390604LmfxNF2tkdvh4YLljfaM","target":"wa-ik5EYjojwEqmwyBg5KDCb","name":"User => Manager","order":1,"description":"askTravelInfo","position":1,"clearHistory":true,"maxTurns":null,"message":{"type":"string","use_carryover":false,"content":"Plan a 3 day trip to Athens.","context":{}},"nestedChat":{"message":null,"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-8sRnCD6QG-CGwmVN2qMDS","data":{"source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-g79qTziN4yABfy6v8of7t","name":"Chat","order":-1,"description":"New connection","position":1,"clearHistory":true,"maxTurns":null,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":null,"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-Ga3ffxxoGrkcjPPdoFkzp","data":{"source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-WSdgUrkfflipir-CfHL6m","name":"Chat","order":-1,"description":"New connection","position":2,"clearHistory":true,"maxTurns":null,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":null,"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-mcRL8rTVdXMUHJ7aLmLHo","data":{"source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-6nqzwpyGp510BOiYXe9uX","name":"Chat","order":-1,"description":"New connection","position":3,"clearHistory":true,"maxTurns":null,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":null,"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}},{"id":"we-1732617019380F4WcWqAiGgbWRatpZNobx","data":{"source":"wa-ik5EYjojwEqmwyBg5KDCb","target":"wa-1732616039955p8TCSPXcqrwEv5Y_zqAUV","name":"Chat","order":-1,"description":"New connection","position":1,"clearHistory":true,"maxTurns":null,"message":{"type":"none","use_carryover":false,"content":null,"context":{}},"nestedChat":{"message":null,"reply":null},"summary":{"method":"last_msg","prompt":"","args":{}}}}]}} \ No newline at end of file