scale-gp-beta 0.1.0a39__tar.gz → 0.1.0a41__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 (228) hide show
  1. scale_gp_beta-0.1.0a41/.release-please-manifest.json +3 -0
  2. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/CHANGELOG.md +53 -0
  3. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/LICENSE +1 -1
  4. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/PKG-INFO +14 -42
  5. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/README.md +13 -41
  6. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/api.md +21 -0
  7. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/pyproject.toml +10 -8
  8. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/requirements-dev.lock +62 -50
  9. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/requirements.lock +20 -19
  10. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_base_client.py +140 -11
  11. scale_gp_beta-0.1.0a41/src/scale_gp_beta/_client.py +1073 -0
  12. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_models.py +16 -1
  13. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_streaming.py +12 -10
  14. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_types.py +12 -2
  15. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_version.py +1 -1
  16. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/__init__.py +14 -0
  17. scale_gp_beta-0.1.0a41/src/scale_gp_beta/resources/build.py +582 -0
  18. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/chat/completions.py +4 -0
  19. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/credentials.py +4 -0
  20. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/dataset_items.py +4 -0
  21. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/datasets.py +4 -0
  22. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/evaluation_items.py +4 -0
  23. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/evaluations.py +4 -0
  24. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/files/files.py +4 -0
  25. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/models.py +4 -0
  26. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/questions.py +4 -0
  27. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/spans.py +28 -0
  28. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/__init__.py +6 -0
  29. scale_gp_beta-0.1.0a41/src/scale_gp_beta/types/build_cancel_response.py +38 -0
  30. scale_gp_beta-0.1.0a41/src/scale_gp_beta/types/build_create_params.py +26 -0
  31. scale_gp_beta-0.1.0a41/src/scale_gp_beta/types/build_create_response.py +38 -0
  32. scale_gp_beta-0.1.0a41/src/scale_gp_beta/types/build_list_params.py +19 -0
  33. scale_gp_beta-0.1.0a41/src/scale_gp_beta/types/build_list_response.py +38 -0
  34. scale_gp_beta-0.1.0a41/src/scale_gp_beta/types/build_retrieve_response.py +38 -0
  35. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/completion_models_params.py +2 -0
  36. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/credential_list_params.py +2 -0
  37. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_item_list_params.py +2 -0
  38. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_list_params.py +2 -0
  39. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation.py +2 -0
  40. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_create_params.py +2 -0
  41. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_item_list_params.py +2 -0
  42. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_list_params.py +2 -0
  43. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_task.py +5 -1
  44. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_task_param.py +5 -1
  45. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/file_import_from_cloud_response.py +4 -0
  46. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/file_list_params.py +2 -0
  47. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/inference_create_params.py +2 -0
  48. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/model_list_params.py +2 -0
  49. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/question_list_params.py +2 -0
  50. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_assessment.py +2 -0
  51. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_search_params.py +11 -0
  52. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/chat/test_completions.py +2 -0
  53. scale_gp_beta-0.1.0a41/tests/api_resources/test_build.py +418 -0
  54. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_credentials.py +2 -0
  55. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_dataset_items.py +2 -0
  56. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_datasets.py +2 -0
  57. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_evaluation_items.py +2 -0
  58. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_evaluations.py +2 -0
  59. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_files.py +2 -0
  60. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_models.py +2 -0
  61. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_questions.py +2 -0
  62. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_spans.py +8 -0
  63. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_client.py +187 -2
  64. scale_gp_beta-0.1.0a39/.release-please-manifest.json +0 -3
  65. scale_gp_beta-0.1.0a39/src/scale_gp_beta/_client.py +0 -614
  66. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/.gitignore +0 -0
  67. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/CONTRIBUTING.md +0 -0
  68. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/SECURITY.md +0 -0
  69. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/bin/check-release-environment +0 -0
  70. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/bin/publish-pypi +0 -0
  71. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/examples/.keep +0 -0
  72. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/examples/tracing/0_primitives_fibonacci.py +0 -0
  73. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/examples/tracing/1_explicit_use_case.py +0 -0
  74. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/examples/tracing/2_direct_upload.py +0 -0
  75. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/examples/tracing/3_openai_agent_tracing.py +0 -0
  76. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/noxfile.py +0 -0
  77. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/release-please-config.json +0 -0
  78. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp/lib/.keep +0 -0
  79. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/__init__.py +0 -0
  80. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_compat.py +0 -0
  81. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_constants.py +0 -0
  82. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_exceptions.py +0 -0
  83. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_files.py +0 -0
  84. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_qs.py +0 -0
  85. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_resource.py +0 -0
  86. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_response.py +0 -0
  87. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/__init__.py +0 -0
  88. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_compat.py +0 -0
  89. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_datetime_parse.py +0 -0
  90. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_logs.py +0 -0
  91. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_proxy.py +0 -0
  92. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_reflection.py +0 -0
  93. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_resources_proxy.py +0 -0
  94. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_streams.py +0 -0
  95. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_sync.py +0 -0
  96. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_transform.py +0 -0
  97. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_typing.py +0 -0
  98. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/_utils/_utils.py +0 -0
  99. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/.keep +0 -0
  100. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/CONTRIBUTING.MD +0 -0
  101. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/__init__.py +0 -0
  102. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/exceptions.py +0 -0
  103. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/integrations/__init__.py +0 -0
  104. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/integrations/openai/__init__.py +0 -0
  105. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/integrations/openai/openai_span_type_map.py +0 -0
  106. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/integrations/openai/openai_tracing_sgp_processor.py +0 -0
  107. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/integrations/openai/utils.py +0 -0
  108. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/scope.py +0 -0
  109. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/span.py +0 -0
  110. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/trace.py +0 -0
  111. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/trace_exporter.py +0 -0
  112. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/trace_queue_manager.py +0 -0
  113. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/tracing.py +0 -0
  114. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/types.py +0 -0
  115. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/lib/tracing/util.py +0 -0
  116. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/pagination.py +0 -0
  117. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/py.typed +0 -0
  118. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/chat/__init__.py +0 -0
  119. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/chat/chat.py +0 -0
  120. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/completions.py +0 -0
  121. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/files/__init__.py +0 -0
  122. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/files/content.py +0 -0
  123. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/inference.py +0 -0
  124. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/responses.py +0 -0
  125. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/resources/span_assessments.py +0 -0
  126. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/approval_status.py +0 -0
  127. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/assessment_type.py +0 -0
  128. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/__init__.py +0 -0
  129. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/chat_completion.py +0 -0
  130. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/chat_completion_chunk.py +0 -0
  131. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/completion_create_params.py +0 -0
  132. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/completion_create_response.py +0 -0
  133. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/completion_models_response.py +0 -0
  134. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/chat/model_definition.py +0 -0
  135. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/completion.py +0 -0
  136. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/completion_create_params.py +0 -0
  137. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/component.py +0 -0
  138. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/component_param.py +0 -0
  139. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/container.py +0 -0
  140. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/container_param.py +0 -0
  141. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/credential.py +0 -0
  142. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/credential_create_params.py +0 -0
  143. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/credential_delete_response.py +0 -0
  144. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/credential_secret.py +0 -0
  145. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/credential_update_params.py +0 -0
  146. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset.py +0 -0
  147. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_create_params.py +0 -0
  148. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_delete_response.py +0 -0
  149. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_item.py +0 -0
  150. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_item_batch_create_params.py +0 -0
  151. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_item_batch_create_response.py +0 -0
  152. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_item_delete_response.py +0 -0
  153. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_item_retrieve_params.py +0 -0
  154. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_item_update_params.py +0 -0
  155. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_retrieve_params.py +0 -0
  156. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/dataset_update_params.py +0 -0
  157. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_item.py +0 -0
  158. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_item_retrieve_params.py +0 -0
  159. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_retrieve_params.py +0 -0
  160. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/evaluation_update_params.py +0 -0
  161. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/file.py +0 -0
  162. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/file_create_params.py +0 -0
  163. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/file_delete_response.py +0 -0
  164. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/file_import_from_cloud_params.py +0 -0
  165. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/file_update_params.py +0 -0
  166. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/files/__init__.py +0 -0
  167. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/inference_create_response.py +0 -0
  168. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/inference_model.py +0 -0
  169. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/inference_response.py +0 -0
  170. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/inference_response_chunk.py +0 -0
  171. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/item_locator.py +0 -0
  172. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/item_locator_template.py +0 -0
  173. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/model_create_params.py +0 -0
  174. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/model_delete_response.py +0 -0
  175. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/model_update_params.py +0 -0
  176. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/question.py +0 -0
  177. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/question_create_params.py +0 -0
  178. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/response.py +0 -0
  179. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/response_create_params.py +0 -0
  180. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/response_create_response.py +0 -0
  181. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/shared/__init__.py +0 -0
  182. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/shared/identity.py +0 -0
  183. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span.py +0 -0
  184. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_assessment_create_params.py +0 -0
  185. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_assessment_delete_response.py +0 -0
  186. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_assessment_list_params.py +0 -0
  187. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_assessment_update_params.py +0 -0
  188. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_batch_params.py +0 -0
  189. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_batch_response.py +0 -0
  190. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_create_params.py +0 -0
  191. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_status.py +0 -0
  192. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_type.py +0 -0
  193. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_update_params.py +0 -0
  194. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_upsert_batch_params.py +0 -0
  195. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/scale_gp_beta/types/span_upsert_batch_response.py +0 -0
  196. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/src/sgp_dev/lib/.keep +0 -0
  197. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/__init__.py +0 -0
  198. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/__init__.py +0 -0
  199. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/chat/__init__.py +0 -0
  200. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/files/__init__.py +0 -0
  201. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/files/test_content.py +0 -0
  202. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_completions.py +0 -0
  203. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_inference.py +0 -0
  204. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_responses.py +0 -0
  205. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/api_resources/test_span_assessments.py +0 -0
  206. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/conftest.py +0 -0
  207. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/integrations/__init__.py +0 -0
  208. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/integrations/openai/__init__.py +0 -0
  209. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/integrations/openai/test_utils.py +0 -0
  210. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/test_span.py +0 -0
  211. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/test_trace.py +0 -0
  212. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/test_trace_exporter.py +0 -0
  213. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/test_trace_queue_manager.py +0 -0
  214. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/lib/tracing/test_tracing.py +0 -0
  215. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/sample_file.txt +0 -0
  216. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_deepcopy.py +0 -0
  217. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_extract_files.py +0 -0
  218. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_files.py +0 -0
  219. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_models.py +0 -0
  220. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_qs.py +0 -0
  221. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_required_args.py +0 -0
  222. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_response.py +0 -0
  223. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_streaming.py +0 -0
  224. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_transform.py +0 -0
  225. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_utils/test_datetime_parse.py +0 -0
  226. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_utils/test_proxy.py +0 -0
  227. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/test_utils/test_typing.py +0 -0
  228. {scale_gp_beta-0.1.0a39 → scale_gp_beta-0.1.0a41}/tests/utils.py +0 -0
