agenta 0.27.6a3__tar.gz → 0.27.7__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.

Potentially problematic release.


This version of agenta might be problematic. Click here for more details.

Files changed (232) hide show
  1. {agenta-0.27.6a3 → agenta-0.27.7}/PKG-INFO +1 -1
  2. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/cli/main.py +4 -51
  3. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/__init__.py +63 -0
  4. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/apps/client.py +12 -58
  5. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/client.py +22 -22
  6. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/http_client.py +15 -7
  7. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/evaluations/client.py +0 -11
  8. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/observability/client.py +4 -4
  9. agenta-0.27.7/agenta/client/backend/observability_v_1/__init__.py +5 -0
  10. agenta-0.27.7/agenta/client/backend/observability_v_1/client.py +560 -0
  11. agenta-0.27.7/agenta/client/backend/observability_v_1/types/__init__.py +6 -0
  12. agenta-0.27.7/agenta/client/backend/observability_v_1/types/format.py +5 -0
  13. agenta-0.27.7/agenta/client/backend/observability_v_1/types/query_traces_response.py +11 -0
  14. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/testsets/client.py +8 -40
  15. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/__init__.py +58 -0
  16. agenta-0.27.7/agenta/client/backend/types/agenta_node_dto.py +48 -0
  17. agenta-0.27.7/agenta/client/backend/types/agenta_node_dto_nodes_value.py +6 -0
  18. agenta-0.27.7/agenta/client/backend/types/agenta_nodes_response.py +30 -0
  19. agenta-0.27.7/agenta/client/backend/types/agenta_root_dto.py +30 -0
  20. agenta-0.27.7/agenta/client/backend/types/agenta_roots_response.py +30 -0
  21. agenta-0.27.7/agenta/client/backend/types/agenta_tree_dto.py +30 -0
  22. agenta-0.27.7/agenta/client/backend/types/agenta_trees_response.py +30 -0
  23. agenta-0.27.7/agenta/client/backend/types/collect_status_response.py +22 -0
  24. agenta-0.27.7/agenta/client/backend/types/exception_dto.py +26 -0
  25. agenta-0.27.7/agenta/client/backend/types/link_dto.py +24 -0
  26. agenta-0.27.7/agenta/client/backend/types/node_dto.py +24 -0
  27. agenta-0.27.7/agenta/client/backend/types/node_type.py +19 -0
  28. agenta-0.27.7/agenta/client/backend/types/o_tel_context_dto.py +22 -0
  29. agenta-0.27.7/agenta/client/backend/types/o_tel_event_dto.py +23 -0
  30. agenta-0.27.7/agenta/client/backend/types/o_tel_extra_dto.py +26 -0
  31. agenta-0.27.7/agenta/client/backend/types/o_tel_link_dto.py +23 -0
  32. agenta-0.27.7/agenta/client/backend/types/o_tel_span_dto.py +37 -0
  33. agenta-0.27.7/agenta/client/backend/types/o_tel_span_kind.py +15 -0
  34. agenta-0.27.7/agenta/client/backend/types/o_tel_spans_response.py +24 -0
  35. agenta-0.27.7/agenta/client/backend/types/o_tel_status_code.py +8 -0
  36. agenta-0.27.7/agenta/client/backend/types/parent_dto.py +21 -0
  37. agenta-0.27.7/agenta/client/backend/types/root_dto.py +21 -0
  38. agenta-0.27.7/agenta/client/backend/types/span_dto.py +54 -0
  39. agenta-0.27.7/agenta/client/backend/types/span_dto_nodes_value.py +9 -0
  40. agenta-0.27.7/agenta/client/backend/types/status_code.py +5 -0
  41. agenta-0.27.7/agenta/client/backend/types/status_dto.py +23 -0
  42. agenta-0.27.7/agenta/client/backend/types/time_dto.py +23 -0
  43. agenta-0.27.7/agenta/client/backend/types/tree_dto.py +23 -0
  44. agenta-0.27.7/agenta/client/backend/types/tree_type.py +5 -0
  45. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/variants/client.py +24 -16
  46. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/__init__.py +2 -0
  47. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/agenta_init.py +4 -9
  48. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/decorators/routing.py +34 -53
  49. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/litellm/litellm.py +30 -75
  50. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/middleware/auth.py +10 -7
  51. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/context.py +6 -6
  52. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/inline.py +48 -151
  53. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/processors.py +1 -3
  54. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/tracing.py +1 -5
  55. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/types.py +5 -2
  56. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/utils/exceptions.py +15 -9
  57. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/utils/logging.py +5 -1
  58. {agenta-0.27.6a3 → agenta-0.27.7}/pyproject.toml +1 -1
  59. agenta-0.27.6a3/agenta/sdk/utils/debug.py +0 -68
  60. {agenta-0.27.6a3 → agenta-0.27.7}/README.md +0 -0
  61. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/__init__.py +0 -0
  62. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/cli/evaluation_commands.py +0 -0
  63. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/cli/helper.py +0 -0
  64. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/cli/telemetry.py +0 -0
  65. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/cli/variant_commands.py +0 -0
  66. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/cli/variant_configs.py +0 -0
  67. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/Readme.md +0 -0
  68. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/__init__.py +0 -0
  69. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/api.py +0 -0
  70. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/api_models.py +0 -0
  71. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/apps/__init__.py +0 -0
  72. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/bases/__init__.py +0 -0
  73. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/bases/client.py +0 -0
  74. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/configs/__init__.py +0 -0
  75. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/configs/client.py +0 -0
  76. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/containers/__init__.py +0 -0
  77. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/containers/client.py +0 -0
  78. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/containers/types/__init__.py +0 -0
  79. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/containers/types/container_templates_response.py +0 -0
  80. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/__init__.py +0 -0
  81. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/api_error.py +0 -0
  82. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/client_wrapper.py +0 -0
  83. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/datetime_utils.py +0 -0
  84. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/file.py +0 -0
  85. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/jsonable_encoder.py +0 -0
  86. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/pydantic_utilities.py +0 -0
  87. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/query_encoder.py +0 -0
  88. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/remove_none_from_dict.py +0 -0
  89. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/request_options.py +0 -0
  90. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/core/serialization.py +0 -0
  91. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/environments/__init__.py +0 -0
  92. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/environments/client.py +0 -0
  93. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/errors/__init__.py +0 -0
  94. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/errors/unprocessable_entity_error.py +0 -0
  95. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/evaluations/__init__.py +0 -0
  96. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/evaluators/__init__.py +0 -0
  97. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/evaluators/client.py +0 -0
  98. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/observability/__init__.py +0 -0
  99. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/testsets/__init__.py +0 -0
  100. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/aggregated_result.py +0 -0
  101. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/aggregated_result_evaluator_config.py +0 -0
  102. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/app.py +0 -0
  103. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/app_variant_response.py +0 -0
  104. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/app_variant_revision.py +0 -0
  105. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/base_output.py +0 -0
  106. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/body_import_testset.py +0 -0
  107. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/config_db.py +0 -0
  108. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/config_dto.py +0 -0
  109. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/config_response_model.py +0 -0
  110. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/correct_answer.py +0 -0
  111. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/create_app_output.py +0 -0
  112. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/create_span.py +0 -0
  113. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/create_trace_response.py +0 -0
  114. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/docker_env_vars.py +0 -0
  115. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/environment_output.py +0 -0
  116. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/environment_output_extended.py +0 -0
  117. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/environment_revision.py +0 -0
  118. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/error.py +0 -0
  119. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation.py +0 -0
  120. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation_scenario.py +0 -0
  121. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation_scenario_input.py +0 -0
  122. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation_scenario_output.py +0 -0
  123. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation_scenario_result.py +0 -0
  124. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation_scenario_score_update.py +0 -0
  125. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation_status_enum.py +0 -0
  126. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluation_type.py +0 -0
  127. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluator.py +0 -0
  128. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluator_config.py +0 -0
  129. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluator_mapping_output_interface.py +0 -0
  130. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/evaluator_output_interface.py +0 -0
  131. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/get_config_response.py +0 -0
  132. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/http_validation_error.py +0 -0
  133. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/human_evaluation.py +0 -0
  134. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/human_evaluation_scenario.py +0 -0
  135. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/human_evaluation_scenario_input.py +0 -0
  136. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/human_evaluation_scenario_output.py +0 -0
  137. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/human_evaluation_scenario_update.py +0 -0
  138. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/human_evaluation_update.py +0 -0
  139. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/image.py +0 -0
  140. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/invite_request.py +0 -0
  141. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/lifecycle_dto.py +0 -0
  142. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/list_api_keys_response.py +0 -0
  143. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/llm_run_rate_limit.py +0 -0
  144. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/llm_tokens.py +0 -0
  145. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/lm_providers_enum.py +0 -0
  146. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/new_human_evaluation.py +0 -0
  147. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/new_testset.py +0 -0
  148. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/organization.py +0 -0
  149. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/organization_output.py +0 -0
  150. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/outputs.py +0 -0
  151. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/permission.py +0 -0
  152. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/reference_dto.py +0 -0
  153. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/reference_request_model.py +0 -0
  154. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/result.py +0 -0
  155. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/score.py +0 -0
  156. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/simple_evaluation_output.py +0 -0
  157. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/span.py +0 -0
  158. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/span_detail.py +0 -0
  159. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/span_status_code.py +0 -0
  160. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/span_variant.py +0 -0
  161. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/template.py +0 -0
  162. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/template_image_info.py +0 -0
  163. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/test_set_output_response.py +0 -0
  164. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/test_set_simple_response.py +0 -0
  165. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/trace_detail.py +0 -0
  166. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/update_app_output.py +0 -0
  167. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/uri.py +0 -0
  168. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/validation_error.py +0 -0
  169. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/validation_error_loc_item.py +0 -0
  170. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/variant_action.py +0 -0
  171. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/variant_action_enum.py +0 -0
  172. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/with_pagination.py +0 -0
  173. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/workspace_member_response.py +0 -0
  174. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/workspace_permission.py +0 -0
  175. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/workspace_response.py +0 -0
  176. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/workspace_role.py +0 -0
  177. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/types/workspace_role_response.py +0 -0
  178. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/variants/__init__.py +0 -0
  179. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/variants/types/__init__.py +0 -0
  180. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/backend/variants/types/add_variant_from_base_and_config_response.py +0 -0
  181. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/client.py +0 -0
  182. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/client/exceptions.py +0 -0
  183. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/config.py +0 -0
  184. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/config.toml +0 -0
  185. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/docker/docker-assets/Dockerfile.cloud.template +0 -0
  186. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/docker/docker-assets/Dockerfile.template +0 -0
  187. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/docker/docker-assets/README.md +0 -0
  188. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/docker/docker-assets/entrypoint.sh +0 -0
  189. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/docker/docker-assets/lambda_function.py +0 -0
  190. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/docker/docker-assets/main.py +0 -0
  191. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/docker/docker_utils.py +0 -0
  192. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/assets.py +0 -0
  193. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/client.py +0 -0
  194. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/context/__init__.py +0 -0
  195. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/context/routing.py +0 -0
  196. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/context/tracing.py +0 -0
  197. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/decorators/__init__.py +0 -0
  198. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/decorators/tracing.py +0 -0
  199. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/litellm/__init__.py +0 -0
  200. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/managers/__init__.py +0 -0
  201. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/managers/config.py +0 -0
  202. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/managers/deployment.py +0 -0
  203. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/managers/shared.py +0 -0
  204. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/managers/variant.py +0 -0
  205. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/middleware/__init__.py +0 -0
  206. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/middleware/cache.py +0 -0
  207. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/router.py +0 -0
  208. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/__init__.py +0 -0
  209. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/attributes.py +0 -0
  210. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/conventions.py +0 -0
  211. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/exporters.py +0 -0
  212. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/tracing/spans.py +0 -0
  213. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/utils/__init__.py +0 -0
  214. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/utils/costs.py +0 -0
  215. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/utils/globals.py +0 -0
  216. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/utils/preinit.py +0 -0
  217. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/sdk/utils/singleton.py +0 -0
  218. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/compose_email/README.md +0 -0
  219. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/compose_email/app.py +0 -0
  220. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/compose_email/env.example +0 -0
  221. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/compose_email/requirements.txt +0 -0
  222. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/compose_email/template.toml +0 -0
  223. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/extract_data_to_json/README.md +0 -0
  224. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/extract_data_to_json/app.py +0 -0
  225. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/extract_data_to_json/env.example +0 -0
  226. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/extract_data_to_json/requirements.txt +0 -0
  227. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/extract_data_to_json/template.toml +0 -0
  228. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/simple_prompt/README.md +0 -0
  229. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/simple_prompt/app.py +0 -0
  230. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/simple_prompt/env.example +0 -0
  231. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/simple_prompt/requirements.txt +0 -0
  232. {agenta-0.27.6a3 → agenta-0.27.7}/agenta/templates/simple_prompt/template.toml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: agenta
