solace-agent-mesh 0.2.4__py3-none-any.whl → 1.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of solace-agent-mesh might be problematic. Click here for more details.

Files changed (518) hide show
  1. solace_agent_mesh/agent/adk/adk_llm.txt +93 -0
  2. solace_agent_mesh/agent/adk/app_llm_agent.py +26 -0
  3. solace_agent_mesh/agent/adk/callbacks.py +1694 -0
  4. solace_agent_mesh/agent/adk/filesystem_artifact_service.py +381 -0
  5. solace_agent_mesh/agent/adk/invocation_monitor.py +295 -0
  6. solace_agent_mesh/agent/adk/models/lite_llm.py +872 -0
  7. solace_agent_mesh/agent/adk/models/models_llm.txt +94 -0
  8. solace_agent_mesh/agent/adk/runner.py +353 -0
  9. solace_agent_mesh/agent/adk/services.py +240 -0
  10. solace_agent_mesh/agent/adk/setup.py +751 -0
  11. solace_agent_mesh/agent/adk/stream_parser.py +214 -0
  12. solace_agent_mesh/agent/adk/tool_wrapper.py +139 -0
  13. solace_agent_mesh/agent/agent_llm.txt +41 -0
  14. solace_agent_mesh/agent/protocol/event_handlers.py +1469 -0
  15. solace_agent_mesh/agent/protocol/protocol_llm.txt +21 -0
  16. solace_agent_mesh/agent/sac/app.py +640 -0
  17. solace_agent_mesh/agent/sac/component.py +3388 -0
  18. solace_agent_mesh/agent/sac/patch_adk.py +111 -0
  19. solace_agent_mesh/agent/sac/sac_llm.txt +105 -0
  20. solace_agent_mesh/agent/sac/task_execution_context.py +176 -0
  21. solace_agent_mesh/agent/testing/__init__.py +3 -0
  22. solace_agent_mesh/agent/testing/debug_utils.py +135 -0
  23. solace_agent_mesh/agent/testing/testing_llm.txt +90 -0
  24. solace_agent_mesh/agent/tools/__init__.py +14 -0
  25. solace_agent_mesh/agent/tools/audio_tools.py +1622 -0
  26. solace_agent_mesh/agent/tools/builtin_artifact_tools.py +1954 -0
  27. solace_agent_mesh/agent/tools/builtin_data_analysis_tools.py +238 -0
  28. solace_agent_mesh/agent/tools/general_agent_tools.py +569 -0
  29. solace_agent_mesh/agent/tools/image_tools.py +1184 -0
  30. solace_agent_mesh/agent/tools/peer_agent_tool.py +289 -0
  31. solace_agent_mesh/agent/tools/registry.py +36 -0
  32. solace_agent_mesh/agent/tools/test_tools.py +135 -0
  33. solace_agent_mesh/agent/tools/tool_definition.py +45 -0
  34. solace_agent_mesh/agent/tools/tools_llm.txt +104 -0
  35. solace_agent_mesh/agent/tools/web_tools.py +381 -0
  36. solace_agent_mesh/agent/utils/artifact_helpers.py +927 -0
  37. solace_agent_mesh/agent/utils/config_parser.py +47 -0
  38. solace_agent_mesh/agent/utils/context_helpers.py +60 -0
  39. solace_agent_mesh/agent/utils/utils_llm.txt +153 -0
  40. solace_agent_mesh/assets/docs/404.html +16 -0
  41. solace_agent_mesh/assets/docs/assets/css/styles.906a1503.css +1 -0
  42. solace_agent_mesh/assets/docs/assets/images/Solace_AI_Framework_With_Broker-85f0a306a9bcdd20b390b7a949f6d862.png +0 -0
  43. solace_agent_mesh/assets/docs/assets/images/sac-flows-80d5b603c6aafd33e87945680ce0abf3.png +0 -0
  44. solace_agent_mesh/assets/docs/assets/images/sac_parts_of_a_component-cb3d0424b1d0c17734c5435cca6b4082.png +0 -0
  45. solace_agent_mesh/assets/docs/assets/js/04989206.674a8007.js +1 -0
  46. solace_agent_mesh/assets/docs/assets/js/0e682baa.79f0ab22.js +1 -0
  47. solace_agent_mesh/assets/docs/assets/js/1001.0182a8bd.js +1 -0
  48. solace_agent_mesh/assets/docs/assets/js/1023fc19.015679ca.js +1 -0
  49. solace_agent_mesh/assets/docs/assets/js/1039.0bd46aa1.js +1 -0
  50. solace_agent_mesh/assets/docs/assets/js/149.b797a808.js +1 -0
  51. solace_agent_mesh/assets/docs/assets/js/1523c6b4.91c7bc01.js +1 -0
  52. solace_agent_mesh/assets/docs/assets/js/165.6a39807d.js +2 -0
  53. solace_agent_mesh/assets/docs/assets/js/165.6a39807d.js.LICENSE.txt +9 -0
  54. solace_agent_mesh/assets/docs/assets/js/166ab619.7d97ccaf.js +1 -0
  55. solace_agent_mesh/assets/docs/assets/js/17896441.a5e82f9b.js +2 -0
  56. solace_agent_mesh/assets/docs/assets/js/17896441.a5e82f9b.js.LICENSE.txt +7 -0
  57. solace_agent_mesh/assets/docs/assets/js/1c6e87d2.23bccffb.js +1 -0
  58. solace_agent_mesh/assets/docs/assets/js/2130.ab9fd314.js +1 -0
  59. solace_agent_mesh/assets/docs/assets/js/21ceee5f.614fa8dd.js +1 -0
  60. solace_agent_mesh/assets/docs/assets/js/2237.5e477fc6.js +1 -0
  61. solace_agent_mesh/assets/docs/assets/js/2334.622a6395.js +1 -0
  62. solace_agent_mesh/assets/docs/assets/js/2a9cab12.8909df92.js +1 -0
  63. solace_agent_mesh/assets/docs/assets/js/3219.adc1d663.js +1 -0
  64. solace_agent_mesh/assets/docs/assets/js/332e10b5.7a103f42.js +1 -0
  65. solace_agent_mesh/assets/docs/assets/js/3624.b524e433.js +1 -0
  66. solace_agent_mesh/assets/docs/assets/js/375.708d48db.js +1 -0
  67. solace_agent_mesh/assets/docs/assets/js/3834.b6cd790e.js +1 -0
  68. solace_agent_mesh/assets/docs/assets/js/3d406171.f722eaf5.js +1 -0
  69. solace_agent_mesh/assets/docs/assets/js/4250.95455b28.js +1 -0
  70. solace_agent_mesh/assets/docs/assets/js/42b3f8d8.36090198.js +1 -0
  71. solace_agent_mesh/assets/docs/assets/js/4356.d169ab5b.js +1 -0
  72. solace_agent_mesh/assets/docs/assets/js/442a8107.5ba94b65.js +1 -0
  73. solace_agent_mesh/assets/docs/assets/js/4458.518e66fa.js +1 -0
  74. solace_agent_mesh/assets/docs/assets/js/4488.c7cc3442.js +1 -0
  75. solace_agent_mesh/assets/docs/assets/js/4494.6ee23046.js +1 -0
  76. solace_agent_mesh/assets/docs/assets/js/4855.fc4444b6.js +1 -0
  77. solace_agent_mesh/assets/docs/assets/js/4866.22daefc0.js +1 -0
  78. solace_agent_mesh/assets/docs/assets/js/4950.ca4caeda.js +1 -0
  79. solace_agent_mesh/assets/docs/assets/js/4c2787c2.66ee00e9.js +1 -0
  80. solace_agent_mesh/assets/docs/assets/js/5388.7a136447.js +1 -0
  81. solace_agent_mesh/assets/docs/assets/js/55f47984.c484bf96.js +1 -0
  82. solace_agent_mesh/assets/docs/assets/js/5607.081356f8.js +1 -0
  83. solace_agent_mesh/assets/docs/assets/js/5864.b0d0e9de.js +1 -0
  84. solace_agent_mesh/assets/docs/assets/js/5b4258a4.bda20761.js +1 -0
  85. solace_agent_mesh/assets/docs/assets/js/5e95c892.558d5167.js +1 -0
  86. solace_agent_mesh/assets/docs/assets/js/6143.0a1464c9.js +1 -0
  87. solace_agent_mesh/assets/docs/assets/js/6395.e9c73649.js +1 -0
  88. solace_agent_mesh/assets/docs/assets/js/6796.51d2c9b7.js +1 -0
  89. solace_agent_mesh/assets/docs/assets/js/6976.379be23b.js +1 -0
  90. solace_agent_mesh/assets/docs/assets/js/6978.ee0b945c.js +1 -0
  91. solace_agent_mesh/assets/docs/assets/js/7040.cb436723.js +1 -0
  92. solace_agent_mesh/assets/docs/assets/js/7195.412f418a.js +1 -0
  93. solace_agent_mesh/assets/docs/assets/js/7280.3fb73bdb.js +1 -0
  94. solace_agent_mesh/assets/docs/assets/js/768e31b0.a12673db.js +1 -0
  95. solace_agent_mesh/assets/docs/assets/js/7845.e33e7c4c.js +1 -0
  96. solace_agent_mesh/assets/docs/assets/js/7900.69516146.js +1 -0
  97. solace_agent_mesh/assets/docs/assets/js/8356.8a379c04.js +1 -0
  98. solace_agent_mesh/assets/docs/assets/js/85387663.6bf41934.js +1 -0
  99. solace_agent_mesh/assets/docs/assets/js/8567.4732c6b7.js +1 -0
  100. solace_agent_mesh/assets/docs/assets/js/8573.cb04eda5.js +1 -0
  101. solace_agent_mesh/assets/docs/assets/js/8577.1d54e766.js +1 -0
  102. solace_agent_mesh/assets/docs/assets/js/8591.d7c16be6.js +2 -0
  103. solace_agent_mesh/assets/docs/assets/js/8591.d7c16be6.js.LICENSE.txt +61 -0
  104. solace_agent_mesh/assets/docs/assets/js/8709.7ecd4047.js +1 -0
  105. solace_agent_mesh/assets/docs/assets/js/8731.49e930c2.js +1 -0
  106. solace_agent_mesh/assets/docs/assets/js/8908.f9d1b506.js +1 -0
  107. solace_agent_mesh/assets/docs/assets/js/9157.b4093d07.js +1 -0
  108. solace_agent_mesh/assets/docs/assets/js/9278.a4fd875d.js +1 -0
  109. solace_agent_mesh/assets/docs/assets/js/945fb41e.74d728aa.js +1 -0
  110. solace_agent_mesh/assets/docs/assets/js/9616.b75c2f6d.js +1 -0
  111. solace_agent_mesh/assets/docs/assets/js/9793.c6d16376.js +1 -0
  112. solace_agent_mesh/assets/docs/assets/js/9eff14a2.1bf8f61c.js +1 -0
  113. solace_agent_mesh/assets/docs/assets/js/a3a92b25.26ca071f.js +1 -0
  114. solace_agent_mesh/assets/docs/assets/js/a7bd4aaa.2204d2f7.js +1 -0
  115. solace_agent_mesh/assets/docs/assets/js/a94703ab.0438dbc2.js +1 -0
  116. solace_agent_mesh/assets/docs/assets/js/aba21aa0.c42a534c.js +1 -0
  117. solace_agent_mesh/assets/docs/assets/js/aba87c2f.d3e2dcc3.js +1 -0
  118. solace_agent_mesh/assets/docs/assets/js/ae4415af.8e279b5d.js +1 -0
  119. solace_agent_mesh/assets/docs/assets/js/b7006a3a.40b10c9d.js +1 -0
  120. solace_agent_mesh/assets/docs/assets/js/bac0be12.f50d9bac.js +1 -0
  121. solace_agent_mesh/assets/docs/assets/js/bb2ef573.207e6990.js +1 -0
  122. solace_agent_mesh/assets/docs/assets/js/c2c06897.63b76e9e.js +1 -0
  123. solace_agent_mesh/assets/docs/assets/js/cc969b05.954186d4.js +1 -0
  124. solace_agent_mesh/assets/docs/assets/js/cd3d4052.ca6eed8c.js +1 -0
  125. solace_agent_mesh/assets/docs/assets/js/ced92a13.fb92e7ca.js +1 -0
  126. solace_agent_mesh/assets/docs/assets/js/cee5d587.f5b73ca1.js +1 -0
  127. solace_agent_mesh/assets/docs/assets/js/f284c35a.ecc3d195.js +1 -0
  128. solace_agent_mesh/assets/docs/assets/js/f897a61a.2c2e152c.js +1 -0
  129. solace_agent_mesh/assets/docs/assets/js/fbfa3e75.aca209c9.js +1 -0
  130. solace_agent_mesh/assets/docs/assets/js/main.7ed3319f.js +2 -0
  131. solace_agent_mesh/assets/docs/assets/js/main.7ed3319f.js.LICENSE.txt +81 -0
  132. solace_agent_mesh/assets/docs/assets/js/runtime~main.d9520ae2.js +1 -0
  133. solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html +128 -0
  134. solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html +91 -0
  135. solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html +201 -0
  136. solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html +91 -0
  137. solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html +55 -0
  138. solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html +82 -0
  139. solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html +60 -0
  140. solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html +48 -0
  141. solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html +54 -0
  142. solace_agent_mesh/assets/docs/docs/documentation/enterprise/index.html +17 -0
  143. solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html +45 -0
  144. solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html +76 -0
  145. solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html +150 -0
  146. solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html +54 -0
  147. solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html +267 -0
  148. solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html +136 -0
  149. solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html +116 -0
  150. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html +80 -0
  151. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html +164 -0
  152. solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html +57 -0
  153. solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html +72 -0
  154. solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html +102 -0
  155. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html +99 -0
  156. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html +90 -0
  157. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html +107 -0
  158. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html +152 -0
  159. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html +103 -0
  160. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html +170 -0
  161. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html +200 -0
  162. solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html +54 -0
  163. solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html +69 -0
  164. solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html +59 -0
  165. solace_agent_mesh/assets/docs/img/Solace_AI_Framework_README.png +0 -0
  166. solace_agent_mesh/assets/docs/img/Solace_AI_Framework_With_Broker.png +0 -0
  167. solace_agent_mesh/assets/docs/img/logo.png +0 -0
  168. solace_agent_mesh/assets/docs/img/sac-flows.png +0 -0
  169. solace_agent_mesh/assets/docs/img/sac_parts_of_a_component.png +0 -0
  170. solace_agent_mesh/assets/docs/img/solace-logo.png +0 -0
  171. solace_agent_mesh/assets/docs/lunr-index-1753813536522.json +1 -0
  172. solace_agent_mesh/assets/docs/lunr-index.json +1 -0
  173. solace_agent_mesh/assets/docs/search-doc-1753813536522.json +1 -0
  174. solace_agent_mesh/assets/docs/search-doc.json +1 -0
  175. solace_agent_mesh/assets/docs/sitemap.xml +1 -0
  176. solace_agent_mesh/cli/__init__.py +1 -1
  177. solace_agent_mesh/cli/commands/add_cmd/__init__.py +15 -0
  178. solace_agent_mesh/cli/commands/add_cmd/add_cmd_llm.txt +250 -0
  179. solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py +659 -0
  180. solace_agent_mesh/cli/commands/add_cmd/gateway_cmd.py +322 -0
  181. solace_agent_mesh/cli/commands/add_cmd/web_add_agent_step.py +93 -0
  182. solace_agent_mesh/cli/commands/add_cmd/web_add_gateway_step.py +118 -0
  183. solace_agent_mesh/cli/commands/docs_cmd.py +57 -0
  184. solace_agent_mesh/cli/commands/eval_cmd.py +64 -0
  185. solace_agent_mesh/cli/commands/init_cmd/__init__.py +404 -0
  186. solace_agent_mesh/cli/commands/init_cmd/broker_step.py +201 -0
  187. solace_agent_mesh/cli/commands/init_cmd/directory_step.py +28 -0
  188. solace_agent_mesh/cli/commands/init_cmd/env_step.py +197 -0
  189. solace_agent_mesh/cli/commands/init_cmd/init_cmd_llm.txt +365 -0
  190. solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py +387 -0
  191. solace_agent_mesh/cli/commands/init_cmd/project_files_step.py +38 -0
  192. solace_agent_mesh/cli/commands/init_cmd/web_init_step.py +110 -0
  193. solace_agent_mesh/cli/commands/init_cmd/webui_gateway_step.py +183 -0
  194. solace_agent_mesh/cli/commands/plugin_cmd/__init__.py +18 -0
  195. solace_agent_mesh/cli/commands/plugin_cmd/add_cmd.py +372 -0
  196. solace_agent_mesh/cli/commands/plugin_cmd/build_cmd.py +86 -0
  197. solace_agent_mesh/cli/commands/plugin_cmd/catalog_cmd.py +138 -0
  198. solace_agent_mesh/cli/commands/plugin_cmd/create_cmd.py +309 -0
  199. solace_agent_mesh/cli/commands/plugin_cmd/official_registry.py +174 -0
  200. solace_agent_mesh/cli/commands/plugin_cmd/plugin_cmd_llm.txt +305 -0
  201. solace_agent_mesh/cli/commands/run_cmd.py +158 -0
  202. solace_agent_mesh/cli/main.py +17 -294
  203. solace_agent_mesh/cli/utils.py +135 -204
  204. solace_agent_mesh/client/webui/frontend/static/assets/authCallback-DvlO62me.js +1 -0
  205. solace_agent_mesh/client/webui/frontend/static/assets/client-bp6u3qVZ.js +49 -0
  206. solace_agent_mesh/client/webui/frontend/static/assets/favicon-BLgzUch9.ico +0 -0
  207. solace_agent_mesh/client/webui/frontend/static/assets/main-An0a5j5k.js +663 -0
  208. solace_agent_mesh/client/webui/frontend/static/assets/main-Bu5-4Bac.css +1 -0
  209. solace_agent_mesh/client/webui/frontend/static/auth-callback.html +14 -0
  210. solace_agent_mesh/client/webui/frontend/static/index.html +15 -0
  211. solace_agent_mesh/common/__init__.py +1 -0
  212. solace_agent_mesh/common/a2a_protocol.py +564 -0
  213. solace_agent_mesh/common/agent_registry.py +42 -0
  214. solace_agent_mesh/common/client/__init__.py +4 -0
  215. solace_agent_mesh/common/client/card_resolver.py +21 -0
  216. solace_agent_mesh/common/client/client.py +85 -0
  217. solace_agent_mesh/common/client/client_llm.txt +133 -0
  218. solace_agent_mesh/common/common_llm.txt +144 -0
  219. solace_agent_mesh/common/constants.py +1 -14
  220. solace_agent_mesh/common/middleware/__init__.py +12 -0
  221. solace_agent_mesh/common/middleware/config_resolver.py +130 -0
  222. solace_agent_mesh/common/middleware/middleware_llm.txt +174 -0
  223. solace_agent_mesh/common/middleware/registry.py +125 -0
  224. solace_agent_mesh/common/server/__init__.py +4 -0
  225. solace_agent_mesh/common/server/server.py +122 -0
  226. solace_agent_mesh/common/server/server_llm.txt +169 -0
  227. solace_agent_mesh/common/server/task_manager.py +291 -0
  228. solace_agent_mesh/common/server/utils.py +28 -0
  229. solace_agent_mesh/common/services/__init__.py +4 -0
  230. solace_agent_mesh/common/services/employee_service.py +162 -0
  231. solace_agent_mesh/common/services/identity_service.py +129 -0
  232. solace_agent_mesh/common/services/providers/__init__.py +4 -0
  233. solace_agent_mesh/common/services/providers/local_file_identity_service.py +148 -0
  234. solace_agent_mesh/common/services/providers/providers_llm.txt +113 -0
  235. solace_agent_mesh/common/services/services_llm.txt +132 -0
  236. solace_agent_mesh/common/types.py +411 -0
  237. solace_agent_mesh/common/utils/__init__.py +7 -0
  238. solace_agent_mesh/common/utils/asyncio_macos_fix.py +86 -0
  239. solace_agent_mesh/common/utils/embeds/__init__.py +33 -0
  240. solace_agent_mesh/common/utils/embeds/constants.py +55 -0
  241. solace_agent_mesh/common/utils/embeds/converter.py +452 -0
  242. solace_agent_mesh/common/utils/embeds/embeds_llm.txt +124 -0
  243. solace_agent_mesh/common/utils/embeds/evaluators.py +394 -0
  244. solace_agent_mesh/common/utils/embeds/modifiers.py +816 -0
  245. solace_agent_mesh/common/utils/embeds/resolver.py +865 -0
  246. solace_agent_mesh/common/utils/embeds/types.py +14 -0
  247. solace_agent_mesh/common/utils/in_memory_cache.py +108 -0
  248. solace_agent_mesh/common/utils/log_formatters.py +44 -0
  249. solace_agent_mesh/common/utils/mime_helpers.py +106 -0
  250. solace_agent_mesh/common/utils/push_notification_auth.py +134 -0
  251. solace_agent_mesh/common/utils/utils_llm.txt +67 -0
  252. solace_agent_mesh/config_portal/backend/common.py +66 -24
  253. solace_agent_mesh/config_portal/backend/plugin_catalog/constants.py +23 -0
  254. solace_agent_mesh/config_portal/backend/plugin_catalog/models.py +49 -0
  255. solace_agent_mesh/config_portal/backend/plugin_catalog/registry_manager.py +160 -0
  256. solace_agent_mesh/config_portal/backend/plugin_catalog/scraper.py +525 -0
  257. solace_agent_mesh/config_portal/backend/plugin_catalog_server.py +216 -0
  258. solace_agent_mesh/config_portal/backend/server.py +550 -181
  259. solace_agent_mesh/config_portal/frontend/static/client/assets/_index-DNxCwAGB.js +48 -0
  260. solace_agent_mesh/config_portal/frontend/static/client/assets/components-B7lKcHVY.js +140 -0
  261. solace_agent_mesh/config_portal/frontend/static/client/assets/{entry.client-DX1misIU.js → entry.client-CEumGClk.js} +3 -3
  262. solace_agent_mesh/config_portal/frontend/static/client/assets/index-DSo1AH_7.js +68 -0
  263. solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-d2b54a97.js +1 -0
  264. solace_agent_mesh/config_portal/frontend/static/client/assets/{root-BApq5dPK.js → root-C4XmHinv.js} +2 -2
  265. solace_agent_mesh/config_portal/frontend/static/client/assets/root-DxRwaWiE.css +1 -0
  266. solace_agent_mesh/config_portal/frontend/static/client/index.html +3 -3
  267. solace_agent_mesh/core_a2a/__init__.py +1 -0
  268. solace_agent_mesh/core_a2a/core_a2a_llm.txt +88 -0
  269. solace_agent_mesh/core_a2a/service.py +331 -0
  270. solace_agent_mesh/evaluation/config_loader.py +657 -0
  271. solace_agent_mesh/evaluation/evaluator.py +667 -0
  272. solace_agent_mesh/evaluation/message_organizer.py +568 -0
  273. solace_agent_mesh/evaluation/report/benchmark_info.html +35 -0
  274. solace_agent_mesh/evaluation/report/chart_section.html +141 -0
  275. solace_agent_mesh/evaluation/report/detailed_breakdown.html +28 -0
  276. solace_agent_mesh/evaluation/report/modal.html +59 -0
  277. solace_agent_mesh/evaluation/report/modal_chart_functions.js +411 -0
  278. solace_agent_mesh/evaluation/report/modal_script.js +296 -0
  279. solace_agent_mesh/evaluation/report/modal_styles.css +340 -0
  280. solace_agent_mesh/evaluation/report/performance_metrics_styles.css +93 -0
  281. solace_agent_mesh/evaluation/report/templates/footer.html +2 -0
  282. solace_agent_mesh/evaluation/report/templates/header.html +340 -0
  283. solace_agent_mesh/evaluation/report_data_processor.py +972 -0
  284. solace_agent_mesh/evaluation/report_generator.py +613 -0
  285. solace_agent_mesh/evaluation/run.py +613 -0
  286. solace_agent_mesh/evaluation/subscriber.py +872 -0
  287. solace_agent_mesh/evaluation/summary_builder.py +775 -0
  288. solace_agent_mesh/evaluation/test_case_loader.py +714 -0
  289. solace_agent_mesh/gateway/base/__init__.py +1 -0
  290. solace_agent_mesh/gateway/base/app.py +266 -0
  291. solace_agent_mesh/gateway/base/base_llm.txt +119 -0
  292. solace_agent_mesh/gateway/base/component.py +1542 -0
  293. solace_agent_mesh/gateway/base/task_context.py +74 -0
  294. solace_agent_mesh/gateway/gateway_llm.txt +125 -0
  295. solace_agent_mesh/gateway/http_sse/app.py +190 -0
  296. solace_agent_mesh/gateway/http_sse/component.py +1602 -0
  297. solace_agent_mesh/gateway/http_sse/components/__init__.py +7 -0
  298. solace_agent_mesh/gateway/http_sse/components/components_llm.txt +65 -0
  299. solace_agent_mesh/gateway/http_sse/components/visualization_forwarder_component.py +108 -0
  300. solace_agent_mesh/gateway/http_sse/dependencies.py +316 -0
  301. solace_agent_mesh/gateway/http_sse/http_sse_llm.txt +63 -0
  302. solace_agent_mesh/gateway/http_sse/main.py +442 -0
  303. solace_agent_mesh/gateway/http_sse/routers/__init__.py +4 -0
  304. solace_agent_mesh/gateway/http_sse/routers/agents.py +41 -0
  305. solace_agent_mesh/gateway/http_sse/routers/artifacts.py +821 -0
  306. solace_agent_mesh/gateway/http_sse/routers/auth.py +212 -0
  307. solace_agent_mesh/gateway/http_sse/routers/config.py +55 -0
  308. solace_agent_mesh/gateway/http_sse/routers/people.py +69 -0
  309. solace_agent_mesh/gateway/http_sse/routers/routers_llm.txt +37 -0
  310. solace_agent_mesh/gateway/http_sse/routers/sessions.py +80 -0
  311. solace_agent_mesh/gateway/http_sse/routers/sse.py +138 -0
  312. solace_agent_mesh/gateway/http_sse/routers/tasks.py +294 -0
  313. solace_agent_mesh/gateway/http_sse/routers/users.py +59 -0
  314. solace_agent_mesh/gateway/http_sse/routers/visualization.py +1131 -0
  315. solace_agent_mesh/gateway/http_sse/services/__init__.py +4 -0
  316. solace_agent_mesh/gateway/http_sse/services/agent_service.py +69 -0
  317. solace_agent_mesh/gateway/http_sse/services/people_service.py +158 -0
  318. solace_agent_mesh/gateway/http_sse/services/services_llm.txt +179 -0
  319. solace_agent_mesh/gateway/http_sse/services/task_service.py +121 -0
  320. solace_agent_mesh/gateway/http_sse/session_manager.py +187 -0
  321. solace_agent_mesh/gateway/http_sse/sse_manager.py +328 -0
  322. solace_agent_mesh/llm.txt +228 -0
  323. solace_agent_mesh/llm_detail.txt +2835 -0
  324. solace_agent_mesh/templates/agent_template.yaml +53 -0
  325. solace_agent_mesh/templates/eval_backend_template.yaml +54 -0
  326. solace_agent_mesh/templates/gateway_app_template.py +73 -0
  327. solace_agent_mesh/templates/gateway_component_template.py +400 -0
  328. solace_agent_mesh/templates/gateway_config_template.yaml +43 -0
  329. solace_agent_mesh/templates/main_orchestrator.yaml +55 -0
  330. solace_agent_mesh/templates/plugin_agent_config_template.yaml +122 -0
  331. solace_agent_mesh/templates/plugin_custom_config_template.yaml +27 -0
  332. solace_agent_mesh/templates/plugin_custom_template.py +10 -0
  333. solace_agent_mesh/templates/plugin_gateway_config_template.yaml +63 -0
  334. solace_agent_mesh/templates/plugin_pyproject_template.toml +33 -0
  335. solace_agent_mesh/templates/plugin_readme_template.md +34 -0
  336. solace_agent_mesh/templates/plugin_tools_template.py +224 -0
  337. solace_agent_mesh/templates/shared_config.yaml +66 -0
  338. solace_agent_mesh/templates/templates_llm.txt +147 -0
  339. solace_agent_mesh/templates/webui.yaml +53 -0
  340. solace_agent_mesh-1.0.1.dist-info/METADATA +432 -0
  341. solace_agent_mesh-1.0.1.dist-info/RECORD +359 -0
  342. solace_agent_mesh-1.0.1.dist-info/entry_points.txt +3 -0
  343. {solace_agent_mesh-0.2.4.dist-info → solace_agent_mesh-1.0.1.dist-info}/licenses/LICENSE +1 -1
  344. solace_agent_mesh/agents/base_agent_component.py +0 -256
  345. solace_agent_mesh/agents/global/actions/agent_state_change.py +0 -54
  346. solace_agent_mesh/agents/global/actions/clear_history.py +0 -32
  347. solace_agent_mesh/agents/global/actions/convert_file_to_markdown.py +0 -160
  348. solace_agent_mesh/agents/global/actions/create_file.py +0 -70
  349. solace_agent_mesh/agents/global/actions/error_action.py +0 -45
  350. solace_agent_mesh/agents/global/actions/plantuml_diagram.py +0 -163
  351. solace_agent_mesh/agents/global/actions/plotly_graph.py +0 -152
  352. solace_agent_mesh/agents/global/actions/retrieve_file.py +0 -51
  353. solace_agent_mesh/agents/global/global_agent_component.py +0 -38
  354. solace_agent_mesh/agents/image_processing/actions/create_image.py +0 -75
  355. solace_agent_mesh/agents/image_processing/actions/describe_image.py +0 -115
  356. solace_agent_mesh/agents/image_processing/image_processing_agent_component.py +0 -23
  357. solace_agent_mesh/agents/slack/__init__.py +0 -1
  358. solace_agent_mesh/agents/slack/actions/__init__.py +0 -1
  359. solace_agent_mesh/agents/slack/actions/post_message.py +0 -177
  360. solace_agent_mesh/agents/slack/slack_agent_component.py +0 -59
  361. solace_agent_mesh/agents/web_request/actions/do_image_search.py +0 -84
  362. solace_agent_mesh/agents/web_request/actions/do_news_search.py +0 -47
  363. solace_agent_mesh/agents/web_request/actions/do_suggestion_search.py +0 -34
  364. solace_agent_mesh/agents/web_request/actions/do_web_request.py +0 -135
  365. solace_agent_mesh/agents/web_request/actions/download_file.py +0 -69
  366. solace_agent_mesh/agents/web_request/web_request_agent_component.py +0 -33
  367. solace_agent_mesh/assets/web-visualizer/assets/index-D0qORgkg.css +0 -1
  368. solace_agent_mesh/assets/web-visualizer/assets/index-DnDr1pnu.js +0 -109
  369. solace_agent_mesh/assets/web-visualizer/index.html +0 -14
  370. solace_agent_mesh/assets/web-visualizer/vite.svg +0 -1
  371. solace_agent_mesh/cli/commands/add/__init__.py +0 -3
  372. solace_agent_mesh/cli/commands/add/add.py +0 -88
  373. solace_agent_mesh/cli/commands/add/agent.py +0 -110
  374. solace_agent_mesh/cli/commands/add/copy_from_plugin.py +0 -92
  375. solace_agent_mesh/cli/commands/add/gateway.py +0 -374
  376. solace_agent_mesh/cli/commands/build.py +0 -670
  377. solace_agent_mesh/cli/commands/chat/__init__.py +0 -3
  378. solace_agent_mesh/cli/commands/chat/chat.py +0 -361
  379. solace_agent_mesh/cli/commands/config.py +0 -29
  380. solace_agent_mesh/cli/commands/init/__init__.py +0 -3
  381. solace_agent_mesh/cli/commands/init/ai_provider_step.py +0 -93
  382. solace_agent_mesh/cli/commands/init/broker_step.py +0 -99
  383. solace_agent_mesh/cli/commands/init/builtin_agent_step.py +0 -83
  384. solace_agent_mesh/cli/commands/init/check_if_already_done.py +0 -13
  385. solace_agent_mesh/cli/commands/init/create_config_file_step.py +0 -65
  386. solace_agent_mesh/cli/commands/init/create_other_project_files_step.py +0 -147
  387. solace_agent_mesh/cli/commands/init/file_service_step.py +0 -73
  388. solace_agent_mesh/cli/commands/init/init.py +0 -92
  389. solace_agent_mesh/cli/commands/init/project_structure_step.py +0 -16
  390. solace_agent_mesh/cli/commands/init/web_init_step.py +0 -32
  391. solace_agent_mesh/cli/commands/plugin/__init__.py +0 -3
  392. solace_agent_mesh/cli/commands/plugin/add.py +0 -100
  393. solace_agent_mesh/cli/commands/plugin/build.py +0 -268
  394. solace_agent_mesh/cli/commands/plugin/create.py +0 -117
  395. solace_agent_mesh/cli/commands/plugin/plugin.py +0 -124
  396. solace_agent_mesh/cli/commands/plugin/remove.py +0 -73
  397. solace_agent_mesh/cli/commands/run.py +0 -68
  398. solace_agent_mesh/cli/commands/visualizer.py +0 -138
  399. solace_agent_mesh/cli/config.py +0 -85
  400. solace_agent_mesh/common/action.py +0 -91
  401. solace_agent_mesh/common/action_list.py +0 -37
  402. solace_agent_mesh/common/action_response.py +0 -340
  403. solace_agent_mesh/common/mysql_database.py +0 -40
  404. solace_agent_mesh/common/postgres_database.py +0 -85
  405. solace_agent_mesh/common/prompt_templates.py +0 -28
  406. solace_agent_mesh/common/stimulus_utils.py +0 -152
  407. solace_agent_mesh/common/time.py +0 -24
  408. solace_agent_mesh/common/utils.py +0 -712
  409. solace_agent_mesh/config_portal/frontend/static/client/assets/_index-a-zJ6rLx.js +0 -46
  410. solace_agent_mesh/config_portal/frontend/static/client/assets/components-ZIfdTbrV.js +0 -191
  411. solace_agent_mesh/config_portal/frontend/static/client/assets/index-BJHAE5s4.js +0 -17
  412. solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-44c41103.js +0 -1
  413. solace_agent_mesh/config_portal/frontend/static/client/assets/root-DX4gQ516.css +0 -1
  414. solace_agent_mesh/configs/agent_global.yaml +0 -74
  415. solace_agent_mesh/configs/agent_image_processing.yaml +0 -82
  416. solace_agent_mesh/configs/agent_slack.yaml +0 -64
  417. solace_agent_mesh/configs/agent_web_request.yaml +0 -75
  418. solace_agent_mesh/configs/conversation_to_file.yaml +0 -56
  419. solace_agent_mesh/configs/error_catcher.yaml +0 -56
  420. solace_agent_mesh/configs/monitor.yaml +0 -0
  421. solace_agent_mesh/configs/monitor_stim_and_errors_to_slack.yaml +0 -109
  422. solace_agent_mesh/configs/monitor_user_feedback.yaml +0 -58
  423. solace_agent_mesh/configs/orchestrator.yaml +0 -241
  424. solace_agent_mesh/configs/service_embedding.yaml +0 -81
  425. solace_agent_mesh/configs/service_llm.yaml +0 -265
  426. solace_agent_mesh/configs/visualize_websocket.yaml +0 -55
  427. solace_agent_mesh/gateway/components/gateway_base.py +0 -47
  428. solace_agent_mesh/gateway/components/gateway_input.py +0 -278
  429. solace_agent_mesh/gateway/components/gateway_output.py +0 -298
  430. solace_agent_mesh/gateway/identity/bamboohr_identity.py +0 -18
  431. solace_agent_mesh/gateway/identity/identity_base.py +0 -10
  432. solace_agent_mesh/gateway/identity/identity_provider.py +0 -60
  433. solace_agent_mesh/gateway/identity/no_identity.py +0 -9
  434. solace_agent_mesh/gateway/identity/passthru_identity.py +0 -9
  435. solace_agent_mesh/monitors/base_monitor_component.py +0 -26
  436. solace_agent_mesh/monitors/feedback/user_feedback_monitor.py +0 -75
  437. solace_agent_mesh/monitors/stim_and_errors/stim_and_error_monitor.py +0 -560
  438. solace_agent_mesh/orchestrator/__init__.py +0 -0
  439. solace_agent_mesh/orchestrator/action_manager.py +0 -237
  440. solace_agent_mesh/orchestrator/components/__init__.py +0 -0
  441. solace_agent_mesh/orchestrator/components/orchestrator_action_manager_timeout_component.py +0 -58
  442. solace_agent_mesh/orchestrator/components/orchestrator_action_response_component.py +0 -179
  443. solace_agent_mesh/orchestrator/components/orchestrator_register_component.py +0 -107
  444. solace_agent_mesh/orchestrator/components/orchestrator_stimulus_processor_component.py +0 -527
  445. solace_agent_mesh/orchestrator/components/orchestrator_streaming_output_component.py +0 -260
  446. solace_agent_mesh/orchestrator/orchestrator_main.py +0 -172
  447. solace_agent_mesh/orchestrator/orchestrator_prompt.py +0 -539
  448. solace_agent_mesh/services/__init__.py +0 -0
  449. solace_agent_mesh/services/authorization/providers/base_authorization_provider.py +0 -56
  450. solace_agent_mesh/services/bamboo_hr_service/__init__.py +0 -3
  451. solace_agent_mesh/services/bamboo_hr_service/bamboo_hr.py +0 -182
  452. solace_agent_mesh/services/common/__init__.py +0 -4
  453. solace_agent_mesh/services/common/auto_expiry.py +0 -45
  454. solace_agent_mesh/services/common/singleton.py +0 -18
  455. solace_agent_mesh/services/file_service/__init__.py +0 -14
  456. solace_agent_mesh/services/file_service/file_manager/__init__.py +0 -0
  457. solace_agent_mesh/services/file_service/file_manager/bucket_file_manager.py +0 -149
  458. solace_agent_mesh/services/file_service/file_manager/file_manager_base.py +0 -162
  459. solace_agent_mesh/services/file_service/file_manager/memory_file_manager.py +0 -64
  460. solace_agent_mesh/services/file_service/file_manager/volume_file_manager.py +0 -106
  461. solace_agent_mesh/services/file_service/file_service.py +0 -437
  462. solace_agent_mesh/services/file_service/file_service_constants.py +0 -54
  463. solace_agent_mesh/services/file_service/file_transformations.py +0 -141
  464. solace_agent_mesh/services/file_service/file_utils.py +0 -324
  465. solace_agent_mesh/services/file_service/transformers/__init__.py +0 -5
  466. solace_agent_mesh/services/history_service/__init__.py +0 -3
  467. solace_agent_mesh/services/history_service/history_providers/__init__.py +0 -0
  468. solace_agent_mesh/services/history_service/history_providers/base_history_provider.py +0 -54
  469. solace_agent_mesh/services/history_service/history_providers/file_history_provider.py +0 -74
  470. solace_agent_mesh/services/history_service/history_providers/index.py +0 -40
  471. solace_agent_mesh/services/history_service/history_providers/memory_history_provider.py +0 -33
  472. solace_agent_mesh/services/history_service/history_providers/mongodb_history_provider.py +0 -66
  473. solace_agent_mesh/services/history_service/history_providers/redis_history_provider.py +0 -66
  474. solace_agent_mesh/services/history_service/history_providers/sql_history_provider.py +0 -93
  475. solace_agent_mesh/services/history_service/history_service.py +0 -413
  476. solace_agent_mesh/services/history_service/long_term_memory/__init__.py +0 -0
  477. solace_agent_mesh/services/history_service/long_term_memory/long_term_memory.py +0 -399
  478. solace_agent_mesh/services/llm_service/components/llm_request_component.py +0 -340
  479. solace_agent_mesh/services/llm_service/components/llm_service_component_base.py +0 -152
  480. solace_agent_mesh/services/middleware_service/__init__.py +0 -0
  481. solace_agent_mesh/services/middleware_service/middleware_service.py +0 -20
  482. solace_agent_mesh/templates/action.py +0 -38
  483. solace_agent_mesh/templates/agent.py +0 -29
  484. solace_agent_mesh/templates/agent.yaml +0 -70
  485. solace_agent_mesh/templates/gateway-config-template.yaml +0 -6
  486. solace_agent_mesh/templates/gateway-default-config.yaml +0 -28
  487. solace_agent_mesh/templates/gateway-flows.yaml +0 -78
  488. solace_agent_mesh/templates/gateway-header.yaml +0 -16
  489. solace_agent_mesh/templates/gateway_base.py +0 -15
  490. solace_agent_mesh/templates/gateway_input.py +0 -98
  491. solace_agent_mesh/templates/gateway_output.py +0 -71
  492. solace_agent_mesh/templates/plugin-gateway-default-config.yaml +0 -29
  493. solace_agent_mesh/templates/plugin-pyproject.toml +0 -30
  494. solace_agent_mesh/templates/rest-api-default-config.yaml +0 -31
  495. solace_agent_mesh/templates/rest-api-flows.yaml +0 -81
  496. solace_agent_mesh/templates/slack-default-config.yaml +0 -16
  497. solace_agent_mesh/templates/slack-flows.yaml +0 -81
  498. solace_agent_mesh/templates/solace-agent-mesh-default.yaml +0 -86
  499. solace_agent_mesh/templates/solace-agent-mesh-plugin-default.yaml +0 -8
  500. solace_agent_mesh/templates/web-default-config.yaml +0 -10
  501. solace_agent_mesh/templates/web-flows.yaml +0 -76
  502. solace_agent_mesh/tools/__init__.py +0 -0
  503. solace_agent_mesh/tools/components/__init__.py +0 -0
  504. solace_agent_mesh/tools/components/conversation_formatter.py +0 -111
  505. solace_agent_mesh/tools/components/file_resolver_component.py +0 -58
  506. solace_agent_mesh/tools/config/runtime_config.py +0 -26
  507. solace_agent_mesh-0.2.4.dist-info/METADATA +0 -176
  508. solace_agent_mesh-0.2.4.dist-info/RECORD +0 -193
  509. solace_agent_mesh-0.2.4.dist-info/entry_points.txt +0 -3
  510. /solace_agent_mesh/{agents → agent}/__init__.py +0 -0
  511. /solace_agent_mesh/{agents/global → agent/adk}/__init__.py +0 -0
  512. /solace_agent_mesh/{agents/global/actions → agent/protocol}/__init__.py +0 -0
  513. /solace_agent_mesh/{agents/image_processing → agent/sac}/__init__.py +0 -0
  514. /solace_agent_mesh/{agents/image_processing/actions → agent/utils}/__init__.py +0 -0
  515. /solace_agent_mesh/{agents/web_request → config_portal/backend/plugin_catalog}/__init__.py +0 -0
  516. /solace_agent_mesh/{agents/web_request/actions → evaluation}/__init__.py +0 -0
  517. /solace_agent_mesh/gateway/{components → http_sse}/__init__.py +0 -0
  518. {solace_agent_mesh-0.2.4.dist-info → solace_agent_mesh-1.0.1.dist-info}/WHEEL +0 -0
