agenta 0.39.3__tar.gz → 0.40.0__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 (255) hide show
  1. {agenta-0.39.3 → agenta-0.40.0}/PKG-INFO +104 -67
  2. {agenta-0.39.3 → agenta-0.40.0}/README.md +103 -66
  3. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/decorators/tracing.py +3 -1
  4. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/attributes.py +51 -7
  5. {agenta-0.39.3 → agenta-0.40.0}/pyproject.toml +1 -1
  6. {agenta-0.39.3 → agenta-0.40.0}/agenta/__init__.py +0 -0
  7. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/Readme.md +0 -0
  8. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/__init__.py +0 -0
  9. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/access_control/__init__.py +0 -0
  10. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/access_control/client.py +0 -0
  11. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/admin/__init__.py +0 -0
  12. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/admin/client.py +0 -0
  13. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/api_keys/__init__.py +0 -0
  14. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/api_keys/client.py +0 -0
  15. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/apps/__init__.py +0 -0
  16. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/apps/client.py +0 -0
  17. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/bases/__init__.py +0 -0
  18. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/bases/client.py +0 -0
  19. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/configs/__init__.py +0 -0
  20. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/configs/client.py +0 -0
  21. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/containers/__init__.py +0 -0
  22. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/containers/client.py +0 -0
  23. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/containers/types/__init__.py +0 -0
  24. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/containers/types/container_templates_response.py +0 -0
  25. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/__init__.py +0 -0
  26. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/api_error.py +0 -0
  27. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/client_wrapper.py +0 -0
  28. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/datetime_utils.py +0 -0
  29. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/file.py +0 -0
  30. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/http_client.py +0 -0
  31. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/jsonable_encoder.py +0 -0
  32. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/pydantic_utilities.py +0 -0
  33. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/query_encoder.py +0 -0
  34. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/remove_none_from_dict.py +0 -0
  35. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/request_options.py +0 -0
  36. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/core/serialization.py +0 -0
  37. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/environments/__init__.py +0 -0
  38. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/environments/client.py +0 -0
  39. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/errors/__init__.py +0 -0
  40. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/errors/unprocessable_entity_error.py +0 -0
  41. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/evaluations/__init__.py +0 -0
  42. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/evaluations/client.py +0 -0
  43. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/evaluators/__init__.py +0 -0
  44. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/evaluators/client.py +0 -0
  45. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/human_evaluations/__init__.py +0 -0
  46. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/human_evaluations/client.py +0 -0
  47. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/observability/__init__.py +0 -0
  48. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/observability/client.py +0 -0
  49. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/observability/types/__init__.py +0 -0
  50. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/observability/types/format.py +0 -0
  51. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/observability/types/query_analytics_response.py +0 -0
  52. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/observability/types/query_traces_response.py +0 -0
  53. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/organization/__init__.py +0 -0
  54. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/organization/client.py +0 -0
  55. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/scopes/__init__.py +0 -0
  56. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/scopes/client.py +0 -0
  57. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/testsets/__init__.py +0 -0
  58. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/testsets/client.py +0 -0
  59. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/__init__.py +0 -0
  60. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/account_response.py +0 -0
  61. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/agenta_node_dto.py +0 -0
  62. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/agenta_node_dto_nodes_value.py +0 -0
  63. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/agenta_nodes_response.py +0 -0
  64. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/agenta_root_dto.py +0 -0
  65. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/agenta_roots_response.py +0 -0
  66. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/agenta_tree_dto.py +0 -0
  67. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/agenta_trees_response.py +0 -0
  68. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/aggregated_result.py +0 -0
  69. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/aggregated_result_evaluator_config.py +0 -0
  70. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/analytics_response.py +0 -0
  71. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/app.py +0 -0
  72. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/app_variant_response.py +0 -0
  73. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/app_variant_revision.py +0 -0
  74. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/base_output.py +0 -0
  75. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/body_import_testset.py +0 -0
  76. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/bucket_dto.py +0 -0
  77. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/collect_status_response.py +0 -0
  78. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/config_db.py +0 -0
  79. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/config_dto.py +0 -0
  80. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/config_response_model.py +0 -0
  81. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/correct_answer.py +0 -0
  82. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/create_app_output.py +0 -0
  83. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/custom_model_settings_dto.py +0 -0
  84. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/custom_provider_dto.py +0 -0
  85. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/custom_provider_kind.py +0 -0
  86. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/custom_provider_settings_dto.py +0 -0
  87. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/data.py +0 -0
  88. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/delete_evaluation.py +0 -0
  89. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/docker_env_vars.py +0 -0
  90. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/environment_output.py +0 -0
  91. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/environment_output_extended.py +0 -0
  92. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/environment_revision.py +0 -0
  93. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/error.py +0 -0
  94. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluation.py +0 -0
  95. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluation_scenario.py +0 -0
  96. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluation_scenario_input.py +0 -0
  97. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluation_scenario_output.py +0 -0
  98. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluation_scenario_result.py +0 -0
  99. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluation_status_enum.py +0 -0
  100. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluation_type.py +0 -0
  101. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluator.py +0 -0
  102. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluator_config.py +0 -0
  103. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluator_mapping_output_interface.py +0 -0
  104. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/evaluator_output_interface.py +0 -0
  105. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/exception_dto.py +0 -0
  106. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/get_config_response.py +0 -0
  107. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/header_dto.py +0 -0
  108. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/http_validation_error.py +0 -0
  109. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/human_evaluation.py +0 -0
  110. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/human_evaluation_scenario.py +0 -0
  111. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/human_evaluation_scenario_input.py +0 -0
  112. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/human_evaluation_scenario_output.py +0 -0
  113. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/image.py +0 -0
  114. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/invite_request.py +0 -0
  115. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/legacy_analytics_response.py +0 -0
  116. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/legacy_data_point.py +0 -0
  117. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/legacy_scope_request.py +0 -0
  118. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/legacy_scopes_response.py +0 -0
  119. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/legacy_user_request.py +0 -0
  120. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/legacy_user_response.py +0 -0
  121. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/lifecycle_dto.py +0 -0
  122. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/link_dto.py +0 -0
  123. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/list_api_keys_response.py +0 -0
  124. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/llm_run_rate_limit.py +0 -0
  125. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/metrics_dto.py +0 -0
  126. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/new_testset.py +0 -0
  127. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/node_dto.py +0 -0
  128. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/node_type.py +0 -0
  129. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_context_dto.py +0 -0
  130. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_event_dto.py +0 -0
  131. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_extra_dto.py +0 -0
  132. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_link_dto.py +0 -0
  133. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_span_dto.py +0 -0
  134. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_span_kind.py +0 -0
  135. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_spans_response.py +0 -0
  136. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/o_tel_status_code.py +0 -0
  137. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/organization.py +0 -0
  138. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/organization_details.py +0 -0
  139. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/organization_membership_request.py +0 -0
  140. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/organization_output.py +0 -0
  141. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/organization_request.py +0 -0
  142. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/parent_dto.py +0 -0
  143. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/permission.py +0 -0
  144. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/project_membership_request.py +0 -0
  145. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/project_request.py +0 -0
  146. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/project_scope.py +0 -0
  147. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/projects_response.py +0 -0
  148. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/provider_key_dto.py +0 -0
  149. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/provider_kind.py +0 -0
  150. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/reference.py +0 -0
  151. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/reference_dto.py +0 -0
  152. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/reference_request_model.py +0 -0
  153. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/result.py +0 -0
  154. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/role.py +0 -0
  155. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/root_dto.py +0 -0
  156. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/scopes_response_model.py +0 -0
  157. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/score.py +0 -0
  158. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/secret_dto.py +0 -0
  159. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/secret_kind.py +0 -0
  160. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/secret_response_dto.py +0 -0
  161. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/simple_evaluation_output.py +0 -0
  162. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/span_dto.py +0 -0
  163. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/span_dto_nodes_value.py +0 -0
  164. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/standard_provider_dto.py +0 -0
  165. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/standard_provider_kind.py +0 -0
  166. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/standard_provider_settings_dto.py +0 -0
  167. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/status_code.py +0 -0
  168. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/status_dto.py +0 -0
  169. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/template.py +0 -0
  170. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/template_image_info.py +0 -0
  171. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/test_set_output_response.py +0 -0
  172. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/test_set_simple_response.py +0 -0
  173. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/time_dto.py +0 -0
  174. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/tree_dto.py +0 -0
  175. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/tree_type.py +0 -0
  176. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/update_app_output.py +0 -0
  177. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/uri.py +0 -0
  178. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/user_request.py +0 -0
  179. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/validation_error.py +0 -0
  180. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/validation_error_loc_item.py +0 -0
  181. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/variant_action.py +0 -0
  182. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/variant_action_enum.py +0 -0
  183. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace.py +0 -0
  184. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace_member_response.py +0 -0
  185. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace_membership_request.py +0 -0
  186. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace_permission.py +0 -0
  187. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace_request.py +0 -0
  188. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace_response.py +0 -0
  189. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace_role.py +0 -0
  190. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/types/workspace_role_response.py +0 -0
  191. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/variants/__init__.py +0 -0
  192. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/variants/client.py +0 -0
  193. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/variants/types/__init__.py +0 -0
  194. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/variants/types/add_variant_from_base_and_config_response.py +0 -0
  195. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/vault/__init__.py +0 -0
  196. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/vault/client.py +0 -0
  197. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/workspace/__init__.py +0 -0
  198. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/backend/workspace/client.py +0 -0
  199. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/client.py +0 -0
  200. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/types/provider_key_dto.py~HEAD +0 -0
  201. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/types/provider_key_dto.py~feat_model-registry +0 -0
  202. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/types/provider_kind.py~HEAD +0 -0
  203. {agenta-0.39.3 → agenta-0.40.0}/agenta/client/types/provider_kind.py~feat_model-registry +0 -0
  204. {agenta-0.39.3 → agenta-0.40.0}/agenta/config.py +0 -0
  205. {agenta-0.39.3 → agenta-0.40.0}/agenta/config.toml +0 -0
  206. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/__init__.py +0 -0
  207. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/agenta_init.py +0 -0
  208. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/assets.py +0 -0
  209. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/context/__init__.py +0 -0
  210. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/context/exporting.py +0 -0
  211. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/context/routing.py +0 -0
  212. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/context/tracing.py +0 -0
  213. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/decorators/__init__.py +0 -0
  214. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/decorators/routing.py +0 -0
  215. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/litellm/__init__.py +0 -0
  216. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/litellm/litellm.py +0 -0
  217. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/litellm/mockllm.py +0 -0
  218. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/litellm/mocks/__init__.py +0 -0
  219. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/__init__.py +0 -0
  220. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/apps.py +0 -0
  221. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/config.py +0 -0
  222. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/deployment.py +0 -0
  223. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/secrets.py +0 -0
  224. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/shared.py +0 -0
  225. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/variant.py +0 -0
  226. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/managers/vault.py +0 -0
  227. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/__init__.py +0 -0
  228. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/auth.py +0 -0
  229. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/config.py +0 -0
  230. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/cors.py +0 -0
  231. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/inline.py +0 -0
  232. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/mock.py +0 -0
  233. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/otel.py +0 -0
  234. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/middleware/vault.py +0 -0
  235. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/router.py +0 -0
  236. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/__init__.py +0 -0
  237. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/conventions.py +0 -0
  238. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/exporters.py +0 -0
  239. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/inline.py +0 -0
  240. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/processors.py +0 -0
  241. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/propagation.py +0 -0
  242. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/spans.py +0 -0
  243. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/tracing/tracing.py +0 -0
  244. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/types.py +0 -0
  245. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/__init__.py +0 -0
  246. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/cache.py +0 -0
  247. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/constants.py +0 -0
  248. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/costs.py +0 -0
  249. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/exceptions.py +0 -0
  250. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/globals.py +0 -0
  251. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/helpers.py +0 -0
  252. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/logging.py +0 -0
  253. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/preinit.py +0 -0
  254. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/singleton.py +0 -0
  255. {agenta-0.39.3 → agenta-0.40.0}/agenta/sdk/utils/timing.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: agenta
