blaxel 0.1.22rc70__py3-none-any.whl → 0.2.0rc2__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.
Files changed (419) hide show
  1. blaxel/__init__.py +6 -3
  2. blaxel/core/__init__.py +44 -0
  3. blaxel/{agents → core/agents}/__init__.py +30 -50
  4. blaxel/{authentication → core/authentication}/apikey.py +1 -0
  5. blaxel/{authentication → core/authentication}/clientcredentials.py +6 -2
  6. blaxel/{client → core/client}/api/agents/create_agent.py +1 -1
  7. blaxel/{client → core/client}/api/agents/update_agent.py +1 -1
  8. blaxel/{client → core/client}/api/compute/create_sandbox.py +1 -1
  9. blaxel/{client → core/client}/api/compute/create_sandbox_preview.py +1 -1
  10. blaxel/{client → core/client}/api/compute/create_sandbox_preview_token.py +1 -1
  11. blaxel/{client → core/client}/api/compute/update_sandbox.py +1 -1
  12. blaxel/{client → core/client}/api/compute/update_sandbox_preview.py +1 -1
  13. blaxel/{client → core/client}/api/functions/create_function.py +1 -1
  14. blaxel/{client → core/client}/api/functions/update_function.py +1 -1
  15. blaxel/{client → core/client}/api/integrations/create_integration_connection.py +1 -1
  16. blaxel/{client → core/client}/api/integrations/update_integration_connection.py +1 -1
  17. blaxel/{client → core/client}/api/jobs/create_job.py +1 -1
  18. blaxel/{client → core/client}/api/jobs/update_job.py +1 -1
  19. blaxel/{client → core/client}/api/knowledgebases/create_knowledgebase.py +1 -1
  20. blaxel/{client → core/client}/api/knowledgebases/update_knowledgebase.py +1 -1
  21. blaxel/{client → core/client}/api/models/create_model.py +1 -1
  22. blaxel/{client → core/client}/api/models/update_model.py +1 -1
  23. blaxel/{client → core/client}/api/policies/create_policy.py +1 -1
  24. blaxel/{client → core/client}/api/policies/update_policy.py +1 -1
  25. blaxel/{client → core/client}/api/service_accounts/create_api_key_for_service_account.py +1 -1
  26. blaxel/{client → core/client}/api/service_accounts/create_workspace_service_account.py +1 -1
  27. blaxel/{client → core/client}/api/service_accounts/update_workspace_service_account.py +1 -1
  28. blaxel/{client → core/client}/api/workspaces/check_workspace_availability.py +1 -1
  29. blaxel/{client → core/client}/api/workspaces/create_worspace.py +1 -1
  30. blaxel/{client → core/client}/api/workspaces/invite_workspace_user.py +1 -1
  31. blaxel/{client → core/client}/api/workspaces/update_workspace.py +1 -1
  32. blaxel/{client → core/client}/api/workspaces/update_workspace_user_role.py +1 -1
  33. blaxel/{client → core/client}/models/agent.py +1 -1
  34. blaxel/{client → core/client}/models/agent_spec.py +2 -2
  35. blaxel/{client → core/client}/models/core_spec.py +1 -1
  36. blaxel/{client → core/client}/models/function.py +1 -1
  37. blaxel/{client → core/client}/models/function_schema_properties.py +1 -1
  38. blaxel/{client → core/client}/models/function_spec.py +2 -2
  39. blaxel/{client → core/client}/models/integration.py +2 -2
  40. blaxel/{client → core/client}/models/integration_endpoints.py +1 -1
  41. blaxel/{client → core/client}/models/job.py +1 -1
  42. blaxel/{client → core/client}/models/job_spec.py +1 -1
  43. blaxel/{client → core/client}/models/knowledgebase.py +1 -1
  44. blaxel/{client → core/client}/models/location_response.py +1 -1
  45. blaxel/{client → core/client}/models/model.py +1 -1
  46. blaxel/{client → core/client}/models/model_spec.py +1 -1
  47. blaxel/{client → core/client}/models/policy_spec.py +2 -2
  48. blaxel/{client → core/client}/models/resource_metrics.py +3 -3
  49. blaxel/{client → core/client}/models/runtime.py +1 -1
  50. blaxel/{client → core/client}/models/sandbox.py +1 -1
  51. blaxel/{client → core/client}/models/sandbox_definition.py +1 -1
  52. blaxel/{client → core/client}/models/sandbox_spec.py +1 -1
  53. blaxel/{client → core/client}/models/store_agent.py +1 -1
  54. blaxel/{client → core/client}/models/store_configuration.py +1 -1
  55. blaxel/{client → core/client}/models/template.py +1 -1
  56. blaxel/core/common/__init__.py +6 -0
  57. blaxel/core/common/autoload.py +21 -0
  58. blaxel/{common → core/common}/internal.py +33 -62
  59. blaxel/core/common/logger.py +131 -0
  60. blaxel/{jobs → core/jobs}/__init__.py +40 -60
  61. blaxel/core/mcp/__init__.py +4 -0
  62. blaxel/{mcp → core/mcp}/client.py +13 -7
  63. blaxel/{mcp → core/mcp}/server.py +4 -30
  64. blaxel/core/models/__init__.py +52 -0
  65. blaxel/core/sandbox/__init__.py +29 -0
  66. blaxel/core/sandbox/action.py +79 -0
  67. blaxel/{sandbox → core/sandbox}/client/api/filesystem/put_filesystem_path.py +1 -1
  68. blaxel/{sandbox → core/sandbox}/client/api/network/post_network_process_pid_monitor.py +1 -1
  69. blaxel/core/sandbox/client/api/process/__init__.py +0 -0
  70. blaxel/{sandbox → core/sandbox}/client/api/process/post_process.py +1 -1
  71. blaxel/{sandbox → core/sandbox}/client/models/directory.py +2 -2
  72. blaxel/core/sandbox/filesystem.py +280 -0
  73. blaxel/core/sandbox/network.py +10 -0
  74. blaxel/{sandbox → core/sandbox}/preview.py +45 -17
  75. blaxel/core/sandbox/process.py +159 -0
  76. blaxel/{sandbox → core/sandbox}/sandbox.py +62 -5
  77. blaxel/core/sandbox/session.py +124 -0
  78. blaxel/core/sandbox/types.py +103 -0
  79. blaxel/{tools → core/tools}/__init__.py +62 -90
  80. blaxel/crewai/__init__.py +4 -0
  81. blaxel/{models/crewai.py → crewai/model.py} +4 -2
  82. blaxel/crewai/py.typed +0 -0
  83. blaxel/crewai/tools.py +26 -0
  84. blaxel/googleadk/__init__.py +4 -0
  85. blaxel/{models/googleadk.py → googleadk/model.py} +8 -2
  86. blaxel/googleadk/py.typed +0 -0
  87. blaxel/googleadk/tools.py +72 -0
  88. blaxel/langgraph/__init__.py +4 -0
  89. blaxel/{models/langchain.py → langgraph/model.py} +8 -4
  90. blaxel/langgraph/py.typed +0 -0
  91. blaxel/{tools/langchain.py → langgraph/tools.py} +7 -3
  92. blaxel/livekit/__init__.py +4 -0
  93. blaxel/{models/livekit.py → livekit/model.py} +7 -1
  94. blaxel/livekit/py.typed +0 -0
  95. blaxel/{tools/livekit.py → livekit/tools.py} +8 -1
  96. blaxel/llamaindex/__init__.py +4 -0
  97. blaxel/{models/llamaindex.py → llamaindex/model.py} +6 -3
  98. blaxel/llamaindex/py.typed +0 -0
  99. blaxel/{tools/llamaindex.py → llamaindex/tools.py} +7 -4
  100. blaxel/openai/__init__.py +4 -0
  101. blaxel/{models/openai.py → openai/model.py} +4 -2
  102. blaxel/openai/py.typed +0 -0
  103. blaxel/{tools/openai.py → openai/tools.py} +7 -3
  104. blaxel/pydantic/__init__.py +4 -0
  105. blaxel/{models/custom/pydantic → pydantic/custom}/gemini.py +0 -1
  106. blaxel/{models/pydantic.py → pydantic/model.py} +6 -4
  107. blaxel/pydantic/py.typed +0 -0
  108. blaxel/{tools/pydantic.py → pydantic/tools.py} +6 -3
  109. blaxel/telemetry/__init__.py +6 -0
  110. blaxel/telemetry/instrumentation/blaxel_core.py +124 -0
  111. blaxel/telemetry/instrumentation/blaxel_langgraph.py +74 -0
  112. blaxel/telemetry/instrumentation/blaxel_langgraph_gemini.py +360 -0
  113. blaxel/telemetry/instrumentation/blaxel_llamaindex.py +89 -0
  114. blaxel/telemetry/instrumentation/map.py +61 -0
  115. blaxel/telemetry/instrumentation/utils.py +74 -0
  116. blaxel/{common → telemetry/log}/logger.py +6 -12
  117. blaxel/{instrumentation → telemetry}/manager.py +20 -12
  118. blaxel/telemetry/py.typed +0 -0
  119. blaxel/{instrumentation → telemetry}/span.py +12 -1
  120. blaxel-0.2.0rc2.dist-info/METADATA +224 -0
  121. blaxel-0.2.0rc2.dist-info/RECORD +408 -0
  122. blaxel/common/autoload.py +0 -9
  123. blaxel/instrumentation/map.py +0 -49
  124. blaxel/mcp/__init__.py +0 -3
  125. blaxel/models/__init__.py +0 -104
  126. blaxel/sandbox/base.py +0 -67
  127. blaxel/sandbox/filesystem.py +0 -104
  128. blaxel/sandbox/process.py +0 -56
  129. blaxel/tools/crewai.py +0 -22
  130. blaxel/tools/googleadk.py +0 -66
  131. blaxel-0.1.22rc70.dist-info/METADATA +0 -169
  132. blaxel-0.1.22rc70.dist-info/RECORD +0 -379
  133. /blaxel/{authentication → core/authentication}/__init__.py +0 -0
  134. /blaxel/{authentication → core/authentication}/devicemode.py +0 -0
  135. /blaxel/{authentication → core/authentication}/oauth.py +0 -0
  136. /blaxel/{authentication → core/authentication}/types.py +0 -0
  137. /blaxel/{cache → core/cache}/__init__.py +0 -0
  138. /blaxel/{cache → core/cache}/cache.py +0 -0
  139. /blaxel/{client → core/client}/__init__.py +0 -0
  140. /blaxel/{client → core/client}/api/__init__.py +0 -0
  141. /blaxel/{client → core/client}/api/agents/__init__.py +0 -0
  142. /blaxel/{client → core/client}/api/agents/delete_agent.py +0 -0
  143. /blaxel/{client → core/client}/api/agents/get_agent.py +0 -0
  144. /blaxel/{client → core/client}/api/agents/list_agent_revisions.py +0 -0
  145. /blaxel/{client → core/client}/api/agents/list_agents.py +0 -0
  146. /blaxel/{client → core/client}/api/compute/__init__.py +0 -0
  147. /blaxel/{client → core/client}/api/compute/delete_sandbox.py +0 -0
  148. /blaxel/{client → core/client}/api/compute/delete_sandbox_preview.py +0 -0
  149. /blaxel/{client → core/client}/api/compute/delete_sandbox_preview_token.py +0 -0
  150. /blaxel/{client → core/client}/api/compute/get_sandbox.py +0 -0
  151. /blaxel/{client → core/client}/api/compute/get_sandbox_preview.py +0 -0
  152. /blaxel/{client → core/client}/api/compute/list_sandbox_preview_tokens.py +0 -0
  153. /blaxel/{client → core/client}/api/compute/list_sandbox_previews.py +0 -0
  154. /blaxel/{client → core/client}/api/compute/list_sandboxes.py +0 -0
  155. /blaxel/{client → core/client}/api/compute/start_sandbox.py +0 -0
  156. /blaxel/{client → core/client}/api/compute/stop_sandbox.py +0 -0
  157. /blaxel/{client → core/client}/api/configurations/__init__.py +0 -0
  158. /blaxel/{client → core/client}/api/configurations/get_configuration.py +0 -0
  159. /blaxel/{client → core/client}/api/default/__init__.py +0 -0
  160. /blaxel/{client → core/client}/api/default/get_template.py +0 -0
  161. /blaxel/{client → core/client}/api/default/list_mcp_hub_definitions.py +0 -0
  162. /blaxel/{client → core/client}/api/default/list_sandbox_hub_definitions.py +0 -0
  163. /blaxel/{client → core/client}/api/functions/__init__.py +0 -0
  164. /blaxel/{client → core/client}/api/functions/delete_function.py +0 -0
  165. /blaxel/{client → core/client}/api/functions/get_function.py +0 -0
  166. /blaxel/{client → core/client}/api/functions/list_function_revisions.py +0 -0
  167. /blaxel/{client → core/client}/api/functions/list_functions.py +0 -0
  168. /blaxel/{client → core/client}/api/integrations/__init__.py +0 -0
  169. /blaxel/{client → core/client}/api/integrations/delete_integration_connection.py +0 -0
  170. /blaxel/{client → core/client}/api/integrations/get_integration.py +0 -0
  171. /blaxel/{client → core/client}/api/integrations/get_integration_connection.py +0 -0
  172. /blaxel/{client → core/client}/api/integrations/get_integration_connection_model.py +0 -0
  173. /blaxel/{client → core/client}/api/integrations/get_integration_connection_model_endpoint_configurations.py +0 -0
  174. /blaxel/{client → core/client}/api/integrations/list_integration_connection_models.py +0 -0
  175. /blaxel/{client → core/client}/api/integrations/list_integration_connections.py +0 -0
  176. /blaxel/{client → core/client}/api/invitations/__init__.py +0 -0
  177. /blaxel/{client → core/client}/api/invitations/list_all_pending_invitations.py +0 -0
  178. /blaxel/{client → core/client}/api/jobs/__init__.py +0 -0
  179. /blaxel/{client → core/client}/api/jobs/delete_job.py +0 -0
  180. /blaxel/{client → core/client}/api/jobs/get_job.py +0 -0
  181. /blaxel/{client → core/client}/api/jobs/list_job_revisions.py +0 -0
  182. /blaxel/{client → core/client}/api/jobs/list_jobs.py +0 -0
  183. /blaxel/{client → core/client}/api/knowledgebases/__init__.py +0 -0
  184. /blaxel/{client → core/client}/api/knowledgebases/delete_knowledgebase.py +0 -0
  185. /blaxel/{client → core/client}/api/knowledgebases/get_knowledgebase.py +0 -0
  186. /blaxel/{client → core/client}/api/knowledgebases/list_knowledgebase_revisions.py +0 -0
  187. /blaxel/{client → core/client}/api/knowledgebases/list_knowledgebases.py +0 -0
  188. /blaxel/{client → core/client}/api/locations/__init__.py +0 -0
  189. /blaxel/{client → core/client}/api/locations/list_locations.py +0 -0
  190. /blaxel/{client → core/client}/api/models/__init__.py +0 -0
  191. /blaxel/{client → core/client}/api/models/delete_model.py +0 -0
  192. /blaxel/{client → core/client}/api/models/get_model.py +0 -0
  193. /blaxel/{client → core/client}/api/models/list_model_revisions.py +0 -0
  194. /blaxel/{client → core/client}/api/models/list_models.py +0 -0
  195. /blaxel/{client → core/client}/api/policies/__init__.py +0 -0
  196. /blaxel/{client → core/client}/api/policies/delete_policy.py +0 -0
  197. /blaxel/{client → core/client}/api/policies/get_policy.py +0 -0
  198. /blaxel/{client → core/client}/api/policies/list_policies.py +0 -0
  199. /blaxel/{client → core/client}/api/privateclusters/__init__.py +0 -0
  200. /blaxel/{client → core/client}/api/privateclusters/create_private_cluster.py +0 -0
  201. /blaxel/{client → core/client}/api/privateclusters/delete_private_cluster.py +0 -0
  202. /blaxel/{client → core/client}/api/privateclusters/get_private_cluster.py +0 -0
  203. /blaxel/{client → core/client}/api/privateclusters/get_private_cluster_health.py +0 -0
  204. /blaxel/{client → core/client}/api/privateclusters/list_private_clusters.py +0 -0
  205. /blaxel/{client → core/client}/api/privateclusters/update_private_cluster.py +0 -0
  206. /blaxel/{client → core/client}/api/privateclusters/update_private_cluster_health.py +0 -0
  207. /blaxel/{client → core/client}/api/service_accounts/__init__.py +0 -0
  208. /blaxel/{client → core/client}/api/service_accounts/delete_api_key_for_service_account.py +0 -0
  209. /blaxel/{client → core/client}/api/service_accounts/delete_workspace_service_account.py +0 -0
  210. /blaxel/{client → core/client}/api/service_accounts/get_workspace_service_accounts.py +0 -0
  211. /blaxel/{client → core/client}/api/service_accounts/list_api_keys_for_service_account.py +0 -0
  212. /blaxel/{client → core/client}/api/templates/__init__.py +0 -0
  213. /blaxel/{client → core/client}/api/templates/list_templates.py +0 -0
  214. /blaxel/{client → core/client}/api/workspaces/__init__.py +0 -0
  215. /blaxel/{client → core/client}/api/workspaces/accept_workspace_invitation.py +0 -0
  216. /blaxel/{client → core/client}/api/workspaces/decline_workspace_invitation.py +0 -0
  217. /blaxel/{client → core/client}/api/workspaces/delete_workspace.py +0 -0
  218. /blaxel/{client → core/client}/api/workspaces/get_workspace.py +0 -0
  219. /blaxel/{client → core/client}/api/workspaces/leave_workspace.py +0 -0
  220. /blaxel/{client → core/client}/api/workspaces/list_workspace_users.py +0 -0
  221. /blaxel/{client → core/client}/api/workspaces/list_workspaces.py +0 -0
  222. /blaxel/{client → core/client}/api/workspaces/remove_workspace_user.py +0 -0
  223. /blaxel/{client → core/client}/client.py +0 -0
  224. /blaxel/{client → core/client}/errors.py +0 -0
  225. /blaxel/{client → core/client}/models/__init__.py +0 -0
  226. /blaxel/{client → core/client}/models/acl.py +0 -0
  227. /blaxel/{client → core/client}/models/api_key.py +0 -0
  228. /blaxel/{client → core/client}/models/billable_time_metric.py +0 -0
  229. /blaxel/{client → core/client}/models/check_workspace_availability_body.py +0 -0
  230. /blaxel/{client → core/client}/models/configuration.py +0 -0
  231. /blaxel/{client → core/client}/models/continent.py +0 -0
  232. /blaxel/{client → core/client}/models/core_event.py +0 -0
  233. /blaxel/{client → core/client}/models/core_spec_configurations.py +0 -0
  234. /blaxel/{client → core/client}/models/country.py +0 -0
  235. /blaxel/{client → core/client}/models/create_api_key_for_service_account_body.py +0 -0
  236. /blaxel/{client → core/client}/models/create_workspace_service_account_body.py +0 -0
  237. /blaxel/{client → core/client}/models/create_workspace_service_account_response_200.py +0 -0
  238. /blaxel/{client → core/client}/models/delete_sandbox_preview_token_response_200.py +0 -0
  239. /blaxel/{client → core/client}/models/delete_workspace_service_account_response_200.py +0 -0
  240. /blaxel/{client → core/client}/models/entrypoint.py +0 -0
  241. /blaxel/{client → core/client}/models/entrypoint_env.py +0 -0
  242. /blaxel/{client → core/client}/models/flavor.py +0 -0
  243. /blaxel/{client → core/client}/models/form.py +0 -0
  244. /blaxel/{client → core/client}/models/form_config.py +0 -0
  245. /blaxel/{client → core/client}/models/form_oauth.py +0 -0
  246. /blaxel/{client → core/client}/models/form_secrets.py +0 -0
  247. /blaxel/{client → core/client}/models/function_kit.py +0 -0
  248. /blaxel/{client → core/client}/models/function_schema.py +0 -0
  249. /blaxel/{client → core/client}/models/function_schema_not.py +0 -0
  250. /blaxel/{client → core/client}/models/function_schema_or_bool.py +0 -0
  251. /blaxel/{client → core/client}/models/get_workspace_service_accounts_response_200_item.py +0 -0
  252. /blaxel/{client → core/client}/models/histogram_bucket.py +0 -0
  253. /blaxel/{client → core/client}/models/histogram_stats.py +0 -0
  254. /blaxel/{client → core/client}/models/integration_additional_infos.py +0 -0
  255. /blaxel/{client → core/client}/models/integration_connection.py +0 -0
  256. /blaxel/{client → core/client}/models/integration_connection_spec.py +0 -0
  257. /blaxel/{client → core/client}/models/integration_connection_spec_config.py +0 -0
  258. /blaxel/{client → core/client}/models/integration_connection_spec_secret.py +0 -0
  259. /blaxel/{client → core/client}/models/integration_endpoint.py +0 -0
  260. /blaxel/{client → core/client}/models/integration_endpoint_token.py +0 -0
  261. /blaxel/{client → core/client}/models/integration_headers.py +0 -0
  262. /blaxel/{client → core/client}/models/integration_model.py +0 -0
  263. /blaxel/{client → core/client}/models/integration_organization.py +0 -0
  264. /blaxel/{client → core/client}/models/integration_query_params.py +0 -0
  265. /blaxel/{client → core/client}/models/integration_repository.py +0 -0
  266. /blaxel/{client → core/client}/models/invite_workspace_user_body.py +0 -0
  267. /blaxel/{client → core/client}/models/job_execution_config.py +0 -0
  268. /blaxel/{client → core/client}/models/job_metrics.py +0 -0
  269. /blaxel/{client → core/client}/models/job_metrics_executions_chart.py +0 -0
  270. /blaxel/{client → core/client}/models/job_metrics_executions_total.py +0 -0
  271. /blaxel/{client → core/client}/models/job_metrics_tasks_chart.py +0 -0
  272. /blaxel/{client → core/client}/models/job_metrics_tasks_total.py +0 -0
  273. /blaxel/{client → core/client}/models/jobs_chart.py +0 -0
  274. /blaxel/{client → core/client}/models/jobs_chart_value.py +0 -0
  275. /blaxel/{client → core/client}/models/jobs_executions.py +0 -0
  276. /blaxel/{client → core/client}/models/jobs_network_chart.py +0 -0
  277. /blaxel/{client → core/client}/models/jobs_success_failed_chart.py +0 -0
  278. /blaxel/{client → core/client}/models/jobs_tasks.py +0 -0
  279. /blaxel/{client → core/client}/models/jobs_total.py +0 -0
  280. /blaxel/{client → core/client}/models/knowledgebase_spec.py +0 -0
  281. /blaxel/{client → core/client}/models/knowledgebase_spec_options.py +0 -0
  282. /blaxel/{client → core/client}/models/last_n_requests_metric.py +0 -0
  283. /blaxel/{client → core/client}/models/latency_metric.py +0 -0
  284. /blaxel/{client → core/client}/models/logs_response.py +0 -0
  285. /blaxel/{client → core/client}/models/logs_response_data.py +0 -0
  286. /blaxel/{client → core/client}/models/mcp_definition.py +0 -0
  287. /blaxel/{client → core/client}/models/mcp_definition_entrypoint.py +0 -0
  288. /blaxel/{client → core/client}/models/mcp_definition_form.py +0 -0
  289. /blaxel/{client → core/client}/models/memory_allocation_by_name.py +0 -0
  290. /blaxel/{client → core/client}/models/memory_allocation_metric.py +0 -0
  291. /blaxel/{client → core/client}/models/metadata.py +0 -0
  292. /blaxel/{client → core/client}/models/metadata_labels.py +0 -0
  293. /blaxel/{client → core/client}/models/metric.py +0 -0
  294. /blaxel/{client → core/client}/models/metrics.py +0 -0
  295. /blaxel/{client → core/client}/models/metrics_models.py +0 -0
  296. /blaxel/{client → core/client}/models/metrics_request_total_per_code.py +0 -0
  297. /blaxel/{client → core/client}/models/metrics_rps_per_code.py +0 -0
  298. /blaxel/{client → core/client}/models/model_private_cluster.py +0 -0
  299. /blaxel/{client → core/client}/models/o_auth.py +0 -0
  300. /blaxel/{client → core/client}/models/owner_fields.py +0 -0
  301. /blaxel/{client → core/client}/models/pending_invitation.py +0 -0
  302. /blaxel/{client → core/client}/models/pending_invitation_accept.py +0 -0
  303. /blaxel/{client → core/client}/models/pending_invitation_render.py +0 -0
  304. /blaxel/{client → core/client}/models/pending_invitation_render_invited_by.py +0 -0
  305. /blaxel/{client → core/client}/models/pending_invitation_render_workspace.py +0 -0
  306. /blaxel/{client → core/client}/models/pending_invitation_workspace_details.py +0 -0
  307. /blaxel/{client → core/client}/models/pod_template_spec.py +0 -0
  308. /blaxel/{client → core/client}/models/policy.py +0 -0
  309. /blaxel/{client → core/client}/models/policy_location.py +0 -0
  310. /blaxel/{client → core/client}/models/policy_max_tokens.py +0 -0
  311. /blaxel/{client → core/client}/models/port.py +0 -0
  312. /blaxel/{client → core/client}/models/preview.py +0 -0
  313. /blaxel/{client → core/client}/models/preview_metadata.py +0 -0
  314. /blaxel/{client → core/client}/models/preview_spec.py +0 -0
  315. /blaxel/{client → core/client}/models/preview_spec_request_headers.py +0 -0
  316. /blaxel/{client → core/client}/models/preview_spec_response_headers.py +0 -0
  317. /blaxel/{client → core/client}/models/preview_token.py +0 -0
  318. /blaxel/{client → core/client}/models/preview_token_metadata.py +0 -0
  319. /blaxel/{client → core/client}/models/preview_token_spec.py +0 -0
  320. /blaxel/{client → core/client}/models/private_cluster.py +0 -0
  321. /blaxel/{client → core/client}/models/private_location.py +0 -0
  322. /blaxel/{client → core/client}/models/repository.py +0 -0
  323. /blaxel/{client → core/client}/models/request_duration_over_time_metric.py +0 -0
  324. /blaxel/{client → core/client}/models/request_duration_over_time_metrics.py +0 -0
  325. /blaxel/{client → core/client}/models/request_total_by_origin_metric.py +0 -0
  326. /blaxel/{client → core/client}/models/request_total_by_origin_metric_request_total_by_origin.py +0 -0
  327. /blaxel/{client → core/client}/models/request_total_by_origin_metric_request_total_by_origin_and_code.py +0 -0
  328. /blaxel/{client → core/client}/models/request_total_metric.py +0 -0
  329. /blaxel/{client → core/client}/models/request_total_metric_request_total_per_code.py +0 -0
  330. /blaxel/{client → core/client}/models/request_total_metric_rps_per_code.py +0 -0
  331. /blaxel/{client → core/client}/models/request_total_response_data.py +0 -0
  332. /blaxel/{client → core/client}/models/resource.py +0 -0
  333. /blaxel/{client → core/client}/models/resource_log.py +0 -0
  334. /blaxel/{client → core/client}/models/resource_log_chart.py +0 -0
  335. /blaxel/{client → core/client}/models/resource_log_response.py +0 -0
  336. /blaxel/{client → core/client}/models/resource_metrics_request_total_per_code.py +0 -0
  337. /blaxel/{client → core/client}/models/resource_metrics_request_total_per_code_previous.py +0 -0
  338. /blaxel/{client → core/client}/models/resource_metrics_rps_per_code.py +0 -0
  339. /blaxel/{client → core/client}/models/resource_metrics_rps_per_code_previous.py +0 -0
  340. /blaxel/{client → core/client}/models/resource_trace.py +0 -0
  341. /blaxel/{client → core/client}/models/revision_configuration.py +0 -0
  342. /blaxel/{client → core/client}/models/revision_metadata.py +0 -0
  343. /blaxel/{client → core/client}/models/runtime_configuration.py +0 -0
  344. /blaxel/{client → core/client}/models/runtime_startup_probe.py +0 -0
  345. /blaxel/{client → core/client}/models/serverless_config.py +0 -0
  346. /blaxel/{client → core/client}/models/serverless_config_configuration.py +0 -0
  347. /blaxel/{client → core/client}/models/spec_configuration.py +0 -0
  348. /blaxel/{client → core/client}/models/start_sandbox.py +0 -0
  349. /blaxel/{client → core/client}/models/stop_sandbox.py +0 -0
  350. /blaxel/{client → core/client}/models/store_agent_labels.py +0 -0
  351. /blaxel/{client → core/client}/models/store_configuration_option.py +0 -0
  352. /blaxel/{client → core/client}/models/template_variable.py +0 -0
  353. /blaxel/{client → core/client}/models/time_fields.py +0 -0
  354. /blaxel/{client → core/client}/models/time_to_first_token_over_time_metrics.py +0 -0
  355. /blaxel/{client → core/client}/models/token_rate_metric.py +0 -0
  356. /blaxel/{client → core/client}/models/token_rate_metrics.py +0 -0
  357. /blaxel/{client → core/client}/models/token_total_metric.py +0 -0
  358. /blaxel/{client → core/client}/models/trace_ids_response.py +0 -0
  359. /blaxel/{client → core/client}/models/trigger.py +0 -0
  360. /blaxel/{client → core/client}/models/trigger_configuration.py +0 -0
  361. /blaxel/{client → core/client}/models/update_workspace_service_account_body.py +0 -0
  362. /blaxel/{client → core/client}/models/update_workspace_service_account_response_200.py +0 -0
  363. /blaxel/{client → core/client}/models/update_workspace_user_role_body.py +0 -0
  364. /blaxel/{client → core/client}/models/websocket_channel.py +0 -0
  365. /blaxel/{client → core/client}/models/websocket_message.py +0 -0
  366. /blaxel/{client → core/client}/models/workspace.py +0 -0
  367. /blaxel/{client → core/client}/models/workspace_labels.py +0 -0
  368. /blaxel/{client → core/client}/models/workspace_runtime.py +0 -0
  369. /blaxel/{client → core/client}/models/workspace_user.py +0 -0
  370. /blaxel/{client → core/client}/py.typed +0 -0
  371. /blaxel/{client → core/client}/types.py +0 -0
  372. /blaxel/{common → core/common}/env.py +0 -0
  373. /blaxel/{common → core/common}/settings.py +0 -0
  374. /blaxel/{sandbox/client/api/filesystem/__init__.py → core/py.typed} +0 -0
  375. /blaxel/{sandbox → core/sandbox}/client/__init__.py +0 -0
  376. /blaxel/{sandbox → core/sandbox}/client/api/__init__.py +0 -0
  377. /blaxel/{sandbox/client/api/network → core/sandbox/client/api/filesystem}/__init__.py +0 -0
  378. /blaxel/{sandbox → core/sandbox}/client/api/filesystem/delete_filesystem_path.py +0 -0
  379. /blaxel/{sandbox → core/sandbox}/client/api/filesystem/get_filesystem_path.py +0 -0
  380. /blaxel/{sandbox → core/sandbox}/client/api/filesystem/get_watch_filesystem_path.py +0 -0
  381. /blaxel/{sandbox → core/sandbox}/client/api/filesystem/get_ws_watch_filesystem_path.py +0 -0
  382. /blaxel/{sandbox/client/api/process → core/sandbox/client/api/network}/__init__.py +0 -0
  383. /blaxel/{sandbox → core/sandbox}/client/api/network/delete_network_process_pid_monitor.py +0 -0
  384. /blaxel/{sandbox → core/sandbox}/client/api/network/get_network_process_pid_ports.py +0 -0
  385. /blaxel/{sandbox → core/sandbox}/client/api/process/delete_process_identifier.py +0 -0
  386. /blaxel/{sandbox → core/sandbox}/client/api/process/delete_process_identifier_kill.py +0 -0
  387. /blaxel/{sandbox → core/sandbox}/client/api/process/get_process.py +0 -0
  388. /blaxel/{sandbox → core/sandbox}/client/api/process/get_process_identifier.py +0 -0
  389. /blaxel/{sandbox → core/sandbox}/client/api/process/get_process_identifier_logs.py +0 -0
  390. /blaxel/{sandbox → core/sandbox}/client/api/process/get_process_identifier_logs_stream.py +0 -0
  391. /blaxel/{sandbox → core/sandbox}/client/api/process/get_ws_process_identifier_logs_stream.py +0 -0
  392. /blaxel/{sandbox → core/sandbox}/client/client.py +0 -0
  393. /blaxel/{sandbox → core/sandbox}/client/errors.py +0 -0
  394. /blaxel/{sandbox → core/sandbox}/client/models/__init__.py +0 -0
  395. /blaxel/{sandbox → core/sandbox}/client/models/delete_network_process_pid_monitor_response_200.py +0 -0
  396. /blaxel/{sandbox → core/sandbox}/client/models/error_response.py +0 -0
  397. /blaxel/{sandbox → core/sandbox}/client/models/file.py +0 -0
  398. /blaxel/{sandbox → core/sandbox}/client/models/file_request.py +0 -0
  399. /blaxel/{sandbox → core/sandbox}/client/models/file_with_content.py +0 -0
  400. /blaxel/{sandbox → core/sandbox}/client/models/get_network_process_pid_ports_response_200.py +0 -0
  401. /blaxel/{sandbox → core/sandbox}/client/models/port_monitor_request.py +0 -0
  402. /blaxel/{sandbox → core/sandbox}/client/models/post_network_process_pid_monitor_response_200.py +0 -0
  403. /blaxel/{sandbox → core/sandbox}/client/models/process_logs.py +0 -0
  404. /blaxel/{sandbox → core/sandbox}/client/models/process_request.py +0 -0
  405. /blaxel/{sandbox → core/sandbox}/client/models/process_request_env.py +0 -0
  406. /blaxel/{sandbox → core/sandbox}/client/models/process_response.py +0 -0
  407. /blaxel/{sandbox → core/sandbox}/client/models/process_response_status.py +0 -0
  408. /blaxel/{sandbox → core/sandbox}/client/models/subdirectory.py +0 -0
  409. /blaxel/{sandbox → core/sandbox}/client/models/success_response.py +0 -0
  410. /blaxel/{sandbox → core/sandbox}/client/py.typed +0 -0
  411. /blaxel/{sandbox → core/sandbox}/client/types.py +0 -0
  412. /blaxel/{tools → core/tools}/common.py +0 -0
  413. /blaxel/{tools → core/tools}/types.py +0 -0
  414. /blaxel/{models/custom/langchain → langgraph/custom}/gemini.py +0 -0
  415. /blaxel/{models/custom/llamaindex → llamaindex/custom}/cohere.py +0 -0
  416. /blaxel/{instrumentation → telemetry}/exporters.py +0 -0
  417. /blaxel/{instrumentation → telemetry/log}/log.py +0 -0
  418. {blaxel-0.1.22rc70.dist-info → blaxel-0.2.0rc2.dist-info}/WHEEL +0 -0
  419. {blaxel-0.1.22rc70.dist-info → blaxel-0.2.0rc2.dist-info}/licenses/LICENSE +0 -0
