beamlit 0.0.20rc4__tar.gz → 0.0.20rc5__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (287) hide show
  1. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/PKG-INFO +1 -1
  2. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/pyproject.toml +1 -1
  3. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/authentication/__init__.py +4 -0
  4. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/authentication/apikey.py +6 -0
  5. beamlit-0.0.20rc5/src/beamlit/authentication/authentication.py +67 -0
  6. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/authentication/clientcredentials.py +20 -9
  7. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/authentication/credentials.py +1 -0
  8. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/authentication/device_mode.py +10 -1
  9. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/common/logger.py +2 -0
  10. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/main.py +5 -12
  11. beamlit-0.0.20rc4/src/beamlit/authentication/authentication.py +0 -38
  12. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/.gitignore +0 -0
  13. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/README.md +0 -0
  14. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/beamlit.yaml +0 -0
  15. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/__init__.py +0 -0
  16. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/__init__.py +0 -0
  17. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/__init__.py +0 -0
  18. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/create_agent.py +0 -0
  19. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/create_agent_release.py +0 -0
  20. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/delete_agent.py +0 -0
  21. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/delete_agent_deployment.py +0 -0
  22. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/delete_agent_deployment_history.py +0 -0
  23. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/delete_agent_history.py +0 -0
  24. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent.py +0 -0
  25. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent_deployment.py +0 -0
  26. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent_deployment_history.py +0 -0
  27. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent_deployment_logs.py +0 -0
  28. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent_deployment_metrics.py +0 -0
  29. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent_environment_logs.py +0 -0
  30. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent_history.py +0 -0
  31. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/get_agent_metrics.py +0 -0
  32. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/list_agent_deployment_history.py +0 -0
  33. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/list_agent_deployments.py +0 -0
  34. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/list_agent_history.py +0 -0
  35. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/list_agents.py +0 -0
  36. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/put_agent_deployment.py +0 -0
  37. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/put_agent_deployment_history.py +0 -0
  38. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/put_agent_history.py +0 -0
  39. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/agents/update_agent.py +0 -0
  40. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/configurations/__init__.py +0 -0
  41. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/configurations/get_configuration.py +0 -0
  42. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/environments/__init__.py +0 -0
  43. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/environments/create_environment.py +0 -0
  44. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/environments/delete_environment.py +0 -0
  45. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/environments/get_environment.py +0 -0
  46. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/environments/get_environment_metrics.py +0 -0
  47. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/environments/list_environments.py +0 -0
  48. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/environments/update_environment.py +0 -0
  49. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/__init__.py +0 -0
  50. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/create_function.py +0 -0
  51. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/create_function_release.py +0 -0
  52. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/delete_function.py +0 -0
  53. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/delete_function_deployment.py +0 -0
  54. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/get_function.py +0 -0
  55. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/get_function_deployment.py +0 -0
  56. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/get_function_deployment_logs.py +0 -0
  57. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/get_function_deployment_metrics.py +0 -0
  58. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/get_function_environment_logs.py +0 -0
  59. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/get_function_metrics.py +0 -0
  60. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/list_function_deployments.py +0 -0
  61. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/list_functions.py +0 -0
  62. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/put_function_deployment.py +0 -0
  63. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/functions/update_function.py +0 -0
  64. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/history/__init__.py +0 -0
  65. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/history/get_agents_history.py +0 -0
  66. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/history/list_agents_history.py +0 -0
  67. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/__init__.py +0 -0
  68. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/create_integration_connection.py +0 -0
  69. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/delete_integration_connection.py +0 -0
  70. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/get_integration.py +0 -0
  71. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/get_integration_connection.py +0 -0
  72. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/get_integration_connection_model.py +0 -0
  73. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/get_integration_model.py +0 -0
  74. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/list_integration_connection_models.py +0 -0
  75. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/list_integration_connections.py +0 -0
  76. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/list_integration_models.py +0 -0
  77. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/integrations/update_integration_connection.py +0 -0
  78. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/invitations/__init__.py +0 -0
  79. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/invitations/list_all_pending_invitations.py +0 -0
  80. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/locations/__init__.py +0 -0
  81. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/locations/list_locations.py +0 -0
  82. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/metrics/__init__.py +0 -0
  83. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/metrics/get_metrics.py +0 -0
  84. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/model_providers/__init__.py +0 -0
  85. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/model_providers/create_model_provider.py +0 -0
  86. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/model_providers/delete_model_provider.py +0 -0
  87. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/model_providers/get_model_provider.py +0 -0
  88. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/model_providers/list_model_providers.py +0 -0
  89. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/model_providers/update_model_provider.py +0 -0
  90. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/__init__.py +0 -0
  91. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/create_model.py +0 -0
  92. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/delete_model.py +0 -0
  93. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/delete_model_deployment.py +0 -0
  94. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/get_model.py +0 -0
  95. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/get_model_deployment.py +0 -0
  96. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/get_model_deployment_logs.py +0 -0
  97. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/get_model_deployment_metrics.py +0 -0
  98. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/get_model_environment_logs.py +0 -0
  99. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/get_model_metrics.py +0 -0
  100. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/list_model_deployments.py +0 -0
  101. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/list_models.py +0 -0
  102. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/put_model_deployment.py +0 -0
  103. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/release_model.py +0 -0
  104. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/models/update_model.py +0 -0
  105. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/policies/__init__.py +0 -0
  106. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/policies/create_policy.py +0 -0
  107. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/policies/delete_policy.py +0 -0
  108. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/policies/get_policy.py +0 -0
  109. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/policies/list_policies.py +0 -0
  110. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/policies/update_policy.py +0 -0
  111. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/__init__.py +0 -0
  112. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/create_api_key_for_service_account.py +0 -0
  113. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/create_workspace_service_account.py +0 -0
  114. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/delete_api_key_for_service_account.py +0 -0
  115. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/delete_workspace_service_account.py +0 -0
  116. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/get_workspace_service_accounts.py +0 -0
  117. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/list_api_keys_for_service_account.py +0 -0
  118. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/service_accounts/update_workspace_service_account.py +0 -0
  119. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/store/__init__.py +0 -0
  120. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/store/get_store_agent.py +0 -0
  121. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/store/get_store_function.py +0 -0
  122. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/store/list_store_agents.py +0 -0
  123. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/store/list_store_functions.py +0 -0
  124. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/__init__.py +0 -0
  125. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/accept_workspace_invitation.py +0 -0
  126. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/create_worspace.py +0 -0
  127. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/decline_workspace_invitation.py +0 -0
  128. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/delete_workspace.py +0 -0
  129. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/get_workspace.py +0 -0
  130. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/invite_workspace_user.py +0 -0
  131. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/leave_workspace.py +0 -0
  132. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/list_workspace_users.py +0 -0
  133. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/list_workspaces.py +0 -0
  134. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/remove_workspace_user.py +0 -0
  135. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/update_workspace.py +0 -0
  136. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/api/workspaces/update_workspace_user_role.py +0 -0
  137. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/client.py +0 -0
  138. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/common/generate.py +0 -0
  139. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/common/settings.py +0 -0
  140. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/common/utils.py +0 -0
  141. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/errors.py +0 -0
  142. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/__init__.py +0 -0
  143. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/acl.py +0 -0
  144. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent.py +0 -0
  145. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_chain.py +0 -0
  146. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_configuration.py +0 -0
  147. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_deployment.py +0 -0
  148. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_deployment_configuration.py +0 -0
  149. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_deployment_configuration_type_0.py +0 -0
  150. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_deployment_history.py +0 -0
  151. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_deployment_history_event.py +0 -0
  152. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_deployment_pod_template.py +0 -0
  153. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_deployment_pod_template_type_0.py +0 -0
  154. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_history.py +0 -0
  155. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_history_event.py +0 -0
  156. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_metadata.py +0 -0
  157. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_release.py +0 -0
  158. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_spec.py +0 -0
  159. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/agent_with_deployments.py +0 -0
  160. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/api_key.py +0 -0
  161. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/authentication_provider_model.py +0 -0
  162. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/authentication_provider_organization.py +0 -0
  163. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/configuration.py +0 -0
  164. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/continent.py +0 -0
  165. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/core_spec.py +0 -0
  166. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/country.py +0 -0
  167. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/create_api_key_for_service_account_body.py +0 -0
  168. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/create_workspace_service_account_body.py +0 -0
  169. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/create_workspace_service_account_response_200.py +0 -0
  170. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/delete_workspace_service_account_response_200.py +0 -0
  171. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/deployment_configuration.py +0 -0
  172. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/deployment_configurations.py +0 -0
  173. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/deployment_serverless_config.py +0 -0
  174. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/deployment_serverless_config_type_0.py +0 -0
  175. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/environment.py +0 -0
  176. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/environment_metrics.py +0 -0
  177. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/environment_spec.py +0 -0
  178. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/flavor.py +0 -0
  179. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function.py +0 -0
  180. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_configuration.py +0 -0
  181. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_deployment.py +0 -0
  182. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_deployment_configuration.py +0 -0
  183. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_deployment_configuration_type_0.py +0 -0
  184. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_deployment_pod_template.py +0 -0
  185. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_deployment_pod_template_type_0.py +0 -0
  186. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_kit.py +0 -0
  187. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_metadata.py +0 -0
  188. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_provider_ref.py +0 -0
  189. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_release.py +0 -0
  190. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_spec.py +0 -0
  191. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/function_with_deployments.py +0 -0
  192. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/get_workspace_service_accounts_response_200_item.py +0 -0
  193. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/increase_and_rate_metric.py +0 -0
  194. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration.py +0 -0
  195. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration_config.py +0 -0
  196. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration_connection.py +0 -0
  197. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration_connection_config.py +0 -0
  198. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration_connection_secret.py +0 -0
  199. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration_connection_spec.py +0 -0
  200. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration_model.py +0 -0
  201. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/integration_secret.py +0 -0
  202. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/invite_workspace_user_body.py +0 -0
  203. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/labels_type_0.py +0 -0
  204. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/location.py +0 -0
  205. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/location_response.py +0 -0
  206. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/metadata.py +0 -0
  207. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/metadata_labels.py +0 -0
  208. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/metric.py +0 -0
  209. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/metrics.py +0 -0
  210. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model.py +0 -0
  211. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_deployment.py +0 -0
  212. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_deployment_log.py +0 -0
  213. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_deployment_metrics.py +0 -0
  214. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_deployment_metrics_inference_per_second_per_region.py +0 -0
  215. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_deployment_metrics_query_per_second_per_region_per_code.py +0 -0
  216. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_deployment_pod_template.py +0 -0
  217. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_deployment_pod_template_type_0.py +0 -0
  218. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_metadata.py +0 -0
  219. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_metrics.py +0 -0
  220. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_provider.py +0 -0
  221. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_provider_ref.py +0 -0
  222. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_release.py +0 -0
  223. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_spec.py +0 -0
  224. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/model_with_deployments.py +0 -0
  225. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/owner_fields.py +0 -0
  226. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/pending_invitation.py +0 -0
  227. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/pending_invitation_accept.py +0 -0
  228. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/pending_invitation_render.py +0 -0
  229. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/pending_invitation_render_invited_by.py +0 -0
  230. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/pending_invitation_render_workspace.py +0 -0
  231. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/pending_invitation_workspace_details.py +0 -0
  232. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/pod_template_spec.py +0 -0
  233. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/policy.py +0 -0
  234. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/policy_location.py +0 -0
  235. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/policy_spec.py +0 -0
  236. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/provider_config.py +0 -0
  237. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/qps.py +0 -0
  238. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_log.py +0 -0
  239. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics.py +0 -0
  240. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_inference_per_region.py +0 -0
  241. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_inference_per_region_type_0.py +0 -0
  242. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_inference_per_second_per_region.py +0 -0
  243. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_inference_per_second_per_region_type_0.py +0 -0
  244. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_query_per_region_per_code.py +0 -0
  245. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_query_per_region_per_code_type_0.py +0 -0
  246. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_query_per_second_per_region_per_code.py +0 -0
  247. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_deployment_metrics_query_per_second_per_region_per_code_type_0.py +0 -0
  248. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_environment_metrics.py +0 -0
  249. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_environment_metrics_inference_per_second_per_region.py +0 -0
  250. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_environment_metrics_query_per_second_per_region_per_code.py +0 -0
  251. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_log.py +0 -0
  252. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/resource_metrics.py +0 -0
  253. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime.py +0 -0
  254. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime_readiness_probe.py +0 -0
  255. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime_readiness_probe_type_0.py +0 -0
  256. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime_resources.py +0 -0
  257. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime_type_0.py +0 -0
  258. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime_type_0_readiness_probe.py +0 -0
  259. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime_type_0_readiness_probe_type_0.py +0 -0
  260. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/runtime_type_0_resources.py +0 -0
  261. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/serverless_config.py +0 -0
  262. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/spec_configuration.py +0 -0
  263. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/standard_fields_dynamo_db.py +0 -0
  264. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_agent.py +0 -0
  265. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_agent_configuration.py +0 -0
  266. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_agent_labels.py +0 -0
  267. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_agent_labels_type_0.py +0 -0
  268. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_configuration.py +0 -0
  269. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_configuration_option.py +0 -0
  270. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_function.py +0 -0
  271. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_function_configuration.py +0 -0
  272. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_function_kit.py +0 -0
  273. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_function_labels.py +0 -0
  274. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_function_labels_type_0.py +0 -0
  275. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/store_function_parameter.py +0 -0
  276. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/time_fields.py +0 -0
  277. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/update_workspace_service_account_body.py +0 -0
  278. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/update_workspace_service_account_response_200.py +0 -0
  279. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/update_workspace_user_role_body.py +0 -0
  280. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/websocket_channel.py +0 -0
  281. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/workspace.py +0 -0
  282. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/workspace_labels.py +0 -0
  283. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/models/workspace_user.py +0 -0
  284. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/py.typed +0 -0
  285. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/run.py +0 -0
  286. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/src/beamlit/types.py +0 -0
  287. {beamlit-0.0.20rc4 → beamlit-0.0.20rc5}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: beamlit