3
- Version: 0.39.3
3
+ Version: 0.40.0
4
4
  Summary: The SDK for agenta is an open-source LLMOps platform.
5
5
  Keywords: LLMOps,LLM,evaluation,prompt engineering
6
6
  Author: Mahmoud Mabrouk
@@ -33,6 +33,7 @@ Project-URL: Homepage, https://agenta.ai
33
33
  Project-URL: Repository, https://github.com/agenta-ai/agenta
34
34
  Description-Content-Type: text/markdown
35
35
 
36
+
36
37
  <p align="center">
37
38
  <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
38
39
  <picture >
@@ -41,33 +42,45 @@ Description-Content-Type: text/markdown
41
42
  <img alt="Shows the logo of agenta" src="https://github.com/Agenta-AI/agenta/assets/4510758/68e055d4-d7b8-4943-992f-761558c64253" >
42
43
  </picture>
43
44
  </a>
44
- </p>
45
- <p align="center">
46
- <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">Documentation</a> |
47
- <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">Website</a> |
48
- <a href="https://join.slack.com/t/agenta-hq/shared_invite/zt-2yewk6o2b-DmhyA4h_lkKwecDtIsj1AQ">Slack</a>
49
- </p>
50
45
  <div align="center">
51
- <strong> <h1> The Open source LLMOps Platform </h1></strong>
52
- Prompt playground, prompt management, evaluation, and observability
46
+ <strong> <h1> The Open-source LLMOps Platform </h1></strong>
47
+ Build reliable LLM applications faster with integrated prompt management, evaluation, and observability.
53
48
  </div>