blaxel/__init__.py CHANGED
@@ -1,7 +1,10 @@
1
- from .common.autoload import autoload
2
- from .common.env import env
3
- from .common.settings import settings
1
+ """Blaxel - AI development platform SDK."""
2
+
3
+ from .core.common.autoload import autoload
4
+ from .core.common.env import env
5
+ from .core.common.settings import settings
4
6
 
5
7
  autoload()
6
8
 
9
+ __version__ = "0.2.0"
7
10
  __all__ = ["autoload", "settings", "env"]
@@ -0,0 +1,44 @@
1
+ """Blaxel core module."""
2
+
3
+ from .agents import BlAgent, bl_agent
4
+ from .authentication import BlaxelAuth, auth, get_credentials
5
+ from .cache import find_from_cache
6
+ from .client.client import client
7
+ from .common import autoload, env, settings
8
+ from .jobs import BlJobWrapper
9
+ from .mcp import BlaxelMcpServerTransport, websocket_client
10
+ from .models import BLModel, bl_model
11
+ from .sandbox import (
12
+ Sandbox,
13
+ SandboxFileSystem,
14
+ SandboxInstance,
15
+ SandboxPreviews,
16
+ SandboxProcess,
17
+ )
18
+ from .tools import BlTools, bl_tools, convert_mcp_tool_to_blaxel_tool
19
+
20
+ __all__ = [
21
+ "BlAgent",
22
+ "bl_agent",
23
+ "BlaxelAuth",
24
+ "auth",
25
+ "get_credentials",
26
+ "find_from_cache",
27
+ "client",
28
+ "settings",
29
+ "env",
30
+ "autoload",
31
+ "BlJobWrapper",
32
+ "BlaxelMcpServerTransport",
33
+ "BLModel",
34
+ "bl_model",
35
+ "Sandbox",
36
+ "SandboxFileSystem",
37
+ "SandboxInstance",
38
+ "SandboxPreviews",
39
+ "SandboxProcess",
40
+ "BlTools",
41
+ "bl_tools",
42
+ "convert_mcp_tool_to_blaxel_tool",
43
+ "websocket_client",
44
+ ]
@@ -8,10 +8,10 @@ from ..client.api.agents import get_agent
8
8
  from ..client.models import Agent