3
- Version: 0.0.20rc4
3
+ Version: 0.0.20rc5
4
4
  Summary: Add your description here
5
5
  Author-email: cploujoux <ch.ploujoux@gmail.com>
6
6
  Requires-Python: >=3.12
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "beamlit"
3
- version = "0.0.20.pre-4"
3
+ version = "0.0.20.pre-5"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  authors = [
@@ -1,5 +1,7 @@
1
1
  from .apikey import ApiKeyProvider
2
2
  from .authentication import (PublicProvider, RunClientWithCredentials,
3
+ get_authentication_headers,
4
+ new_client_from_settings,
3
5
  new_client_with_credentials)
4
6
  from .credentials import (Config, ContextConfig, Credentials, WorkspaceConfig,
5
7
  load_credentials, load_credentials_from_settings)
@@ -11,6 +13,8 @@ __all__ = (
11
13
  "PublicProvider",
12
14
  "RunClientWithCredentials",
13
15
  "new_client_with_credentials",
16
+ "new_client_from_settings",
17
+ "get_authentication_headers",
14
18
  "Config",
15
19
  "ContextConfig",
16
20
  "Credentials",
@@ -8,6 +8,12 @@ class ApiKeyProvider(Auth):
8
8
  self.credentials = credentials
9
9
  self.workspace_name = workspace_name
10
10
 
11
+ def get_headers(self):
12
+ return {
13
+ 'X-Beamlit-Api-Key': self.credentials.api_key,
14
+ 'X-Beamlit-Workspace': self.workspace_name
15
+ }
16
+
11
17
  def auth_flow(self, request: Request) -> Generator[Request, Response, None]:
12
18
  request.headers['X-Beamlit-Api-Key'] = self.credentials.api_key
13
19
  request.headers['X-Beamlit-Workspace'] = self.workspace_name
@@ -0,0 +1,67 @@
1
+ from dataclasses import dataclass
2
+ from typing import Dict, Generator
3
+
4
+ from beamlit.common.settings import Settings
5
+ from httpx import Auth, Request, Response
6
+
7
+ from ..client import AuthenticatedClient
8
+ from .apikey import ApiKeyProvider
9
+ from .clientcredentials import ClientCredentials
10
+ from .credentials import Credentials, load_credentials_from_settings
11
+ from .device_mode import BearerToken
12
+
13
+
14
+ class PublicProvider(Auth):
15
+ def auth_flow(self, request: Request) -> Generator[Request, Response, None]:
16
+ yield request
17
+
18
+
19
+
20
+ @dataclass
21
+ class RunClientWithCredentials:
22
+ credentials: Credentials
23
+ workspace: str
24
+ api_url: str = "https://api.beamlit.dev/v0"
25
+ run_url: str = "https://run.beamlit.dev/v0"
26
+
27
+
28
+ def new_client_from_settings(settings: Settings):
29
+ credentials = load_credentials_from_settings(settings)
30
+
31
+ client_config = RunClientWithCredentials(
32
+ credentials=credentials,
33
+ workspace=settings.workspace,
34
+ )
35
+ return new_client_with_credentials(client_config)
36
+
37
+ def new_client_with_credentials(config: RunClientWithCredentials):
38
+ provider: Auth = None
39
+ if config.credentials.api_key:
40
+ provider = ApiKeyProvider(config.credentials, config.workspace)
41
+ elif config.credentials.access_token:
42
+ provider = BearerToken(config.credentials, config.workspace, config.api_url)
43
+ elif config.credentials.client_credentials:
44
+ provider = ClientCredentials(config.credentials, config.workspace, config.api_url)
45
+ else:
46
+ provider = PublicProvider()
47
+
48
+ return AuthenticatedClient(base_url=config.api_url, provider=provider)
49
+
50
+ def get_authentication_headers(settings: Settings) -> Dict[str, str]:
51
+ credentials = load_credentials_from_settings(settings)
52
+ config = RunClientWithCredentials(
53
+ credentials=credentials,
54
+ workspace=settings.workspace,
55
+ )
56
+ provider = None
57
+ if config.credentials.api_key:
58
+ provider = ApiKeyProvider(config.credentials, config.workspace)
59
+ elif config.credentials.access_token:
60
+ provider = BearerToken(config.credentials, config.workspace, config.api_url)
61
+ elif config.credentials.client_credentials:
62
+ provider = ClientCredentials(config.credentials, config.workspace, config.api_url)
63
+
64
+ if provider is None:
65
+ return None
66
+
67
+ return provider.get_headers()
@@ -23,7 +23,27 @@ class ClientCredentials(Auth):
23
23
  self.workspace_name = workspace_name
24
24
  self.base_url = base_url
25
25
 
26
+ def get_headers(self):
27
+ err = self.refresh_if_needed()
28
+ if err:
29
+ raise err
30
+
31
+ return {
32
+ 'X-Beamlit-Authorization': f'Bearer {self.credentials.access_token}',
33
+ 'X-Beamlit-Workspace': self.workspace_name
34
+ }
35
+
26
36
  def refresh_if_needed(self) -> Optional[Exception]:
37
+ settings = get_settings()
38
+ if self.credentials.client_credentials and not self.credentials.refresh_token:
39
+ headers = { "Authorization": f"Basic {self.credentials.client_credentials}" }
40
+ body = { "grant_type": "client_credentials" }
41
+ response = requests.post(f"{settings.base_url}/oauth/token", headers=headers, json=body)
42
+ response.raise_for_status()
43
+ self.credentials.access_token = response.json()['access_token']
44
+ self.credentials.refresh_token = response.json()['refresh_token']
45
+ self.credentials.expires_in = response.json()['expires_in']
46
+
27
47
  # Need to refresh token if expires in less than 10 minutes
28
48
  parts = self.credentials.access_token.split('.')
29
49
  if len(parts) != 3:
@@ -42,15 +62,6 @@ class ClientCredentials(Auth):
42
62
  return None
43
63
 
44
64
  def auth_flow(self, request: Request) -> Generator[Request, Response, None]:
45
- settings = get_settings()
46
- if self.credentials.client_credentials and not self.credentials.refresh_token:
47
- headers = { "Authorization": f"Basic {self.credentials.client_credentials}" }
48
- body = { "grant_type": "client_credentials" }
49
- response = requests.post(f"{settings.base_url}/oauth/token", headers=headers, json=body)
50
- response.raise_for_status()
51
- self.credentials.access_token = response.json()['access_token']
52
- self.credentials.refresh_token = response.json()['refresh_token']
53
- self.credentials.expires_in = response.json()['expires_in']
54
65
  err = self.refresh_if_needed()
55
66
  if err:
56
67
  return err
@@ -14,6 +14,7 @@ class Credentials:
14
14
  expires_in: int = 0
15
15
  device_code: str = ""
16
16
  client_credentials: str = ""
17
+
17
18
  @dataclass
18
19
  class WorkspaceConfig:
19
20
  name: str
@@ -2,7 +2,7 @@ import base64
2
2
  import json
3
3
  import time
4
4
  from dataclasses import dataclass
5
- from typing import Generator, Optional
5
+ from typing import Dict, Generator, Optional
6
6
 
7
7
  from httpx import Auth, Request, Response, post
8
8
 
@@ -45,6 +45,15 @@ class BearerToken(Auth):
45
45
  self.workspace_name = workspace_name
46
46
  self.base_url = base_url
47
47
 
48
+ def get_headers(self) -> Dict[str, str]:
49
+ err = self.refresh_if_needed()
50
+ if err:
51
+ raise err
52
+ return {
53
+ 'X-Beamlit-Authorization': f'Bearer {self.credentials.access_token}',
54
+ 'X-Beamlit-Workspace': self.workspace_name
55
+ }
56
+
48
57
  def refresh_if_needed(self) -> Optional[Exception]:
49
58
  # Need to refresh token if expires in less than 10 minutes
50
59
  parts = self.credentials.access_token.split('.')
@@ -19,6 +19,8 @@ class ColoredFormatter(logging.Formatter):
19
19
  def init(log_level: str):
20
20
  logging.getLogger("uvicorn.access").handlers.clear()
21
21
  logging.getLogger("uvicorn.access").propagate = False
22
+ logging.getLogger("uvicorn.error").handlers.clear()
23
+ logging.getLogger("uvicorn.error").propagate = False
22
24
  logging.getLogger("httpx").handlers.clear()
23
25
  logging.getLogger("httpx").propagate = False
24
26
 
@@ -1,22 +1,15 @@
1
1
  from typing import List
2
2
 
3
3
  from beamlit.api.models import get_model_deployment
4
- from beamlit.authentication import (RunClientWithCredentials,
5
- load_credentials_from_settings,
6
- new_client_with_credentials)
4
+ from beamlit.authentication import (get_authentication_headers,
5
+ new_client_from_settings)
7
6
  from beamlit.common.settings import init, init_agent
8
7
  from beamlit.models.model import Model
9
8
  from beamlit.models.model_deployment import ModelDeployment
10
9
  from beamlit.run import RunClient
11
10
 
12
11
  settings = init()
13
- credentials = load_credentials_from_settings(settings)
14
-
15
- client_config = RunClientWithCredentials(
16
- credentials=credentials,
17
- workspace=settings.workspace,
18
- )
19
- client = new_client_with_credentials(client_config)
12
+ client = new_client_from_settings(settings)
20
13
  model_deployment: ModelDeployment = get_model_deployment.sync("all-minilm-l6-v2", "production", client=client)
21
14
  init_agent(client=client)
22
15
  run_client = RunClient(client=client)
@@ -27,5 +20,5 @@ response = run_client.run(
27
20
  method="POST",
28
21
  json={"query": "4+4"}
29
22
  )
30
-
31
- print(response.json())
23
+ print(response.json())
24
+ print(get_authentication_headers(settings))
@@ -1,38 +0,0 @@
1
- from dataclasses import dataclass
2
- from typing import Generator
3
-
4
- from httpx import Auth, Request, Response
5
-
6
- from ..client import AuthenticatedClient
7
- from .apikey import ApiKeyProvider
8
- from .clientcredentials import ClientCredentials
9
- from .credentials import Credentials
10
- from .device_mode import BearerToken
11
-
12
-
13
- class PublicProvider(Auth):
14
- def auth_flow(self, request: Request) -> Generator[Request, Response, None]:
15
- yield request
16
-
17
-
18
-
19
- @dataclass
20
- class RunClientWithCredentials:
21
- credentials: Credentials
22
- workspace: str
23
- api_url: str = "https://api.beamlit.dev/v0"
24
- run_url: str = "https://run.beamlit.dev/v0"
25
-
26
-
27
- def new_client_with_credentials(config: RunClientWithCredentials):
28
- provider: Auth = None
29
- if config.credentials.api_key:
30
- provider = ApiKeyProvider(config.credentials, config.workspace)
31
- elif config.credentials.access_token:
32
- provider = BearerToken(config.credentials, config.workspace, config.api_url)
33
- elif config.credentials.client_credentials:
34
- provider = ClientCredentials(config.credentials, config.workspace, config.api_url)
35
- else:
36
- provider = PublicProvider()
37
-
38
- return AuthenticatedClient(base_url=config.api_url, provider=provider)
File without changes
File without changes
File without changes