54
- </br>
49
+ <br />
50
+ <div align="center" >
51
+ <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
52
+ <picture >
53
+ <source media="(prefers-color-scheme: dark)" srcset="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/9a4fde42-c96c-4ec2-b8d1-c8c0e3851a00/large" >
54
+ <source media="(prefers-color-scheme: light)" srcset="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/98140352-14c0-4db1-bafb-a1e8d271d500/large" >
55
+ <img alt="Shows the logo of agenta" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/98140352-14c0-4db1-bafb-a1e8d271d500/large" >
56
+ </picture>
57
+ </a>
58
+ </div>
59
+ </div>
60
+
61
+ ---
62
+
63
+ <h3 align="center">
64
+ <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Documentation</b></a> &bull;
65
+ <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Website</b></a> &bull;
66
+ <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Agenta Cloud</b></a>
67
+ </h3>
68
+
69
+ ---
70
+
55
71
  <p align="center">
56
72
  <img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="MIT license." />
57
73
  <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
58
74
  <img src="https://img.shields.io/badge/Doc-online-green" alt="Doc">
59
75
  </a>
60
-
61
76
  <a href="https://github.com/Agenta-AI/agenta/blob/main/CONTRIBUTING.md">
62
77
  <img src="https://img.shields.io/badge/PRs-Welcome-brightgreen" alt="PRs welcome" />
63
78
  </a>
64
79
  <img src="https://img.shields.io/github/contributors/Agenta-AI/agenta" alt="Contributors">
65
- <img src="https://img.shields.io/github/last-commit/Agenta-AI/agenta" alt="Last Commit">
66
- <img src="https://img.shields.io/github/commit-activity/m/agenta-ai/agenta" alt="Commits per month">
67
-
68
80
  <a href="https://pypi.org/project/agenta/">
69
81
  <img src="https://img.shields.io/pypi/dm/agenta" alt="PyPI - Downloads">
70
82
  </a>
83
+ <img src="https://img.shields.io/github/last-commit/Agenta-AI/agenta" alt="Last Commit">
71
84
  </br>
72
85
  </p>
73
86
 
@@ -83,70 +96,74 @@ Description-Content-Type: text/markdown
83
96
  </a>
84
97
  </p>
85
98
 
86
- <br />
87
99
  <p align="center">
88
100
  <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
89
101
  <picture >
90
- <source width="275" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/b8912ecb-c7a0-47bd-8507-29b12382fef6" >
91
- <source width="275" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/f133dd08-04a3-4b20-b047-22f8f841cfbb" >
92
- <img alt="Try Agenta Live Demo" src="https://github.com/Agenta-AI/agenta/assets/4510758/68e055d4-d7b8-4943-992f-761558c64253" >
102
+ <source width="200" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/a2069e7b-c3e0-4a5e-9e41-8ddc4660d1f2" >
103
+ <source width="200" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/a2069e7b-c3e0-4a5e-9e41-8ddc4660d1f2" >
104
+ <img alt="Try Agenta Live Demo" src="https://github.com/user-attachments/assets/a2069e7b-c3e0-4a5e-9e41-8ddc4660d1f2" >
93
105
  </picture>
94
106
  </a>
95
107
  </p>
96
108
 
97
- <br/>
98
- <br />
99
- <div align="center" >
100
- <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
101
- <picture >
102
- <img width="800" alt="Screenshot Agenta" src="https://github.com/user-attachments/assets/32e95ddb-e001-4462-b92e-72bf4cc78597" >
103
- </picture>
104
- </a>
105
- </div>
106
- </div>
107
- <br />
108
- <br />
109
-
110
109
  ---
111
110
 
112
- <h3 align="center">
113
- <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Documentation</b></a> &bull;
114
- <a href="https://docs.agenta.ai/changelog/main?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Changelog</b></a> &bull;
115
- <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Website</b></a> &bull;
116
- <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Agenta Cloud</b></a>
111
+ ## What is Agenta?
117
112
 
118
- </h3>
113
+ Agenta is a platform for building production-grade LLM applications. It helps **engineering** and **product teams** create reliable LLM apps faster through integrated prompt management, evaluation, and observability.
119
114
 
120
- ---
115
+ ## Core Features
121
116
 