@@ -1,241 +0,0 @@
1
- # This is the configuration file for the orchestrator.
2
- #
3
- # It fulfills a few functions:
4
- # 1. It receives agent registration messages to allow it to know all the agents
5
- # 2. It receives stimuli from Slack (or other UIs) over the Solace broker
6
- # and uses an LLM to break it down into a series of events.
7
- # 3. It sends action requests to agents over the Solace broker.
8
- # 4. It received action responses from agents over the Solace broker and
9
- # processes them. They may result in a conversation response or a new action request.
10
- # 5. It also manages the conversation history
11
-
12
- ---
13
- log:
14
- stdout_log_level: INFO
15
- log_file_level: INFO
16
- log_file: solace_ai_connector.log
17
-
18
- # trace:
19
- # trace_file: orchestrator.trace
20
-
21
- shared_config:
22
- - broker_config: &broker_connection
23
- broker_connection_share: ${SOLACE_BROKER_URL}
24
- dev_mode: ${SOLACE_DEV_MODE, false}
25
- broker_url: ${SOLACE_BROKER_URL}
26
- broker_username: ${SOLACE_BROKER_USERNAME}
27
- broker_password: ${SOLACE_BROKER_PASSWORD}
28
- broker_vpn: ${SOLACE_BROKER_VPN}
29
- temporary_queue: ${USE_TEMPORARY_QUEUES, false}
30
-
31
- # Take from Slack and publish to Solace
32
- flows:
33
- # Receive registration messages from the agents
34
- - name: orchestrator_register
35
- components:
36
- # Input from a Solace broker
37
- - component_name: solace_sw_broker
38
- component_module: broker_input
39
- component_config:
40
- <<: *broker_connection
41
- broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}orchestrator_register
42
- broker_subscriptions:
43
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/register/>
44
- qos: 1
45
- payload_encoding: utf-8
46
- payload_format: json
47
-
48
- # Custom component to process the registration
49
- - component_name: registration
50
- component_base_path: .
51
- component_module: src.orchestrator.components.orchestrator_register_component
52
- component_config:
53
- agent_ttl_ms: 60000
54
- component_input:
55
- source_expression: input.payload
56
-
57
- # Slack input processing
58
- - name: orchestrator_stimulus_input
59
- components:
60
- # Input from a Solace broker
61
- - component_name: solace_sw_broker
62
- component_module: broker_input
63
- component_config:
64
- <<: *broker_connection
65
- broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}orchestrator_stimulus_input
66
- broker_subscriptions:
67
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/stimulus/orchestrator/>
68
- qos: 1
69
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/stimulus/gateway/>
70
- qos: 1
71
- payload_encoding: utf-8
72
- payload_format: json
73
-
74
- # Process the stimulus with a custom component
75
- - component_name: orchestrator_stimulus_processor
76
- num_instances: {{ORCHESTRATOR_INSTANCE_COUNT}}
77
- component_base_path: .
78
- component_module: src.orchestrator.components.orchestrator_stimulus_processor_component
79
- component_config:
80
- llm_service_topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/planning
81
- llm_mode: stream
82
- stream_to_flow: streaming_output
83
- set_response_uuid_in_user_properties: true
84
-
85
- broker_request_response:
86
- enabled: true
87
- broker_config: *broker_connection
88
- request_expiry_ms: 120000
89
- payload_encoding: utf-8
90
- payload_format: json
91
- response_topic_prefix: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/response
92
- response_queue_prefix: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/response
93
-
94
- component_input:
95
- source_expression: input.payload
96
-
97
- # The previous component created a list of action requests
98
- # Separate them into individual action requests
99
- - component_name: action_requestsplitter
100
- component_module: iterate
101
-
102
- # Send the action requests to the agents
103
- - component_name: send_action_request
104
- component_module: broker_output
105
- component_config:
106
- <<: *broker_connection
107
- payload_encoding: utf-8
108
- payload_format: json
109
- copy_user_properties: true
110
- input_transforms:
111
- - type: copy
112
- source_expression: previous:payload
113
- dest_expression: user_data.output:payload
114
- - type: copy
115
- source_expression: previous:topic
116
- dest_expression: user_data.output:topic
117
- component_input:
118
- source_expression: user_data.output
119
-
120
- # Flow to handle action responses from the agents
121
- - name: orchestrator_action_response
122
- components:
123
- # Input from a Solace broker
124
- - component_name: solace_sw_broker
125
- component_module: broker_input
126
- component_config:
127
- <<: *broker_connection
128
- broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}orchestrator_action_response
129
- broker_subscriptions:
130
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/actionResponse/>
131
- qos: 1
132
- payload_encoding: utf-8
133
- payload_format: json
134
-
135
- # Process the action response with a custom component
136
- - component_name: action_response_processor
137
- component_base_path: .
138
- component_module: src.orchestrator.components.orchestrator_action_response_component
139
- input_transforms:
140
- - type: copy
141
- source_expression: input.payload
142
- dest_expression: user_data.component_input
143
- - type: copy
144
- source_expression: input.user_properties:session_id
145
- dest_expression: user_data.component_input:session_id
146
- component_input:
147
- source_expression: user_data.component_input
148
-
149
- # Break the action response into individual responses
150
- - component_name: split_action_response
151
- component_module: iterate
152
-
153
- # Send to the broker
154
- - component_name: broker_output
155
- component_module: broker_output
156
- component_config:
157
- <<: *broker_connection
158
- payload_encoding: utf-8
159
- payload_format: json
160
- copy_user_properties: true
161
- component_input:
162
- source_expression: previous
163
-
164
- # Asynchronous streaming messages to the UIs - this is called directly by other flows
165
- - name: streaming_output
166
- components:
167
- # Receive streaming messages from the LLM - this will be the raw yaml response
168
- - component_name: process_streaming_llm_output
169
- component_base_path: .
170
- component_module: src.orchestrator.components.orchestrator_streaming_output_component
171
- component_input:
172
- source_expression: input.payload
173
-
174
- # Break the streaming response into individual responses
175
- - component_name: split_action_response
176
- component_module: iterate
177
-
178
- # Output to a Solace broker
179
- - component_name: broker_output
180
- component_module: broker_output
181
- component_config:
182
- <<: *broker_connection
183
- payload_encoding: utf-8
184
- payload_format: json
185
- copy_user_properties: true
186
- input_transforms:
187
- - type: copy
188
- source_expression: previous
189
- dest_expression: user_data.output:payload
190
- - type: copy
191
- source_expression: input.user_properties
192
- dest_expression: user_data.output:user_properties
193
- - type: copy
194
- source_expression:
195
- invoke:
196
- module: invoke_functions
197
- function: if_else
198
- params:
199
- positional:
200
- - source_expression(input.payload:response_complete)
201
- - source_expression(template:${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/responseComplete/orchestrator/{{text://input.user_properties:gateway_id}})
202
- - invoke:
203
- module: invoke_functions
204
- function: if_else
205
- params:
206
- positional:
207
- - source_expression(input.payload:status_update)
208
- - source_expression(template:${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/responseStatus/orchestrator/{{text://input.user_properties:gateway_id}})
209
- - source_expression(template:${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/streamingResponse/orchestrator/{{text://input.user_properties:gateway_id}})
210
- dest_expression: user_data.output:topic
211
- component_input:
212
- source_expression: user_data.output
213
-
214
- # Timer flow - just generate a timer event every 10 seconds to check on some timers
215
- - name: action_manager_timer
216
- components:
217
- # Timer component
218
- - component_name: timer
219
- component_module: timer_input
220
- component_config:
221
- interval_ms: 10000
222
-
223
- # Custom component to process the timer event
224
- - component_name: action_manager_timeout_handler
225
- component_base_path: .
226
- component_module: src.orchestrator.components.orchestrator_action_manager_timeout_component
227
-
228
- # Break the action response into individual responses indicating a timeout
229
- - component_name: split_action_response
230
- component_module: iterate
231
-
232
- # Send to the broker
233
- - component_name: broker_output
234
- component_module: broker_output
235
- component_config:
236
- <<: *broker_connection
237
- payload_encoding: utf-8
238
- payload_format: json
239
- copy_user_properties: true
240
- component_input:
241
- source_expression: previous
@@ -1,81 +0,0 @@
1
- # This is the configuration file for the Embedding service.
2
-
3
- # The Embedding service provides integration with embedding models.
4
- # It will subscribe to Embedding service request events and based on the exact
5
- # topic, will call the appropriate Embedding service to generate a vector.
6
-
7
- # The general topic format is:
8
- # - <namespace>/solace-agent-mesh/v1/embedding-service/<verb>/<input-type>/<stimulus-uuid>/<session-uuid>/<originator-id>
9
- #
10
- # The specific subscriptions are:
11
- # - <namespace>/solace-agent-mesh/v1/embedding-service/request/text/>
12
- # - <namespace>/solace-agent-mesh/v1/embedding-service/request/image/>
13
-
14
- ---
15
- log:
16
- stdout_log_level: INFO
17
- log_file_level: INFO
18
- log_file: solace_agent_mesh.log
19
-
20
- shared_config:
21
- - broker_config: &broker_connection
22
- broker_connection_share: ${SOLACE_BROKER_URL}
23
- dev_mode: ${SOLACE_DEV_MODE, false}
24
- broker_url: ${SOLACE_BROKER_URL}
25
- broker_username: ${SOLACE_BROKER_USERNAME}
26
- broker_password: ${SOLACE_BROKER_PASSWORD}
27
- broker_vpn: ${SOLACE_BROKER_VPN}
28
- payload_encoding: utf-8
29
- payload_format: json
30
- temporary_queue: ${USE_TEMPORARY_QUEUES, false}
31
-
32
- flows:
33
- # Handling text/image requests
34
- - name: embedding-service
35
- components:
36
- - component_name: broker_input
37
- component_module: broker_input
38
- component_config:
39
- <<: *broker_connection
40
- broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/embedding-service/embedding
41
- broker_subscriptions:
42
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/embedding-service/request/text/>
43
- qos: 1
44
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/embedding-service/request/image/>
45
- qos: 1
46
-
47
- - component_name: file_resolver
48
- component_base_path: .
49
- component_module: src.tools.components.file_resolver_component
50
- component_config:
51
- force_resolve: true
52
- input_selection:
53
- source_expression: input.payload
54
-
55
- - component_name: embedding_service_model
56
- num_instances: ${EMBEDDING_SERVICE_MODEL_NUM_INSTANCES, 1}
57
- component_module: litellm_embeddings
58
- component_config:
59
- load_balancer:
60
- - model_name: ${EMBEDDING_SERVICE_MODEL_NAME} # model alias
61
- litellm_params:
62
- model: ${EMBEDDING_SERVICE_MODEL_NAME}
63
- api_key: ${EMBEDDING_SERVICE_API_KEY}
64
- api_base: ${EMBEDDING_SERVICE_ENDPOINT}
65
- input_selection:
66
- source_expression: previous
67
-
68
- - component_name: broker_output
69
- component_module: broker_output
70
- component_config:
71
- <<: *broker_connection
72
- copy_user_properties: true
73
- input_transforms:
74
- - type: copy
75
- source_expression: previous
76
- dest_expression: user_data.output:payload
77
- - type: copy
78
- source_expression: input.user_properties:__solace_ai_connector_broker_request_response_topic__
79
- dest_expression: user_data.output:topic
80
- input_selection:
81
- source_expression: user_data.output
@@ -1,265 +0,0 @@
1
- # This is the configuration file for the LLM service.
2
-
3
- # The LLM service provides multiple integrations with a variety of large language models.
4
- # It will subscribe to LLM service request events and based on the exact
5
- # topic, will call the appropriate LLM service to generate a response.
6
-
7
- # The general topic format is:
8
- # - <namespace>/solace-agent-mesh/v1/llm-service/<verb>/<model-id-or-group>/<stimulus-uuid>/<session-uuid>/<originator-id>
9
- #
10
- # The specific subscriptions are:
11
- # - <namespace>/solace-agent-mesh/v1/llm-service/request/planning/>
12
- # - <namespace>/solace-agent-mesh/v1/llm-service/request/reasoning-expensive/>
13
- # - <namespace>/solace-agent-mesh/v1/llm-service/request/reasoning-normal/>
14
- # - <namespace>/solace-agent-mesh/v1/llm-service/request/general-good/>
15
- # - <namespace>/solace-agent-mesh/v1/llm-service/request/general-fast/>
16
- # - <namespace>/solace-agent-mesh/v1/llm-service/request/writing/>
17
- # - <namespace>/solace-agent-mesh/v1/llm-service/request/coding/>
18
-
19
- ---
20
- log:
21
- stdout_log_level: INFO
22
- log_file_level: INFO
23
- log_file: solace_agent_mesh.log
24
-
25
- shared_config:
26
- - broker_config: &broker_connection
27
- broker_connection_share: ${SOLACE_BROKER_URL}
28
- dev_mode: ${SOLACE_DEV_MODE, false}
29
- broker_url: ${SOLACE_BROKER_URL}
30
- broker_username: ${SOLACE_BROKER_USERNAME}
31
- broker_password: ${SOLACE_BROKER_PASSWORD}
32
- broker_vpn: ${SOLACE_BROKER_VPN}
33
- payload_encoding: utf-8
34
- payload_format: json
35
- temporary_queue: ${USE_TEMPORARY_QUEUES, false}
36
-
37
- - llm_config: &llm_config
38
- llm_mode: none
39
- set_response_uuid_in_user_properties: true
40
- stream_to_next_component: true
41
-
42
- - llm_auth: &llm_auth
43
- api_key: ${LLM_SERVICE_API_KEY}
44
- base_url: ${LLM_SERVICE_ENDPOINT}
45
-
46
- - llm_input_transform_and_select: &llm_input_transforms_and_select
47
- input_selection:
48
- source_expression: previous
49
-
50
- flows:
51
- # Handling planning requests
52
- - name: llm-service-planning
53
- components:
54
- - component_name: broker_input
55
- component_module: broker_input
56
- component_config:
57
- <<: *broker_connection
58
- broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/planning
59
- broker_subscriptions:
60
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/planning/>
61
- qos: 1
62
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/reasoning-expensive/>
63
- qos: 1
64
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/reasoning-normal/>
65
- qos: 1
66
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/general-good/>
67
- qos: 1
68
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/general-fast/>
69
- qos: 1
70
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/writing/>
71
- qos: 1
72
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/coding/>
73
- qos: 1
74
-
75
- - component_name: file_resolver
76
- component_base_path: .
77
- component_module: src.tools.components.file_resolver_component
78
- component_config:
79
- force_resolve: true
80
- input_selection:
81
- source_expression: input.payload
82
-
83
- - component_name: llm_service_planning
84
- num_instances: ${LLM_SERVICE_PLANNING_MODEL_NUM_INSTANCES, 1}
85
- component_module: litellm_chat_model
86
- component_config:
87
- <<: *llm_config
88
- load_balancer:
89
- - model_name: ${LLM_SERVICE_PLANNING_MODEL_NAME}
90
- litellm_params:
91
- <<: *llm_auth
92
- model: ${LLM_SERVICE_PLANNING_MODEL_NAME}
93
- temperature: 0.02
94
- <<: *llm_input_transforms_and_select
95
-
96
- - component_name: broker_output
97
- component_module: broker_output
98
- component_config:
99
- <<: *broker_connection
100
- copy_user_properties: true
101
- input_transforms:
102
- - type: copy
103
- source_expression: previous
104
- dest_expression: user_data.output:payload
105
- - type: copy
106
- source_expression: input.user_properties:__solace_ai_connector_broker_request_response_topic__
107
- dest_expression: user_data.output:topic
108
- input_selection:
109
- source_expression: user_data.output
110
-
111
- # Handling reasoning requests
112
- # - name: llm-service-reasoning-expensive
113
- # components:
114
- # - component_name: broker_input
115
- # component_module: broker_input
116
- # component_config:
117
- # <<: *broker_connection
118
- # broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/reasoning-expensive
119
- # broker_subscriptions:
120
- # - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/reasoning-expensive/>
121
- # qos: 1
122
-
123
- # - component_name: llm_service_reasoning_expensive
124
- # num_instances: 5
125
- # component_module: openai_chat_model
126
- # <<: *llm_input_transforms_and_select
127
- # component_config:
128
- # <<: *llm_config
129
- # model: ${LLM_SERVICE_REASONING_EXPENSIVE_MODEL_NAME}
130
- # temperature: 0.01
131
-
132
- # - component_name: broker_output
133
- # component_module: broker_output
134
- # component_config:
135
- # <<: *broker_connection
136
-
137
- # - name: llm-service-reasoning-normal
138
- # components:
139
- # - component_name: broker_input
140
- # component_module: broker_input
141
- # component_config:
142
- # <<: *broker_connection
143
- # broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/reasoning-normal
144
- # broker_subscriptions:
145
- # - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/reasoning-normal/>
146
- # qos: 1
147
-
148
- # - component_name: llm_service_reasoning_normal
149
- # num_instances: 5
150
- # component_module: openai_chat_model
151
- # <<: *llm_input_transforms_and_select
152
- # component_config:
153
- # <<: *llm_config
154
- # model: ${LLM_SERVICE_REASONING_NORMAL_MODEL_NAME}
155
- # temperature: 0.01
156
-
157
- # - component_name: broker_output
158
- # component_module: broker_output
159
- # component_config:
160
- # <<: *broker_connection
161
-
162
- # # Handling general-good requests
163
- # - name: llm-service-general-good
164
- # components:
165
- # - component_name: broker_input
166
- # component_module: broker_input
167
- # component_config:
168
- # <<: *broker_connection
169
- # broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/general-good
170
- # broker_subscriptions:
171
- # - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/general-good/>
172
- # qos: 1
173
-
174
- # - component_name: llm_service_general_good
175
- # num_instances: 5
176
- # component_module: openai_chat_model
177
- # <<: *llm_input_transforms_and_select
178
- # component_config:
179
- # <<: *llm_config
180
- # model: ${LLM_SERVICE_GENERAL_GOOD_MODEL_NAME}
181
- # temperature: 0.01
182
-
183
- # - component_name: broker_output
184
- # component_module: broker_output
185
- # component_config:
186
- # <<: *broker_connection
187
-
188
- # # Handling general-fast requests
189
- # - name: llm-service-general-fast
190
- # components:
191
- # - component_name: broker_input
192
- # component_module: broker_input
193
- # llm_input_transform_and_select: *llm_input_transforms_and_select
194
- # component_config:
195
- # <<: *broker_connection
196
- # broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/general-fast
197
- # broker_subscriptions:
198
- # - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/general-fast/>
199
- # qos: 1
200
-
201
- # - component_name: llm_service_general_fast
202
- # num_instances: 5
203
- # component_module: openai_chat_model
204
- # <<: *llm_input_transforms_and_select
205
- # component_config:
206
- # <<: *llm_config
207
- # model: ${LLM_SERVICE_GENERAL_FAST_MODEL_NAME}
208
- # temperature: 0.01
209
-
210
- # - component_name: broker_output
211
- # component_module: broker_output
212
- # component_config:
213
- # <<: *broker_connection
214
-
215
- # # Handling writing requests
216
- # - name: llm-service-writing
217
- # components:
218
- # - component_name: broker_input
219
- # component_module: broker_input
220
- # component_config:
221
- # <<: *broker_connection
222
- # broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/writing
223
- # broker_subscriptions:
224
- # - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/writing/>
225
- # qos: 1
226
-
227
- # - component_name: llm_service_writing
228
- # num_instances: 5
229
- # component_module: openai_chat_model
230
- # <<: *llm_input_transforms_and_select
231
- # component_config:
232
- # <<: *llm_config
233
- # model: ${LLM_SERVICE_WRITING_MODEL_NAME}
234
- # temperature: 0.7
235
-
236
- # - component_name: broker_output
237
- # component_module: broker_output
238
- # component_config:
239
- # <<: *broker_connection
240
-
241
- # # Handling coding requests
242
- # - name: llm-service-coding
243
- # components:
244
- # - component_name: broker_input
245
- # component_module: broker_input
246
- # component_config:
247
- # <<: *broker_connection
248
- # broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/coding
249
- # broker_subscriptions:
250
- # - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/llm-service/request/coding/>
251
- # qos: 1
252
-
253
- # - component_name: llm_service_coding
254
- # num_instances: 5
255
- # component_module: openai_chat_model
256
- # <<: *llm_input_transforms_and_select
257
- # component_config:
258
- # <<: *llm_config
259
- # model: ${LLM_SERVICE_CODING_MODEL_NAME}
260
- # temperature: 0.01
261
-
262
- # - component_name: broker_output
263
- # component_module: broker_output
264
- # component_config:
265
- # <<: *broker_connection
@@ -1,55 +0,0 @@
1
- ---
2
- log:
3
- stdout_log_level: INFO
4
- log_file_level: INFO
5
- log_file: solace_ai_connector.log
6
-
7
- shared_config:
8
- - broker_config: &broker_connection
9
- broker_connection_share: ${SOLACE_BROKER_URL}
10
- dev_mode: ${SOLACE_DEV_MODE, false}
11
- broker_url: ${SOLACE_BROKER_URL}
12
- broker_username: ${SOLACE_BROKER_USERNAME}
13
- broker_password: ${SOLACE_BROKER_PASSWORD}
14
- broker_vpn: ${SOLACE_BROKER_VPN}
15
- temporary_queue: ${USE_TEMPORARY_QUEUES, false}
16
-
17
- flows:
18
- - name: visualize_websocket
19
- components:
20
- - component_name: broker_input
21
- component_module: broker_input
22
- component_config:
23
- <<: *broker_connection
24
- broker_queue_name: ${SOLACE_AGENT_MESH_NAMESPACE}visualize_websocket
25
- broker_subscriptions:
26
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/register/>
27
- qos: 1
28
- - topic: ${SOLACE_AGENT_MESH_NAMESPACE}solace-agent-mesh/v1/>
29
- qos: 1
30
- payload_encoding: utf-8
31
- payload_format: json
32
-
33
- - component_name: websocket_output
34
- component_module: websocket_output
35
- component_config:
36
- listen_port: ${VISUALIZER_WEBSOCKET_PORT, 5000}
37
- serve_html: false
38
- payload_encoding: none
39
- payload_format: json
40
- input_transforms:
41
- - type: copy
42
- source_expression: input.payload
43
- dest_expression: user_data.output:payload.payload
44
- - type: copy
45
- source_expression: input.topic
46
- dest_expression: user_data.output:payload.topic
47
- - type: copy
48
- source_expression: input.user_properties
49
- dest_expression: user_data.output:payload.user_properties
50
- - type: copy
51
- source_value: "*"
52
- dest_expression: user_data.output:socket_id
53
- component_input:
54
- source_expression: user_data.output
55
-
@@ -1,47 +0,0 @@
1
- from solace_ai_connector.components.component_base import ComponentBase
2
- from solace_ai_connector.common.log import log
3
- from ...services.history_service import HistoryService
4
- from ..identity.identity_provider import IdentityProvider
5
- from ...common.constants import DEFAULT_IDENTITY_KEY_FIELD
6
- from ...orchestrator.orchestrator_prompt import LONG_TERM_MEMORY_PROMPT
7
-
8
-
9
- class GatewayBase(ComponentBase):
10
- def __init__(self, info, **kwargs):
11
- super().__init__(info, **kwargs)
12
- self.gateway_id = self.get_config("gateway_id", "default-change-me")
13
- self.system_purpose_prompt_suffix = ""
14
- self.history_instance = self._initialize_history()
15
-
16
- def _initialize_history(self) -> HistoryService:
17
- self.use_history = self.get_config("retain_history", True)
18
-
19
- if not self.use_history:
20
- return None
21
-
22
- history_config = self.get_config("history_config", {})
23
-
24
- if history_config.get("enable_long_term_memory", False):
25
- self.system_purpose_prompt_suffix = LONG_TERM_MEMORY_PROMPT
26
-
27
- try:
28
- return HistoryService(
29
- history_config, identifier=self.gateway_id + "_history"
30
- )
31
- except (ImportError, AttributeError, ValueError) as e:
32
- log.error("Failed to load history class: %s", e)
33
- raise
34
-
35
-
36
- def _initialize_identity_component(self):
37
- identity_config = self.get_config("identity", {})
38
- identity_key_field = self.get_config("identity_key_field", DEFAULT_IDENTITY_KEY_FIELD)
39
-
40
- if "key_field" not in identity_config:
41
- identity_config["key_field"] = identity_key_field
42
-
43
- try:
44
- return IdentityProvider(identity_config)
45
- except (ImportError, AttributeError, ValueError) as e:
46
- log.error("Failed to load identity class: %s", e)
47
- raise