openweights 0.7.2__tar.gz → 0.7.3__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.
Files changed (200) hide show
  1. {openweights-0.7.2 → openweights-0.7.3}/PKG-INFO +1 -1
  2. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/__init__.py +13 -14
  3. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/database.py +9 -2
  4. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/main.py +2 -5
  5. {openweights-0.7.2 → openweights-0.7.3}/pyproject.toml +1 -1
  6. openweights-0.7.2/.github/workflows/ci.yaml +0 -99
  7. {openweights-0.7.2 → openweights-0.7.3}/.dockerignore +0 -0
  8. {openweights-0.7.2 → openweights-0.7.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  9. {openweights-0.7.2 → openweights-0.7.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  10. {openweights-0.7.2 → openweights-0.7.3}/.github/workflows/manual_publish.yaml +0 -0
  11. {openweights-0.7.2 → openweights-0.7.3}/.gitignore +0 -0
  12. {openweights-0.7.2 → openweights-0.7.3}/.pdm-python +0 -0
  13. {openweights-0.7.2 → openweights-0.7.3}/.pre-commit-config.yaml +0 -0
  14. {openweights-0.7.2 → openweights-0.7.3}/CLAUDE.md +0 -0
  15. {openweights-0.7.2 → openweights-0.7.3}/DOCKER_README.md +0 -0
  16. {openweights-0.7.2 → openweights-0.7.3}/Dockerfile +0 -0
  17. {openweights-0.7.2 → openweights-0.7.3}/Dockerfile.cluster +0 -0
  18. {openweights-0.7.2 → openweights-0.7.3}/LICENSE.txt +0 -0
  19. {openweights-0.7.2 → openweights-0.7.3}/README.md +0 -0
  20. {openweights-0.7.2 → openweights-0.7.3}/cookbook/README.md +0 -0
  21. {openweights-0.7.2 → openweights-0.7.3}/cookbook/api-deployment/api.md +0 -0
  22. {openweights-0.7.2 → openweights-0.7.3}/cookbook/api-deployment/context_manager_api.py +0 -0
  23. {openweights-0.7.2 → openweights-0.7.3}/cookbook/api-deployment/gradio_ui.py +0 -0
  24. {openweights-0.7.2 → openweights-0.7.3}/cookbook/custom_job/README.md +0 -0
  25. {openweights-0.7.2 → openweights-0.7.3}/cookbook/custom_job/client_side.py +0 -0
  26. {openweights-0.7.2 → openweights-0.7.3}/cookbook/custom_job/worker_side.py +0 -0
  27. {openweights-0.7.2 → openweights-0.7.3}/cookbook/inference/prompts.jsonl +0 -0
  28. {openweights-0.7.2 → openweights-0.7.3}/cookbook/inference/run_inference.py +0 -0
  29. {openweights-0.7.2 → openweights-0.7.3}/cookbook/inspect_eval.py +0 -0
  30. {openweights-0.7.2 → openweights-0.7.3}/cookbook/preference_learning/llama3_dpo.py +0 -0
  31. {openweights-0.7.2 → openweights-0.7.3}/cookbook/preference_learning/llama3_orpo.py +0 -0
  32. {openweights-0.7.2 → openweights-0.7.3}/cookbook/preference_learning/preferences.jsonl +0 -0
  33. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/data/logp_tracking.jsonl +0 -0
  34. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/data/prompts.jsonl +0 -0
  35. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/data/test.jsonl +0 -0
  36. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/data/train.jsonl +0 -0
  37. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/data/weighted_data.jsonl +0 -0
  38. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/data/weighted_data_test.jsonl +0 -0
  39. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/logprob_tracking.py +0 -0
  40. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/lora_qwen3_4b.py +0 -0
  41. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/multi_gpu_llama3_70b.py.skip +0 -0
  42. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/qlora_llama3_70b.py +0 -0
  43. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/sampling_callback.py +0 -0
  44. {openweights-0.7.2 → openweights-0.7.3}/cookbook/sft/token_level_weighted_sft.py +0 -0
  45. {openweights-0.7.2 → openweights-0.7.3}/entrypoint.cluster.sh +0 -0
  46. {openweights-0.7.2 → openweights-0.7.3}/entrypoint.sh +0 -0
  47. {openweights-0.7.2 → openweights-0.7.3}/llm.txt +0 -0
  48. {openweights-0.7.2 → openweights-0.7.3}/llm_dot_txt.py +0 -0
  49. {openweights-0.7.2 → openweights-0.7.3}/llm_full.txt +0 -0
  50. {openweights-0.7.2 → openweights-0.7.3}/openweights/__init__.py +0 -0
  51. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/__init__.py +0 -0
  52. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/__main__.py +0 -0
  53. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/cancel.py +0 -0
  54. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/cluster.py +0 -0
  55. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/common.py +0 -0
  56. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/deploy.py +0 -0
  57. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/env.py +0 -0
  58. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/exec.py +0 -0
  59. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/fetch.py +0 -0
  60. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/logs.py +0 -0
  61. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/ls.py +0 -0
  62. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/manage.py +0 -0
  63. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/serve.py +0 -0
  64. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/signup.py +0 -0
  65. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/ssh.py +0 -0
  66. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/token.py +0 -0
  67. {openweights-0.7.2 → openweights-0.7.3}/openweights/cli/worker.py +0 -0
  68. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/chat.py +0 -0
  69. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/decorators.py +0 -0
  70. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/events.py +0 -0
  71. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/files.py +0 -0
  72. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/jobs.py +0 -0
  73. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/run.py +0 -0
  74. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/temporary_api.py +0 -0
  75. {openweights-0.7.2 → openweights-0.7.3}/openweights/client/utils.py +0 -0
  76. {openweights-0.7.2 → openweights-0.7.3}/openweights/cluster/.gitignore +0 -0
  77. {openweights-0.7.2 → openweights-0.7.3}/openweights/cluster/org_manager.py +0 -0
  78. {openweights-0.7.2 → openweights-0.7.3}/openweights/cluster/start_runpod.py +0 -0
  79. {openweights-0.7.2 → openweights-0.7.3}/openweights/cluster/supervisor.py +0 -0
  80. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/models.py +0 -0
  81. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/LogProbVisualization-B6jQtzzK.js +0 -0
  82. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/LogProbVisualization-CnEzdbXa.js +0 -0
  83. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/LogProbVisualization-DChAruH-.js +0 -0
  84. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/MetricsPlots-BzYzp0RD.js +0 -0
  85. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/MetricsPlots-Do-0PbcE.js +0 -0
  86. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/MetricsPlots-Dy5N4URR.js +0 -0
  87. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/browser-CHCO931n.js +0 -0
  88. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/browser-DG1xBqer.js +0 -0
  89. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/browser-tfbTCamV.js +0 -0
  90. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/index-CL2BTY-B.js +0 -0
  91. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/index-CmfXCDny.js +0 -0
  92. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/index-DpYPsR6j.css +0 -0
  93. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/index-KCoSzXrZ.js +0 -0
  94. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/assets/index-nmHS5w_u.css +0 -0
  95. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/index.html +0 -0
  96. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/ow.svg +0 -0
  97. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/static/vite.svg +0 -0
  98. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/backend/utils.py +0 -0
  99. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/.gitignore +0 -0
  100. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/README.md +0 -0
  101. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/eslint.config.js +0 -0
  102. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/index.html +0 -0
  103. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/package-lock.json +0 -0
  104. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/package.json +0 -0
  105. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/public/ow.svg +0 -0
  106. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/public/vite.svg +0 -0
  107. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/App.css +0 -0
  108. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/App.tsx +0 -0
  109. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/api.ts +0 -0
  110. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/assets/react.svg +0 -0
  111. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/Auth/Auth.tsx +0 -0
  112. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/FileContent.tsx +0 -0
  113. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/JobDetailView.tsx +0 -0
  114. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/MetricsDisplay.tsx +0 -0
  115. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/MetricsPlots.tsx +0 -0
  116. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/OutputsDisplay.tsx +0 -0
  117. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/RunDetailView.tsx +0 -0
  118. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/WorkerDetailView.tsx +0 -0
  119. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews/index.ts +0 -0
  120. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/DetailViews.tsx +0 -0
  121. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/JobsListView.tsx +0 -0
  122. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/JobsView.tsx +0 -0
  123. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/LogProbVisualization.tsx +0 -0
  124. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/Organizations/OrganizationDetail.tsx +0 -0
  125. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/Organizations/OrganizationList.tsx +0 -0
  126. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/Organizations/OrganizationSwitcher.tsx +0 -0
  127. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/Organizations/OrganizationsList.tsx +0 -0
  128. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/Organizations/TokensTab.tsx +0 -0
  129. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/RefreshButton.tsx +0 -0
  130. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/StatusCheckboxes.tsx +0 -0
  131. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/TokenView.tsx +0 -0
  132. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/ViewToggle.tsx +0 -0
  133. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/WorkersListView.tsx +0 -0
  134. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/components/WorkersView.tsx +0 -0
  135. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/contexts/AuthContext.tsx +0 -0
  136. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/contexts/OrganizationContext.tsx +0 -0
  137. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/index.css +0 -0
  138. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/main.tsx +0 -0
  139. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/supabaseClient.ts +0 -0
  140. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/types/supabase.ts +0 -0
  141. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/types.ts +0 -0
  142. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/src/vite-env.d.ts +0 -0
  143. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/tsconfig.app.json +0 -0
  144. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/tsconfig.json +0 -0
  145. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/tsconfig.node.json +0 -0
  146. {openweights-0.7.2 → openweights-0.7.3}/openweights/dashboard/frontend/vite.config.ts +0 -0
  147. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/__init__.py +0 -0
  148. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/inference/__init__.py +0 -0
  149. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/inference/cli.py +0 -0
  150. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/inference/openai_support.py +0 -0
  151. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/inference/validate.py +0 -0
  152. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/inspect_ai.py +0 -0
  153. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/mmlu_pro/README.md +0 -0
  154. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/mmlu_pro/__init__.py +0 -0
  155. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/mmlu_pro/compute_accuracy.py +0 -0
  156. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/mmlu_pro/evaluate_from_local.py +0 -0
  157. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/mmlu_pro/requirements.txt +0 -0
  158. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/__init__.py +0 -0
  159. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/dpo_ft.py +0 -0
  160. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/logp_callback.py +0 -0
  161. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/logprobs.py +0 -0
  162. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/orpo_ft.py +0 -0
  163. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/sampling_callback.py +0 -0
  164. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/sft.py +0 -0
  165. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/training.py +0 -0
  166. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/utils.py +0 -0
  167. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/unsloth/validate.py +0 -0
  168. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/vllm/__init__.py +0 -0
  169. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/vllm/validate.py +0 -0
  170. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/__init__.py +0 -0
  171. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/logp_callback.py +0 -0
  172. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/logprobs.py +0 -0
  173. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/sampling_callback.py +0 -0
  174. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/sft.py +0 -0
  175. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/token_weighting.py +0 -0
  176. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/training.py +0 -0
  177. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/utils.py +0 -0
  178. {openweights-0.7.2 → openweights-0.7.3}/openweights/jobs/weighted_sft/validate.py +0 -0
  179. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/__init__.py +0 -0
  180. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/gpu_health_check.py +0 -0
  181. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/main.py +0 -0
  182. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/services/__init__.py +0 -0
  183. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/services/checkout.py +0 -0
  184. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/services/hf_login.py +0 -0
  185. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/services/log_server.py +0 -0
  186. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/services/ttl_manager.py +0 -0
  187. {openweights-0.7.2 → openweights-0.7.3}/openweights/worker/services/ttl_monitor.py +0 -0
  188. {openweights-0.7.2 → openweights-0.7.3}/supabase/.gitignore +0 -0
  189. {openweights-0.7.2 → openweights-0.7.3}/supabase/config.toml +0 -0
  190. {openweights-0.7.2 → openweights-0.7.3}/supabase/config.toml.dev +0 -0
  191. {openweights-0.7.2 → openweights-0.7.3}/supabase/config.toml.legacy +0 -0
  192. {openweights-0.7.2 → openweights-0.7.3}/supabase/migrations/20250116_v1_schema.sql +0 -0
  193. {openweights-0.7.2 → openweights-0.7.3}/supabase/migrations/20250118_storage_and_files_policies.sql +0 -0
  194. {openweights-0.7.2 → openweights-0.7.3}/supabase/migrations/20250119_fix_files_insert.sql +0 -0
  195. {openweights-0.7.2 → openweights-0.7.3}/tests/test_db.py +0 -0
  196. {openweights-0.7.2 → openweights-0.7.3}/tests/test_files_insert.py +0 -0
  197. {openweights-0.7.2 → openweights-0.7.3}/tests/test_integration.py +0 -0
  198. {openweights-0.7.2 → openweights-0.7.3}/tests/test_jwt.py +0 -0
  199. {openweights-0.7.2 → openweights-0.7.3}/use.sh +0 -0
  200. {openweights-0.7.2 → openweights-0.7.3}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openweights
3
- Version: 0.7.2
3
+ Version: 0.7.3
4
4
  Summary: An openai-like sdk for finetuning and batch inference
5
5
  License: MIT
6
6
  License-File: LICENSE.txt
@@ -98,13 +98,22 @@ def register(name: str):
98
98
  return register_job
99
99
 
100
100
 
101
+ _SUPABASE_URL = os.environ.get(
102
+ "SUPABASE_URL", "https://cmaguqyuzweixkrqjvnf.supabase.co"
103
+ )
104
+ _SUPABASE_ANON_KEY = os.environ.get(
105
+ "SUPABASE_ANON_KEY",
106
+ "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImNtYWd1cXl1endlaXhrcnFqdm5mIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NjE2ODA1ODIsImV4cCI6MjA3NzI1NjU4Mn0.SlD0g3sWHsc3_SKEofR6Y6H01oWiEYBlmXYQiw0379s",
107
+ )
108
+
109
+
101
110
  class OpenWeights:
102
111
  _INSTANCES = []
103
112
 
104
113
  def __init__(
105
114
  self,
106
- supabase_url: Optional[str] = None,
107
- supabase_key: Optional[str] = None,
115
+ supabase_url: Optional[str] = _SUPABASE_URL,
116
+ supabase_key: Optional[str] = _SUPABASE_ANON_KEY,
108
117
  auth_token: Optional[str] = None,
109
118
  organization_id: Optional[str] = None,
110
119
  use_async: bool = False,
@@ -118,21 +127,11 @@ class OpenWeights:
118
127
  auth_token: Authentication token (or OPENWEIGHTS_API_KEY env var)
119
128
  Can be either a session token or a service account JWT token
120
129
  """
121
- self.supabase_url = supabase_url or os.environ.get(
122
- "SUPABASE_URL", "https://cmaguqyuzweixkrqjvnf.supabase.co"
123
- )
124
- self.supabase_key = supabase_key or os.environ.get(
125
- "SUPABASE_ANON_KEY",
126
- "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImNtYWd1cXl1endlaXhrcnFqdm5mIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NjE2ODA1ODIsImV4cCI6MjA3NzI1NjU4Mn0.SlD0g3sWHsc3_SKEofR6Y6H01oWiEYBlmXYQiw0379s",
127
- )
130
+ self.supabase_url = supabase_url
131
+ self.supabase_key = supabase_key
128
132
  self.auth_token = auth_token or os.getenv("OPENWEIGHTS_API_KEY")
129
133
  self.deploy_kwargs = deploy_kwargs
130
134
 
131
- if not self.supabase_url or not self.supabase_key:
132
- raise ValueError(
133
- "Supabase URL and key must be provided either as arguments or environment variables"
134
- )
135
-
136
135
  if not self.auth_token:
137
136
  raise ValueError(
138
137
  "Authentication token must be provided either as argument or OPENWEIGHTS_API_KEY environment variable"
@@ -25,15 +25,20 @@ from utils import (
25
25
  validate_organization_secrets,
26
26
  )
27
27
 
28
- from openweights import OpenWeights
28
+ from openweights.client import _SUPABASE_ANON_KEY, _SUPABASE_URL, OpenWeights
29
29
  from supabase import Client, create_client
30
30
 
31
31
 
32
32
  class Database:
33
33
  def __init__(self, auth_token: Optional[str] = None):
34
+ self.supabase_url = _SUPABASE_URL
35
+ self.supabase_anon_key = _SUPABASE_ANON_KEY
34
36
  self.auth_token = auth_token
35
37
  self._current_org_id = None
36
38
 
39
+ if not self.supabase_url or not self.supabase_anon_key:
40
+ raise ValueError("SUPABASE_URL and SUPABASE_ANON_KEY must be set")
41
+
37
42
  # Initialize regular client for normal operations
38
43
  self.client = create_client(self.supabase_url, self.supabase_anon_key)
39
44
  if auth_token:
@@ -45,7 +50,9 @@ class Database:
45
50
  if not self._current_org_id:
46
51
  raise ValueError("No organization set. Call set_organization_id first.")
47
52
  return OpenWeights(
48
- auth_token=self.auth_token,
53
+ self.supabase_url,
54
+ self.supabase_anon_key,
55
+ self.auth_token,
49
56
  organization_id=self._current_org_id,
50
57
  )
51
58
 
@@ -116,11 +116,8 @@ async def create_organization(
116
116
  @app.get("/organizations/", response_model=List[Organization])
117
117
  async def get_organizations(db: Database = Depends(get_db)):
118
118
  """Get list of organizations the current user has access to."""
119
- try:
120
- result = db.client.from_("organizations").select("*").execute()
121
- return result.data
122
- except Exception as e:
123
- raise HTTPException(status_code=500, detail=str(e))
119
+ result = db.client.from_("organizations").select("*").execute()
120
+ return result.data
124
121
 
125
122
 
126
123
  @app.get("/organizations/{organization_id}", response_model=Organization)
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "openweights"
7
- version = "0.7.2"
7
+ version = "0.7.3"
8
8
  description = "An openai-like sdk for finetuning and batch inference"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -1,99 +0,0 @@
1
- name: "ci"
2
- on: # rebuild any PRs and main branch changes
3
- pull_request:
4
- push:
5
- branches:
6
- - main
7
-
8
- concurrency:
9
- group: ${{ github.repository_owner }}-${{ github.repository }}-${{ github.ref }}
10
- cancel-in-progress: true
11
-
12
- env:
13
- FORCE_COLOR: "1"
14
- PYTHONUNBUFFERED: "1"
15
-
16
- jobs:
17
- build:
18
- runs-on: ubuntu-latest
19
- permissions:
20
- contents: read
21
- packages: write
22
-
23
- strategy:
24
- matrix:
25
- python-version: ["3.10", "3.11", "3.12"]
26
-
27
- steps:
28
- - name: Checkout repository
29
- uses: actions/checkout@v4
30
- - name: Setup PDM
31
- uses: pdm-project/setup-pdm@v4
32
- with:
33
- cache: false # project doesn't use pdm lock files
34
- python-version: ${{ matrix.python-version }}
35
- - name: Setup UV
36
- uses: astral-sh/setup-uv@v5
37
- - name: Configure PDM to use UV
38
- run: pdm config use_uv true
39
- - name: Cache Huggingface assets
40
- uses: actions/cache@v4
41
- with:
42
- key: huggingface-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/pyproject.toml') }}
43
- path: ~/.cache/huggingface
44
- restore-keys: |
45
- huggingface-${{ runner.os }}-${{ matrix.python-version }}-
46
- - name: Install dependencies
47
- run: pdm install --group dev --no-lock
48
-
49
- # TODO: re-enable when we have pre-commit hooks
50
- # - name: Install pre-commit hooks
51
- # run: pdm run pre-commit install
52
- # - name: Ensure pre-commit hooks pass
53
- # run: pdm run pre-commit run --all-files
54
-
55
- # TODO: tests don't currently pass due to missing torch dependency
56
- # see: https://github.com/longtermrisk/openweights/actions/runs/13210898278/job/36883965796?pr=11#step:8:29
57
-
58
- # - name: Run tests
59
- # env:
60
- # HF_TOKEN: ${{ secrets.HF_TOKEN }}
61
- # run: pdm run python -m pytest tests
62
-
63
- release:
64
- needs: build
65
- environment: pypi
66
- permissions:
67
- contents: write
68
- id-token: write
69
- # https://github.community/t/how-do-i-specify-job-dependency-running-in-another-workflow/16482
70
- if: github.event_name == 'push' && github.ref == 'refs/heads/main' && !contains(github.event.head_commit.message, 'chore')
71
- runs-on: ubuntu-latest
72
- concurrency: release
73
- steps:
74
- - uses: actions/checkout@v4
75
- with:
76
- fetch-depth: 0
77
- - uses: pdm-project/setup-pdm@v4
78
- with:
79
- cache: true
80
- python-version: "3.12"
81
- - name: build
82
- run: pdm build
83
- - name: Semantic Release
84
- id: release
85
- uses: python-semantic-release/python-semantic-release@v8.0.7
86
- with:
87
- github_token: ${{ secrets.GITHUB_TOKEN }}
88
-
89
- # - name: Publish package distributions to PyPI
90
- # uses: pypa/gh-action-pypi-publish@release/v1
91
- # if: steps.release.outputs.released == 'true'
92
- - name: Publish package distributions to GitHub Releases
93
- uses: python-semantic-release/upload-to-gh-release@main
94
- if: steps.release.outputs.released == 'true'
95
- with:
96
- github_token: ${{ secrets.GITHUB_TOKEN }}
97
-
98
- # TODO: build and deploy docs to gh-pages
99
- # do this as part of the semantic release step to ensure version is bumped
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