arize-phoenix 11.5.0__tar.gz → 11.6.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 arize-phoenix might be problematic. Click here for more details.
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/PKG-INFO +1 -1
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/queries.py +21 -25
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/spans.py +2 -2
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Span.py +0 -99
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/app.py +6 -10
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/cost_model_lookup.py +1 -1
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/model_cost_manifest.json +107 -107
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/daemons/db_disk_usage_monitor.py +11 -5
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/.vite/manifest.json +9 -9
- arize_phoenix-11.5.0/src/phoenix/server/static/assets/components-Bwf6zNbg.js → arize_phoenix-11.6.0/src/phoenix/server/static/assets/components-mOUBHJ12.js +294 -294
- arize_phoenix-11.5.0/src/phoenix/server/static/assets/index-Bfg9uQ43.js → arize_phoenix-11.6.0/src/phoenix/server/static/assets/index-CQ_A6K_M.js +2 -2
- arize_phoenix-11.5.0/src/phoenix/server/static/assets/pages-BCR8hW_l.js → arize_phoenix-11.6.0/src/phoenix/server/static/assets/pages-CCsLkNZY.js +496 -482
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/types.py +4 -2
- arize_phoenix-11.6.0/src/phoenix/version.py +1 -0
- arize_phoenix-11.5.0/src/phoenix/version.py +0 -1
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/.gitignore +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/IP_NOTICE +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/LICENSE +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/README.md +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/pyproject.toml +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/auth.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/config.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/core/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/core/embedding_dimension.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/core/model.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/core/model_schema.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/core/model_schema_adapter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/datetime_utils.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/README.md +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/alembic.ini +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/bulk_inserter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/constants.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/engines.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/enums.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/facilitator.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/helpers.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/constants.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/dataset.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/document_annotation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/evaluation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/helpers.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/span.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/span_annotation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/trace_annotation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/insertion/types.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrate.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/data_migration_scripts/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/data_migration_scripts/populate_project_sessions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/env.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/script.py.mako +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/10460e46d750_datasets.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/2f9d1a65945f_annotation_config_migration.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/3be8647b87d8_add_token_columns_to_spans_table.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/4ded9e43755f_create_project_sessions_table.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/6a88424799fe_update_users_with_auth_method.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/8a3764fe7f1a_change_jsonb_to_json_for_prompts.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/a20694b15f82_cost.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/bb8139330879_create_project_trace_retention_policies_table.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/bc8fea3c2bc8_add_prompt_tables.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/cd164e83824f_users_and_tokens.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/migrations/versions/cf03bd6bae1d_init.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/models.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/pg_config.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/types/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/types/annotation_configs.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/types/db_models.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/types/identifier.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/types/model_provider.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/types/token_price_customization.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/db/types/trace_retention.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/exceptions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/evaluators/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/evaluators/base.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/evaluators/code_evaluators.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/evaluators/llm_evaluators.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/evaluators/utils.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/functions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/tracing.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/types.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/experiments/utils.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/inferences/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/inferences/errors.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/inferences/fixtures.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/inferences/inferences.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/inferences/schema.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/inferences/validation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/logging/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/logging/_config.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/logging/_filter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/logging/_formatter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/README.md +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/binning.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/metrics.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/mixins.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/retrieval_metrics.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/timeseries.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/metrics/wrappers.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/pointcloud/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/pointcloud/clustering.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/pointcloud/pointcloud.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/pointcloud/projectors.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/pointcloud/umap_parameters.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/py.typed +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/README.md +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/auth.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/context.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/annotation_configs_by_project.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/annotation_summaries.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/average_experiment_run_latency.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/cache/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/cache/two_tier_cache.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/dataset_example_revisions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/dataset_example_spans.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/document_evaluation_summaries.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/document_evaluations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/document_retrieval_metrics.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/experiment_annotation_summaries.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/experiment_error_rates.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/experiment_run_annotations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/experiment_run_counts.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/experiment_sequence_number.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/last_used_times_by_generative_model_id.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/latency_ms_quantile.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/min_start_or_max_end_times.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/num_child_spans.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/num_spans_per_trace.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/project_by_name.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/project_ids_by_trace_retention_policy_id.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/prompt_version_sequence_number.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/record_counts.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/session_io.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/session_num_traces.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/session_num_traces_with_error.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/session_token_usages.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/session_trace_latency_ms_quantile.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_annotations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_by_id.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_by_span.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_detail_summary_entries_by_generative_model.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_detail_summary_entries_by_project_session.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_detail_summary_entries_by_span.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_detail_summary_entries_by_trace.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_details_by_span_cost.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_summary_by_experiment.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_summary_by_experiment_run.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_summary_by_generative_model.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_summary_by_project.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_summary_by_project_session.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_cost_summary_by_trace.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_costs.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_dataset_examples.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_descendants.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/span_projects.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/table_fields.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/token_counts.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/trace_by_trace_ids.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/trace_retention_policy_id_by_project_id.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/trace_root_spans.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/types.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/user_roles.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/dataloaders/users.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/exceptions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/annotations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/dataset_helpers.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/experiment_run_filters.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/playground_clients.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/playground_registry.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/playground_spans.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/prompts/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/prompts/conversions/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/prompts/conversions/anthropic.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/prompts/conversions/aws.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/prompts/conversions/openai.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/helpers/prompts/models.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/AddExamplesToDatasetInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/AddSpansToDatasetInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/ChatCompletionInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/ChatCompletionMessageInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/ClearProjectInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/ClusterInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/Coordinates.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/CreateDatasetInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/CreateSpanAnnotationInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/CreateTraceAnnotationInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DataQualityMetricInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DatasetExampleInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DatasetFilter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DatasetSort.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DatasetVersionSort.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DeleteAnnotationsInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DeleteDatasetExamplesInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DeleteDatasetInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DeleteExperimentsInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DimensionFilter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/DimensionInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/GenerativeCredentialInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/GenerativeModelInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/Granularity.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/InvocationParameters.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/PatchAnnotationInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/PatchDatasetExamplesInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/PatchDatasetInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/PerformanceMetricInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/ProjectFilter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/ProjectSessionSort.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/ProjectSort.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/PromptTemplateOptions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/PromptVersionInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/SpanAnnotationFilter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/SpanAnnotationSort.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/SpanSort.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/TimeRange.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/TraceAnnotationSort.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/UserRoleInput.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/input_types/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/interceptor.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/annotation_config_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/api_key_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/chat_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/dataset_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/experiment_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/export_events_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/model_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/project_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/project_trace_retention_policy_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/prompt_label_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/prompt_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/prompt_version_tag_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/span_annotations_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/trace_annotations_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/trace_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/mutations/user_mutations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/openapi/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/openapi/main.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/openapi/schema.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/auth.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/embeddings.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/oauth2.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/utils.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/annotation_configs.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/annotations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/datasets.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/evaluations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/experiment_evaluations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/experiment_runs.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/experiments.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/models.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/projects.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/prompts.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/traces.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/users.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/routers/v1/utils.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/schema.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/subscriptions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Annotation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/AnnotationConfig.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/AnnotationSource.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/AnnotationSummary.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/AnnotatorKind.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ApiKey.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/AuthMethod.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ChatCompletionMessageRole.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ChatCompletionSubscriptionPayload.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Cluster.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/CostBreakdown.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/CreateDatasetPayload.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/CronExpression.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DataQualityMetric.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Dataset.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DatasetExample.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DatasetExampleRevision.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DatasetValues.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DatasetVersion.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Dimension.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DimensionDataType.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DimensionShape.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DimensionType.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DimensionWithValue.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DocumentEvaluationSummary.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/DocumentRetrievalMetrics.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/EmbeddingDimension.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/EmbeddingMetadata.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Evaluation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/EvaluationSummary.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Event.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/EventMetadata.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ExampleRevisionInterface.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Experiment.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ExperimentAnnotationSummary.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ExperimentComparison.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ExperimentRun.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ExperimentRunAnnotation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ExportedFile.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Functionality.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/GenerativeModel.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/GenerativeProvider.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Identifier.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/InferenceModel.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Inferences.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/InferencesRole.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/LabelFraction.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/MimeType.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ModelInterface.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/NumericRange.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/PerformanceMetric.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/PlaygroundModel.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Project.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ProjectSession.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ProjectTraceRetentionPolicy.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Prompt.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/PromptLabel.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/PromptResponse.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/PromptVersion.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/PromptVersionTag.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/PromptVersionTemplate.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ResponseFormat.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Retrieval.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ScalarDriftMetricEnum.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Segments.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/SortDir.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/SpanAnnotation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/SpanCostDetailSummaryEntry.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/SpanCostSummary.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/SpanIOValue.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/SystemApiKey.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/TimeSeries.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/TokenCountPromptDetails.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/TokenPrice.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/TokenUsage.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ToolDefinition.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/Trace.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/TraceAnnotation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/UMAPPoints.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/User.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/UserApiKey.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/UserRole.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/ValidationResult.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/VectorDriftMetricEnum.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/node.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/types/pagination.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/api/utils.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/authorization.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/bearer_auth.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/cost_details_calculator.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/helpers.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/regex_specificity.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/token_cost_calculator.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/daemons/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/daemons/generative_model_store.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/daemons/span_cost_calculator.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/dml_event.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/dml_event_handler.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/email/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/email/sender.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/email/templates/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/email/templates/db_disk_usage_notification.html +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/email/templates/password_reset.html +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/email/templates/welcome.html +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/email/types.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/grpc_server.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/jwt_store.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/main.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/middleware/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/middleware/gzip.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/oauth2.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/openapi/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/prometheus.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/rate_limiters.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/retention.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon-114x114.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon-120x120.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon-144x144.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon-152x152.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon-180x180.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon-72x72.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon-76x76.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/apple-touch-icon.png +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/assets/vendor-DRWIRkSJ.js +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/assets/vendor-WIZid84E.css +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/assets/vendor-arizeai-DUhQaeau.js +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/assets/vendor-codemirror-D_6Q6Auv.js +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/assets/vendor-recharts-BNBwj7vz.js +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/assets/vendor-shiki-k1qj_XjP.js +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/assets/vendor-three-C5WAXd5r.js +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/favicon.ico +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/static/modernizr.js +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/telemetry.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/templates/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/templates/index.html +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/thread_server.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/services.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/session/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/session/client.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/session/data_extractor.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/session/evaluation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/session/session.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/settings.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/attributes.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/dsl/README.md +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/dsl/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/dsl/filter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/dsl/helpers.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/dsl/query.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/errors.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/evaluation_conventions.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/exporter.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/fixtures.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/otel.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/projects.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/schemas.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/span_evaluations.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/span_json_decoder.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/span_json_encoder.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/trace_dataset.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/utils.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/v1/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/v1/evaluation_pb2.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/trace/v1/evaluation_pb2.pyi +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/__init__.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/client.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/deprecation.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/error_handling.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/json.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/logging.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/project.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/re.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/span_store.py +0 -0
- {arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/utilities/template_formatters.py +0 -0
|
@@ -335,28 +335,20 @@ class Query:
|
|
|
335
335
|
async def compare_experiments(
|
|
336
336
|
self,
|
|
337
337
|
info: Info[Context, None],
|
|
338
|
-
|
|
338
|
+
baseline_experiment_id: GlobalID,
|
|
339
|
+
compare_experiment_ids: list[GlobalID],
|
|
339
340
|
first: Optional[int] = 50,
|
|
340
341
|
after: Optional[CursorString] = UNSET,
|
|
341
342
|
filter_condition: Optional[str] = UNSET,
|
|
342
343
|
) -> Connection[ExperimentComparison]:
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
first=first,
|
|
349
|
-
after=after if isinstance(after, CursorString) else None,
|
|
350
|
-
),
|
|
351
|
-
)
|
|
352
|
-
|
|
353
|
-
experiment_ids_ = [
|
|
344
|
+
if baseline_experiment_id in compare_experiment_ids:
|
|
345
|
+
raise BadRequest("Compare experiment IDs cannot contain the baseline experiment ID")
|
|
346
|
+
if len(set(compare_experiment_ids)) < len(compare_experiment_ids):
|
|
347
|
+
raise BadRequest("Compare experiment IDs must be unique")
|
|
348
|
+
experiment_ids = [
|
|
354
349
|
from_global_id_with_expected_type(experiment_id, models.Experiment.__name__)
|
|
355
|
-
for experiment_id in
|
|
350
|
+
for experiment_id in (baseline_experiment_id, *compare_experiment_ids)
|
|
356
351
|
]
|
|
357
|
-
if len(set(experiment_ids_)) != len(experiment_ids_):
|
|
358
|
-
raise BadRequest("Experiment IDs must be unique.")
|
|
359
|
-
|
|
360
352
|
cursor = Cursor.from_string(after) if after else None
|
|
361
353
|
page_size = first or 50
|
|
362
354
|
|
|
@@ -375,7 +367,7 @@ class Query:
|
|
|
375
367
|
models.Experiment.dataset_version_id == models.DatasetVersion.id,
|
|
376
368
|
)
|
|
377
369
|
.where(
|
|
378
|
-
models.Experiment.id.in_(
|
|
370
|
+
models.Experiment.id.in_(experiment_ids),
|
|
379
371
|
)
|
|
380
372
|
)
|
|
381
373
|
).first()
|
|
@@ -385,7 +377,7 @@ class Query:
|
|
|
385
377
|
num_datasets, dataset_id, version_id, num_resolved_experiment_ids = validation_result
|
|
386
378
|
if num_datasets != 1:
|
|
387
379
|
raise BadRequest("Experiments must belong to the same dataset.")
|
|
388
|
-
if num_resolved_experiment_ids != len(
|
|
380
|
+
if num_resolved_experiment_ids != len(experiment_ids):
|
|
389
381
|
raise NotFound("Unable to resolve one or more experiment IDs.")
|
|
390
382
|
|
|
391
383
|
revision_ids = (
|
|
@@ -425,7 +417,7 @@ class Query:
|
|
|
425
417
|
examples_query = update_examples_query_with_filter_condition(
|
|
426
418
|
query=examples_query,
|
|
427
419
|
filter_condition=filter_condition,
|
|
428
|
-
experiment_ids=
|
|
420
|
+
experiment_ids=experiment_ids,
|
|
429
421
|
)
|
|
430
422
|
|
|
431
423
|
examples = (await session.scalars(examples_query)).all()
|
|
@@ -444,17 +436,20 @@ class Query:
|
|
|
444
436
|
models.ExperimentRun.dataset_example_id.in_(
|
|
445
437
|
example.id for example in examples
|
|
446
438
|
),
|
|
447
|
-
models.ExperimentRun.experiment_id.in_(
|
|
439
|
+
models.ExperimentRun.experiment_id.in_(experiment_ids),
|
|
448
440
|
)
|
|
449
441
|
)
|
|
450
442
|
.options(joinedload(models.ExperimentRun.trace).load_only(models.Trace.trace_id))
|
|
443
|
+
.order_by(
|
|
444
|
+
models.ExperimentRun.repetition_number.asc()
|
|
445
|
+
) # repetitions are not currently implemented, but this ensures that the repetitions will be properly ordered once implemented # noqa: E501
|
|
451
446
|
):
|
|
452
447
|
runs[run.dataset_example_id][run.experiment_id].append(run)
|
|
453
448
|
|
|
454
449
|
cursors_and_nodes = []
|
|
455
450
|
for example in examples:
|
|
456
451
|
run_comparison_items = []
|
|
457
|
-
for experiment_id in
|
|
452
|
+
for experiment_id in experiment_ids:
|
|
458
453
|
run_comparison_items.append(
|
|
459
454
|
RunComparisonItem(
|
|
460
455
|
experiment_id=GlobalID(Experiment.__name__, str(experiment_id)),
|
|
@@ -479,7 +474,7 @@ class Query:
|
|
|
479
474
|
|
|
480
475
|
return connection_from_cursors_and_nodes(
|
|
481
476
|
cursors_and_nodes=cursors_and_nodes,
|
|
482
|
-
has_previous_page=False,
|
|
477
|
+
has_previous_page=False, # set to false since we are only doing forward pagination (https://relay.dev/graphql/connections.htm#sec-undefined.PageInfo.Fields) # noqa: E501
|
|
483
478
|
has_next_page=has_next_page,
|
|
484
479
|
)
|
|
485
480
|
|
|
@@ -989,13 +984,14 @@ class Query:
|
|
|
989
984
|
# stats = cast(Iterable[tuple[str, int]], await session.execute(stmt))
|
|
990
985
|
# stats = _consolidate_sqlite_db_table_stats(stats)
|
|
991
986
|
elif info.context.db.dialect is SupportedSQLDialect.POSTGRESQL:
|
|
992
|
-
|
|
987
|
+
nspname = getenv(ENV_PHOENIX_SQL_DATABASE_SCHEMA) or "public"
|
|
988
|
+
stmt = text("""\
|
|
993
989
|
SELECT c.relname, pg_total_relation_size(c.oid)
|
|
994
990
|
FROM pg_class as c
|
|
995
991
|
INNER JOIN pg_namespace as n ON n.oid = c.relnamespace
|
|
996
992
|
WHERE c.relkind = 'r'
|
|
997
|
-
AND n.nspname =
|
|
998
|
-
""")
|
|
993
|
+
AND n.nspname = :nspname;
|
|
994
|
+
""").bindparams(nspname=nspname)
|
|
999
995
|
try:
|
|
1000
996
|
async with info.context.db() as session:
|
|
1001
997
|
stats = cast(Iterable[tuple[str, int]], await session.execute(stmt))
|
|
@@ -602,7 +602,7 @@ async def span_search_otlpv1(
|
|
|
602
602
|
models.Trace.trace_id,
|
|
603
603
|
)
|
|
604
604
|
.join(models.Trace, onclause=models.Trace.id == models.Span.trace_rowid)
|
|
605
|
-
.
|
|
605
|
+
.where(models.Trace.project_rowid == project_id)
|
|
606
606
|
.order_by(*order_by)
|
|
607
607
|
)
|
|
608
608
|
|
|
@@ -737,7 +737,7 @@ async def span_search(
|
|
|
737
737
|
models.Trace.trace_id,
|
|
738
738
|
)
|
|
739
739
|
.join(models.Trace, onclause=models.Trace.id == models.Span.trace_rowid)
|
|
740
|
-
.
|
|
740
|
+
.where(models.Trace.project_rowid == project_id)
|
|
741
741
|
.order_by(*order_by)
|
|
742
742
|
)
|
|
743
743
|
|
|
@@ -19,7 +19,6 @@ from typing_extensions import Annotated, TypeAlias
|
|
|
19
19
|
import phoenix.trace.schemas as trace_schema
|
|
20
20
|
from phoenix.db import models
|
|
21
21
|
from phoenix.server.api.context import Context
|
|
22
|
-
from phoenix.server.api.dataloaders import types as dataloader_types
|
|
23
22
|
from phoenix.server.api.helpers.dataset_helpers import (
|
|
24
23
|
get_dataset_example_input,
|
|
25
24
|
get_dataset_example_output,
|
|
@@ -829,104 +828,6 @@ class Span(Node):
|
|
|
829
828
|
for entry in entries
|
|
830
829
|
]
|
|
831
830
|
|
|
832
|
-
@strawberry.field
|
|
833
|
-
async def cumulative_cost_summary(self, info: Info[Context, None]) -> Optional[SpanCostSummary]:
|
|
834
|
-
max_depth = 0
|
|
835
|
-
descendant_rowids = await info.context.data_loaders.span_descendants.load(
|
|
836
|
-
(self.span_rowid, max_depth)
|
|
837
|
-
)
|
|
838
|
-
span_costs = await info.context.data_loaders.span_cost_by_span.load_many(
|
|
839
|
-
(self.span_rowid, *descendant_rowids)
|
|
840
|
-
)
|
|
841
|
-
total_cost: Optional[float] = None
|
|
842
|
-
total_tokens: Optional[float] = None
|
|
843
|
-
prompt_cost: Optional[float] = None
|
|
844
|
-
prompt_tokens: Optional[float] = None
|
|
845
|
-
completion_cost: Optional[float] = None
|
|
846
|
-
completion_tokens: Optional[float] = None
|
|
847
|
-
for span_cost in span_costs:
|
|
848
|
-
if span_cost is None:
|
|
849
|
-
continue
|
|
850
|
-
if span_cost.total_cost is not None:
|
|
851
|
-
total_cost = (total_cost or 0) + span_cost.total_cost
|
|
852
|
-
if span_cost.total_tokens is not None:
|
|
853
|
-
total_tokens = (total_tokens or 0) + span_cost.total_tokens
|
|
854
|
-
if span_cost.prompt_cost is not None:
|
|
855
|
-
prompt_cost = (prompt_cost or 0) + span_cost.prompt_cost
|
|
856
|
-
if span_cost.prompt_tokens is not None:
|
|
857
|
-
prompt_tokens = (prompt_tokens or 0) + span_cost.prompt_tokens
|
|
858
|
-
if span_cost.completion_cost is not None:
|
|
859
|
-
completion_cost = (completion_cost or 0) + span_cost.completion_cost
|
|
860
|
-
if span_cost.completion_tokens is not None:
|
|
861
|
-
completion_tokens = (completion_tokens or 0) + span_cost.completion_tokens
|
|
862
|
-
return SpanCostSummary(
|
|
863
|
-
prompt=CostBreakdown(
|
|
864
|
-
tokens=prompt_tokens,
|
|
865
|
-
cost=prompt_cost,
|
|
866
|
-
),
|
|
867
|
-
completion=CostBreakdown(
|
|
868
|
-
tokens=completion_tokens,
|
|
869
|
-
cost=completion_cost,
|
|
870
|
-
),
|
|
871
|
-
total=CostBreakdown(
|
|
872
|
-
tokens=total_tokens,
|
|
873
|
-
cost=total_cost,
|
|
874
|
-
),
|
|
875
|
-
)
|
|
876
|
-
|
|
877
|
-
@strawberry.field
|
|
878
|
-
async def cumulative_cost_detail_summary_entries(
|
|
879
|
-
self, info: Info[Context, None]
|
|
880
|
-
) -> list[SpanCostDetailSummaryEntry]:
|
|
881
|
-
max_depth = 0
|
|
882
|
-
descendant_rowids = await info.context.data_loaders.span_descendants.load(
|
|
883
|
-
(self.span_rowid, max_depth)
|
|
884
|
-
)
|
|
885
|
-
entry_lists = (
|
|
886
|
-
await info.context.data_loaders.span_cost_detail_summary_entries_by_span.load_many(
|
|
887
|
-
(self.span_rowid, *descendant_rowids)
|
|
888
|
-
)
|
|
889
|
-
)
|
|
890
|
-
|
|
891
|
-
TokenType: TypeAlias = str
|
|
892
|
-
IsPrompt: TypeAlias = bool
|
|
893
|
-
grouped_entries: dict[
|
|
894
|
-
IsPrompt, dict[TokenType, list[dataloader_types.SpanCostDetailSummaryEntry]]
|
|
895
|
-
] = {}
|
|
896
|
-
|
|
897
|
-
for entries in entry_lists:
|
|
898
|
-
for entry in entries:
|
|
899
|
-
is_prompt = entry.is_prompt
|
|
900
|
-
token_type = entry.token_type
|
|
901
|
-
if is_prompt not in grouped_entries:
|
|
902
|
-
grouped_entries[is_prompt] = {}
|
|
903
|
-
if token_type not in grouped_entries[is_prompt]:
|
|
904
|
-
grouped_entries[is_prompt][token_type] = []
|
|
905
|
-
grouped_entries[is_prompt][token_type].append(entry)
|
|
906
|
-
|
|
907
|
-
result: list[SpanCostDetailSummaryEntry] = []
|
|
908
|
-
for is_prompt in (True, False):
|
|
909
|
-
entries_by_token_type = grouped_entries[is_prompt]
|
|
910
|
-
for token_type, entries in sorted(entries_by_token_type.items()):
|
|
911
|
-
cost: Optional[float] = None
|
|
912
|
-
tokens: Optional[float] = None
|
|
913
|
-
for entry in entries:
|
|
914
|
-
if entry.value.cost is not None:
|
|
915
|
-
cost = (cost or 0) + entry.value.cost
|
|
916
|
-
if entry.value.tokens is not None:
|
|
917
|
-
tokens = (tokens or 0) + entry.value.tokens
|
|
918
|
-
result.append(
|
|
919
|
-
SpanCostDetailSummaryEntry(
|
|
920
|
-
token_type=token_type,
|
|
921
|
-
is_prompt=is_prompt,
|
|
922
|
-
value=CostBreakdown(
|
|
923
|
-
tokens=tokens,
|
|
924
|
-
cost=cost,
|
|
925
|
-
),
|
|
926
|
-
)
|
|
927
|
-
)
|
|
928
|
-
return result
|
|
929
|
-
|
|
930
831
|
|
|
931
832
|
def _hide_embedding_vectors(attributes: Mapping[str, Any]) -> Mapping[str, Any]:
|
|
932
833
|
if not (
|
|
@@ -386,19 +386,16 @@ async def version() -> PlainTextResponse:
|
|
|
386
386
|
return PlainTextResponse(f"{phoenix_version}")
|
|
387
387
|
|
|
388
388
|
|
|
389
|
-
DB_MUTEX: Optional[asyncio.Lock] = None
|
|
390
|
-
|
|
391
|
-
|
|
392
389
|
def _db(
|
|
393
|
-
engine: AsyncEngine,
|
|
394
|
-
) -> Callable[[], AbstractAsyncContextManager[AsyncSession]]:
|
|
390
|
+
engine: AsyncEngine,
|
|
391
|
+
) -> Callable[[Optional[asyncio.Lock]], AbstractAsyncContextManager[AsyncSession]]:
|
|
395
392
|
Session = async_sessionmaker(engine, expire_on_commit=False)
|
|
396
393
|
|
|
397
394
|
@contextlib.asynccontextmanager
|
|
398
|
-
async def factory() -> AsyncIterator[AsyncSession]:
|
|
395
|
+
async def factory(lock: Optional[asyncio.Lock] = None) -> AsyncIterator[AsyncSession]:
|
|
399
396
|
async with contextlib.AsyncExitStack() as stack:
|
|
400
|
-
if
|
|
401
|
-
await stack.enter_async_context(
|
|
397
|
+
if lock:
|
|
398
|
+
await stack.enter_async_context(lock)
|
|
402
399
|
yield await stack.enter_async_context(Session.begin())
|
|
403
400
|
|
|
404
401
|
return factory
|
|
@@ -542,8 +539,7 @@ def _lifespan(
|
|
|
542
539
|
for callback in startup_callbacks:
|
|
543
540
|
if isinstance((res := callback()), Awaitable):
|
|
544
541
|
await res
|
|
545
|
-
|
|
546
|
-
DB_MUTEX = asyncio.Lock() if db.dialect is SupportedSQLDialect.SQLITE else None
|
|
542
|
+
db.lock = asyncio.Lock() if db.dialect is SupportedSQLDialect.SQLITE else None
|
|
547
543
|
async with AsyncExitStack() as stack:
|
|
548
544
|
(
|
|
549
545
|
enqueue,
|
{arize_phoenix-11.5.0 → arize_phoenix-11.6.0}/src/phoenix/server/cost_tracking/cost_model_lookup.py
RENAMED
|
@@ -109,7 +109,7 @@ class CostModelLookup:
|
|
|
109
109
|
model
|
|
110
110
|
for model in self._models
|
|
111
111
|
if (not model.start_time or model.start_time <= start_time)
|
|
112
|
-
and model.name_pattern.
|
|
112
|
+
and model.name_pattern.search(model_name)
|
|
113
113
|
]
|
|
114
114
|
if not candidates:
|
|
115
115
|
return None
|