9
9
  from ..common.internal import get_forced_url, get_global_unique_hash
10
10
  from ..common.settings import settings
11
- from ..instrumentation.span import SpanManager
12
11
 
13
12
  logger = getLogger(__name__)
14
13
 
14
+
15
15
  class BlAgent:
16
16
  def __init__(self, name: str):
17
17
  self.name = name
@@ -51,13 +51,7 @@ class BlAgent:
51
51
  body = json.dumps(body)
52
52
 
53
53
  return client.get_httpx_client().post(
54
- url,
55
- headers={
56
- 'Content-Type': 'application/json',
57
- **headers
58
- },
59
- data=body,
60
- params=params
54
+ url, headers={"Content-Type": "application/json", **headers}, data=body, params=params
61
55
  )
62
56
 
63
57
  async def acall(self, url, input_data, headers: dict = {}, params: dict = {}):
@@ -67,54 +61,38 @@ class BlAgent:
67
61
  body = json.dumps(body)
68
62
 
69
63
  return await client.get_async_httpx_client().post(
70
- url,
71
- headers={
72
- 'Content-Type': 'application/json',
73
- **headers
74
- },
75
- data=body,
76
- params=params
64
+ url, headers={"Content-Type": "application/json", **headers}, data=body, params=params
77
65
  )