3
- Version: 0.27.6a3
3
+ Version: 0.27.7
4
4
  Summary: The SDK for agenta is an open-source LLMOps platform.
5
5
  Home-page: https://agenta.ai
6
6
  Keywords: LLMOps,LLM,evaluation,prompt engineering
@@ -80,16 +80,11 @@ def cli():
80
80
  @click.command()
81
81
  @click.option("--app-name", "--app_name", default=None)
82
82
  @click.option("--backend-host", "backend_host", default=None)
83
- @click.option(
84
- "--organisation-name",
85
- "organisation_name",
86
- default=None,
87
- help="The name of the organisation",
88
- )
89
- def init(app_name: str, backend_host: str, organisation_name: str):
90
- init_option = "Blank App" if backend_host != "" and app_name != "" else ""
83
+ def init(app_name: str, backend_host: str):
91
84
  """Initialize a new Agenta app with the template files."""
92
85
 
86
+ init_option = "Blank App" if backend_host != "" and app_name != "" else ""
87
+
93
88
  api_key = os.getenv("AGENTA_API_KEY")
94
89
 
95
90
  if not app_name:
@@ -151,51 +146,9 @@ def init(app_name: str, backend_host: str, organisation_name: str):
151
146
  api_key=api_key if where_question == "On agenta cloud" else "",
