blaxel 0.1.9rc36__tar.gz → 0.1.9rc37__tar.gz
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.
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/PKG-INFO +1 -1
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/bl_agents.py +1 -1
- blaxel-0.1.9rc37/integrationtest/global_hash.py +3 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/pyproject.toml +1 -1
- blaxel-0.1.9rc37/src/blaxel/agents/__init__.py +139 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/common/autoload.py +0 -3
- blaxel-0.1.9rc37/src/blaxel/common/internal.py +75 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/common/settings.py +6 -1
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/mcp/server.py +2 -1
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/__init__.py +62 -21
- blaxel-0.1.9rc36/src/blaxel/agents/__init__.py +0 -102
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/.github/workflows/dev.yaml +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/.github/workflows/prod.yaml +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/.gitignore +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/LICENSE +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/Makefile +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/README.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/blaxel.toml +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/definition.yml +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/doc.sh +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/agents.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/agents/create_agent.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/agents/delete_agent.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/agents/get_agent.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/agents/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/agents/list_agent_revisions.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/agents/list_agents.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/agents/update_agent.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/configurations/get_configuration.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/configurations/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/default/get_template.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/default/get_template_contents.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/default/get_template_file_contents.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/default/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/default/list_mcp_hub_definitions.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/functions/create_function.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/functions/delete_function.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/functions/get_function.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/functions/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/functions/list_function_revisions.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/functions/list_functions.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/functions/update_function.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/create_integration_connection.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/delete_integration_connection.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/get_integration.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/get_integration_connection.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/get_integration_connection_model.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/get_integration_connection_model_endpoint_configurations.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/list_integration_connection_models.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/list_integration_connections.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/update_integration_connection.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/invitations/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/invitations/list_all_pending_invitations.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/knowledgebases/create_knowledgebase.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/knowledgebases/delete_knowledgebase.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/knowledgebases/get_knowledgebase.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/knowledgebases/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/knowledgebases/list_knowledgebase_revisions.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/knowledgebases/list_knowledgebases.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/knowledgebases/update_knowledgebase.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/locations/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/locations/list_locations.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/models/create_model.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/models/delete_model.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/models/get_model.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/models/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/models/list_model_revisions.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/models/list_models.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/models/update_model.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/policies/create_policy.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/policies/delete_policy.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/policies/get_policy.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/policies/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/policies/list_policies.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/policies/update_policy.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/create_private_cluster.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/delete_private_cluster.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/get_private_cluster.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/get_private_cluster_health.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/list_private_clusters.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/update_private_cluster.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/privateclusters/update_private_cluster_health.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/create_api_key_for_service_account.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/create_workspace_service_account.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/delete_api_key_for_service_account.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/delete_workspace_service_account.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/get_workspace_service_accounts.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/list_api_keys_for_service_account.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/service_accounts/update_workspace_service_account.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/templates/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/templates/list_templates.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/accept_workspace_invitation.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/create_worspace.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/decline_workspace_invitation.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/delete_workspace.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/get_workspace.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/invite_workspace_user.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/leave_workspace.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/list_workspace_users.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/list_workspaces.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/remove_workspace_user.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/update_workspace.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/workspaces/update_workspace_user_role.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/authentication/apikey.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/authentication/authentication.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/authentication/clientcredentials.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/authentication/credentials.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/authentication/device_mode.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/authentication/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/client.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/common/error.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/common/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/common/instrumentation.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/common/logger.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/common/secrets.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/common/settings.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/common/utils.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/deploy/deploy.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/deploy/format.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/deploy/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/deploy/parser.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/errors.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/functions.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/knowledgebases/chroma.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/knowledgebases/embeddings.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/knowledgebases/factory.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/knowledgebases/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/knowledgebases/pinecone.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/knowledgebases/qdrant.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/knowledgebases/types.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/acl.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/agent.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/agent_chain.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/agent_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/api_key.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/configuration.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/continent.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/core_event.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/core_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/core_spec_configurations.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/country.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/create_api_key_for_service_account_body.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/create_workspace_service_account_body.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/create_workspace_service_account_response_200.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/delete_workspace_service_account_response_200.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/entrypoint.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/entrypoint_env.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/flavor.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/form.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/form_config.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/form_oauth.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/form_secrets.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/function.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/function_kit.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/function_schema.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/function_schema_not.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/function_schema_or_bool.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/function_schema_properties.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/function_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/get_workspace_service_accounts_response_200_item.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/histogram_bucket.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/histogram_stats.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/integration_connection.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/integration_connection_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/integration_connection_spec_config.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/integration_connection_spec_secret.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/integration_model.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/integration_repository.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/invite_workspace_user_body.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/knowledgebase.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/knowledgebase_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/knowledgebase_spec_options.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/last_n_requests_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/latency_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/location_response.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/mcp_definition.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/mcp_definition_entrypoint.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/mcp_definition_form.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/memory_allocation_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/metadata.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/metadata_labels.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/metrics.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/metrics_models.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/metrics_request_total_per_code.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/metrics_rps_per_code.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/model.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/model_private_cluster.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/model_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/o_auth.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/owner_fields.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/pending_invitation.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/pending_invitation_accept.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/pending_invitation_render.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/pending_invitation_render_invited_by.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/pending_invitation_render_workspace.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/pending_invitation_workspace_details.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/pod_template_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/policy.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/policy_location.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/policy_max_tokens.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/policy_spec.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/private_cluster.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/private_location.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/repository.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_duration_over_time_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_duration_over_time_metrics.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_total_by_origin_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_total_by_origin_metric_request_total_by_origin.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_total_by_origin_metric_request_total_by_origin_and_code.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_total_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_total_metric_request_total_per_code.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/request_total_metric_rps_per_code.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/resource_log.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/resource_metrics.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/resource_metrics_request_total_per_code.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/resource_metrics_rps_per_code.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/revision_configuration.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/revision_metadata.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/runtime.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/runtime_startup_probe.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/serverless_config.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/spec_configuration.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/store_agent.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/store_agent_labels.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/store_configuration.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/store_configuration_option.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/template.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/template_variable.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/time_fields.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/time_to_first_token_over_time_metrics.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/token_rate_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/token_rate_metrics.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/token_total_metric.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/trace_ids_response.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/update_workspace_service_account_body.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/update_workspace_service_account_response_200.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/update_workspace_user_role_body.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/websocket_channel.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/workspace.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/workspace_labels.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/models/workspace_user.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/run.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/serve/app.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/serve/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/serve/middlewares/accesslog.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/serve/middlewares/index.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/serve/middlewares/processtime.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/types.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel-docs.md +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_crewai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_googleadk.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_langchain.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_langgraph.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_livekit.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_llamaindex.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_openai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/agent_pydantic.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/bl_models.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/bl_tools.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/client.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/env.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/fastapi_crewai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/fastapi_google_adk.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/fastapi_langchain.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/fastapi_llamaindex.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/fastapi_openai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/fastapi_pydantic.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/mcp_client.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/integrationtest/mcp_server.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/openapi-python-client.yml +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/authentication/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/authentication/apikey.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/authentication/clientcredentials.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/authentication/devicemode.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/authentication/oauth.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/authentication/types.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/cache/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/cache/cache.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/agents/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/agents/create_agent.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/agents/delete_agent.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/agents/get_agent.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/agents/list_agent_revisions.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/agents/list_agents.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/agents/update_agent.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/create_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/delete_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/get_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/list_sandboxes.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/start_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/stop_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/compute/update_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/configurations/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/configurations/get_configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/default/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/default/get_template.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/default/get_template_contents.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/default/get_template_file_contents.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/default/list_mcp_hub_definitions.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/default/list_sandbox_hub_definitions.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/functions/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/functions/create_function.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/functions/delete_function.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/functions/get_function.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/functions/list_function_revisions.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/functions/list_functions.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/functions/update_function.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/create_integration_connection.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/delete_integration_connection.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/get_integration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/get_integration_connection.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/get_integration_connection_model.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/get_integration_connection_model_endpoint_configurations.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/list_integration_connection_models.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/list_integration_connections.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/integrations/update_integration_connection.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/invitations/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/invitations/list_all_pending_invitations.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/knowledgebases/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/knowledgebases/create_knowledgebase.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/knowledgebases/delete_knowledgebase.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/knowledgebases/get_knowledgebase.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/knowledgebases/list_knowledgebase_revisions.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/knowledgebases/list_knowledgebases.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/knowledgebases/update_knowledgebase.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/locations/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/locations/list_locations.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/models/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/models/create_model.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/models/delete_model.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/models/get_model.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/models/list_model_revisions.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/models/list_models.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/models/update_model.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/policies/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/policies/create_policy.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/policies/delete_policy.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/policies/get_policy.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/policies/list_policies.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/policies/update_policy.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/create_private_cluster.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/delete_private_cluster.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/get_private_cluster.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/get_private_cluster_health.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/list_private_clusters.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/update_private_cluster.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/privateclusters/update_private_cluster_health.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/create_api_key_for_service_account.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/create_workspace_service_account.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/delete_api_key_for_service_account.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/delete_workspace_service_account.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/get_workspace_service_accounts.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/list_api_keys_for_service_account.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/service_accounts/update_workspace_service_account.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/templates/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/templates/list_templates.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/accept_workspace_invitation.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/create_worspace.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/decline_workspace_invitation.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/delete_workspace.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/get_workspace.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/invite_workspace_user.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/leave_workspace.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/list_workspace_users.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/list_workspaces.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/remove_workspace_user.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/update_workspace.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/api/workspaces/update_workspace_user_role.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/client.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/errors.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/acl.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/agent.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/agent_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/api_key.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/continent.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/core_event.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/core_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/core_spec_configurations.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/country.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/create_api_key_for_service_account_body.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/create_workspace_service_account_body.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/create_workspace_service_account_response_200.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/delete_workspace_service_account_response_200.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/entrypoint.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/entrypoint_env.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/flavor.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/form.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/form_config.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/form_oauth.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/form_secrets.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/function.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/function_kit.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/function_schema.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/function_schema_not.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/function_schema_or_bool.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/function_schema_properties.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/function_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/get_workspace_service_accounts_response_200_item.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/histogram_bucket.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/histogram_stats.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/integration_connection.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/integration_connection_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/integration_connection_spec_config.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/integration_connection_spec_secret.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/integration_model.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/integration_repository.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/invite_workspace_user_body.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/knowledgebase.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/knowledgebase_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/knowledgebase_spec_options.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/last_n_requests_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/latency_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/location_response.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/mcp_definition.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/mcp_definition_entrypoint.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/mcp_definition_form.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/memory_allocation_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/metadata.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/metadata_labels.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/metrics.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/metrics_models.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/metrics_request_total_per_code.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/metrics_rps_per_code.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/model.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/model_private_cluster.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/model_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/o_auth.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/owner_fields.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/pending_invitation.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/pending_invitation_accept.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/pending_invitation_render.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/pending_invitation_render_invited_by.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/pending_invitation_render_workspace.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/pending_invitation_workspace_details.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/pod_template_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/policy.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/policy_location.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/policy_max_tokens.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/policy_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/port.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/private_cluster.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/private_location.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/repository.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_duration_over_time_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_duration_over_time_metrics.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_total_by_origin_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_total_by_origin_metric_request_total_by_origin.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_total_by_origin_metric_request_total_by_origin_and_code.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_total_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_total_metric_request_total_per_code.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_total_metric_rps_per_code.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/request_total_response_data.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/resource_log.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/resource_metrics.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/resource_metrics_request_total_per_code.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/resource_metrics_request_total_per_code_previous.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/resource_metrics_rps_per_code.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/resource_metrics_rps_per_code_previous.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/revision_configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/revision_metadata.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/runtime.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/runtime_configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/runtime_startup_probe.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/sandbox_definition.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/sandbox_spec.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/sandboxes.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/serverless_config.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/serverless_config_configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/spec_configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/start_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/stop_sandbox.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/store_agent.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/store_agent_labels.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/store_configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/store_configuration_option.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/template.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/template_variable.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/time_fields.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/time_to_first_token_over_time_metrics.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/token_rate_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/token_rate_metrics.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/token_total_metric.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/trace_ids_response.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/trigger.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/trigger_configuration.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/update_workspace_service_account_body.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/update_workspace_service_account_response_200.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/update_workspace_user_role_body.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/websocket_channel.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/workspace.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/workspace_labels.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/workspace_runtime.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/models/workspace_user.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/py.typed +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/client/types.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/common/env.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/common/logger.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/instrumentation/exporters.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/instrumentation/log.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/instrumentation/manager.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/instrumentation/map.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/instrumentation/span.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/mcp/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/mcp/client.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/__init__.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/crewai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/custom/langchain/gemini.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/custom/llamaindex/cohere.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/custom/pydantic/gemini.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/googleadk.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/langchain.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/livekit.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/llamaindex.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/openai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/models/pydantic.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/common.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/crewai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/googleadk.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/langchain.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/livekit.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/llamaindex.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/openai.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/pydantic.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/src/blaxel/tools/types.py +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/.gitignore.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/README.md.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/api_init.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/client.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/endpoint_init.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/endpoint_macros.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/endpoint_module.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/errors.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/helpers.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/int_enum.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/literal_enum.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/model.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/models_init.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/package_init.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/any_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/boolean_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/const_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/date_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/datetime_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/enum_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/file_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/float_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/helpers.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/int_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/list_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/literal_enum_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/model_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/property_macros.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/union_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/property_templates/uuid_property.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/pyproject.toml.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/pyproject_ruff.toml.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/setup.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/str_enum.py.jinja +0 -0
- {blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/templates/types.py.jinja +0 -0
@@ -0,0 +1,139 @@
|
|
1
|
+
import json
|
2
|
+
from logging import getLogger
|
3
|
+
from typing import Any, Awaitable
|
4
|
+
|
5
|
+
from ..cache import find_from_cache
|
6
|
+
from ..client import client
|
7
|
+
from ..client.api.agents import get_agent
|
8
|
+
from ..client.models import Agent
|
9
|
+
from ..common.env import env
|
10
|
+
from ..common.internal import get_global_unique_hash
|
11
|
+
from ..common.settings import settings
|
12
|
+
from ..instrumentation.span import SpanManager
|
13
|
+
|
14
|
+
logger = getLogger(__name__)
|
15
|
+
|
16
|
+
class BlAgent:
|
17
|
+
def __init__(self, name: str):
|
18
|
+
self.name = name
|
19
|
+
|
20
|
+
@property
|
21
|
+
def internal_url(self):
|
22
|
+
"""Get the internal URL for the agent using a hash of workspace and agent name."""
|
23
|
+
hash = get_global_unique_hash(settings.workspace, "agent", self.name)
|
24
|
+
return f"{settings.run_internal_protocol}://bl-{settings.env}-{hash}.{settings.run_internal_hostname}"
|
25
|
+
|
26
|
+
@property
|
27
|
+
def forced_url(self):
|
28
|
+
"""Get the forced URL from environment variables if set."""
|
29
|
+
env_var = self.name.replace("-", "_").upper()
|
30
|
+
if env[f"BL_AGENT_{env_var}_URL"]:
|
31
|
+
return env[f"BL_AGENT_{env_var}_URL"]
|
32
|
+
return None
|
33
|
+
|
34
|
+
@property
|
35
|
+
def external_url(self):
|
36
|
+
return f"{settings.run_url}/{settings.workspace}/agents/{self.name}"
|
37
|
+
|
38
|
+
@property
|
39
|
+
def fallback_url(self):
|
40
|
+
if self.external_url != self.url:
|
41
|
+
return self.external_url
|
42
|
+
return None
|
43
|
+
|
44
|
+
@property
|
45
|
+
def url(self):
|
46
|
+
if self.forced_url:
|
47
|
+
return self.forced_url
|
48
|
+
if settings.run_internal_hostname:
|
49
|
+
return self.internal_url
|
50
|
+
return self.external_url
|
51
|
+
|
52
|
+
def call(self, url, input_data, headers: dict = {}, params: dict = {}):
|
53
|
+
body = input_data
|
54
|
+
if not isinstance(body, str):
|
55
|
+
body = json.dumps(body)
|
56
|
+
|
57
|
+
return client.get_httpx_client().post(
|
58
|
+
url,
|
59
|
+
headers={
|
60
|
+
'Content-Type': 'application/json',
|
61
|
+
**headers
|
62
|
+
},
|
63
|
+
data=body,
|
64
|
+
params=params
|
65
|
+
)
|
66
|
+
|
67
|
+
async def acall(self, url, input_data, headers: dict = {}, params: dict = {}):
|
68
|
+
logger.debug(f"Agent Calling: {self.name}")
|
69
|
+
body = input_data
|
70
|
+
if not isinstance(body, str):
|
71
|
+
body = json.dumps(body)
|
72
|
+
|
73
|
+
return await client.get_async_httpx_client().post(
|
74
|
+
url,
|
75
|
+
headers={
|
76
|
+
'Content-Type': 'application/json',
|
77
|
+
**headers
|
78
|
+
},
|
79
|
+
data=body,
|
80
|
+
params=params
|
81
|
+
)
|
82
|
+
|
83
|
+
def run(self, input: Any, headers: dict = {}, params: dict = {}) -> str:
|
84
|
+
attributes = {
|
85
|
+
"agent.name": self.name,
|
86
|
+
"agent.args": json.dumps(input),
|
87
|
+
"span.type": "agent.run",
|
88
|
+
}
|
89
|
+
with SpanManager("blaxel-tracer").create_active_span(self.name, attributes) as span:
|
90
|
+
logger.debug(f"Agent Calling: {self.name}")
|
91
|
+
response = self.call(self.url, input, headers, params)
|
92
|
+
if response.status_code >= 400:
|
93
|
+
if not self.fallback_url:
|
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
|
+
response = self.call(self.fallback_url, input, headers, params)
|
97
|
+
if response.status_code >= 400:
|
98
|
+
span.set_attribute("agent.run.error", response.text)
|
99
|
+
raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
|
100
|
+
span.set_attribute("agent.run.result", response.text)
|
101
|
+
return response.text
|
102
|
+
|
103
|
+
async def arun(self, input: Any, headers: dict = {}, params: dict = {}) -> Awaitable[str]:
|
104
|
+
attributes = {
|
105
|
+
"agent.name": self.name,
|
106
|
+
"agent.args": json.dumps(input),
|
107
|
+
"span.type": "agent.run",
|
108
|
+
}
|
109
|
+
with SpanManager("blaxel-tracer").create_active_span(self.name, attributes) as span:
|
110
|
+
logger.debug(f"Agent Calling: {self.name}")
|
111
|
+
response = await self.acall(self.url, input, headers, params)
|
112
|
+
if response.status_code >= 400:
|
113
|
+
if not self.fallback_url:
|
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
|
+
response = await self.acall(self.fallback_url, input, headers, params)
|
117
|
+
if response.status_code >= 400:
|
118
|
+
span.set_attribute("agent.run.error", response.text)
|
119
|
+
raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
|
120
|
+
span.set_attribute("agent.run.result", response.text)
|
121
|
+
return response.text
|
122
|
+
|
123
|
+
def __str__(self):
|
124
|
+
return f"Agent {self.name}"
|
125
|
+
|
126
|
+
def __repr__(self):
|
127
|
+
return self.__str__()
|
128
|
+
|
129
|
+
def bl_agent(name: str):
|
130
|
+
return BlAgent(name)
|
131
|
+
|
132
|
+
async def get_agent_metadata(name):
|
133
|
+
cache_data = await find_from_cache('Agent', name)
|
134
|
+
if cache_data:
|
135
|
+
return Agent.from_dict(cache_data)
|
136
|
+
try:
|
137
|
+
return await get_agent.asyncio(client=client, agent_name=name)
|
138
|
+
except Exception:
|
139
|
+
return None
|
@@ -0,0 +1,75 @@
|
|
1
|
+
import base64
|
2
|
+
import hashlib
|
3
|
+
import os
|
4
|
+
import re
|
5
|
+
from typing import Optional
|
6
|
+
from logging import getLogger
|
7
|
+
|
8
|
+
logger = getLogger(__name__)
|
9
|
+
|
10
|
+
def get_alphanumeric_limited_hash(input_str, max_size):
|
11
|
+
# Create SHA-256 hash of the input string
|
12
|
+
hash_obj = hashlib.sha256(input_str.encode('utf-8'))
|
13
|
+
|
14
|
+
# Get the hash digest in base64 format
|
15
|
+
hash_base64 = base64.b64encode(hash_obj.digest()).decode('utf-8')
|
16
|
+
|
17
|
+
# Remove non-alphanumeric characters and convert to lowercase
|
18
|
+
alphanumeric = re.sub(r'[^a-zA-Z0-9]', '', hash_base64).lower()
|
19
|
+
|
20
|
+
# Skip the first character to match the Node.js crypto output
|
21
|
+
alphanumeric = alphanumeric[1:]
|
22
|
+
|
23
|
+
# Limit to max_size characters
|
24
|
+
return alphanumeric[:max_size] if len(alphanumeric) > max_size else alphanumeric
|
25
|
+
|
26
|
+
|
27
|
+
def get_global_unique_hash(workspace: str, type: str, name: str) -> str:
|
28
|
+
"""
|
29
|
+
Generate a unique hash for a combination of workspace, type, and name.
|
30
|
+
|
31
|
+
Args:
|
32
|
+
workspace: The workspace identifier
|
33
|
+
type: The type identifier
|
34
|
+
name: The name identifier
|
35
|
+
|
36
|
+
Returns:
|
37
|
+
A unique alphanumeric hash string of maximum length 48
|
38
|
+
"""
|
39
|
+
global_unique_name = f"{workspace}-{type}-{name}"
|
40
|
+
hash = get_alphanumeric_limited_hash(global_unique_name, 48)
|
41
|
+
return hash
|
42
|
+
|
43
|
+
class Agent:
|
44
|
+
def __init__(self, agent_name: str, workspace: str, run_internal_protocol: str, run_internal_hostname: str):
|
45
|
+
self.agent_name = agent_name
|
46
|
+
self.workspace = workspace
|
47
|
+
self.run_internal_protocol = run_internal_protocol
|
48
|
+
self.run_internal_hostname = run_internal_hostname
|
49
|
+
|
50
|
+
@property
|
51
|
+
def internal_url(self) -> str:
|
52
|
+
"""
|
53
|
+
Generate the internal URL for the agent using a unique hash.
|
54
|
+
|
55
|
+
Returns:
|
56
|
+
The internal URL as a string
|
57
|
+
"""
|
58
|
+
hash_value = get_global_unique_hash(
|
59
|
+
self.workspace,
|
60
|
+
"agent",
|
61
|
+
self.agent_name
|
62
|
+
)
|
63
|
+
return f"{self.run_internal_protocol}://{hash_value}.{self.run_internal_hostname}"
|
64
|
+
|
65
|
+
@property
|
66
|
+
def forced_url(self) -> Optional[str]:
|
67
|
+
"""
|
68
|
+
Check for a forced URL in environment variables.
|
69
|
+
|
70
|
+
Returns:
|
71
|
+
The forced URL if found in environment variables, None otherwise
|
72
|
+
"""
|
73
|
+
env_var = self.agent_name.replace("-", "_").upper()
|
74
|
+
env_key = f"BL_AGENT_{env_var}_URL"
|
75
|
+
return os.environ.get(env_key)
|
@@ -21,7 +21,7 @@ class Settings:
|
|
21
21
|
@property
|
22
22
|
def log_level(self) -> str:
|
23
23
|
"""Get the log level."""
|
24
|
-
return os.environ.get("LOG_LEVEL", "INFO")
|
24
|
+
return os.environ.get("LOG_LEVEL", "INFO").upper()
|
25
25
|
|
26
26
|
@property
|
27
27
|
def base_url(self) -> str:
|
@@ -69,6 +69,11 @@ class Settings:
|
|
69
69
|
"""Is running on bl cloud."""
|
70
70
|
return os.environ.get("BL_CLOUD", "") == "true"
|
71
71
|
|
72
|
+
@property
|
73
|
+
def run_internal_protocol(self) -> str:
|
74
|
+
"""Get the run internal protocol."""
|
75
|
+
return os.environ.get("BL_RUN_INTERNAL_PROTOCOL", "https")
|
76
|
+
|
72
77
|
@property
|
73
78
|
def enable_opentelemetry(self) -> bool:
|
74
79
|
"""Get the enable opentelemetry."""
|
@@ -65,7 +65,8 @@ class BlaxelMcpServerTransport:
|
|
65
65
|
"mcp.message.parsed": True,
|
66
66
|
"mcp.method": getattr(msg, "method", None),
|
67
67
|
"mcp.messageId": getattr(msg, "id", None),
|
68
|
-
"mcp.toolName": getattr(getattr(msg, "params", None), "name", None)
|
68
|
+
"mcp.toolName": getattr(getattr(msg, "params", None), "name", None),
|
69
|
+
"span.type": "mcp.message",
|
69
70
|
})
|
70
71
|
self.spans[client_id+":"+msg.id] = span
|
71
72
|
await read_stream_writer.send(msg)
|
@@ -4,12 +4,14 @@ import os
|
|
4
4
|
from contextlib import AsyncExitStack
|
5
5
|
from logging import getLogger
|
6
6
|
from typing import Any, cast
|
7
|
+
import traceback
|
7
8
|
|
8
9
|
from mcp import ClientSession
|
9
10
|
from mcp.types import CallToolResult
|
10
11
|
from mcp.types import Tool as MCPTool
|
11
12
|
|
12
13
|
from ..common.env import env
|
14
|
+
from ..common.internal import get_global_unique_hash
|
13
15
|
from ..common.settings import settings
|
14
16
|
from ..instrumentation.span import SpanManager
|
15
17
|
from ..mcp.client import websocket_client
|
@@ -22,15 +24,19 @@ if os.getenv("BL_SERVER_PORT"):
|
|
22
24
|
DEFAULT_TIMEOUT = 5
|
23
25
|
|
24
26
|
class PersistentWebSocket:
|
25
|
-
def __init__(self, url: str, timeout: int = DEFAULT_TIMEOUT, timeout_enabled: bool = True):
|
27
|
+
def __init__(self, url: str, name: str, timeout: int = DEFAULT_TIMEOUT, timeout_enabled: bool = True):
|
26
28
|
self.url = url
|
29
|
+
self.name = name
|
27
30
|
self.timeout = timeout
|
28
|
-
self.timeout_enabled = timeout_enabled
|
29
31
|
self.session_exit_stack = AsyncExitStack()
|
30
32
|
self.client_exit_stack = AsyncExitStack()
|
31
33
|
self.session: ClientSession = None
|
32
34
|
self.timer_task = None
|
33
35
|
self.tools_cache = []
|
36
|
+
if settings.bl_cloud:
|
37
|
+
self.timeout_enabled = False
|
38
|
+
else:
|
39
|
+
self.timeout_enabled = timeout_enabled
|
34
40
|
|
35
41
|
def with_metas(self, metas: dict[str, Any]):
|
36
42
|
self.metas = metas
|
@@ -46,19 +52,32 @@ class PersistentWebSocket:
|
|
46
52
|
logger.debug(f"Tool {tool_name} returned {call_tool_result}")
|
47
53
|
if self.timeout_enabled:
|
48
54
|
self._reset_timer()
|
55
|
+
else:
|
56
|
+
await self._close()
|
49
57
|
return call_tool_result
|
50
58
|
|
51
59
|
async def list_tools(self):
|
52
|
-
|
53
|
-
|
54
|
-
self.
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
self.
|
61
|
-
|
60
|
+
logger.debug(f"Listing tools for {self.name}")
|
61
|
+
span_attributes = {
|
62
|
+
"tool.server": self.url,
|
63
|
+
"tool.server_name": self.name,
|
64
|
+
"span.type": "tool.list",
|
65
|
+
}
|
66
|
+
with SpanManager("blaxel-tracer").create_active_span(self.name, span_attributes) as span:
|
67
|
+
await self._initialize()
|
68
|
+
logger.debug(f"Initialized websocket for {self.name}")
|
69
|
+
if self.timeout_enabled:
|
70
|
+
self._remove_timer()
|
71
|
+
logger.debug("Listing tools")
|
72
|
+
list_tools_result = await self.session.list_tools()
|
73
|
+
self.tools_cache = list_tools_result.tools
|
74
|
+
logger.debug(f"Tools listed: {list_tools_result}")
|
75
|
+
if self.timeout_enabled:
|
76
|
+
self._reset_timer()
|
77
|
+
else:
|
78
|
+
await self._close()
|
79
|
+
span.set_attribute("tool.list.result", list_tools_result.model_dump_json())
|
80
|
+
return list_tools_result
|
62
81
|
|
63
82
|
def get_tools(self):
|
64
83
|
return self.tools_cache
|
@@ -125,6 +144,7 @@ def convert_mcp_tool_to_blaxel_tool(
|
|
125
144
|
"tool.args": json.dumps(arguments),
|
126
145
|
"tool.server": url,
|
127
146
|
"tool.server_name": name,
|
147
|
+
"span.type": "tool.call",
|
128
148
|
}
|
129
149
|
with SpanManager("blaxel-tracer").create_active_span("blaxel-tool-call", span_attributes):
|
130
150
|
logger.debug(f"Calling tool {tool.name} with arguments {arguments}")
|
@@ -163,22 +183,37 @@ class BlTools:
|
|
163
183
|
self.timeout = timeout
|
164
184
|
self.timeout_enabled = timeout_enabled
|
165
185
|
|
166
|
-
def
|
167
|
-
|
186
|
+
def _internal_url(self, name: str):
|
187
|
+
"""Get the internal URL for the agent using a hash of workspace and agent name."""
|
188
|
+
hash = get_global_unique_hash(settings.workspace, "function", name)
|
189
|
+
return f"{settings.run_internal_protocol}://bl-{settings.env}-{hash}.{settings.run_internal_hostname}"
|
168
190
|
|
169
|
-
def
|
191
|
+
def _forced_url(self, name: str):
|
192
|
+
"""Get the forced URL from environment variables if set."""
|
170
193
|
env_var = name.replace("-", "_").upper()
|
171
194
|
if env[f"BL_FUNCTION_{env_var}_URL"]:
|
172
195
|
return env[f"BL_FUNCTION_{env_var}_URL"]
|
173
|
-
|
174
|
-
|
175
|
-
|
196
|
+
return None
|
197
|
+
|
198
|
+
def _external_url(self, name: str):
|
199
|
+
return f"{settings.run_url}/{settings.workspace}/functions/{name}"
|
176
200
|
|
177
|
-
def _fallback_url(self, name: str)
|
201
|
+
def _fallback_url(self, name: str):
|
178
202
|
if self._external_url(name) != self._url(name):
|
179
203
|
return self._external_url(name)
|
180
204
|
return None
|
181
205
|
|
206
|
+
def _url(self, name: str):
|
207
|
+
logger.debug(f"Getting URL for {name}")
|
208
|
+
if self._forced_url(name):
|
209
|
+
logger.debug(f"Forced URL found for {name}: {self._forced_url(name)}")
|
210
|
+
return self._forced_url(name)
|
211
|
+
if settings.run_internal_hostname:
|
212
|
+
logger.debug(f"Internal hostname found for {name}: {self._internal_url(name)}")
|
213
|
+
return self._internal_url(name)
|
214
|
+
logger.debug(f"No URL found for {name}, using external URL")
|
215
|
+
return self._external_url(name)
|
216
|
+
|
182
217
|
def get_tools(self) -> list[Tool]:
|
183
218
|
"""Get a list of all tools from all connected servers."""
|
184
219
|
all_tools: list[Tool] = []
|
@@ -240,8 +275,13 @@ class BlTools:
|
|
240
275
|
except Exception as e:
|
241
276
|
if not self._fallback_url(name):
|
242
277
|
raise e
|
278
|
+
logger.warning(f"Error connecting to {name}: {e}\n{traceback.format_exc()}")
|
243
279
|
url = self._fallback_url(name)
|
244
|
-
|
280
|
+
try:
|
281
|
+
await self.connect_with_url(name, url)
|
282
|
+
except Exception as e:
|
283
|
+
logger.error(f"Error connecting to {name} with fallback URL: {e}\n{traceback.format_exc()}")
|
284
|
+
raise e
|
245
285
|
|
246
286
|
async def connect_with_url(
|
247
287
|
self, name: str, url: str
|
@@ -255,7 +295,8 @@ class BlTools:
|
|
255
295
|
logger.debug(f"Initializing session and loading tools from {url}")
|
256
296
|
|
257
297
|
if not toolPersistances.get(name):
|
258
|
-
|
298
|
+
logger.debug(f"Creating new persistent websocket for {name}")
|
299
|
+
toolPersistances[name] = PersistentWebSocket(url, name, timeout=self.timeout, timeout_enabled=self.timeout_enabled)
|
259
300
|
await toolPersistances[name].list_tools()
|
260
301
|
logger.debug(f"Loaded {len(toolPersistances[name].get_tools())} tools from {url}")
|
261
302
|
return toolPersistances[name].with_metas(self.metas)
|
@@ -1,102 +0,0 @@
|
|
1
|
-
|
2
|
-
import json
|
3
|
-
from logging import getLogger
|
4
|
-
from typing import Any, Awaitable
|
5
|
-
|
6
|
-
from ..cache import find_from_cache
|
7
|
-
from ..client import client
|
8
|
-
from ..client.api.agents import get_agent
|
9
|
-
from ..client.models import Agent
|
10
|
-
from ..common.env import env
|
11
|
-
from ..common.settings import settings
|
12
|
-
from ..instrumentation.span import SpanManager
|
13
|
-
|
14
|
-
logger = getLogger(__name__)
|
15
|
-
|
16
|
-
class BlAgent:
|
17
|
-
def __init__(self, name: str):
|
18
|
-
self.name = name
|
19
|
-
|
20
|
-
|
21
|
-
@property
|
22
|
-
def external_url(self):
|
23
|
-
return f"{settings.run_url}/{settings.workspace}/agents/{self.name}"
|
24
|
-
|
25
|
-
@property
|
26
|
-
def fallback_url(self):
|
27
|
-
if self.external_url != self.url:
|
28
|
-
return self.external_url
|
29
|
-
return None
|
30
|
-
|
31
|
-
@property
|
32
|
-
def url(self):
|
33
|
-
env_var = self.name.replace("-", "_").upper()
|
34
|
-
if env[f"BL_AGENT_{env_var}_URL"]:
|
35
|
-
return env[f"BL_AGENT_{env_var}_URL"]
|
36
|
-
if f"BL_AGENT_{env_var}_SERVICE_NAME" in settings.env:
|
37
|
-
return f"https://{settings.env[f'BL_AGENT_{env_var}_SERVICE_NAME']}.{settings.run_internal_hostname}"
|
38
|
-
return self.external_url
|
39
|
-
|
40
|
-
def call(self, url, input_data, headers: dict = {}, params: dict = {}):
|
41
|
-
body = input_data
|
42
|
-
if not isinstance(body, str):
|
43
|
-
body = json.dumps(body)
|
44
|
-
|
45
|
-
return client.get_httpx_client().post(
|
46
|
-
url,
|
47
|
-
headers={
|
48
|
-
'Content-Type': 'application/json',
|
49
|
-
**headers
|
50
|
-
},
|
51
|
-
data=body,
|
52
|
-
params=params
|
53
|
-
)
|
54
|
-
|
55
|
-
async def acall(self, input_data, headers: dict = {}, params: dict = {}):
|
56
|
-
logger.debug(f"Agent Calling: {self.name}")
|
57
|
-
body = input_data
|
58
|
-
if not isinstance(body, str):
|
59
|
-
body = json.dumps(body)
|
60
|
-
|
61
|
-
return await client.get_async_httpx_client().post(
|
62
|
-
self.url,
|
63
|
-
headers={
|
64
|
-
'Content-Type': 'application/json',
|
65
|
-
**headers
|
66
|
-
},
|
67
|
-
data=body,
|
68
|
-
params=params
|
69
|
-
)
|
70
|
-
|
71
|
-
def run(self, input: Any, headers: dict = {}, params: dict = {}) -> str:
|
72
|
-
with SpanManager("blaxel-tracer").create_active_span(self.name, {"agent.name": self.name, "agent.args": json.dumps(input)}):
|
73
|
-
logger.debug(f"Agent Calling: {self.name}")
|
74
|
-
response = self.call(self.url, input, headers, params)
|
75
|
-
if response.status_code >= 400:
|
76
|
-
raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
|
77
|
-
return response.text
|
78
|
-
|
79
|
-
async def arun(self, input: Any, headers: dict = {}, params: dict = {}) -> Awaitable[str]:
|
80
|
-
logger.debug(f"Agent Calling: {self.name}")
|
81
|
-
response = await self.acall(input, headers, params)
|
82
|
-
if response.status_code >= 400:
|
83
|
-
raise Exception(f"Agent {self.name} returned status code {response.status_code} with body {response.text}")
|
84
|
-
return response.text
|
85
|
-
|
86
|
-
def __str__(self):
|
87
|
-
return f"Agent {self.name}"
|
88
|
-
|
89
|
-
def __repr__(self):
|
90
|
-
return self.__str__()
|
91
|
-
|
92
|
-
def bl_agent(name: str):
|
93
|
-
return BlAgent(name)
|
94
|
-
|
95
|
-
async def get_agent_metadata(name):
|
96
|
-
cache_data = await find_from_cache('Agent', name)
|
97
|
-
if cache_data:
|
98
|
-
return Agent.from_dict(cache_data)
|
99
|
-
try:
|
100
|
-
return await get_agent.asyncio(client=client, agent_name=name)
|
101
|
-
except Exception:
|
102
|
-
return None
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/create_integration_connection.md
RENAMED
File without changes
|
{blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/delete_integration_connection.md
RENAMED
File without changes
|
File without changes
|
{blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/get_integration_connection.md
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/list_integration_connections.md
RENAMED
File without changes
|
{blaxel-0.1.9rc36 → blaxel-0.1.9rc37}/docs/blaxel/api/integrations/update_integration_connection.md
RENAMED
File without changes
|