78
66
 
79
67
  def run(self, input: Any, headers: dict = {}, params: dict = {}) -> str:
80
- attributes = {
81
- "agent.name": self.name,
82
- "agent.args": json.dumps(input),
83
- "span.type": "agent.run",
84
- }
85
- with SpanManager("blaxel-tracer").create_active_span(self.name, attributes) as span:
86
- logger.debug(f"Agent Calling: {self.name}")
87
- response = self.call(self.url, input, headers, params)
68
+ logger.debug(f"Agent Calling: {self.name}")
69
+ response = self.call(self.url, input, headers, params)
70
+ if response.status_code >= 400:
71
+ if not self.fallback_url:
72
+ raise Exception(
73
+ f"Agent {self.name} returned status code {response.status_code} with body {response.text}"
74
+ )
75
+ response = self.call(self.fallback_url, input, headers, params)
88
76
  if response.status_code >= 400:
89
- if not self.fallback_url:
90
- span.set_attribute("agent.run.error", response.text)
91
- raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
92
- response = self.call(self.fallback_url, input, headers, params)
93
- if response.status_code >= 400:
94
- span.set_attribute("agent.run.error", response.text)
95
- raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
96
- span.set_attribute("agent.run.result", response.text)
97
- return response.text
77
+ raise Exception(
78
+ f"Agent {self.name} returned status code {response.status_code} with body {response.text}"
79
+ )
80
+ return response.text
98
81
 