152
147
  )
153
148
 
154
- # list of user organizations
155
- user_organizations = []
156
-
157
- # validate the api key if it is provided
158
- if where_question == "On agenta cloud":
159
- try:
160
- key_prefix = api_key.split(".")[0]
161
- client.validate_api_key(key_prefix=key_prefix)
162
- except Exception as ex:
163
- click.echo(
164
- click.style(
165
- f"Error: Unable to validate API key.\nError: {ex}", fg="red"
166
- )
167
- )
168
- sys.exit(1)
169
- # Make request to fetch user organizations after api key validation
170
- try:
171
- organizations = client.list_organizations()
172
- if len(organizations) >= 1:
173
- user_organizations = organizations
174
- except Exception as ex:
175
- click.echo(click.style(f"Error: {ex}", fg="red"))
176
- sys.exit(1)
177
-
178
- organization = None
179
- organization_choices = {}
180
- if where_question == "On agenta cloud":
181
- if not organisation_name:
182
- organization_choices = {
183
- f"{org.name}": org for org in user_organizations
184
- }
185
- which_organization = questionary.select(
186
- "Which organization do you want to create the app for?",
187
- choices=list(organization_choices.keys()),
188
- ).ask()
189
- organisation_name = which_organization
190
-
191
- organization = organization_choices.get(organisation_name)
192
-
193
149
  # Get app_id after creating new app in the backend server
