agenta 0.44.4__tar.gz → 0.45.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.
- {agenta-0.44.4 → agenta-0.45.0}/PKG-INFO +1 -1
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/decorators/routing.py +41 -11
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/decorators/tracing.py +3 -5
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/apps.py +0 -5
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/inline.py +10 -2
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/processors.py +25 -1
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/tracing.py +62 -1
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/types.py +2 -0
- {agenta-0.44.4 → agenta-0.45.0}/pyproject.toml +1 -1
- {agenta-0.44.4 → agenta-0.45.0}/README.md +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/Readme.md +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/access_control/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/access_control/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/admin/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/admin/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/api_keys/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/api_keys/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/apps/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/apps/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/bases/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/bases/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/configs/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/configs/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/containers/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/containers/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/containers/types/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/containers/types/container_templates_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/api_error.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/client_wrapper.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/datetime_utils.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/file.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/http_client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/jsonable_encoder.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/pydantic_utilities.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/query_encoder.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/remove_none_from_dict.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/request_options.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/core/serialization.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/environments/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/environments/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/errors/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/errors/unprocessable_entity_error.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/evaluations/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/evaluations/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/evaluators/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/evaluators/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/human_evaluations/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/human_evaluations/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/observability/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/observability/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/observability/types/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/observability/types/format.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/observability/types/query_analytics_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/observability/types/query_traces_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/organization/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/organization/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/scopes/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/scopes/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/testsets/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/testsets/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/account_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/agenta_node_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/agenta_node_dto_nodes_value.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/agenta_nodes_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/agenta_root_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/agenta_roots_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/agenta_tree_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/agenta_trees_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/aggregated_result.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/aggregated_result_evaluator_config.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/analytics_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/app.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/app_variant_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/app_variant_revision.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/base_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/body_import_testset.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/bucket_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/collect_status_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/config_db.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/config_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/config_response_model.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/correct_answer.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/create_app_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/custom_model_settings_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/custom_provider_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/custom_provider_kind.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/custom_provider_settings_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/data.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/delete_evaluation.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/docker_env_vars.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/environment_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/environment_output_extended.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/environment_revision.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/error.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluation.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluation_scenario.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluation_scenario_input.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluation_scenario_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluation_scenario_result.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluation_status_enum.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluation_type.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluator.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluator_config.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluator_mapping_output_interface.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluator_output_interface.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/exception_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/get_config_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/header_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/http_validation_error.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/human_evaluation.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/human_evaluation_scenario.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/human_evaluation_scenario_input.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/human_evaluation_scenario_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/image.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/invite_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/legacy_analytics_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/legacy_data_point.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/legacy_scope_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/legacy_scopes_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/legacy_user_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/legacy_user_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/lifecycle_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/link_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/list_api_keys_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/llm_run_rate_limit.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/metrics_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/new_testset.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/node_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/node_type.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_context_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_event_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_extra_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_link_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_span_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_span_kind.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_spans_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/o_tel_status_code.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/organization.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/organization_details.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/organization_membership_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/organization_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/organization_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/parent_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/permission.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/project_membership_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/project_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/project_scope.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/projects_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/provider_key_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/provider_kind.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/reference.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/reference_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/reference_request_model.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/result.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/role.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/root_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/scopes_response_model.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/score.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/secret_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/secret_kind.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/secret_response_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/simple_evaluation_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/span_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/span_dto_nodes_value.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/standard_provider_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/standard_provider_kind.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/standard_provider_settings_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/status_code.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/status_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/template.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/template_image_info.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/test_set_output_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/test_set_simple_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/time_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/tree_dto.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/tree_type.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/update_app_output.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/uri.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/user_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/validation_error.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/validation_error_loc_item.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/variant_action.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/variant_action_enum.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace_member_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace_membership_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace_permission.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace_request.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace_role.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/workspace_role_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/variants/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/variants/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/variants/types/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/variants/types/add_variant_from_base_and_config_response.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/vault/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/vault/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/workspace/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/workspace/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/client.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/types/provider_key_dto.py~HEAD +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/types/provider_key_dto.py~feat_model-registry +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/types/provider_kind.py~HEAD +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/client/types/provider_kind.py~feat_model-registry +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/config.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/config.toml +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/agenta_init.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/assets.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/context/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/context/exporting.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/context/routing.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/context/tracing.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/decorators/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/litellm/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/litellm/litellm.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/litellm/mockllm.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/litellm/mocks/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/config.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/deployment.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/secrets.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/shared.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/variant.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/managers/vault.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/auth.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/config.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/cors.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/inline.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/mock.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/otel.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/middleware/vault.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/router.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/attributes.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/conventions.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/exporters.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/propagation.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/tracing/spans.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/__init__.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/cache.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/constants.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/costs.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/exceptions.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/globals.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/helpers.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/logging.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/preinit.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/singleton.py +0 -0
- {agenta-0.44.4 → agenta-0.45.0}/agenta/sdk/utils/timing.py +0 -0
|
@@ -363,20 +363,44 @@ class entrypoint:
|
|
|
363
363
|
tree = None
|
|
364
364
|
content_type = "text/plain"
|
|
365
365
|
tree_id = None
|
|
366
|
+
trace_id = None
|
|
367
|
+
span_id = None
|
|
366
368
|
|
|
367
369
|
with suppress():
|
|
368
370
|
if isinstance(result, (dict, list)):
|
|
369
371
|
content_type = "application/json"
|
|
370
372
|
data = self.patch_result(result)
|
|
371
373
|
|
|
372
|
-
|
|
374
|
+
(
|
|
375
|
+
tree,
|
|
376
|
+
tree_id,
|
|
377
|
+
trace_id,
|
|
378
|
+
span_id,
|
|
379
|
+
) = await self.fetch_inline_trace(inline)
|
|
373
380
|
|
|
374
381
|
try:
|
|
375
382
|
return BaseResponse(
|
|
376
|
-
data=data,
|
|
383
|
+
data=data,
|
|
384
|
+
tree=tree,
|
|
385
|
+
content_type=content_type,
|
|
386
|
+
tree_id=tree_id,
|
|
387
|
+
trace_id=trace_id,
|
|
388
|
+
span_id=span_id,
|
|
377
389
|
)
|
|
378
390
|
except: # pylint: disable=bare-except
|
|
379
|
-
|
|
391
|
+
try:
|
|
392
|
+
return BaseResponse(
|
|
393
|
+
data=data,
|
|
394
|
+
content_type=content_type,
|
|
395
|
+
tree_id=tree_id,
|
|
396
|
+
trace_id=trace_id,
|
|
397
|
+
span_id=span_id,
|
|
398
|
+
)
|
|
399
|
+
except: # pylint: disable=bare-except
|
|
400
|
+
return BaseResponse(
|
|
401
|
+
data=data,
|
|
402
|
+
content_type=content_type,
|
|
403
|
+
)
|
|
380
404
|
|
|
381
405
|
def handle_failure(
|
|
382
406
|
self,
|
|
@@ -444,8 +468,10 @@ class entrypoint:
|
|
|
444
468
|
|
|
445
469
|
link = context.link
|
|
446
470
|
|
|
447
|
-
|
|
448
|
-
tree_id =
|
|
471
|
+
_trace_id = link.get("trace_id") if link else None # in int format
|
|
472
|
+
tree_id = (
|
|
473
|
+
str(UUID(int=_trace_id)) if _trace_id else None
|
|
474
|
+
) # in uuid_as_str format
|
|
449
475
|
|
|
450
476
|
return tree_id
|
|
451
477
|
|
|
@@ -461,24 +487,28 @@ class entrypoint:
|
|
|
461
487
|
|
|
462
488
|
link = context.link
|
|
463
489
|
|
|
490
|
+
_trace_id = link.get("trace_id") if link else None # in int format
|
|
491
|
+
_span_id = link.get("span_id") if link else None # in int format
|
|
492
|
+
|
|
464
493
|
tree = None
|
|
465
|
-
|
|
466
|
-
|
|
494
|
+
tree_id = str(UUID(int=_trace_id)) if _trace_id else None
|
|
495
|
+
trace_id = UUID(int=_trace_id).hex if _trace_id else None
|
|
496
|
+
span_id = UUID(int=_span_id).hex[16:] if _span_id else None
|
|
467
497
|
|
|
468
|
-
if
|
|
498
|
+
if _trace_id is not None:
|
|
469
499
|
if inline:
|
|
470
500
|
remaining_steps = NOFSTEPS
|
|
471
501
|
while (
|
|
472
|
-
not ag.tracing.is_inline_trace_ready(
|
|
502
|
+
not ag.tracing.is_inline_trace_ready(_trace_id)
|
|
473
503
|
and remaining_steps > 0
|
|
474
504
|
):
|
|
475
505
|
await sleep(TIMESTEP)
|
|
476
506
|
|
|
477
507
|
remaining_steps -= 1
|
|
478
508
|
|
|
479
|
-
tree = ag.tracing.get_inline_trace(
|
|
509
|
+
tree = ag.tracing.get_inline_trace(_trace_id)
|
|
480
510
|
|
|
481
|
-
return tree, tree_id
|
|
511
|
+
return tree, tree_id, trace_id, span_id
|
|
482
512
|
|
|
483
513
|
# --- OpenAPI --- #
|
|
484
514
|
|
|
@@ -131,8 +131,8 @@ class instrument: # pylint: disable=invalid-name
|
|
|
131
131
|
|
|
132
132
|
if not context.link:
|
|
133
133
|
context.link = {
|
|
134
|
-
"
|
|
135
|
-
"
|
|
134
|
+
"trace_id": span.get_span_context().trace_id,
|
|
135
|
+
"span_id": span.get_span_context().span_id,
|
|
136
136
|
}
|
|
137
137
|
|
|
138
138
|
tracing_context.set(context)
|
|
@@ -297,9 +297,7 @@ class instrument: # pylint: disable=invalid-name
|
|
|
297
297
|
not in (
|
|
298
298
|
ignore
|
|
299
299
|
if isinstance(ignore, list)
|
|
300
|
-
else io.keys()
|
|
301
|
-
if ignore is True
|
|
302
|
-
else []
|
|
300
|
+
else io.keys() if ignore is True else []
|
|
303
301
|
)
|
|
304
302
|
}
|
|
305
303
|
|
|
@@ -12,11 +12,6 @@ AppType = Literal["SERVICE:completion", "SERVICE:chat", "CUSTOM"]
|
|
|
12
12
|
DEFAULT_APP_TYPE = "SERVICE:completion"
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
AppType = Literal["SERVICE:completion", "SERVICE:chat", "CUSTOM"]
|
|
16
|
-
|
|
17
|
-
DEFAULT_APP_TYPE = "SERVICE:completion"
|
|
18
|
-
|
|
19
|
-
|
|
20
15
|
class AppManager:
|
|
21
16
|
@classmethod
|
|
22
17
|
@handle_exceptions()
|
|
@@ -160,6 +160,9 @@ class OTelExtraDTO(BaseModel):
|
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
class SpanDTO(BaseModel):
|
|
163
|
+
trace_id: str
|
|
164
|
+
span_id: str
|
|
165
|
+
|
|
163
166
|
scope: Optional[ProjectScopeDTO] = None
|
|
164
167
|
|
|
165
168
|
lifecycle: Optional[LifecycleDTO] = None
|
|
@@ -792,6 +795,9 @@ def _parse_from_attributes(
|
|
|
792
795
|
def parse_from_otel_span_dto(
|
|
793
796
|
otel_span_dto: OTelSpanDTO,
|
|
794
797
|
) -> SpanDTO:
|
|
798
|
+
trace_id = str(otel_span_dto.context.trace_id[2:])
|
|
799
|
+
span_id = str(otel_span_dto.context.span_id[2:])
|
|
800
|
+
|
|
795
801
|
lifecyle = LifecycleDTO(
|
|
796
802
|
created_at=datetime.now(),
|
|
797
803
|
)
|
|
@@ -800,7 +806,7 @@ def parse_from_otel_span_dto(
|
|
|
800
806
|
|
|
801
807
|
types = _parse_from_types(otel_span_dto)
|
|
802
808
|
|
|
803
|
-
tree_id = UUID(
|
|
809
|
+
tree_id = UUID(trace_id)
|
|
804
810
|
|
|
805
811
|
tree_type: str = types.get("tree")
|
|
806
812
|
|
|
@@ -809,7 +815,7 @@ def parse_from_otel_span_dto(
|
|
|
809
815
|
type=tree_type.lower() if tree_type else None,
|
|
810
816
|
)
|
|
811
817
|
|
|
812
|
-
node_id = UUID(
|
|
818
|
+
node_id = UUID(trace_id[16:] + span_id)
|
|
813
819
|
|
|
814
820
|
node_type = NodeType.TASK
|
|
815
821
|
try:
|
|
@@ -871,6 +877,8 @@ def parse_from_otel_span_dto(
|
|
|
871
877
|
)
|
|
872
878
|
|
|
873
879
|
span_dto = SpanDTO(
|
|
880
|
+
trace_id=trace_id,
|
|
881
|
+
span_id=span_id,
|
|
874
882
|
lifecycle=lifecyle,
|
|
875
883
|
root=root,
|
|
876
884
|
tree=tree,
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
from typing import Optional, Dict, List
|
|
2
|
+
from threading import Lock
|
|
2
3
|
|
|
3
4
|
from opentelemetry.baggage import get_all as get_baggage
|
|
4
5
|
from opentelemetry.context import Context
|
|
5
|
-
from opentelemetry.sdk.trace import Span
|
|
6
|
+
from opentelemetry.sdk.trace import Span, SpanProcessor
|
|
6
7
|
from opentelemetry.sdk.trace.export import (
|
|
7
8
|
SpanExporter,
|
|
8
9
|
ReadableSpan,
|
|
@@ -154,3 +155,26 @@ class TraceProcessor(BatchSpanProcessor):
|
|
|
154
155
|
# --- INLINE
|
|
155
156
|
|
|
156
157
|
return trace
|
|
158
|
+
|
|
159
|
+
|
|
160
|
+
invocation_link = {}
|
|
161
|
+
invocation_link_lock = Lock()
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
class InvocationLinkHook(SpanProcessor):
|
|
165
|
+
def on_end(self, span):
|
|
166
|
+
# Only capture root spans if you want
|
|
167
|
+
if span.parent is None:
|
|
168
|
+
ctx = span.get_span_context()
|
|
169
|
+
|
|
170
|
+
with invocation_link_lock:
|
|
171
|
+
invocation_link["trace_id"] = ctx.trace_id
|
|
172
|
+
invocation_link["span_id"] = ctx.span_id
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
def use_invocation_link() -> Optional[Dict[str, str]]:
|
|
176
|
+
with invocation_link_lock:
|
|
177
|
+
if invocation_link:
|
|
178
|
+
return invocation_link.copy()
|
|
179
|
+
else:
|
|
180
|
+
return None
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
from typing import Optional, Any, Dict, Callable
|
|
2
2
|
from enum import Enum
|
|
3
|
+
from uuid import UUID
|
|
3
4
|
|
|
5
|
+
from pydantic import BaseModel
|
|
4
6
|
from httpx import get as check
|
|
5
7
|
|
|
8
|
+
|
|
6
9
|
from opentelemetry.trace import (
|
|
7
10
|
get_current_span,
|
|
8
11
|
set_tracer_provider,
|
|
@@ -10,13 +13,19 @@ from opentelemetry.trace import (
|
|
|
10
13
|
Status,
|
|
11
14
|
StatusCode,
|
|
12
15
|
)
|
|
16
|
+
from opentelemetry.sdk import trace
|
|
13
17
|
from opentelemetry.sdk.trace import Span, Tracer, TracerProvider
|
|
14
18
|
from opentelemetry.sdk.resources import Resource
|
|
15
19
|
|
|
20
|
+
|
|
16
21
|
from agenta.sdk.utils.singleton import Singleton
|
|
17
22
|
from agenta.sdk.utils.exceptions import suppress
|
|
18
23
|
from agenta.sdk.utils.logging import get_module_logger
|
|
19
|
-
from agenta.sdk.tracing.processors import
|
|
24
|
+
from agenta.sdk.tracing.processors import (
|
|
25
|
+
TraceProcessor,
|
|
26
|
+
InvocationLinkHook,
|
|
27
|
+
use_invocation_link,
|
|
28
|
+
)
|
|
20
29
|
from agenta.sdk.tracing.exporters import InlineExporter, OTLPExporter
|
|
21
30
|
from agenta.sdk.tracing.spans import CustomSpan
|
|
22
31
|
from agenta.sdk.tracing.inline import parse_inline_trace
|
|
@@ -24,9 +33,27 @@ from agenta.sdk.tracing.conventions import Reference, is_valid_attribute_key
|
|
|
24
33
|
from agenta.sdk.tracing.propagation import extract, inject
|
|
25
34
|
from agenta.sdk.utils.cache import TTLLRUCache
|
|
26
35
|
|
|
36
|
+
from agenta.sdk.context.tracing import tracing_context
|
|
37
|
+
|
|
27
38
|
log = get_module_logger(__name__)
|
|
28
39
|
|
|
29
40
|
|
|
41
|
+
_original_init = trace.TracerProvider.__init__
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def patched_init(self, *args, **kwargs):
|
|
45
|
+
_original_init(self, *args, **kwargs)
|
|
46
|
+
self.add_span_processor(InvocationLinkHook())
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
trace.TracerProvider.__init__ = patched_init
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class Link(BaseModel):
|
|
53
|
+
trace_id: str
|
|
54
|
+
span_id: str
|
|
55
|
+
|
|
56
|
+
|
|
30
57
|
class Tracing(metaclass=Singleton):
|
|
31
58
|
VERSION = "0.1.0"
|
|
32
59
|
|
|
@@ -242,6 +269,40 @@ class Tracing(metaclass=Singleton):
|
|
|
242
269
|
):
|
|
243
270
|
return inject(*args, **kwargs)
|
|
244
271
|
|
|
272
|
+
def get_invocation_link(self) -> Optional[Link]:
|
|
273
|
+
with suppress():
|
|
274
|
+
link = tracing_context.get().link
|
|
275
|
+
|
|
276
|
+
trace_id = None
|
|
277
|
+
span_id = None
|
|
278
|
+
|
|
279
|
+
if link:
|
|
280
|
+
trace_id = UUID(int=link.get("trace_id")).hex if link else None
|
|
281
|
+
span_id = UUID(int=link.get("span_id")).hex[16:] if link else None
|
|
282
|
+
|
|
283
|
+
if trace_id and span_id:
|
|
284
|
+
return Link(
|
|
285
|
+
trace_id=trace_id,
|
|
286
|
+
span_id=span_id,
|
|
287
|
+
)
|
|
288
|
+
|
|
289
|
+
link = use_invocation_link()
|
|
290
|
+
|
|
291
|
+
trace_id = None
|
|
292
|
+
span_id = None
|
|
293
|
+
|
|
294
|
+
if link:
|
|
295
|
+
trace_id = UUID(int=link.get("trace_id")).hex if link else None
|
|
296
|
+
span_id = UUID(int=link.get("span_id")).hex[16:] if link else None
|
|
297
|
+
|
|
298
|
+
if trace_id and span_id:
|
|
299
|
+
return Link(
|
|
300
|
+
trace_id=trace_id,
|
|
301
|
+
span_id=span_id,
|
|
302
|
+
)
|
|
303
|
+
|
|
304
|
+
return None
|
|
305
|
+
|
|
245
306
|
|
|
246
307
|
def get_tracer(
|
|
247
308
|
tracing: Tracing,
|
|
@@ -39,6 +39,8 @@ class BaseResponse(BaseModel):
|
|
|
39
39
|
content_type: Optional[str] = "string"
|
|
40
40
|
tree: Optional[AgentaNodesResponse] = None
|
|
41
41
|
tree_id: Optional[str] = None
|
|
42
|
+
trace_id: Optional[str] = None
|
|
43
|
+
span_id: Optional[str] = None
|
|
42
44
|
|
|
43
45
|
model_config = ConfigDict(use_enum_values=True, exclude_none=True)
|
|
44
46
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/observability/types/query_traces_response.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/aggregated_result_evaluator_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/evaluator_mapping_output_interface.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/human_evaluation_scenario_input.py
RENAMED
|
File without changes
|
{agenta-0.44.4 → agenta-0.45.0}/agenta/client/backend/types/human_evaluation_scenario_output.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|