99
82
  async def arun(self, input: Any, headers: dict = {}, params: dict = {}) -> Awaitable[str]:
100
- attributes = {
101
- "agent.name": self.name,
102
- "agent.args": json.dumps(input),
103
- "span.type": "agent.run",
104
- }
105
- with SpanManager("blaxel-tracer").create_active_span(self.name, attributes) as span:
106
- logger.debug(f"Agent Calling: {self.name}")
107
- response = await self.acall(self.url, input, headers, params)
83
+ logger.debug(f"Agent Calling: {self.name}")
84
+ response = await self.acall(self.url, input, headers, params)
85
+ if response.status_code >= 400:
86
+ if not self.fallback_url:
87
+ raise Exception(
88
+ f"Agent {self.name} returned status code {response.status_code} with body {response.text}"
89
+ )
90
+ response = await self.acall(self.fallback_url, input, headers, params)
108
91
  if response.status_code >= 400:
109
- if not self.fallback_url:
110
- span.set_attribute("agent.run.error", response.text)
111
- raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
112
- response = await self.acall(self.fallback_url, input, headers, params)
113
- if response.status_code >= 400:
114
- span.set_attribute("agent.run.error", response.text)
115
- raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
116
- span.set_attribute("agent.run.result", response.text)
117
- return response.text
92
+ raise Exception(
93
+ f"Agent {self.name} returned status code {response.status_code} with body {response.text}"
94
+ )
95
+ return response.text
118
96
 