@@ -0,0 +1,3 @@
1
+ {
2
+ ".": "0.1.0-alpha.41"
3
+ }
@@ -1,5 +1,58 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.41 (2026-01-22)
4
+
5
+ Full Changelog: [v0.1.0-alpha.40...v0.1.0-alpha.41](https://github.com/scaleapi/sgp-python-beta/compare/v0.1.0-alpha.40...v0.1.0-alpha.41)
6
+
7
+ ### Features
8
+
9
+ * **api:** manual updates ([9b156ee](https://github.com/scaleapi/sgp-python-beta/commit/9b156eed3f4d4ebaa6faa8fb23ef0b1781760415))
10
+ * **client:** add support for binary request streaming ([04962bf](https://github.com/scaleapi/sgp-python-beta/commit/04962bf6406930a75e123d2af5dde86d0f313256))
11
+
12
+
13
+ ### Chores
14
+
15
+ * **internal:** codegen related update ([4c33009](https://github.com/scaleapi/sgp-python-beta/commit/4c330099f4f093af414196c4e62f33cc98c7b819))
16
+ * **internal:** codegen related update ([5db2581](https://github.com/scaleapi/sgp-python-beta/commit/5db25817cb90f868cd98bed7e53c0492ac47a9ae))
17
+ * **internal:** update `actions/checkout` version ([df2bf4c](https://github.com/scaleapi/sgp-python-beta/commit/df2bf4c22cc5f517a5794646ae6f9be2cd929f31))
18
+
19
+
20
+ ### Documentation
21
+
22
+ * prominently feature MCP server setup in root SDK readmes ([a683797](https://github.com/scaleapi/sgp-python-beta/commit/a683797c2730376322771da46e19d782fa2c3b1a))
23
+
24
+ ## 0.1.0-alpha.40 (2025-12-19)
25
+
26
+ Full Changelog: [v0.1.0-alpha.39...v0.1.0-alpha.40](https://github.com/scaleapi/sgp-python-beta/compare/v0.1.0-alpha.39...v0.1.0-alpha.40)
27
+
28
+ ### Features
29
+
30
+ * **api:** api update ([c60b079](https://github.com/scaleapi/sgp-python-beta/commit/c60b0795b74718ba3d91cfc5322e0acae84318c0))
31
+ * **api:** api update ([42b9f6a](https://github.com/scaleapi/sgp-python-beta/commit/42b9f6a356f27e922eacfbb863f423a4eb72b621))
32
+
33
+
34
+ ### Bug Fixes
35
+
36
+ * ensure streams are always closed ([a53f824](https://github.com/scaleapi/sgp-python-beta/commit/a53f82441b8e792c236bf2776fe62b8713c22c78))
37
+ * **types:** allow pyright to infer TypedDict types within SequenceNotStr ([d17d003](https://github.com/scaleapi/sgp-python-beta/commit/d17d0035c2c7b7e785991f0efb5a75c1642ead2b))
38
+ * use async_to_httpx_files in patch method ([0ffb743](https://github.com/scaleapi/sgp-python-beta/commit/0ffb7434c08322df729a87b5d8b2dd11329519b5))
39
+
40
+
41
+ ### Chores
42
+
43
+ * add missing docstrings ([0ead346](https://github.com/scaleapi/sgp-python-beta/commit/0ead346d668d8d5525c26c08b23f9690e63b0aac))
44
+ * **deps:** mypy 1.18.1 has a regression, pin to 1.17 ([77a4985](https://github.com/scaleapi/sgp-python-beta/commit/77a498580aee97a654b716203062851c83ba1ac8))
45
+ * **docs:** use environment variables for authentication in code snippets ([98c4741](https://github.com/scaleapi/sgp-python-beta/commit/98c47414cb45132c312e6e117d9a236ed802e3d5))
46
+ * **internal:** add `--fix` argument to lint script ([fb424fc](https://github.com/scaleapi/sgp-python-beta/commit/fb424fc6e44fd01a795324eadffc3524510e5ff1))
47
+ * **internal:** add missing files argument to base client ([b2c3913](https://github.com/scaleapi/sgp-python-beta/commit/b2c3913ea86dc6a462a483db2536cda7c7cda8a4))
48
+ * speedup initial import ([d7310c5](https://github.com/scaleapi/sgp-python-beta/commit/d7310c5260b152479fdc3a33e766928fa5624845))
49
+ * update lockfile ([0f851f0](https://github.com/scaleapi/sgp-python-beta/commit/0f851f0d6a7a82af1111600f323278c4ef7281d3))
50
+
51
+
52
+ ### Documentation
53
+
54
+ * add more examples ([ad9506e](https://github.com/scaleapi/sgp-python-beta/commit/ad9506e256c9796a56611af66a03eed2ff80c102))
55
+
3
56
  ## 0.1.0-alpha.39 (2025-11-21)
4
57
 
5
58
  Full Changelog: [v0.1.0-alpha.38...v0.1.0-alpha.39](https://github.com/scaleapi/sgp-python-beta/compare/v0.1.0-alpha.38...v0.1.0-alpha.39)
@@ -186,7 +186,7 @@
186
186
  same "printed page" as the copyright notice for easier
187
187
  identification within third-party archives.
188
188
 
189
- Copyright 2025 Scale GP
189
+ Copyright 2026 Scale GP
190
190
 
191
191
  Licensed under the Apache License, Version 2.0 (the "License");
192
192
  you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: scale-gp-beta
3
- Version: 0.1.0a39
3
+ Version: 0.1.0a41
4
4
  Summary: The official Python library for the Scale GP API
5
5
  Project-URL: Homepage, https://github.com/scaleapi/sgp-python-beta
6
6
  Project-URL: Repository, https://github.com/scaleapi/sgp-python-beta
@@ -44,6 +44,15 @@ and offers both synchronous and asynchronous clients powered by [httpx](https://
44
44
 
45
45
  It is generated with [Stainless](https://www.stainless.com/).
46
46
 
47
+ ## MCP Server
48
+
49
+ Use the Scale GP MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.
50
+
51
+ [![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=scale-gp-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsInNjYWxlLWdwLW1jcCJdfQ)
52
+ [![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22scale-gp-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22scale-gp-mcp%22%5D%7D)
53
+
54
+ > Note: You may need to set environment variables in your MCP client.
55
+
47
56
  ## Documentation
48
57
 
49
58
  The REST API documentation can be found on [docs.gp.scale.com](https://docs.gp.scale.com). The full API of this library can be found in [api.md](https://github.com/scaleapi/sgp-python-beta/tree/main/api.md).
@@ -52,7 +61,7 @@ The REST API documentation can be found on [docs.gp.scale.com](https://docs.gp.s
52
61
 
53
62
  ```sh
54
63
  # install from PyPI
55
- pip install --pre scale-gp-beta
64
+ pip install '--pre scale-gp-beta'
56
65
  ```
57
66
 
58
67
  ## Usage
@@ -358,12 +367,13 @@ You can enable this by installing `aiohttp`:
358
367
 
359
368
  ```sh
360
369
  # install from PyPI
361
- pip install --pre scale-gp-beta[aiohttp]
370
+ pip install '--pre scale-gp-beta[aiohttp]'
362
371
  ```
363
372
 
364
373
  Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
365
374
 
366
375
  ```python
376
+ import os
367
377
  import asyncio
368
378
  from scale_gp_beta import DefaultAioHttpClient
369
379
  from scale_gp_beta import AsyncSGPClient
@@ -372,7 +382,7 @@ from scale_gp_beta import AsyncSGPClient
372
382
  async def main() -> None:
373
383
  async with AsyncSGPClient(
374
384
  account_id="My Account ID",
375
- api_key="My API Key",
385
+ api_key=os.environ.get("SGP_API_KEY"), # This is the default and can be omitted
376
386
  http_client=DefaultAioHttpClient(),
377
387
  ) as client:
378
388
  completion = await client.chat.completions.create(
@@ -385,44 +395,6 @@ async def main() -> None:
385
395
  asyncio.run(main())
386
396
  ```
387
397
 
388
- ## Streaming responses
389
-
390
- We provide support for streaming responses using Server Side Events (SSE).
391
-
392
- ```python
393
- from scale_gp_beta import SGPClient
394
-
395
- client = SGPClient(
396
- account_id="My Account ID",
397
- )
398
-
399
- stream = client.chat.completions.create(
400
- messages=[{"foo": "bar"}],
401
- model="model",
402
- stream=True,
403
- )
404
- for completion in stream:
405
- print(completion)
406
- ```
407
-
408
- The async client uses the exact same interface.
409
-
410
- ```python
411
- from scale_gp_beta import AsyncSGPClient
412
-
413
- client = AsyncSGPClient(
414
- account_id="My Account ID",
415
- )
416
-
417
- stream = await client.chat.completions.create(
418
- messages=[{"foo": "bar"}],
419
- model="model",
420
- stream=True,
421
- )
422
- async for completion in stream:
423
- print(completion)
424
- ```
425
-
426
398
  ## Using types
427
399
 
428
400
  Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typing.html#typing.TypedDict). Responses are [Pydantic models](https://docs.pydantic.dev) which also provide helper methods for things like:
@@ -9,6 +9,15 @@ and offers both synchronous and asynchronous clients powered by [httpx](https://
9
9
 
10
10
  It is generated with [Stainless](https://www.stainless.com/).
11
11
 
12
+ ## MCP Server
13
+
14
+ Use the Scale GP MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.
15
+
16
+ [![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=scale-gp-mcp&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsInNjYWxlLWdwLW1jcCJdfQ)
17
+ [![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22scale-gp-mcp%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22scale-gp-mcp%22%5D%7D)
18
+
19
+ > Note: You may need to set environment variables in your MCP client.
20
+
12
21
  ## Documentation
13
22
 
14
23
  The REST API documentation can be found on [docs.gp.scale.com](https://docs.gp.scale.com). The full API of this library can be found in [api.md](api.md).
@@ -17,7 +26,7 @@ The REST API documentation can be found on [docs.gp.scale.com](https://docs.gp.s
17
26
 
18
27
  ```sh
19
28
  # install from PyPI
20
- pip install --pre scale-gp-beta
29
+ pip install '--pre scale-gp-beta'
21
30
  ```
22
31
 
23
32
  ## Usage
@@ -323,12 +332,13 @@ You can enable this by installing `aiohttp`:
323
332
 
324
333
  ```sh
325
334
  # install from PyPI
326
- pip install --pre scale-gp-beta[aiohttp]
335
+ pip install '--pre scale-gp-beta[aiohttp]'
327
336
  ```
328
337
 
329
338
  Then you can enable it by instantiating the client with `http_client=DefaultAioHttpClient()`:
330
339
 
331
340
  ```python
341
+ import os
332
342
  import asyncio
333
343
  from scale_gp_beta import DefaultAioHttpClient
334
344
  from scale_gp_beta import AsyncSGPClient
@@ -337,7 +347,7 @@ from scale_gp_beta import AsyncSGPClient
337
347
  async def main() -> None:
338
348
  async with AsyncSGPClient(
339
349
  account_id="My Account ID",
340
- api_key="My API Key",
350
+ api_key=os.environ.get("SGP_API_KEY"), # This is the default and can be omitted
341
351
  http_client=DefaultAioHttpClient(),
342
352
  ) as client:
343
353
  completion = await client.chat.completions.create(
@@ -350,44 +360,6 @@ async def main() -> None:
350
360
  asyncio.run(main())
351
361
  ```
352
362
 
353
- ## Streaming responses
354
-
355
- We provide support for streaming responses using Server Side Events (SSE).
356
-
357
- ```python
358
- from scale_gp_beta import SGPClient
359
-
360
- client = SGPClient(
361
- account_id="My Account ID",
362
- )
363
-
364
- stream = client.chat.completions.create(
365
- messages=[{"foo": "bar"}],
366
- model="model",
367
- stream=True,
368
- )
369
- for completion in stream:
370
- print(completion)
371
- ```
372
-
373
- The async client uses the exact same interface.
374
-
375
- ```python
376
- from scale_gp_beta import AsyncSGPClient
377
-
378
- client = AsyncSGPClient(
379
- account_id="My Account ID",
380
- )
381
-
382
- stream = await client.chat.completions.create(
383
- messages=[{"foo": "bar"}],
384
- model="model",
385
- stream=True,
386
- )
387
- async for completion in stream:
388
- print(completion)
389
- ```
390
-
391
363
  ## Using types
392
364
 
393
365
  Nested request parameters are [TypedDicts](https://docs.python.org/3/library/typing.html#typing.TypedDict). Responses are [Pydantic models](https://docs.pydantic.dev) which also provide helper methods for things like:
@@ -241,3 +241,24 @@ Methods:
241
241
  - <code title="post /v5/credentials/{credential_id}/secret">client.credentials.<a href="./src/scale_gp_beta/resources/credentials.py">decrypt</a>(credential_id) -> <a href="./src/scale_gp_beta/types/credential_secret.py">CredentialSecret</a></code>
242
242
  - <code title="post /v5/credentials/name/{credential_name}/secret">client.credentials.<a href="./src/scale_gp_beta/resources/credentials.py">decrypt_by_name</a>(credential_name) -> <a href="./src/scale_gp_beta/types/credential_secret.py">CredentialSecret</a></code>
243
243
  - <code title="get /v5/credentials/name/{credential_name}">client.credentials.<a href="./src/scale_gp_beta/resources/credentials.py">retrieve_by_name</a>(credential_name) -> <a href="./src/scale_gp_beta/types/credential.py">Credential</a></code>
244
+
245
+ # Build
246
+
247
+ Types:
248
+
249
+ ```python
250
+ from scale_gp_beta.types import (
251
+ BuildCreateResponse,
252
+ BuildRetrieveResponse,
253
+ BuildListResponse,
254
+ BuildCancelResponse,
255
+ )
256
+ ```
257
+
258
+ Methods:
259
+
260
+ - <code title="post /v5/builds">client.build.<a href="./src/scale_gp_beta/resources/build.py">create</a>(\*\*<a href="src/scale_gp_beta/types/build_create_params.py">params</a>) -> <a href="./src/scale_gp_beta/types/build_create_response.py">BuildCreateResponse</a></code>
261
+ - <code title="get /v5/builds/{build_id}">client.build.<a href="./src/scale_gp_beta/resources/build.py">retrieve</a>(build_id) -> <a href="./src/scale_gp_beta/types/build_retrieve_response.py">BuildRetrieveResponse</a></code>
262
+ - <code title="get /v5/builds">client.build.<a href="./src/scale_gp_beta/resources/build.py">list</a>(\*\*<a href="src/scale_gp_beta/types/build_list_params.py">params</a>) -> <a href="./src/scale_gp_beta/types/build_list_response.py">SyncCursorPage[BuildListResponse]</a></code>
263
+ - <code title="post /v5/builds/{build_id}/cancel">client.build.<a href="./src/scale_gp_beta/resources/build.py">cancel</a>(build_id) -> <a href="./src/scale_gp_beta/types/build_cancel_response.py">BuildCancelResponse</a></code>
264
+ - <code title="get /v5/builds/{build_id}/logs">client.build.<a href="./src/scale_gp_beta/resources/build.py">logs</a>(build_id) -> object</code>
@@ -1,20 +1,22 @@
1
1
  [project]
2
2
  name = "scale-gp-beta"
3
- version = "0.1.0-alpha.39"
3
+ version = "0.1.0-alpha.41"
4
4
  description = "The official Python library for the Scale GP API"
5
5
  dynamic = ["readme"]
6
6
  license = "Apache-2.0"
7
7
  authors = [
8
8
  { name = "Scale GP", email = "erich.woo@scale.com" },
9
9
  ]
10
+
10
11
  dependencies = [
11
- "httpx>=0.23.0, <1",
12
- "pydantic>=1.9.0, <3",
13
- "typing-extensions>=4.10, <5",
14
- "anyio>=3.5.0, <5",
15
- "distro>=1.7.0, <2",
16
- "sniffio",
12
+ "httpx>=0.23.0, <1",
13
+ "pydantic>=1.9.0, <3",
14
+ "typing-extensions>=4.10, <5",
15
+ "anyio>=3.5.0, <5",
16
+ "distro>=1.7.0, <2",
17
+ "sniffio",
17
18
  ]
19
+
18
20
  requires-python = ">= 3.9"
19
21
  classifiers = [
20
22
  "Typing :: Typed",
@@ -46,7 +48,7 @@ managed = true
46
48
  # version pins are in requirements-dev.lock
47
49
  dev-dependencies = [
48
50
  "pyright==1.1.399",
49
- "mypy",
51
+ "mypy==1.17",
50
52
  "respx",
51
53
  "pytest",
52
54
  "pytest-asyncio",
@@ -12,40 +12,45 @@
12
12
  -e file:.
13
13
  aiohappyeyeballs==2.6.1
14
14
  # via aiohttp
15
- aiohttp==3.12.8
15
+ aiohttp==3.13.2
16
16
  # via httpx-aiohttp
17
17
  # via scale-gp-beta
18
- aiosignal==1.3.2
18
+ aiosignal==1.4.0
19
19
  # via aiohttp
20
- annotated-types==0.6.0
20
+ annotated-types==0.7.0
21
21
  # via pydantic
22
- anyio==4.4.0
22
+ anyio==4.12.0
23
23
  # via httpx
24
24
  # via scale-gp-beta
25
- argcomplete==3.1.2
25
+ argcomplete==3.6.3
26
26
  # via nox
27
27
  async-timeout==5.0.1
28
28
  # via aiohttp
29
- attrs==25.3.0
29
+ attrs==25.4.0
30
30
  # via aiohttp
31
- certifi==2023.7.22
31
+ # via nox
32
+ backports-asyncio-runner==1.2.0
33
+ # via pytest-asyncio
34
+ certifi==2025.11.12
32
35
  # via httpcore
33
36
  # via httpx
34
- colorlog==6.7.0
37
+ colorlog==6.10.1
38
+ # via nox
39
+ dependency-groups==1.3.1
35
40
  # via nox
36
- dirty-equals==0.6.0
37
- distlib==0.3.7
41
+ dirty-equals==0.11
42
+ distlib==0.4.0
38
43
  # via virtualenv
39
- distro==1.8.0
44
+ distro==1.9.0
40
45
  # via scale-gp-beta
41
- exceptiongroup==1.2.2
46
+ exceptiongroup==1.3.1
42
47
  # via anyio
43
48
  # via pytest
44
- execnet==2.1.1
49
+ execnet==2.1.2
45
50
  # via pytest-xdist
46
- filelock==3.12.4
51
+ filelock==3.19.1
47
52
  # via virtualenv
48
- frozenlist==1.6.2
53
+ frozenlist==1.8.0
49
54
  # via aiohttp
50
55
  # via aiosignal
51
56
  h11==0.16.0
@@ -58,80 +63,87 @@ httpx==0.28.1
58
63
  # via scale-gp-beta
59
64
  httpx-aiohttp==0.1.9
60
65
  # via scale-gp-beta
61
- idna==3.4
66
+ humanize==4.13.0
67
+ # via nox
68
+ idna==3.11
62
69
  # via anyio
63
70
  # via httpx
64
71
  # via yarl
65
- importlib-metadata==7.0.0
66
- iniconfig==2.0.0
72
+ importlib-metadata==8.7.0
73
+ iniconfig==2.1.0
67
74
  # via pytest
68
75
  markdown-it-py==3.0.0
69
76
  # via rich
70
77
  mdurl==0.1.2
71
78
  # via markdown-it-py
72
- multidict==6.4.4
79
+ multidict==6.7.0
73
80
  # via aiohttp
74
81
  # via yarl
75
- mypy==1.14.1
76
- mypy-extensions==1.0.0
82
+ mypy==1.17.0
83
+ mypy-extensions==1.1.0
77
84
  # via mypy
78
- nodeenv==1.8.0
85
+ nodeenv==1.9.1
79
86
  # via pyright
80
- nox==2023.4.22
81
- packaging==23.2
87
+ nox==2025.11.12
88
+ packaging==25.0
89
+ # via dependency-groups
82
90
  # via nox
83
91
  # via pytest
84
- platformdirs==3.11.0
92
+ pathspec==0.12.1
93
+ # via mypy
94
+ platformdirs==4.4.0
85
95
  # via virtualenv
86
- pluggy==1.5.0
96
+ pluggy==1.6.0
87
97
  # via pytest
88
- propcache==0.3.1
98
+ propcache==0.4.1
89
99
  # via aiohttp
90
100
  # via yarl
91
- pydantic==2.11.9
101
+ pydantic==2.12.5
92
102
  # via scale-gp-beta
93
- pydantic-core==2.33.2
103
+ pydantic-core==2.41.5
94
104
  # via pydantic
95
- pygments==2.18.0
105
+ pygments==2.19.2
106
+ # via pytest
96
107
  # via rich
97
108
  pyright==1.1.399
98
- pytest==8.3.3
109
+ pytest==8.4.2
99
110
  # via pytest-asyncio
100
111
  # via pytest-xdist
101
- pytest-asyncio==0.24.0
102
- pytest-xdist==3.7.0
103
- python-dateutil==2.8.2
112
+ pytest-asyncio==1.2.0
113
+ pytest-xdist==3.8.0
114
+ python-dateutil==2.9.0.post0
104
115
  # via time-machine
105
- pytz==2023.3.post1
106
- # via dirty-equals
107
116
  respx==0.22.0
108
- rich==13.7.1
109
- ruff==0.9.4
110
- setuptools==68.2.2
111
- # via nodeenv
112
- six==1.16.0
117
+ rich==14.2.0
118
+ ruff==0.14.7
119
+ six==1.17.0
113
120
  # via python-dateutil
114
- sniffio==1.3.0
115
- # via anyio
121
+ sniffio==1.3.1
116
122
  # via scale-gp-beta
117
- time-machine==2.9.0
118
- tomli==2.0.2
123
+ time-machine==2.19.0
124
+ tomli==2.3.0
125
+ # via dependency-groups
119
126
  # via mypy
127
+ # via nox
120
128
  # via pytest
121
- typing-extensions==4.12.2
129
+ typing-extensions==4.15.0
130
+ # via aiosignal
122
131
  # via anyio
132
+ # via exceptiongroup
123
133
  # via multidict
124
134
  # via mypy
125
135
  # via pydantic
126
136
  # via pydantic-core
127
137
  # via pyright
138
+ # via pytest-asyncio
128
139
  # via scale-gp-beta
129
140
  # via typing-inspection
130
- typing-inspection==0.4.1
141
+ # via virtualenv
142
+ typing-inspection==0.4.2
131
143
  # via pydantic
132
- virtualenv==20.24.5
144
+ virtualenv==20.35.4
133
145
  # via nox
134
- yarl==1.20.0
146
+ yarl==1.22.0
135
147
  # via aiohttp
136
- zipp==3.17.0
148
+ zipp==3.23.0
137
149
  # via importlib-metadata
@@ -12,28 +12,28 @@
12
12
  -e file:.
13
13
  aiohappyeyeballs==2.6.1
14
14
  # via aiohttp
15
- aiohttp==3.12.8
15
+ aiohttp==3.13.2
16
16
  # via httpx-aiohttp
17
17
  # via scale-gp-beta
18
- aiosignal==1.3.2
18
+ aiosignal==1.4.0
19
19
  # via aiohttp
20
- annotated-types==0.6.0
20
+ annotated-types==0.7.0
21
21
  # via pydantic
22
- anyio==4.4.0
22
+ anyio==4.12.0
23
23
  # via httpx
24
24
  # via scale-gp-beta
25
25
  async-timeout==5.0.1
26
26
  # via aiohttp
27
- attrs==25.3.0
27
+ attrs==25.4.0
28
28
  # via aiohttp
29
- certifi==2023.7.22
29
+ certifi==2025.11.12
30
30
  # via httpcore
31
31
  # via httpx
32
- distro==1.8.0
32
+ distro==1.9.0
33
33
  # via scale-gp-beta
34
- exceptiongroup==1.2.2
34
+ exceptiongroup==1.3.1
35
35
  # via anyio
36
- frozenlist==1.6.2
36
+ frozenlist==1.8.0
37
37
  # via aiohttp
38
38
  # via aiosignal
39
39
  h11==0.16.0
@@ -45,31 +45,32 @@ httpx==0.28.1
45
45
  # via scale-gp-beta
46
46
  httpx-aiohttp==0.1.9
47
47
  # via scale-gp-beta
48
- idna==3.4
48
+ idna==3.11
49
49
  # via anyio
50
50
  # via httpx
51
51
  # via yarl
52
- multidict==6.4.4
52
+ multidict==6.7.0
53
53
  # via aiohttp
54
54
  # via yarl
55
- propcache==0.3.1
55
+ propcache==0.4.1
56
56
  # via aiohttp
57
57
  # via yarl
58
- pydantic==2.11.9
58
+ pydantic==2.12.5
59
59
  # via scale-gp-beta
60
- pydantic-core==2.33.2
60
+ pydantic-core==2.41.5
61
61
  # via pydantic
62
- sniffio==1.3.0
63
- # via anyio
62
+ sniffio==1.3.1
64
63
  # via scale-gp-beta
65
- typing-extensions==4.12.2
64
+ typing-extensions==4.15.0
65
+ # via aiosignal
66
66
  # via anyio
67
+ # via exceptiongroup
67
68
  # via multidict
68
69
  # via pydantic
69
70
  # via pydantic-core
70
71
  # via scale-gp-beta
71
72
  # via typing-inspection
72
- typing-inspection==0.4.1
73
+ typing-inspection==0.4.2
73
74
  # via pydantic
74
- yarl==1.20.0
75
+ yarl==1.22.0
75
76
  # via aiohttp