122
- ## What is Agenta?
117
+ ### 🧪 Prompt Engineering & Management
118
+ Collaborate with Subject Matter Experts (SMEs) on prompt engineering and make sure nothing breaks in production.
123
119
 
124
- Agenta is a platform for building production-grade LLM applications. It helps **engineering and product teams** create reliable LLM apps faster.
120
+ - **Interactive Playground**: Compare prompts side by side against your test cases
121
+ - **Multi-Model Support**: Experiment with 50+ LLM models or [bring-your-own models](https://docs.agenta.ai/prompt-management/adding-custom-providers?utm_source=github&utm_medium=referral&utm_campaign=readme)
122
+ - **Version Control**: Version prompts and configurations with branching and environments
123
+ - **Complex Configurations**: Enable SMEs to collaborate on [complex configuration schemas](https://docs.agenta.ai/custom-workflows/overview?utm_source=github&utm_medium=referral&utm_campaign=readme) beyond simple prompts
125
124
 
125
+ [Explore prompt management →](https://docs.agenta.ai/prompt-management/overview?utm_source=github&utm_medium=referral&utm_campaign=readme)
126
126
 
127
- Agenta provides end-to-end tools for the entire LLMOps workflow: building (**LLM playground**, **evaluation**), deploying (**prompt and configuration management**), and monitoring (**LLM observability and tracing**).
127
+ ### 📊 Evaluation & Testing
128
+ Evaluate your LLM applications systematically with both human and automated feedback.
129
+ - **Flexible Test Sets**: Create test cases from production data, playground experiments, or upload CSVs
130
+ - **Pre-built and Custom Evaluators**: Use LLM-as-judge, one of our 20+ pre-built evaluators, or you custom evaluators
131
+ - **UI and API Access**: Run evaluations via UI (for SMEs) or programmatically (for engineers)
132
+ - **Human Feedback Integration**: Collect and incorporate expert annotations
128
133
 
129
- ## Features
130
- - **Prompt Playground**: Experiment, iterate on prompts, and compare outputs from over 50 LLM models side by side ([docs](https://docs.agenta.ai/prompt-management/using-the-playground?utm_source=github&utm_medium=referral&utm_campaign=readme))
131
- - **Custom Workflows**: Build a playground for any custom LLM workflow, such as RAG or agents. Enable all the team to easily iterate on its parameters and evaluate it from the web UI.
132
- - **LLM evaluation**: Run evaluation suite from the webUI using predefined evaluators like LLM-as-a-judge, RAG evaluators, or custom code evaluators. ([docs](https://docs.agenta.ai/evaluation/overview?utm_source=github&utm_medium=referral&utm_campaign=readme))
133
- - **Human evaluation**: Collaborate with subject matter experts for human annotation evaluation, including A/B testing and annotating golden test sets.
134
- - **Prompt Management**: Version your prompts and manage them across different environments ([docs](https://docs.agenta.ai/prompt-management/overview?utm_source=github&utm_medium=referral&utm_campaign=readme), [quick start](https://docs.agenta.ai/prompt-management/quick-start?utm_source=github&utm_medium=referral&utm_campaign=readme))
135
- - **LLM Tracing**: Observe and debug your apps with integrations to most providers and frameworks ([docs](https://docs.agenta.ai/observability/overview?utm_source=github&utm_medium=referral&utm_campaign=readme), [quick start](https://docs.agenta.ai/observability/quickstart?utm_source=github&utm_medium=referral&utm_campaign=readme))
136
- - **LLM Monitoring**: Track cost and latency and compare different deployments.
134
+ [Explore evaluation frameworks →](https://docs.agenta.ai/evaluation/overview?utm_source=github&utm_medium=referral&utm_campaign=readme)
137
135
 
138
-
139
- ## Getting Started
140
- ### Agenta Cloud:
141
- The easiest way to get started is through Agenta Cloud. It is free to signup, and comes with a generous free-tier.
136
+ ### 📡 Observability & Monitoring
137
+ Get visibility into your LLM applications in production.
138
+ - **Cost & Performance Tracking**: Monitor spending, latency, and usage patterns
139
+ - **Tracing**: Debug complex workflows with detailed traces
140
+ - **Open Standards**: OpenTelemetry native tracing compatible with OpenLLMetry, and OpenInference
141
+ - **Integrations**: Comes with pre-built integrations for most models and frameworks
142
+
143
+ [Learn about observability →](https://docs.agenta.ai/observability/overview?utm_source=github&utm_medium=referral&utm_campaign=readme)
144
+
145
+ ## 📸 Screenshots
142
146
 
147
+ <img alt="Playground" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/e7d16967-d564-4148-3615-03bfe2a29d00/large" />
148
+ <img alt="Prompt Management" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/b4210a13-b41e-4dfd-d383-4286fb011e00/large" />
149
+ <img alt="Evaluation" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/4b1c62b9-ff6e-4bd1-4c8d-de59b8485e00/large" />
150
+ <img alt="Observability" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/5c764759-e525-499e-544a-1077c45e9600/large" />
151
+
152
+ ## 🚀 Getting Started
153
+
154
+ ### Agenta Cloud (Recommended):
155
+ The easiest way to get started is through Agenta Cloud. Free tier available with no credit card required.
156
+
157
+ <p align="center">
143
158
  <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
144
159
  <picture >
145
- <source width="160" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/759422d8-01bc-4503-bf3c-b5871c99359a" >
146
- <source width="160" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/ffa9af5f-0981-4e95-9272-cb35eedb6780" >
147
- <img alt="Get Started with Agenta Cloud" src="https://github.com/user-attachments/assets/ffa9af5f-0981-4e95-9272-cb35eedb6780" >
160
+ <source width="200" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/3aa96780-b7e5-4b6f-bfee-8feaa36ff3b2" >
161
+ <source width="200" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/3aa96780-b7e5-4b6f-bfee-8feaa36ff3b2" >
162
+ <img alt="Try Agenta Live Demo" src="https://github.com/user-attachments/assets/3aa96780-b7e5-4b6f-bfee-8feaa36ff3b2" >
148
163
  </picture>
149
164
  </a>
165
+ </p>
166
+
150
167
 
151
168
 
152
169
  ### Self-hosting Agenta
@@ -156,31 +173,47 @@ The easiest way to get started is through Agenta Cloud. It is free to signup, an
156
173
  git clone https://github.com/Agenta-AI/agenta && cd agenta
157
174
  ```
158
175
 
159
- 2. Edit `hosting/docker-compose/oss/.env.oss.gh` and add your LLM provider API keys.
160
-
161
- 3. Start Agenta services:
176
+ 2. Start Agenta services:
162
177
  ```bash
163
178
  docker compose -f hosting/docker-compose/oss/docker-compose.gh.yml --env-file hosting/docker-compose/oss/.env.oss.gh --profile with-web up -d
164
179
  ```
165
180
 
166
- 4. Access Agenta at `http://localhost`.
181
+ 3. Access Agenta at `http://localhost`.
167
182
 
168
183
  For deploying on a remote host, or using different ports refers to our [self-hosting](https://docs.agenta.ai/self-host/host-locally?utm_source=github&utm_medium=referral&utm_campaign=readme) and [remote deployment documentation](https://docs.agenta.ai/self-host/host-remotely?utm_source=github&utm_medium=referral&utm_campaign=readme).
169
184
 
170
- ## Disabling Anonymized Tracking
185
+ ## 💬 Community
171
186
 
172
- By default, Agenta automatically reports anonymized basic usage statistics. This helps us understand how Agenta is used and track its overall usage and growth. This data does not include any sensitive information. To disable anonymized telemetry set `TELEMETRY_ENABLED` to `false` in your `.env` file.
187
+ Find help, explore resources, or get involved:
173
188
 
189
+ ### 🧰 Support
174
190
 
175
- ## Contributing
191
+ - **📚 [Documentation](https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme)** – Full guides and API reference
192
+ - **📋 [Changelog](https://docs.agenta.ai/changelog/main?utm_source=github&utm_medium=referral&utm_campaign=readme)** – Track recent updates
193
+ - **💬 [Slack Community](https://join.slack.com/t/agenta-hq/shared_invite/zt-2yewk6o2b-DmhyA4h_lkKwecDtIsj1AQ)** – Ask questions and get support
176
194
 
177
- We warmly welcome contributions to Agenta. Feel free to submit issues, fork the repository, and send pull requests.
195
+ ### 🤝 Contribute
178
196
 
179
- We are usually hanging in our Slack. Feel free to [join our Slack and ask us anything](https://join.slack.com/t/agenta-hq/shared_invite/zt-2yewk6o2b-DmhyA4h_lkKwecDtIsj1AQ)
197
+ We welcome contributions of all kinds from filing issues and sharing ideas to improving the codebase.
180
198
 
181
- Check out our [Contributing Guide](https://docs.agenta.ai/misc/contributing/getting-started?utm_source=github&utm_medium=referral&utm_campaign=readme) for more information.
199
+ - **🐛 [Report bugs](https://github.com/Agenta-AI/agenta/issues)** Help us by reporting problems you encounter
200
+ - **💡 [Share ideas and feedback](https://github.com/Agenta-AI/agenta/discussions)** – Suggest features or vote on ideas
201
+ - **🔧 [Contribute to the codebase](https://docs.agenta.ai/misc/contributing/getting-started?utm_source=github&utm_medium=referral&utm_campaign=readme)** – Read the guide and open a pull request
182
202
 
183
- ### Contributors
203
+ ## Star Agenta
204
+
205
+ **Consider giving us a star!** It helps us grow our community and gets Agenta in front of more developers.
206
+ </br>
207
+ </br>
208
+ <p align="center">
209
+ <a href="https://github.com/agenta-ai/agenta">
210
+
211
+ <img width="300" alt="Star us" src="https://github.com/user-attachments/assets/2c8e580a-c930-4312-bf1b-08f631b41c62" />
212
+ <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
213
+
214
+ </p>
215
+
216
+ ## Contributors ✨
184
217
 
185
218
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
186
219
  [![All Contributors](https://img.shields.io/badge/all_contributors-49-orange.svg?style=flat-square)](#contributors-)
@@ -266,3 +299,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
266
299
 
267
300
  This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind are welcome!
268
301
 
302
+ ## Disabling Anonymized Tracking
303
+
304
+ By default, Agenta automatically reports anonymized basic usage statistics. This helps us understand how Agenta is used and track its overall usage and growth. This data does not include any sensitive information. To disable anonymized telemetry set `TELEMETRY_ENABLED` to `false` in your `.env` file.
305
+
@@ -1,3 +1,4 @@
1
+
1
2
  <p align="center">
2
3
  <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
3
4
  <picture >
@@ -6,33 +7,45 @@
6
7
  <img alt="Shows the logo of agenta" src="https://github.com/Agenta-AI/agenta/assets/4510758/68e055d4-d7b8-4943-992f-761558c64253" >
7
8
  </picture>
8
9
  </a>
9
- </p>
10
- <p align="center">
11
- <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">Documentation</a> |
12
- <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">Website</a> |
13
- <a href="https://join.slack.com/t/agenta-hq/shared_invite/zt-2yewk6o2b-DmhyA4h_lkKwecDtIsj1AQ">Slack</a>
14
- </p>
15
10
  <div align="center">
16
- <strong> <h1> The Open source LLMOps Platform </h1></strong>
17
- Prompt playground, prompt management, evaluation, and observability
11
+ <strong> <h1> The Open-source LLMOps Platform </h1></strong>
12
+ Build reliable LLM applications faster with integrated prompt management, evaluation, and observability.
18
13
  </div>
19
- </br>
14
+ <br />
15
+ <div align="center" >
16
+ <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
17
+ <picture >
18
+ <source media="(prefers-color-scheme: dark)" srcset="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/9a4fde42-c96c-4ec2-b8d1-c8c0e3851a00/large" >
19
+ <source media="(prefers-color-scheme: light)" srcset="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/98140352-14c0-4db1-bafb-a1e8d271d500/large" >
20
+ <img alt="Shows the logo of agenta" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/98140352-14c0-4db1-bafb-a1e8d271d500/large" >
21
+ </picture>
22
+ </a>
23
+ </div>
24
+ </div>
25
+
26
+ ---
27
+
28
+ <h3 align="center">
29
+ <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Documentation</b></a> &bull;
30
+ <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Website</b></a> &bull;
31
+ <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Agenta Cloud</b></a>
32
+ </h3>
33
+
34
+ ---
35
+
20
36
  <p align="center">
21
37
  <img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="MIT license." />
22
38
  <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
23
39
  <img src="https://img.shields.io/badge/Doc-online-green" alt="Doc">
24
40
  </a>
25
-
26
41
  <a href="https://github.com/Agenta-AI/agenta/blob/main/CONTRIBUTING.md">
27
42
  <img src="https://img.shields.io/badge/PRs-Welcome-brightgreen" alt="PRs welcome" />
28
43
  </a>
29
44
  <img src="https://img.shields.io/github/contributors/Agenta-AI/agenta" alt="Contributors">
30
- <img src="https://img.shields.io/github/last-commit/Agenta-AI/agenta" alt="Last Commit">
31
- <img src="https://img.shields.io/github/commit-activity/m/agenta-ai/agenta" alt="Commits per month">
32
-
33
45
  <a href="https://pypi.org/project/agenta/">
34
46
  <img src="https://img.shields.io/pypi/dm/agenta" alt="PyPI - Downloads">
35
47
  </a>
48
+ <img src="https://img.shields.io/github/last-commit/Agenta-AI/agenta" alt="Last Commit">
36
49
  </br>
37
50
  </p>
38
51
 
@@ -48,70 +61,74 @@
48
61
  </a>
49
62
  </p>
50
63
 
51
- <br />
52
64
  <p align="center">
53
65
  <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
54
66
  <picture >
55
- <source width="275" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/b8912ecb-c7a0-47bd-8507-29b12382fef6" >
56
- <source width="275" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/f133dd08-04a3-4b20-b047-22f8f841cfbb" >
57
- <img alt="Try Agenta Live Demo" src="https://github.com/Agenta-AI/agenta/assets/4510758/68e055d4-d7b8-4943-992f-761558c64253" >
67
+ <source width="200" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/a2069e7b-c3e0-4a5e-9e41-8ddc4660d1f2" >
68
+ <source width="200" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/a2069e7b-c3e0-4a5e-9e41-8ddc4660d1f2" >
69
+ <img alt="Try Agenta Live Demo" src="https://github.com/user-attachments/assets/a2069e7b-c3e0-4a5e-9e41-8ddc4660d1f2" >
58
70
  </picture>
59
71
  </a>
60
72
  </p>
61
73
 
62
- <br/>
63
- <br />
64
- <div align="center" >
65
- <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
66
- <picture >
67
- <img width="800" alt="Screenshot Agenta" src="https://github.com/user-attachments/assets/32e95ddb-e001-4462-b92e-72bf4cc78597" >
68
- </picture>
69
- </a>
70
- </div>
71
- </div>
72
- <br />
73
- <br />
74
-
75
74
  ---
76
75
 
77
- <h3 align="center">
78
- <a href="https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Documentation</b></a> &bull;
79
- <a href="https://docs.agenta.ai/changelog/main?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Changelog</b></a> &bull;
80
- <a href="https://agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Website</b></a> &bull;
81
- <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme"><b>Agenta Cloud</b></a>
76
+ ## What is Agenta?
82
77
 
83
- </h3>
78
+ Agenta is a platform for building production-grade LLM applications. It helps **engineering** and **product teams** create reliable LLM apps faster through integrated prompt management, evaluation, and observability.
84
79
 
85
- ---
80
+ ## Core Features
86
81
 
87
- ## What is Agenta?
82
+ ### 🧪 Prompt Engineering & Management
83
+ Collaborate with Subject Matter Experts (SMEs) on prompt engineering and make sure nothing breaks in production.
88
84
 
89
- Agenta is a platform for building production-grade LLM applications. It helps **engineering and product teams** create reliable LLM apps faster.
85
+ - **Interactive Playground**: Compare prompts side by side against your test cases
86
+ - **Multi-Model Support**: Experiment with 50+ LLM models or [bring-your-own models](https://docs.agenta.ai/prompt-management/adding-custom-providers?utm_source=github&utm_medium=referral&utm_campaign=readme)
87
+ - **Version Control**: Version prompts and configurations with branching and environments
88
+ - **Complex Configurations**: Enable SMEs to collaborate on [complex configuration schemas](https://docs.agenta.ai/custom-workflows/overview?utm_source=github&utm_medium=referral&utm_campaign=readme) beyond simple prompts
90
89
 
90
+ [Explore prompt management →](https://docs.agenta.ai/prompt-management/overview?utm_source=github&utm_medium=referral&utm_campaign=readme)
91
91
 
92
- Agenta provides end-to-end tools for the entire LLMOps workflow: building (**LLM playground**, **evaluation**), deploying (**prompt and configuration management**), and monitoring (**LLM observability and tracing**).
92
+ ### 📊 Evaluation & Testing
93
+ Evaluate your LLM applications systematically with both human and automated feedback.
94
+ - **Flexible Test Sets**: Create test cases from production data, playground experiments, or upload CSVs
95
+ - **Pre-built and Custom Evaluators**: Use LLM-as-judge, one of our 20+ pre-built evaluators, or you custom evaluators
96
+ - **UI and API Access**: Run evaluations via UI (for SMEs) or programmatically (for engineers)
97
+ - **Human Feedback Integration**: Collect and incorporate expert annotations
93
98
 
94
- ## Features
95
- - **Prompt Playground**: Experiment, iterate on prompts, and compare outputs from over 50 LLM models side by side ([docs](https://docs.agenta.ai/prompt-management/using-the-playground?utm_source=github&utm_medium=referral&utm_campaign=readme))
96
- - **Custom Workflows**: Build a playground for any custom LLM workflow, such as RAG or agents. Enable all the team to easily iterate on its parameters and evaluate it from the web UI.
97
- - **LLM evaluation**: Run evaluation suite from the webUI using predefined evaluators like LLM-as-a-judge, RAG evaluators, or custom code evaluators. ([docs](https://docs.agenta.ai/evaluation/overview?utm_source=github&utm_medium=referral&utm_campaign=readme))
98
- - **Human evaluation**: Collaborate with subject matter experts for human annotation evaluation, including A/B testing and annotating golden test sets.
99
- - **Prompt Management**: Version your prompts and manage them across different environments ([docs](https://docs.agenta.ai/prompt-management/overview?utm_source=github&utm_medium=referral&utm_campaign=readme), [quick start](https://docs.agenta.ai/prompt-management/quick-start?utm_source=github&utm_medium=referral&utm_campaign=readme))
100
- - **LLM Tracing**: Observe and debug your apps with integrations to most providers and frameworks ([docs](https://docs.agenta.ai/observability/overview?utm_source=github&utm_medium=referral&utm_campaign=readme), [quick start](https://docs.agenta.ai/observability/quickstart?utm_source=github&utm_medium=referral&utm_campaign=readme))
101
- - **LLM Monitoring**: Track cost and latency and compare different deployments.
99
+ [Explore evaluation frameworks →](https://docs.agenta.ai/evaluation/overview?utm_source=github&utm_medium=referral&utm_campaign=readme)
102
100
 
103
-
104
- ## Getting Started
105
- ### Agenta Cloud:
106
- The easiest way to get started is through Agenta Cloud. It is free to signup, and comes with a generous free-tier.
101
+ ### 📡 Observability & Monitoring
102
+ Get visibility into your LLM applications in production.
103
+ - **Cost & Performance Tracking**: Monitor spending, latency, and usage patterns
104
+ - **Tracing**: Debug complex workflows with detailed traces
105
+ - **Open Standards**: OpenTelemetry native tracing compatible with OpenLLMetry, and OpenInference
106
+ - **Integrations**: Comes with pre-built integrations for most models and frameworks
107
+
108
+ [Learn about observability →](https://docs.agenta.ai/observability/overview?utm_source=github&utm_medium=referral&utm_campaign=readme)
109
+
110
+ ## 📸 Screenshots
107
111
 
112
+ <img alt="Playground" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/e7d16967-d564-4148-3615-03bfe2a29d00/large" />
113
+ <img alt="Prompt Management" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/b4210a13-b41e-4dfd-d383-4286fb011e00/large" />
114
+ <img alt="Evaluation" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/4b1c62b9-ff6e-4bd1-4c8d-de59b8485e00/large" />
115
+ <img alt="Observability" src="https://imagedelivery.net/UNvjPBCIZFONpkVPQTxVuA/5c764759-e525-499e-544a-1077c45e9600/large" />
116
+
117
+ ## 🚀 Getting Started
118
+
119
+ ### Agenta Cloud (Recommended):
120
+ The easiest way to get started is through Agenta Cloud. Free tier available with no credit card required.
121
+
122
+ <p align="center">
108
123
  <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
109
124
  <picture >
110
- <source width="160" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/759422d8-01bc-4503-bf3c-b5871c99359a" >
111
- <source width="160" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/ffa9af5f-0981-4e95-9272-cb35eedb6780" >
112
- <img alt="Get Started with Agenta Cloud" src="https://github.com/user-attachments/assets/ffa9af5f-0981-4e95-9272-cb35eedb6780" >
125
+ <source width="200" media="(prefers-color-scheme: dark)" srcset="https://github.com/user-attachments/assets/3aa96780-b7e5-4b6f-bfee-8feaa36ff3b2" >
126
+ <source width="200" media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/3aa96780-b7e5-4b6f-bfee-8feaa36ff3b2" >
127
+ <img alt="Try Agenta Live Demo" src="https://github.com/user-attachments/assets/3aa96780-b7e5-4b6f-bfee-8feaa36ff3b2" >
113
128
  </picture>
114
129
  </a>
130
+ </p>
131
+
115
132
 
116
133
 
117
134
  ### Self-hosting Agenta
@@ -121,31 +138,47 @@ The easiest way to get started is through Agenta Cloud. It is free to signup, an
121
138
  git clone https://github.com/Agenta-AI/agenta && cd agenta
122
139
  ```
123
140
 
124
- 2. Edit `hosting/docker-compose/oss/.env.oss.gh` and add your LLM provider API keys.
125
-
126
- 3. Start Agenta services:
141
+ 2. Start Agenta services:
127
142
  ```bash
128
143
  docker compose -f hosting/docker-compose/oss/docker-compose.gh.yml --env-file hosting/docker-compose/oss/.env.oss.gh --profile with-web up -d
129
144
  ```
130
145
 
131
- 4. Access Agenta at `http://localhost`.
146
+ 3. Access Agenta at `http://localhost`.
132
147
 
133
148
  For deploying on a remote host, or using different ports refers to our [self-hosting](https://docs.agenta.ai/self-host/host-locally?utm_source=github&utm_medium=referral&utm_campaign=readme) and [remote deployment documentation](https://docs.agenta.ai/self-host/host-remotely?utm_source=github&utm_medium=referral&utm_campaign=readme).
134
149
 
135
- ## Disabling Anonymized Tracking
150
+ ## 💬 Community
136
151
 
137
- By default, Agenta automatically reports anonymized basic usage statistics. This helps us understand how Agenta is used and track its overall usage and growth. This data does not include any sensitive information. To disable anonymized telemetry set `TELEMETRY_ENABLED` to `false` in your `.env` file.
152
+ Find help, explore resources, or get involved:
138
153
 
154
+ ### 🧰 Support
139
155
 
140
- ## Contributing
156
+ - **📚 [Documentation](https://docs.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme)** – Full guides and API reference
157
+ - **📋 [Changelog](https://docs.agenta.ai/changelog/main?utm_source=github&utm_medium=referral&utm_campaign=readme)** – Track recent updates
158
+ - **💬 [Slack Community](https://join.slack.com/t/agenta-hq/shared_invite/zt-2yewk6o2b-DmhyA4h_lkKwecDtIsj1AQ)** – Ask questions and get support
141
159
 
142
- We warmly welcome contributions to Agenta. Feel free to submit issues, fork the repository, and send pull requests.
160
+ ### 🤝 Contribute
143
161
 
144
- We are usually hanging in our Slack. Feel free to [join our Slack and ask us anything](https://join.slack.com/t/agenta-hq/shared_invite/zt-2yewk6o2b-DmhyA4h_lkKwecDtIsj1AQ)
162
+ We welcome contributions of all kinds from filing issues and sharing ideas to improving the codebase.
145
163
 
146
- Check out our [Contributing Guide](https://docs.agenta.ai/misc/contributing/getting-started?utm_source=github&utm_medium=referral&utm_campaign=readme) for more information.
164
+ - **🐛 [Report bugs](https://github.com/Agenta-AI/agenta/issues)** Help us by reporting problems you encounter
165
+ - **💡 [Share ideas and feedback](https://github.com/Agenta-AI/agenta/discussions)** – Suggest features or vote on ideas
166
+ - **🔧 [Contribute to the codebase](https://docs.agenta.ai/misc/contributing/getting-started?utm_source=github&utm_medium=referral&utm_campaign=readme)** – Read the guide and open a pull request
147
167
 
148
- ### Contributors
168
+ ## Star Agenta
169
+
170
+ **Consider giving us a star!** It helps us grow our community and gets Agenta in front of more developers.
171
+ </br>
172
+ </br>
173
+ <p align="center">
174
+ <a href="https://github.com/agenta-ai/agenta">
175
+
176
+ <img width="300" alt="Star us" src="https://github.com/user-attachments/assets/2c8e580a-c930-4312-bf1b-08f631b41c62" />
177
+ <a href="https://cloud.agenta.ai?utm_source=github&utm_medium=referral&utm_campaign=readme">
178
+
179
+ </p>
180
+
181
+ ## Contributors ✨
149
182
 
150
183
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
151
184
  [![All Contributors](https://img.shields.io/badge/all_contributors-49-orange.svg?style=flat-square)](#contributors-)
@@ -230,3 +263,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
230
263
  <!-- ALL-CONTRIBUTORS-LIST:END -->
231
264
 
232
265
  This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind are welcome!
266
+
267
+ ## Disabling Anonymized Tracking
268
+
269
+ By default, Agenta automatically reports anonymized basic usage statistics. This helps us understand how Agenta is used and track its overall usage and growth. This data does not include any sensitive information. To disable anonymized telemetry set `TELEMETRY_ENABLED` to `false` in your `.env` file.
@@ -297,7 +297,9 @@ class instrument: # pylint: disable=invalid-name
297
297
  not in (
298
298
  ignore
299
299
  if isinstance(ignore, list)
300
- else io.keys() if ignore is True else []
300
+ else io.keys()
301
+ if ignore is True
302
+ else []
301
303
  )
302
304
  }
303
305
 
@@ -103,19 +103,63 @@ def _encode_key(
103
103
  return f"ag.{namespace}.{key}"
104
104
 
105
105
 
106
- def _encode_value(
107
- value: Any,
108
- ) -> Optional[Attribute]:
106
+ def _make_serializable(value: Any) -> Any:
107
+ """
108
+ Transform complex nested structures into JSON-serializable form.
109
+ Handles Pydantic models, nested dictionaries and lists recursively.
110
+ """
111
+ if value is None or isinstance(value, (str, int, float, bool, bytes)):
112
+ return value
113
+
114
+ # Handle Pydantic objects (prioritize v2 over v1 API)
115
+ if hasattr(value, "model_dump"): # Pydantic v2
116
+ return value.model_dump()
117
+ elif hasattr(value, "dict"): # Pydantic v1
118
+ return value.dict()
119
+
120
+ if isinstance(value, dict):
121
+ try:
122
+ # Test serialization without modifying - optimizes for already-serializable dicts
123
+ dumps(
124
+ value
125
+ ) # If serialization fails, we'll catch the exception and process deeply
126
+ return value # Avoid unnecessary recursion for serializable dicts
127
+ except TypeError:
128
+ return {k: _make_serializable(v) for k, v in value.items()}
129
+ elif isinstance(value, list):
130
+ try:
131
+ # Test serialization without modifying - optimizes for already-serializable lists
132
+ dumps(
133
+ value
134
+ ) # If serialization fails, we'll catch the exception and process deeply
135
+ return value # Avoid unnecessary recursion for serializable lists
136
+ except TypeError:
137
+ return [_make_serializable(item) for item in value]
138
+
139
+ return repr(value)
140
+
141
+
142
+ def _encode_value(value: Any) -> Optional[Attribute]:
143
+ """
144
+ Encode values for tracing, ensuring proper JSON serialization.
145
+ Adds the @ag.type=json: prefix only to appropriate values.
146
+ """
109
147
  if value is None:
110
148
  return None
111
149
 
112
150
  if isinstance(value, (str, int, float, bool, bytes)):
113
151
  return value
114
152
 
115
- if isinstance(value, dict) or isinstance(value, list):
116
- encoded = dumps(value)
117
- value = "@ag.type=json:" + encoded
118
- return value
153
+ try:
154
+ if (
155
+ isinstance(value, (dict, list))
156
+ or hasattr(value, "model_dump")
157
+ or hasattr(value, "dict")
158
+ ):
159
+ serializable_value = _make_serializable(value)
160
+ return "@ag.type=json:" + dumps(serializable_value)
161
+ except TypeError:
162
+ pass
119
163
 
120
164
  return repr(value)
121
165
 
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "agenta"
3
- version = "0.39.3"
3
+ version = "0.40.0"
4
4
  description = "The SDK for agenta is an open-source LLMOps platform."
5
5
  readme = "README.md"
6
6
  authors = ["Mahmoud Mabrouk <mahmoud@agenta.ai>"]
File without changes
File without changes