119
97
  def __str__(self):
120
98
  return f"Agent {self.name}"
@@ -122,11 +100,13 @@ class BlAgent:
122
100
  def __repr__(self):
123
101
  return self.__str__()
124
102
 
103
+
125
104
  def bl_agent(name: str):
126
105
  return BlAgent(name)
127
106
 
107
+
128
108
  async def get_agent_metadata(name):
129
- cache_data = await find_from_cache('Agent', name)
109
+ cache_data = await find_from_cache("Agent", name)
130
110
  if cache_data:
131
111
  return Agent.from_dict(cache_data)
132
112
  try:
@@ -13,6 +13,7 @@ class ApiKey(BlaxelAuth):
13
13
  """
14
14
  ApiKey auth that authenticates requests using an API key.
15
15
  """
16
+
16
17
  def get_headers(self):
17
18
  """
18
19
  Retrieves the authentication headers containing the API key and workspace information.
@@ -27,6 +27,7 @@ class ClientCredentials(BlaxelAuth):
27
27
  """
28
28
  ClientCredentials auth that authenticates requests using client credentials.
29
29
  """
30
+
30
31
  expires_at: Optional[datetime] = None
31
32
 
32
33
  def get_headers(self):
@@ -58,7 +59,10 @@ class ClientCredentials(BlaxelAuth):
58
59
  Optional[Exception]: An exception if refreshing fails after all retries, otherwise None.
59
60
  """