194
150
  try:
195
- app_id = client.apps.create_app(
196
- app_name=app_name,
197
- organization_id=organization.id if organization else None,
198
- ).app_id
151
+ app_id = client.apps.create_app(app_name=app_name).app_id
199
152
  except Exception as ex:
200
153
  click.echo(click.style(f"Error: {ex}", fg="red"))
201
154
  sys.exit(1)
@@ -1,6 +1,13 @@
1
1
  # This file was auto-generated by Fern from our API Definition.
2
2
 
3
3
  from .types import (
4
+ AgentaNodeDto,
5
+ AgentaNodeDtoNodesValue,
6
+ AgentaNodesResponse,
7
+ AgentaRootDto,
8
+ AgentaRootsResponse,
9
+ AgentaTreeDto,
10
+ AgentaTreesResponse,
4
11
  AggregatedResult,
5
12
  AggregatedResultEvaluatorConfig,
6
13
  App,
@@ -8,6 +15,7 @@ from .types import (
8
15
  AppVariantRevision,
9
16
  BaseOutput,
10
17
  BodyImportTestset,
18
+ CollectStatusResponse,
11
19
  ConfigDb,
12
20
  ConfigDto,
13
21
  ConfigResponseModel,
@@ -32,6 +40,7 @@ from .types import (
32
40
  EvaluatorConfig,
33
41
  EvaluatorMappingOutputInterface,
34
42
  EvaluatorOutputInterface,
43
+ ExceptionDto,
35
44
  GetConfigResponse,
36
45
  HttpValidationError,
37
46
  HumanEvaluation,
@@ -43,30 +52,50 @@ from .types import (
43
52
  Image,
44
53
  InviteRequest,
45
54
  LifecycleDto,
55
+ LinkDto,
46
56
  ListApiKeysResponse,
47
57
  LlmRunRateLimit,
48
58
  LlmTokens,
49
59
  LmProvidersEnum,
50
60
  NewHumanEvaluation,
51
61
  NewTestset,
62
+ NodeDto,
63
+ NodeType,
64
+ OTelContextDto,
65
+ OTelEventDto,
66
+ OTelExtraDto,
67
+ OTelLinkDto,
68
+ OTelSpanDto,
69
+ OTelSpanKind,
70
+ OTelSpansResponse,
71
+ OTelStatusCode,
52
72
  Organization,
53
73
  OrganizationOutput,
54
74
  Outputs,
75
+ ParentDto,
55
76
  Permission,
56
77
  ReferenceDto,
57
78
  ReferenceRequestModel,
58
79
  Result,
80
+ RootDto,
59
81
  Score,
60
82
  SimpleEvaluationOutput,
61
83
  Span,
62
84
  SpanDetail,
85
+ SpanDto,
86
+ SpanDtoNodesValue,
63
87
  SpanStatusCode,
64
88
  SpanVariant,
89
+ StatusCode,
90
+ StatusDto,
65
91
  Template,
66
92
  TemplateImageInfo,
67
93
  TestSetOutputResponse,
68
94
  TestSetSimpleResponse,
95
+ TimeDto,
69
96
  TraceDetail,
97
+ TreeDto,
98
+ TreeType,
70
99
  UpdateAppOutput,
71
100
  Uri,
72
101
  ValidationError,
@@ -90,16 +119,25 @@ from . import (
90
119
  evaluations,
91
120
  evaluators,
92
121
  observability,
122
+ observability_v_1,
93
123
  testsets,
94
124
  variants,
95
125
  )
96
126
  from .client import AgentaApi, AsyncAgentaApi
97
127
  from .containers import ContainerTemplatesResponse
128
+ from .observability_v_1 import Format, QueryTracesResponse
98
129
  from .variants import AddVariantFromBaseAndConfigResponse
99
130
 
100
131
  __all__ = [
101
132
  "AddVariantFromBaseAndConfigResponse",
102
133
  "AgentaApi",
134
+ "AgentaNodeDto",
135
+ "AgentaNodeDtoNodesValue",
136
+ "AgentaNodesResponse",
137
+ "AgentaRootDto",
138
+ "AgentaRootsResponse",
139
+ "AgentaTreeDto",
140
+ "AgentaTreesResponse",
103
141
  "AggregatedResult",
104
142
  "AggregatedResultEvaluatorConfig",
105
143
  "App",
@@ -108,6 +146,7 @@ __all__ = [
108
146
  "AsyncAgentaApi",
109
147
  "BaseOutput",
110
148
  "BodyImportTestset",
149
+ "CollectStatusResponse",
111
150
  "ConfigDb",
112
151
  "ConfigDto",
113
152
  "ConfigResponseModel",
@@ -133,6 +172,8 @@ __all__ = [
133
172
  "EvaluatorConfig",
134
173
  "EvaluatorMappingOutputInterface",
135
174
  "EvaluatorOutputInterface",
175
+ "ExceptionDto",
176
+ "Format",
136
177
  "GetConfigResponse",
137
178
  "HttpValidationError",
138
179
  "HumanEvaluation",
@@ -144,30 +185,51 @@ __all__ = [
144
185
  "Image",
145
186
  "InviteRequest",
146
187
  "LifecycleDto",
188
+ "LinkDto",
147
189
  "ListApiKeysResponse",
148
190
  "LlmRunRateLimit",
149
191
  "LlmTokens",
150
192
  "LmProvidersEnum",
151
193
  "NewHumanEvaluation",
152
194
  "NewTestset",
195
+ "NodeDto",
196
+ "NodeType",
197
+ "OTelContextDto",
198
+ "OTelEventDto",
199
+ "OTelExtraDto",
200
+ "OTelLinkDto",
201
+ "OTelSpanDto",
202
+ "OTelSpanKind",
203
+ "OTelSpansResponse",
204
+ "OTelStatusCode",
153
205
  "Organization",
154
206
  "OrganizationOutput",
155
207
  "Outputs",
208
+ "ParentDto",
156
209
  "Permission",
210
+ "QueryTracesResponse",
157
211
  "ReferenceDto",
158
212
  "ReferenceRequestModel",
159
213
  "Result",
214
+ "RootDto",
160
215
  "Score",
161
216
  "SimpleEvaluationOutput",
162
217
  "Span",
163
218
  "SpanDetail",
219
+ "SpanDto",
220
+ "SpanDtoNodesValue",
164
221
  "SpanStatusCode",
165
222
  "SpanVariant",
223
+ "StatusCode",
224
+ "StatusDto",
166
225
  "Template",
167
226
  "TemplateImageInfo",
168
227
  "TestSetOutputResponse",
169
228
  "TestSetSimpleResponse",
229
+ "TimeDto",
170
230
  "TraceDetail",
231
+ "TreeDto",
232
+ "TreeType",
171
233
  "UnprocessableEntityError",
172
234
  "UpdateAppOutput",
173
235
  "Uri",
@@ -189,6 +251,7 @@ __all__ = [
189
251
  "evaluations",
190
252
  "evaluators",
191
253
  "observability",
254
+ "observability_v_1",
192
255
  "testsets",
193
256
  "variants",
194
257
  ]
@@ -176,19 +176,17 @@ class AppsClient:
176
176
  self,
177
177
  *,
178
178
  app_name: typing.Optional[str] = None,
179
- workspace_id: typing.Optional[str] = None,
180
179
  request_options: typing.Optional[RequestOptions] = None,
181
180
  ) -> typing.List[App]:
182
181
  """
183
- Retrieve a list of apps filtered by app_name and org_id.
182
+ Retrieve a list of apps filtered by app_name.
184
183
 
185
184
  Args:
186
185
  app_name (Optional[str]): The name of the app to filter by.
187
- org_id (Optional[str]): The ID of the organization to filter by.
188
186
  stoken_session (SessionContainer): The session container.
189
187
 
190
188
  Returns:
191
- List[App]: A list of apps filtered by app_name and org_id.
189
+ List[App]: A list of apps filtered by app_name.
192
190
 
193
191
  Raises:
194
192
  HTTPException: If there was an error retrieving the list of apps.
@@ -197,8 +195,6 @@ class AppsClient:
197
195
  ----------
198
196
  app_name : typing.Optional[str]
199
197
 
200
- workspace_id : typing.Optional[str]
201
-
202
198
  request_options : typing.Optional[RequestOptions]
203
199
  Request-specific configuration.
204
200
 
@@ -220,10 +216,7 @@ class AppsClient:
220
216
  _response = self._client_wrapper.httpx_client.request(
221
217
  "apps",
222
218
  method="GET",
223
- params={
224
- "app_name": app_name,
225
- "workspace_id": workspace_id,
226
- },
219
+ params={"app_name": app_name},
227
220
  request_options=request_options,
228
221
  )
229
222
  try:
@@ -255,15 +248,13 @@ class AppsClient:
255
248
  *,
256
249
  app_name: str,
257
250
  project_id: typing.Optional[str] = OMIT,
258
- workspace_id: typing.Optional[str] = OMIT,
259
- organization_id: typing.Optional[str] = OMIT,
260
251
  request_options: typing.Optional[RequestOptions] = None,
261
252
  ) -> CreateAppOutput:
262
253
  """
263
- Create a new app for a user or organization.
254
+ Create a new app for a user.
264
255
 
265
256
  Args:
266
- payload (CreateApp): The payload containing the app name and organization ID (optional).
257
+ payload (CreateApp): The payload containing the app name.
267
258
  stoken_session (SessionContainer): The session container containing the user's session token.
268
259
 
269
260
  Returns:
@@ -278,10 +269,6 @@ class AppsClient:
278
269
 
279
270
  project_id : typing.Optional[str]
280
271
 
281
- workspace_id : typing.Optional[str]
282
-
283
- organization_id : typing.Optional[str]
284
-
285
272
  request_options : typing.Optional[RequestOptions]
286
273
  Request-specific configuration.
287
274
 
@@ -308,8 +295,6 @@ class AppsClient:
308
295
  json={
309
296
  "app_name": app_name,
310
297
  "project_id": project_id,
311
- "workspace_id": workspace_id,
312
- "organization_id": organization_id,
313
298
  },
314
299
  request_options=request_options,
315
300
  omit=OMIT,
@@ -408,7 +393,7 @@ class AppsClient:
408
393
  request_options: typing.Optional[RequestOptions] = None,
409
394
  ) -> UpdateAppOutput:
410
395
  """
411
- Update an app for a user or organization.
396
+ Update an app for a user.
412
397
 
413
398
  Args:
414
399
  app_id (str): The ID of the app.
@@ -587,8 +572,6 @@ class AppsClient:
587
572
  template_id: str,
588
573
  env_vars: typing.Dict[str, str],
589
574
  project_id: typing.Optional[str] = OMIT,
590
- workspace_id: typing.Optional[str] = OMIT,
591
- organization_id: typing.Optional[str] = OMIT,
592
575
  request_options: typing.Optional[RequestOptions] = None,
593
576
  ) -> AppVariantResponse:
594
577
  """
@@ -614,10 +597,6 @@ class AppsClient:
614
597
 
615
598
  project_id : typing.Optional[str]
616
599
 
617
- workspace_id : typing.Optional[str]
618
-
619
- organization_id : typing.Optional[str]
620
-
621
600
  request_options : typing.Optional[RequestOptions]
622
601
  Request-specific configuration.
623
602
 
@@ -647,9 +626,7 @@ class AppsClient:
647
626
  "app_name": app_name,
648
627
  "template_id": template_id,
649
628
  "project_id": project_id,
650
- "workspace_id": workspace_id,
651
629
  "env_vars": env_vars,
652
- "organization_id": organization_id,
653
630
  },
654
631
  request_options=request_options,
655
632
  omit=OMIT,
@@ -980,19 +957,17 @@ class AsyncAppsClient:
980
957
  self,
981
958
  *,
982
959
  app_name: typing.Optional[str] = None,
983
- workspace_id: typing.Optional[str] = None,
984
960
  request_options: typing.Optional[RequestOptions] = None,
985
961
  ) -> typing.List[App]:
986
962
  """
987
- Retrieve a list of apps filtered by app_name and org_id.
963
+ Retrieve a list of apps filtered by app_name.
988
964
 
989
965
  Args:
990
966
  app_name (Optional[str]): The name of the app to filter by.
991
- org_id (Optional[str]): The ID of the organization to filter by.
992
967
  stoken_session (SessionContainer): The session container.
993
968
 
994
969
  Returns:
995
- List[App]: A list of apps filtered by app_name and org_id.
970
+ List[App]: A list of apps filtered by app_name.
996
971
 
997
972
  Raises:
998
973
  HTTPException: If there was an error retrieving the list of apps.
@@ -1001,8 +976,6 @@ class AsyncAppsClient:
1001
976
  ----------
1002
977
  app_name : typing.Optional[str]
1003
978
 
1004
- workspace_id : typing.Optional[str]
1005
-
1006
979
  request_options : typing.Optional[RequestOptions]
1007
980
  Request-specific configuration.
1008
981
 
@@ -1032,10 +1005,7 @@ class AsyncAppsClient:
1032
1005
  _response = await self._client_wrapper.httpx_client.request(
1033
1006
  "apps",
1034
1007
  method="GET",
1035
- params={
1036
- "app_name": app_name,
1037
- "workspace_id": workspace_id,
1038
- },
1008
+ params={"app_name": app_name},
1039
1009
  request_options=request_options,
1040
1010
  )
1041
1011
  try:
@@ -1067,15 +1037,13 @@ class AsyncAppsClient:
1067
1037
  *,
1068
1038
  app_name: str,
1069
1039
  project_id: typing.Optional[str] = OMIT,
1070
- workspace_id: typing.Optional[str] = OMIT,
1071
- organization_id: typing.Optional[str] = OMIT,
1072
1040
  request_options: typing.Optional[RequestOptions] = None,
1073
1041
  ) -> CreateAppOutput:
1074
1042
  """
1075
- Create a new app for a user or organization.
1043
+ Create a new app for a user.
1076
1044
 
1077
1045
  Args:
1078
- payload (CreateApp): The payload containing the app name and organization ID (optional).
1046
+ payload (CreateApp): The payload containing the app name.
1079
1047
  stoken_session (SessionContainer): The session container containing the user's session token.
1080
1048
 
1081
1049
  Returns:
@@ -1090,10 +1058,6 @@ class AsyncAppsClient:
1090
1058
 
1091
1059
  project_id : typing.Optional[str]
1092
1060
 
1093
- workspace_id : typing.Optional[str]
1094
-
1095
- organization_id : typing.Optional[str]
1096
-
1097
1061
  request_options : typing.Optional[RequestOptions]
1098
1062
  Request-specific configuration.
1099
1063
 
@@ -1128,8 +1092,6 @@ class AsyncAppsClient:
1128
1092
  json={
1129
1093
  "app_name": app_name,
1130
1094
  "project_id": project_id,
1131
- "workspace_id": workspace_id,
1132
- "organization_id": organization_id,
1133
1095
  },
1134
1096
  request_options=request_options,
1135
1097
  omit=OMIT,
@@ -1236,7 +1198,7 @@ class AsyncAppsClient:
1236
1198
  request_options: typing.Optional[RequestOptions] = None,
1237
1199
  ) -> UpdateAppOutput:
1238
1200
  """
1239
- Update an app for a user or organization.
1201
+ Update an app for a user.
1240
1202
 
1241
1203
  Args:
1242
1204
  app_id (str): The ID of the app.
@@ -1431,8 +1393,6 @@ class AsyncAppsClient:
1431
1393
  template_id: str,
1432
1394
  env_vars: typing.Dict[str, str],
1433
1395
  project_id: typing.Optional[str] = OMIT,
1434
- workspace_id: typing.Optional[str] = OMIT,
1435
- organization_id: typing.Optional[str] = OMIT,
1436
1396
  request_options: typing.Optional[RequestOptions] = None,
1437
1397
  ) -> AppVariantResponse:
1438
1398
  """
@@ -1458,10 +1418,6 @@ class AsyncAppsClient:
1458
1418
 
1459
1419
  project_id : typing.Optional[str]
1460
1420
 
1461
- workspace_id : typing.Optional[str]
1462
-
1463
- organization_id : typing.Optional[str]
1464
-
1465
1421
  request_options : typing.Optional[RequestOptions]
1466
1422
  Request-specific configuration.
1467
1423
 
@@ -1499,9 +1455,7 @@ class AsyncAppsClient:
1499
1455
  "app_name": app_name,
1500
1456
  "template_id": template_id,
1501
1457
  "project_id": project_id,
1502
- "workspace_id": workspace_id,
1503
1458
  "env_vars": env_vars,
1504
- "organization_id": organization_id,
1505
1459
  },
1506
1460
  request_options=request_options,
1507
1461
  omit=OMIT,
@@ -13,6 +13,7 @@ from .containers.client import ContainersClient
13
13
  from .environments.client import EnvironmentsClient
14
14
  from .bases.client import BasesClient
15
15
  from .configs.client import ConfigsClient
16
+ from .observability_v_1.client import ObservabilityV1Client
16
17
  from .core.request_options import RequestOptions
17
18
  from .types.list_api_keys_response import ListApiKeysResponse
18
19
  from .core.pydantic_utilities import parse_obj_as
@@ -40,6 +41,7 @@ from .containers.client import AsyncContainersClient
40
41
  from .environments.client import AsyncEnvironmentsClient
41
42
  from .bases.client import AsyncBasesClient
42
43
  from .configs.client import AsyncConfigsClient
44
+ from .observability_v_1.client import AsyncObservabilityV1Client
43
45
 
44
46
  # this is used as the default value for optional parameters
45
47
  OMIT = typing.cast(typing.Any, ...)
@@ -89,17 +91,13 @@ class AgentaApi:
89
91
  self._client_wrapper = SyncClientWrapper(
90
92
  base_url=base_url,
91
93
  api_key=api_key,
92
- httpx_client=(
93
- httpx_client
94
- if httpx_client is not None
95
- else (
96
- httpx.Client(
97
- timeout=_defaulted_timeout, follow_redirects=follow_redirects
98
- )
99
- if follow_redirects is not None
100
- else httpx.Client(timeout=_defaulted_timeout)
101
- )
102
- ),
94
+ httpx_client=httpx_client
95
+ if httpx_client is not None
96
+ else httpx.Client(
97
+ timeout=_defaulted_timeout, follow_redirects=follow_redirects
98
+ )
99
+ if follow_redirects is not None
100
+ else httpx.Client(timeout=_defaulted_timeout),
103
101
  timeout=_defaulted_timeout,
104
102
  )
105
103
  self.observability = ObservabilityClient(client_wrapper=self._client_wrapper)
@@ -112,6 +110,9 @@ class AgentaApi:
112
110
  self.environments = EnvironmentsClient(client_wrapper=self._client_wrapper)
113
111
  self.bases = BasesClient(client_wrapper=self._client_wrapper)
114
112
  self.configs = ConfigsClient(client_wrapper=self._client_wrapper)
113
+ self.observability_v_1 = ObservabilityV1Client(
114
+ client_wrapper=self._client_wrapper
115
+ )
115
116
 
116
117
  def list_api_keys(
117
118
  self, *, request_options: typing.Optional[RequestOptions] = None
@@ -1619,17 +1620,13 @@ class AsyncAgentaApi:
1619
1620
  self._client_wrapper = AsyncClientWrapper(
1620
1621
  base_url=base_url,
1621
1622
  api_key=api_key,
1622
- httpx_client=(
1623
- httpx_client
1624
- if httpx_client is not None
1625
- else (
1626
- httpx.AsyncClient(
1627
- timeout=_defaulted_timeout, follow_redirects=follow_redirects
1628
- )
1629
- if follow_redirects is not None
1630
- else httpx.AsyncClient(timeout=_defaulted_timeout)
1631
- )
1632
- ),
1623
+ httpx_client=httpx_client
1624
+ if httpx_client is not None
1625
+ else httpx.AsyncClient(
1626
+ timeout=_defaulted_timeout, follow_redirects=follow_redirects
1627
+ )
1628
+ if follow_redirects is not None
1629
+ else httpx.AsyncClient(timeout=_defaulted_timeout),
1633
1630
  timeout=_defaulted_timeout,
1634
1631
  )
1635
1632
  self.observability = AsyncObservabilityClient(
@@ -1644,6 +1641,9 @@ class AsyncAgentaApi:
1644
1641
  self.environments = AsyncEnvironmentsClient(client_wrapper=self._client_wrapper)
1645
1642
  self.bases = AsyncBasesClient(client_wrapper=self._client_wrapper)
1646
1643
  self.configs = AsyncConfigsClient(client_wrapper=self._client_wrapper)
1644
+ self.observability_v_1 = AsyncObservabilityV1Client(
1645
+ client_wrapper=self._client_wrapper
1646
+ )
1647
1647
 
1648
1648
  async def list_api_keys(
1649
1649
  self, *, request_options: typing.Optional[RequestOptions] = None
@@ -148,9 +148,9 @@ def get_request_body(
148
148
  json_body = maybe_filter_request_body(json, request_options, omit)
149
149
 
150
150
  # If you have an empty JSON body, you should just send None
151
- return (json_body if json_body != {} else None), (
152
- data_body if data_body != {} else None
153
- )
151
+ return (
152
+ json_body if json_body != {} else None
153
+ ), data_body if data_body != {} else None
154
154
 
155
155
 
156
156
  class HttpClient:
@@ -250,7 +250,9 @@ class HttpClient:
250
250
  data=data_body,
251
251
  content=content,
252
252
  files=(
253
- convert_file_dict_to_httpx_tuples(remove_none_from_dict(files))
253
+ convert_file_dict_to_httpx_tuples(
254
+ remove_omit_from_dict(remove_none_from_dict(files), omit)
255
+ )
254
256
  if (files is not None and files is not omit)
255
257
  else None
256
258
  ),
@@ -351,7 +353,9 @@ class HttpClient:
351
353
  data=data_body,
352
354
  content=content,
353
355
  files=(
354
- convert_file_dict_to_httpx_tuples(remove_none_from_dict(files))
356
+ convert_file_dict_to_httpx_tuples(
357
+ remove_omit_from_dict(remove_none_from_dict(files), omit)
358
+ )
355
359
  if (files is not None and files is not omit)
356
360
  else None
357
361
  ),
@@ -458,7 +462,9 @@ class AsyncHttpClient:
458
462
  data=data_body,
459
463
  content=content,
460
464
  files=(
461
- convert_file_dict_to_httpx_tuples(remove_none_from_dict(files))
465
+ convert_file_dict_to_httpx_tuples(
466
+ remove_omit_from_dict(remove_none_from_dict(files), omit)
467
+ )
462
468
  if files is not None
463
469
  else None
464
470
  ),
@@ -558,7 +564,9 @@ class AsyncHttpClient:
558
564
  data=data_body,
559
565
  content=content,
560
566
  files=(
561
- convert_file_dict_to_httpx_tuples(remove_none_from_dict(files))
567
+ convert_file_dict_to_httpx_tuples(
568
+ remove_omit_from_dict(remove_none_from_dict(files), omit)
569
+ )
562
570
  if files is not None
563
571
  else None
564
572
  ),