60
61
  try:
61
- headers = {"Authorization": f"Basic {self.credentials.client_credentials}", "Content-Type": "application/json"}
62
+ headers = {
63
+ "Authorization": f"Basic {self.credentials.client_credentials}",
64
+ "Content-Type": "application/json",
65
+ }
62
66
  body = {"grant_type": "client_credentials"}
63
67
  response = requests.post(f"{self.base_url}/oauth/token", headers=headers, json=body)
64
68
  response.raise_for_status()
@@ -113,4 +117,4 @@ class ClientCredentials(BlaxelAuth):
113
117
  def token(self):
114
118
  if not self.credentials.access_token:
115
119
  self.get_token()
116
- return self.credentials.access_token
120
+ return self.credentials.access_token
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/agents",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/agents/{agent_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/sandboxes",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/sandboxes/{sandbox_name}/previews",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -22,7 +22,7 @@ def _get_kwargs(
22
22
  "url": f"/sandboxes/{sandbox_name}/previews/{preview_name}/tokens",
23
23
  }
24
24
 
25
- if type(body) == dict:
25
+ if type(body) is dict:
26
26
  _body = body
27
27
  else:
28
28
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/sandboxes/{sandbox_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -22,7 +22,7 @@ def _get_kwargs(
22
22
  "url": f"/sandboxes/{sandbox_name}/previews/{preview_name}",
23
23
  }
24
24
 
25
- if type(body) == dict:
25
+ if type(body) is dict:
26
26
  _body = body
27
27
  else:
28
28
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/functions",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/functions/{function_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/integrations/connections",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/integrations/connections/{connection_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/jobs",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/jobs/{job_id}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/knowledgebases",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/knowledgebases/{knowledgebase_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/models",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/models/{model_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/policies",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/policies/{policy_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -22,7 +22,7 @@ def _get_kwargs(
22
22
  "url": f"/service_accounts/{client_id}/api_keys",
23
23
  }
24
24
 
25
- if type(body) == dict:
25
+ if type(body) is dict:
26
26
  _body = body
27
27
  else:
28
28
  _body = body.to_dict()
@@ -23,7 +23,7 @@ def _get_kwargs(
23
23
  "url": "/service_accounts",
24
24
  }
25
25
 
26
- if type(body) == dict:
26
+ if type(body) is dict:
27
27
  _body = body
28
28
  else:
29
29
  _body = body.to_dict()
@@ -24,7 +24,7 @@ def _get_kwargs(
24
24
  "url": f"/service_accounts/{client_id}",
25
25
  }
26
26
 
27
- if type(body) == dict:
27
+ if type(body) is dict:
28
28
  _body = body
29
29
  else:
30
30
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/workspaces/availability",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -20,7 +20,7 @@ def _get_kwargs(
20
20
  "url": "/workspaces",
21
21
  }
22
22
 
23
- if type(body) == dict:
23
+ if type(body) is dict:
24
24
  _body = body
25
25
  else:
26
26
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": "/users",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -21,7 +21,7 @@ def _get_kwargs(
21
21
  "url": f"/workspaces/{workspace_name}",
22
22
  }
23
23
 
24
- if type(body) == dict:
24
+ if type(body) is dict:
25
25
  _body = body
26
26
  else:
27
27
  _body = body.to_dict()
@@ -22,7 +22,7 @@ def _get_kwargs(
22
22
  "url": f"/users/{sub_or_email}",
23
23
  }
24
24
 
25
- if type(body) == dict:
25
+ if type(body) is dict:
26
26
  _body = body
27
27
  else:
28
28
  _body = body.to_dict()
@@ -36,7 +36,7 @@ class Agent:
36
36
  if not isinstance(self.events, Unset):
37
37
  events = []
38
38
  for componentsschemas_core_events_item_data in self.events:
39
- if type(componentsschemas_core_events_item_data) == dict:
39
+ if type(componentsschemas_core_events_item_data) is dict:
40
40
  componentsschemas_core_events_item = componentsschemas_core_events_item_data
41
41
  else:
42
42
  componentsschemas_core_events_item = componentsschemas_core_events_item_data.to_dict()
@@ -78,7 +78,7 @@ class AgentSpec:
78
78
  if not isinstance(self.flavors, Unset):
79
79
  flavors = []
80
80
  for componentsschemas_flavors_item_data in self.flavors:
81
- if type(componentsschemas_flavors_item_data) == dict:
81
+ if type(componentsschemas_flavors_item_data) is dict:
82
82
  componentsschemas_flavors_item = componentsschemas_flavors_item_data
83
83
  else:
84
84
  componentsschemas_flavors_item = componentsschemas_flavors_item_data.to_dict()
@@ -140,7 +140,7 @@ class AgentSpec:
140
140
  if not isinstance(self.triggers, Unset):
141
141
  triggers = []
142
142
  for componentsschemas_triggers_item_data in self.triggers:
143
- if type(componentsschemas_triggers_item_data) == dict:
143
+ if type(componentsschemas_triggers_item_data) is dict:
144
144
  componentsschemas_triggers_item = componentsschemas_triggers_item_data
145
145
  else:
146
146
  componentsschemas_triggers_item = componentsschemas_triggers_item_data.to_dict()
@@ -60,7 +60,7 @@ class CoreSpec:
60
60
  if not isinstance(self.flavors, Unset):
61
61
  flavors = []
62
62
  for componentsschemas_flavors_item_data in self.flavors:
63
- if type(componentsschemas_flavors_item_data) == dict:
63
+ if type(componentsschemas_flavors_item_data) is dict:
64
64
  componentsschemas_flavors_item = componentsschemas_flavors_item_data
65
65
  else:
66
66
  componentsschemas_flavors_item = componentsschemas_flavors_item_data.to_dict()
@@ -36,7 +36,7 @@ class Function:
36
36
  if not isinstance(self.events, Unset):
37
37
  events = []
38
38
  for componentsschemas_core_events_item_data in self.events:
39
- if type(componentsschemas_core_events_item_data) == dict:
39
+ if type(componentsschemas_core_events_item_data) is dict:
40
40
  componentsschemas_core_events_item = componentsschemas_core_events_item_data
41
41
  else:
42
42
  componentsschemas_core_events_item = componentsschemas_core_events_item_data.to_dict()
@@ -19,7 +19,7 @@ class FunctionSchemaProperties:
19
19
  def to_dict(self) -> dict[str, Any]:
20
20
  field_dict: dict[str, Any] = {}
21
21
  for prop_name, prop in self.additional_properties.items():
22
- if type(prop) == dict:
22
+ if type(prop) is dict:
23
23
  field_dict[prop_name] = prop
24
24
  else:
25
25
  field_dict[prop_name] = prop.to_dict()
@@ -68,7 +68,7 @@ class FunctionSpec:
68
68
  if not isinstance(self.flavors, Unset):
69
69
  flavors = []
70
70
  for componentsschemas_flavors_item_data in self.flavors:
71
- if type(componentsschemas_flavors_item_data) == dict:
71
+ if type(componentsschemas_flavors_item_data) is dict:
72
72
  componentsschemas_flavors_item = componentsschemas_flavors_item_data
73
73
  else:
74
74
  componentsschemas_flavors_item = componentsschemas_flavors_item_data.to_dict()
@@ -112,7 +112,7 @@ class FunctionSpec:
112
112
  if not isinstance(self.kit, Unset):
113
113
  kit = []
114
114
  for kit_item_data in self.kit:
115
- if type(kit_item_data) == dict:
115
+ if type(kit_item_data) is dict:
116
116
  kit_item = kit_item_data
117
117
  else:
118
118
  kit_item = kit_item_data.to_dict()
@@ -69,7 +69,7 @@ class Integration:
69
69
  if not isinstance(self.organizations, Unset):
70
70
  organizations = []
71
71
  for organizations_item_data in self.organizations:
72
- if type(organizations_item_data) == dict:
72
+ if type(organizations_item_data) is dict:
73
73
  organizations_item = organizations_item_data
74
74
  else:
75
75
  organizations_item = organizations_item_data.to_dict()
@@ -85,7 +85,7 @@ class Integration:
85
85
  if not isinstance(self.repositories, Unset):
86
86
  repositories = []
87
87
  for repositories_item_data in self.repositories:
88
- if type(repositories_item_data) == dict:
88
+ if type(repositories_item_data) is dict:
89
89
  repositories_item = repositories_item_data
90
90
  else:
91
91
  repositories_item = repositories_item_data.to_dict()
@@ -19,7 +19,7 @@ class IntegrationEndpoints:
19
19
  def to_dict(self) -> dict[str, Any]:
20
20
  field_dict: dict[str, Any] = {}
21
21
  for prop_name, prop in self.additional_properties.items():
22
- if type(prop) == dict:
22
+ if type(prop) is dict:
23
23
  field_dict[prop_name] = prop
24
24
  else:
25
25
  field_dict[prop_name] = prop.to_dict()
@@ -36,7 +36,7 @@ class Job:
36
36
  if not isinstance(self.events, Unset):
37
37
  events = []
38
38
  for componentsschemas_core_events_item_data in self.events:
39
- if type(componentsschemas_core_events_item_data) == dict:
39
+ if type(componentsschemas_core_events_item_data) is dict:
40
40
  componentsschemas_core_events_item = componentsschemas_core_events_item_data
41
41
  else:
42
42
  componentsschemas_core_events_item = componentsschemas_core_events_item_data.to_dict()
@@ -60,7 +60,7 @@ class JobSpec:
60
60
  if not isinstance(self.flavors, Unset):
61
61
  flavors = []
62
62
  for componentsschemas_flavors_item_data in self.flavors:
63
- if type(componentsschemas_flavors_item_data) == dict:
63
+ if type(componentsschemas_flavors_item_data) is dict:
64
64
  componentsschemas_flavors_item = componentsschemas_flavors_item_data
65
65
  else:
66
66
  componentsschemas_flavors_item = componentsschemas_flavors_item_data.to_dict()
@@ -36,7 +36,7 @@ class Knowledgebase:
36
36
  if not isinstance(self.events, Unset):
37
37
  events = []
38
38
  for componentsschemas_core_events_item_data in self.events:
39
- if type(componentsschemas_core_events_item_data) == dict:
39
+ if type(componentsschemas_core_events_item_data) is dict:
40
40
  componentsschemas_core_events_item = componentsschemas_core_events_item_data
41
41
  else:
42
42
  componentsschemas_core_events_item = componentsschemas_core_events_item_data.to_dict()
@@ -40,7 +40,7 @@ class LocationResponse:
40
40
  if not isinstance(self.flavors, Unset):
41
41
  flavors = []
42
42
  for flavors_item_data in self.flavors:
43
- if type(flavors_item_data) == dict:
43
+ if type(flavors_item_data) is dict:
44
44
  flavors_item = flavors_item_data
45
45
  else:
46
46
  flavors_item = flavors_item_data.to_dict()