deepeval 4.3.0__tar.gz → 4.3.2__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.
- {deepeval-4.3.0 → deepeval-4.3.2}/PKG-INFO +49 -42
- {deepeval-4.3.0 → deepeval-4.3.2}/README.md +48 -41
- deepeval-4.3.2/deepeval/_version.py +1 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/auth/command.py +28 -4
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/main.py +8 -0
- deepeval-4.3.2/deepeval/cli/setup/__init__.py +11 -0
- deepeval-4.3.2/deepeval/cli/setup/command.py +36 -0
- deepeval-4.3.2/deepeval/cli/setup/launcher.py +352 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/utils.py +7 -2
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/errors.py +6 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/indicator.py +52 -15
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/decision.py +5 -3
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/system_one/limits.py +7 -4
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/system_one/typesafe_model.py +32 -5
- {deepeval-4.3.0 → deepeval-4.3.2}/pyproject.toml +1 -1
- deepeval-4.3.0/deepeval/_version.py +0 -1
- {deepeval-4.3.0 → deepeval-4.3.2}/LICENSE.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/annotation/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/annotation/annotation.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/annotation/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/anthropic/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/anthropic/extractors.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/anthropic/patch.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/anthropic/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/arc/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/arc/arc.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/arc/mode.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/arc/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/base_benchmark.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/bbq/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/bbq/bbq.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/bbq/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/bbq/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/big_bench_hard.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/boolean_expressions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/causal_judgement.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/date_understanding.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/disambiguation_qa.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/dyck_languages.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/formal_fallacies.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/geometric_shapes.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/hyperbaton.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/logical_deduction_five_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/logical_deduction_seven_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/logical_deduction_three_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/movie_recommendation.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/multistep_arithmetic_two.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/navigate.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/object_counting.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/penguins_in_a_table.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/reasoning_about_colored_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/ruin_names.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/salient_translation_error_detection.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/snarks.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/sports_understanding.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/temporal_sequences.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/tracking_shuffled_objects_five_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/tracking_shuffled_objects_seven_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/tracking_shuffled_objects_three_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/web_of_lies.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/cot_prompts/word_sorting.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/boolean_expressions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/causal_judgement.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/date_understanding.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/disambiguation_qa.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/dyck_languages.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/formal_fallacies.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/geometric_shapes.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/hyperbaton.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/logical_deduction_five_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/logical_deduction_seven_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/logical_deduction_three_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/movie_recommendation.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/multistep_arithmetic_two.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/navigate.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/object_counting.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/penguins_in_a_table.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/reasoning_about_colored_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/ruin_names.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/salient_translation_error_detection.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/snarks.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/sports_understanding.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/temporal_sequences.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/tracking_shuffled_objects_five_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/tracking_shuffled_objects_seven_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/tracking_shuffled_objects_three_objects.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/web_of_lies.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/shot_prompts/word_sorting.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/big_bench_hard/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/bool_q/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/bool_q/bool_q.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/bool_q/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/drop/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/drop/drop.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/drop/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/drop/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/equity_med_qa/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/equity_med_qa/equity_med_qa.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/equity_med_qa/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/equity_med_qa/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/gsm8k/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/gsm8k/gsm8k.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/gsm8k/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/hellaswag/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/hellaswag/hellaswag.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/hellaswag/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/hellaswag/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/human_eval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/human_eval/human_eval.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/human_eval/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/human_eval/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/ifeval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/ifeval/ifeval.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/ifeval/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/lambada/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/lambada/lambada.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/lambada/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/logi_qa/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/logi_qa/logi_qa.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/logi_qa/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/logi_qa/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/math_qa/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/math_qa/math_qa.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/math_qa/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/math_qa/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/mmlu/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/mmlu/mmlu.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/mmlu/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/mmlu/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/modes/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/results.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/squad/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/squad/squad.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/squad/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/squad/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/tasks/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/truthful_qa/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/truthful_qa/mode.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/truthful_qa/task.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/truthful_qa/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/truthful_qa/truthful_qa.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/winogrande/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/winogrande/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/benchmarks/winogrande/winogrande.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/abstention.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/base_classifier.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/clarification.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/classifier/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/classifier/classifier.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/classifier/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/classifier/templates/_experimental_system_one_classify.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/classifier/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/classifier/templates/classify_multi_turn.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/classifier/templates/classify_single_turn.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/data_leakage.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/escalation.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/forbidden_commitments.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/instruction_completeness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/prompt_injection.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/refusal.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/required_disclosure.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/resolution.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/response_language.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/scope_adherence.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/tone_adherence.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/classifiers/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/app.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/auth/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/auth/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/auth/flow.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/diagnose/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/diagnose/diagnose.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/dotenv_handler.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/generate/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/generate/command.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/generate/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/inspect.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/_speech.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/anthropic.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/azure.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/bedrock.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/deepseek.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/gemini.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/grok.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/litellm.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/local_embeddings.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/local_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/moonshot.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/ollama.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/openai.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/openrouter.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/llms/portkey.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/stt/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/stt/command.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/system_one/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/system_one/typesafe.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/tts/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/providers/tts/command.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/test/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/test/command.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/cli/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/confident/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/confident/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/confident/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/dotenv_handler.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/eval_mode.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/logging.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/mode.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/settings.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/settings_manager.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/config/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/constants.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/contextvars.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/dataset/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/dataset/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/dataset/dataset.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/dataset/expectations.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/dataset/golden.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/dataset/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/dataset/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/compare.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/configs.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/console_report.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/evaluate.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/execute/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/execute/_common.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/execute/agentic.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/execute/e2e.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/execute/loop.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/execute/trace_scope.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/expectations.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/inspect_prompt.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/local_store.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/evaluate/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/__main__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/app.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/fixtures/test_run_sample.json +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/loader.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/styles.tcss +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/widgets/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/widgets/_styling.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/widgets/details.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/widgets/header_bar.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/widgets/help_modal.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/widgets/search_bar.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/inspect/widgets/span_tree.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/agentcore/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/agentcore/instrumentator.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/agentcore/otel.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/crewai/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/crewai/handler.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/crewai/subs.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/crewai/tool.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/crewai/wrapper.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/google_adk/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/google_adk/otel.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/hugging_face/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/hugging_face/callback.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/hugging_face/rich_manager.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/hugging_face/tests/test_callbacks.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/hugging_face/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/langchain/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/langchain/callback.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/langchain/patch.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/langchain/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/llama_index/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/llama_index/handler.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/llama_index/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/openinference/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/openinference/instrumentator.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/openinference/otel.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/pydantic_ai/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/pydantic_ai/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/pydantic_ai/instrumentator.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/pydantic_ai/otel.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/strands/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/strands/instrumentator.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/integrations/strands/otel.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/key_handler.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/agent_loop_detection/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/agent_loop_detection/agent_loop_detection.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/answer_relevancy.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/templates/generate_statements.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/answer_relevancy/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/arena_g_eval.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/templates/generate_arena_winner.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/templates/generate_evaluation_steps.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/templates/rewrite_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/arena_g_eval/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/argument_correctness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/argument_correctness/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/audio_glitch/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/audio_glitch/_detectors.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/audio_glitch/audio_glitch.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/audio_glitch/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/audio_glitch/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/audio_glitch/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/base_metric.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/bias.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/templates/generate_opinions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/bias/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/community/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/community/citation_faithfulness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/community/citation_faithfulness/citation_faithfulness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/community/citation_faithfulness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/community/citation_faithfulness/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/contextual_precision.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_precision/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/contextual_recall.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_recall/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/contextual_relevancy.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/contextual_relevancy/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/conversation_completeness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/templates/extract_user_intentions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversation_completeness/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_dag/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_dag/conversational_dag.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_dag/nodes.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_dag/templates/ConversationalBinaryJudgement/generate_binary_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_dag/templates/ConversationalNonBinaryJudgement/generate_non_binary_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_dag/templates/ConversationalTaskNode/generate_task_output.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_dag/templates/ConversationalVerdictNode/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_g_eval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_g_eval/conversational_g_eval.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_g_eval/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_g_eval/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_g_eval/templates/generate_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_g_eval/templates/generate_evaluation_steps.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_jev_eval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/conversational_jev_eval/conversational_jev_eval.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/dag.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/graph.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/nodes.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/runner.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/serialization/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/serialization/registry.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/serialization/serialization.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/serialization/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/templates/BinaryJudgement/generate_binary_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/templates/NonBinaryJudgement/generate_non_binary_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/templates/TaskNode/generate_task_output.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/templates/VerdictNode/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/dag/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/exact_match/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/exact_match/exact_match.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/faithfulness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/templates/generate_claims.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/templates/generate_truths.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/faithfulness/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/g_eval.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/templates/generate_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/templates/generate_evaluation_steps.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/templates/generate_strict_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/templates/generate_strict_trace_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/templates/generate_trace_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/templates/generate_trace_evaluation_steps.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/g_eval/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/goal_accuracy.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/templates/_experimental_system_one_goal_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/templates/_experimental_system_one_plan_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/templates/get_accuracy_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/templates/get_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/goal_accuracy/templates/get_plan_evaluation_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/hallucination.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/hallucination/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/jev_eval/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/jev_eval/jev_eval.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/jev_eval/questions.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/jev_eval/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/json_correctness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/json_correctness/json_correctness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/json_correctness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/json_correctness/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/json_correctness/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/knowledge_retention.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/templates/extract_data.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/knowledge_retention/templates/generate_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/mcp_task_completion.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/multi_turn_mcp_use_metric.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/_experimental_system_one_mcp_use_args_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/_experimental_system_one_mcp_use_primitive_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/_experimental_system_one_mcp_use_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/_experimental_system_one_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/generate_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/get_args_correctness_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/get_task_completion_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/templates/get_tool_correctness_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/mcp_use_metric.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/templates/_experimental_system_one_args_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/templates/_experimental_system_one_primitive_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/templates/get_mcp_argument_correctness_prompt.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/mcp_use_metric/templates/get_primitive_correctness_prompt.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/misuse.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/templates/generate_misuses.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/misuse/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_coherence/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_coherence/image_coherence.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_coherence/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_coherence/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_coherence/templates/evaluate_image_coherence.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_editing/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_editing/image_editing.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_editing/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_editing/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_editing/templates/generate_perceptual_quality_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_editing/templates/generate_semantic_consistency_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_helpfulness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_helpfulness/image_helpfulness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_helpfulness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_helpfulness/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_helpfulness/templates/evaluate_image_helpfulness.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_reference/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_reference/image_reference.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_reference/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_reference/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/image_reference/templates/evaluate_image_reference.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/text_to_image/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/text_to_image/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/text_to_image/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/text_to_image/templates/generate_perceptual_quality_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/text_to_image/templates/generate_semantic_consistency_evaluation_results.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/multimodal_metrics/text_to_image/text_to_image.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/non_advice.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/templates/generate_advices.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/non_advice/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pattern_match/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pattern_match/pattern_match.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/pii_leakage.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/templates/extract_pii.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/pii_leakage/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/plan_adherence.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/templates/_experimental_system_one_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/templates/evaluate_adherence.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_adherence/templates/extract_plan_from_trace.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_quality/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_quality/plan_quality.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_quality/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_quality/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_quality/templates/_experimental_system_one_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_quality/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/plan_quality/templates/evaluate_plan_quality.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/prompt_alignment.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/prompt_alignment/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/ragas.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/retrieval_context_display.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/role_adherence.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/templates/extract_out_of_character_response_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_adherence/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/role_violation.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/templates/detect_role_violations.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/role_violation/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/step_efficiency.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/templates/_experimental_system_one_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/templates/extract_task_from_trace.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/step_efficiency/templates/get_execution_efficiency.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/summarization.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/templates/generate_alignment_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/templates/generate_answers.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/templates/generate_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/summarization/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/task_completion.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/templates/_experimental_system_one_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/templates/extract_goal_and_outcome.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/templates/extract_task_and_outcome_from_trace.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/task_completion/templates/generate_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_correctness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_correctness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_correctness/templates/_experimental_system_one_tool_selection_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_correctness/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_correctness/templates/get_tool_selection_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_correctness/tool_correctness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_permission/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_permission/tool_permission.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/_experimental_system_one_argument_correctness_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/_experimental_system_one_tool_selection_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/get_argument_correctness_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/get_tool_argument_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/get_tool_selection_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/templates/get_tool_selection_score.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/tool_use/tool_use.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/templates/_experimental_system_one_answered_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/templates/_experimental_system_one_on_topic_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/templates/get_qa_pair_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/templates/get_qa_pairs.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/topic_adherence/topic_adherence.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/templates/generate_opinions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/toxicity/toxicity.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_audio_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_audio_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/generate_audio_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/generate_audio_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/transcription_accuracy/transcription_accuracy.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/templates/generate_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_precision/turn_contextual_precision.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/templates/generate_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_recall/turn_contextual_recall.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/templates/generate_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_contextual_relevancy/turn_contextual_relevancy.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/generate_claims.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/generate_final_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/generate_truths.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_faithfulness/turn_faithfulness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/templates/_experimental_system_one_questions.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/templates/generate_reason.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/templates/generate_verdicts.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/turn_relevancy/turn_relevancy.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/generation.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/metrics.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/models.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/qag.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/system_one.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/system_one_batch.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/test_case.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/turns.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/utils/verbose.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/_analysis.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/_detectors.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/base_metric.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/consistency.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/integrity.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/intelligibility.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/naturalness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/reliability.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/responsiveness.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/metrics/voice/turn_taking.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/model_integrations/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/model_integrations/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/model_integrations/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/_summac_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/answer_relevancy_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/base_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/detoxify_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/embedding_models/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/embedding_models/azure_embedding_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/embedding_models/local_embedding_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/embedding_models/ollama_embedding_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/embedding_models/openai_embedding_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/hallucination_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/amazon_bedrock_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/anthropic_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/azure_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/constants.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/deepseek_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/gateway_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/gemini_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/grok_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/kimi_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/litellm_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/local_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/multimodal.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/ollama_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/openai_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/openrouter_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/portkey_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/llms/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/retry_policy.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/speech.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/speech_selection.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/_audio.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/_stream.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/assemblyai/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/assemblyai/assemblyai.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/assemblyai/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/cartesia/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/cartesia/cartesia.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/cartesia/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/deepgram/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/deepgram/deepgram.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/deepgram/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/elevenlabs/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/elevenlabs/elevenlabs.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/elevenlabs/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/openai/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/stt/openai/openai.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/summac_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/system_one/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/system_one/constants.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/system_one/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/_frames.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/cartesia/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/cartesia/cartesia.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/cartesia/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/deepgram/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/deepgram/deepgram.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/deepgram/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/elevenlabs/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/elevenlabs/elevenlabs.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/elevenlabs/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/openai/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/tts/openai/openai.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/unbias_model.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/models/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai/extractors.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai/patch.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai_agents/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai_agents/agent.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai_agents/callback_handler.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai_agents/extractors.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai_agents/patch.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/openai_agents/runner.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/base.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/configs.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/copro/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/copro/copro.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/copro/proposer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/copro/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/copro/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/gepa/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/gepa/gepa.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/miprov2/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/miprov2/bootstrapper.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/miprov2/miprov2.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/miprov2/proposer/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/miprov2/proposer/proposer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/miprov2/proposer/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/miprov2/proposer/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/simba/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/simba/proposer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/simba/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/simba/simba.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/algorithms/simba/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/configs.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/policies.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/prompt_optimizer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/rewriter/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/rewriter/rewriter.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/rewriter/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/rewriter/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/scorer/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/scorer/base.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/scorer/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/scorer/scorer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/scorer/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/scorer/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/optimizer/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/plugins/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/plugins/plugin.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/progress_context.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/prompt/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/prompt/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/prompt/prompt.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/prompt/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/py.typed +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/red_teaming/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/scorer/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/scorer/scorer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/controller/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/controller/controller.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/controller/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/controller/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/conversation_simulator.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/interrupt_template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/simulation_graph/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/simulation_graph/default.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/simulation_graph/node.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/simulation_graph/runner.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/simulation_graph/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/templates/class.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/templates/decide_interrupt.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/templates/interruption_bias_frequent.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/templates/interruption_bias_normal.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/templates/interruption_bias_rare.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/templates/interruption_frustration.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/simulator/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/singleton.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/sqlite_store/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/sqlite_store/store.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/base_synthesizer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/chunking/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/chunking/context_generator.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/chunking/doc_chunker.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/config.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/schema.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/synthesizer.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/templates/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/templates/template.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/templates/template_extraction.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/templates/template_prompt.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/synthesizer/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/client.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/context.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/events.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/identity.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/judge.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/properties.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/telemetry/runtime.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/classifiers/templates.json +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/fragments/faithfulness_verdicts_example_multimodal.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/fragments/faithfulness_verdicts_format_instruction.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/fragments/faithfulness_verdicts_guidelines_multimodal.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/fragments/faithfulness_verdicts_guidelines_text_only.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/fragments/multimodal_image_generation_eval_context.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/fragments/multimodal_input_rules.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/fragments/multimodal_input_rules_turn_metric.txt +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/metrics/templates.json +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/resolver.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/simulator/templates.json +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/templates/template_class.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_case/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_case/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_case/arena_test_case.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_case/conversational_test_case.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_case/llm_test_case.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_case/mcp.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_case/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_run/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_run/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_run/cache.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_run/hooks.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_run/hyperparameters.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/test_run/test_run.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/context.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/integrations.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/internal.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/offline_evals/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/offline_evals/api.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/offline_evals/span.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/offline_evals/thread.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/offline_evals/trace.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/otel/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/otel/attributes.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/otel/context_aware_processor.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/otel/exporter.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/otel/test_exporter.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/otel/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/patchers.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/perf_epoch_bridge.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/trace_context.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/trace_test_manager.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/tracing.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/tracing/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/background.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/config.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/audio_utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/elevenlabs/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/elevenlabs/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/elevenlabs/connector.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/livekit/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/livekit/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/livekit/connector.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/pipecat/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/pipecat/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/pipecat/connector.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/pipecat/protobuf.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/vapi/README.md +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/vapi/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/providers/vapi/connector.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/transports/__init__.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/transports/base.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/transports/callback.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/transports/webrtc.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/transports/websocket.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/turn_engine.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/types.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/connectors/utils.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/duplex.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/floor_control.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/interruption.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/output.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/protocol.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/recording.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/streaming.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/timeline.py +0 -0
- {deepeval-4.3.0 → deepeval-4.3.2}/deepeval/voice/turn_detection.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: deepeval
|
|
3
|
-
Version: 4.3.
|
|
3
|
+
Version: 4.3.2
|
|
4
4
|
Summary: The LLM Evaluation Framework
|
|
5
5
|
License: Apache-2.0
|
|
6
6
|
License-File: LICENSE.md
|
|
@@ -114,18 +114,18 @@ Description-Content-Type: text/markdown
|
|
|
114
114
|
|
|
115
115
|
**DeepEval** is a simple-to-use, open-source LLM evaluation framework, for evaluating large-language model systems. It is similar to Pytest but specialized for unit testing LLM apps. DeepEval incorporates the latest research to run evals via metrics such as G-Eval, task completion, answer relevancy, hallucination, etc., which use LLM-as-a-judge and other NLP models that run **locally on your machine**.
|
|
116
116
|
|
|
117
|
-
Whether you're building AI agents, RAG pipelines, or
|
|
117
|
+
Whether you're building AI agents, multi-turn chatbots, voice agents, RAG pipelines, or anything else, implemented via LangChain or OpenAI, DeepEval has you covered. With it, you can easily evaluate:
|
|
118
118
|
|
|
119
119
|
- **LLM apps end-to-end** as black boxes
|
|
120
|
-
- **Complete agent trajectories** across every decision and action
|
|
121
|
-
- **Individual agent steps** such as LLM calls, tool use, retrieval, and sub-agent handoffs
|
|
120
|
+
- **Complete AI agent trajectories** across every decision and action
|
|
121
|
+
- **Individual AI agent steps** such as LLM calls, tool use, retrieval, and sub-agent handoffs
|
|
122
122
|
|
|
123
123
|
Use these evaluations to determine the optimal models, prompts, and architecture to improve your AI quality, prevent prompt drifting, or even transition from OpenAI to Claude with confidence.
|
|
124
124
|
|
|
125
125
|
> Jev is now available in DeepEval, both in existing metrics and the latest [JevEval.](https://deepeval.com/docs/metrics-jev-eval)
|
|
126
126
|
|
|
127
127
|
> [!IMPORTANT]
|
|
128
|
-
>
|
|
128
|
+
> If you're already in production, [Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=signup_callout&ref_page=github/readme) surfaces failing traces before anyone has written an eval for them, clusters them into failure modes, and turns them into your next eval.
|
|
129
129
|
>
|
|
130
130
|
> 
|
|
131
131
|
|
|
@@ -142,9 +142,9 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
142
142
|
- [DAG](https://deepeval.com/docs/metrics-dag) — DeepEval's graph-based deterministic LLM-as-a-judge metric builder
|
|
143
143
|
|
|
144
144
|
- <details>
|
|
145
|
-
<summary><b>
|
|
145
|
+
<summary><b>AI Agent Metrics</b></summary>
|
|
146
146
|
|
|
147
|
-
- [Task Completion](https://deepeval.com/docs/metrics-task-completion) — evaluate whether an agent accomplished its goal
|
|
147
|
+
- [Task Completion](https://deepeval.com/docs/metrics-task-completion) — evaluate whether an AI agent accomplished its goal
|
|
148
148
|
- [Tool Correctness](https://deepeval.com/docs/metrics-tool-correctness) — check if the right tools were called with the right arguments
|
|
149
149
|
- [Goal Accuracy](https://deepeval.com/docs/metrics-goal-accuracy) — measure how accurately the agent achieved the intended goal
|
|
150
150
|
- [Step Efficiency](https://deepeval.com/docs/metrics-step-efficiency) — evaluate whether the agent took unnecessary steps
|
|
@@ -155,18 +155,6 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
155
155
|
|
|
156
156
|
</details>
|
|
157
157
|
|
|
158
|
-
- <details>
|
|
159
|
-
<summary><b>RAG Metrics</b></summary>
|
|
160
|
-
|
|
161
|
-
- [Answer Relevancy](https://deepeval.com/docs/metrics-answer-relevancy) — measure how relevant the RAG pipeline's output is to the input
|
|
162
|
-
- [Faithfulness](https://deepeval.com/docs/metrics-faithfulness) — evaluate whether the RAG pipeline's output factually aligns with the retrieval context
|
|
163
|
-
- [Contextual Recall](https://deepeval.com/docs/metrics-contextual-recall) — measure how well the RAG pipeline's retrieval context aligns with the expected output
|
|
164
|
-
- [Contextual Precision](https://deepeval.com/docs/metrics-contextual-precision) — evaluate whether relevant nodes in the RAG pipeline's retrieval context are ranked higher
|
|
165
|
-
- [Contextual Relevancy](https://deepeval.com/docs/metrics-contextual-relevancy) — measure the overall relevance of the RAG pipeline's retrieval context to the input
|
|
166
|
-
- [RAGAS](https://deepeval.com/docs/metrics-ragas) — average of answer relevancy, faithfulness, contextual precision, and contextual recall
|
|
167
|
-
|
|
168
|
-
</details>
|
|
169
|
-
|
|
170
158
|
- <details>
|
|
171
159
|
<summary><b>Multi-Turn Metrics</b></summary>
|
|
172
160
|
|
|
@@ -178,6 +166,29 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
178
166
|
|
|
179
167
|
</details>
|
|
180
168
|
|
|
169
|
+
- <details>
|
|
170
|
+
<summary><b>Voice Agent Metrics</b></summary>
|
|
171
|
+
|
|
172
|
+
- [Agent Responsiveness](https://deepeval.com/docs/metrics-agent-responsiveness) — check whether the voice agent answered when it was spoken to
|
|
173
|
+
- [Turn-Taking Naturalness](https://deepeval.com/docs/metrics-turn-taking-naturalness) — measure response latency and interruptions across the call
|
|
174
|
+
- [Voice Naturalness](https://deepeval.com/docs/metrics-voice-naturalness) — evaluate how natural the voice agent sounds
|
|
175
|
+
- [Transcription Accuracy](https://deepeval.com/docs/metrics-transcription-accuracy) — check whether the voice agent's speech-to-text heard the caller correctly
|
|
176
|
+
- [Audio Glitch](https://deepeval.com/docs/metrics-audio-glitch) — detect audio artifacts in the voice agent's speech
|
|
177
|
+
|
|
178
|
+
</details>
|
|
179
|
+
|
|
180
|
+
- <details>
|
|
181
|
+
<summary><b>RAG Metrics</b></summary>
|
|
182
|
+
|
|
183
|
+
- [Answer Relevancy](https://deepeval.com/docs/metrics-answer-relevancy) — measure how relevant the output is to the input
|
|
184
|
+
- [Faithfulness](https://deepeval.com/docs/metrics-faithfulness) — evaluate whether the RAG pipeline's output factually aligns with the retrieval context
|
|
185
|
+
- [Contextual Recall](https://deepeval.com/docs/metrics-contextual-recall) — measure how well the RAG pipeline's retrieval context aligns with the expected output
|
|
186
|
+
- [Contextual Precision](https://deepeval.com/docs/metrics-contextual-precision) — evaluate whether relevant nodes in the RAG pipeline's retrieval context are ranked higher
|
|
187
|
+
- [Contextual Relevancy](https://deepeval.com/docs/metrics-contextual-relevancy) — measure the overall relevance of the RAG pipeline's retrieval context to the input
|
|
188
|
+
- [RAGAS](https://deepeval.com/docs/metrics-ragas) — average of answer relevancy, faithfulness, contextual precision, and contextual recall
|
|
189
|
+
|
|
190
|
+
</details>
|
|
191
|
+
|
|
181
192
|
- <details>
|
|
182
193
|
<summary><b>MCP Metrics</b></summary>
|
|
183
194
|
|
|
@@ -221,7 +232,7 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
221
232
|
|
|
222
233
|
# 🔌 Integrations
|
|
223
234
|
|
|
224
|
-
DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and more.
|
|
235
|
+
DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and more. The same traces can go to **Confident AI** once you're live, where evals run on every production trace.
|
|
225
236
|
|
|
226
237
|
## Frameworks
|
|
227
238
|
|
|
@@ -236,15 +247,16 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
|
|
|
236
247
|
- [Mastra](https://www.deepeval.com/integrations/frameworks/mastra?utm_source=GitHub) — evaluate Mastra agents and workflows with native tracing
|
|
237
248
|
- [OpenAI](https://www.deepeval.com/integrations/frameworks/openai?utm_source=GitHub) — evaluate and trace OpenAI applications via a client wrapper
|
|
238
249
|
- [OpenAI Agents](https://www.deepeval.com/integrations/frameworks/openai-agents?utm_source=GitHub) — evaluate OpenAI Agents end-to-end in under a minute
|
|
239
|
-
- [LlamaIndex](https://www.deepeval.com/integrations/frameworks/llamaindex?utm_source=GitHub) — evaluate RAG applications built with LlamaIndex
|
|
250
|
+
- [LlamaIndex](https://www.deepeval.com/integrations/frameworks/llamaindex?utm_source=GitHub) — evaluate AI agents and RAG applications built with LlamaIndex
|
|
240
251
|
|
|
241
252
|
## ☁️ Platform + Ecosystem
|
|
242
253
|
|
|
243
|
-
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=platform_section&ref_page=github/readme) is
|
|
254
|
+
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=platform_section&ref_page=github/readme) is AI monitoring for applications in production. DeepEval tests what you know to test before you ship; Confident AI finds what you didn't, and it's model- and framework-agnostic.
|
|
244
255
|
|
|
245
|
-
-
|
|
246
|
-
-
|
|
247
|
-
-
|
|
256
|
+
- Failing traces surface before anyone has written an eval for them, clustered into failure modes, with user sentiment and behavior across traces.
|
|
257
|
+
- Failing traces route to the right annotators and become goldens, so production issues turn into your next eval.
|
|
258
|
+
- For enterprise teams, one system for AI quality: governance as release gates and native red teaming.
|
|
259
|
+
- Prefer to stay in your editor? Inspect failing traces and pull the datasets built from them in Claude Code or Cursor through Confident AI's [MCP server](https://github.com/confident-ai/confident-mcp-server).
|
|
248
260
|
|
|
249
261
|
<p align="center">
|
|
250
262
|
<img src="assets/confident-mcp-architecture.png" alt="Confident AI MCP Architecture" width="500">
|
|
@@ -254,7 +266,7 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
|
|
|
254
266
|
|
|
255
267
|
# 🤖 Vibe-Coder QuickStart
|
|
256
268
|
|
|
257
|
-
Want your coding agent to add evals and fix failures for you? Install the DeepEval skill, point it at your agent, RAG pipeline, or
|
|
269
|
+
Want your coding agent to add evals and fix failures for you? Install the DeepEval skill, point it at your AI agent, multi-turn chatbot, voice agent, RAG pipeline, or any other LLM app, and ask it to generate a dataset, write the eval suite, run `deepeval test run`, and iterate on the failing metrics.
|
|
258
270
|
|
|
259
271
|
[Start with the 5-minute vibe-coder guide](https://deepeval.com/docs/vibe-coder-quickstart?utm_source=GitHub).
|
|
260
272
|
|
|
@@ -262,7 +274,7 @@ Want your coding agent to add evals and fix failures for you? Install the DeepEv
|
|
|
262
274
|
|
|
263
275
|
# 🚀 Human QuickStart
|
|
264
276
|
|
|
265
|
-
Let's pretend your LLM application is a
|
|
277
|
+
Let's pretend your LLM application is a customer support AI agent; here's how DeepEval can help test what you've built.
|
|
266
278
|
|
|
267
279
|
## Installation
|
|
268
280
|
|
|
@@ -289,10 +301,10 @@ Follow the instructions in the CLI to create an account, copy your API key, and
|
|
|
289
301
|
Create a test file:
|
|
290
302
|
|
|
291
303
|
```bash
|
|
292
|
-
touch
|
|
304
|
+
touch test_ai_agent.py
|
|
293
305
|
```
|
|
294
306
|
|
|
295
|
-
Open `
|
|
307
|
+
Open `test_ai_agent.py` and write your first test case to run an **end-to-end** evaluation using DeepEval, which treats your LLM app as a black-box:
|
|
296
308
|
|
|
297
309
|
```python
|
|
298
310
|
import pytest
|
|
@@ -312,7 +324,6 @@ def test_case():
|
|
|
312
324
|
# Replace this with the actual output from your LLM application
|
|
313
325
|
actual_output="You have 30 days to get a full refund at no extra cost.",
|
|
314
326
|
expected_output="We offer a 30-day full refund at no extra costs.",
|
|
315
|
-
retrieval_context=["All customers are eligible for a 30 day full refund at no extra costs."]
|
|
316
327
|
)
|
|
317
328
|
assert_test(test_case, [correctness_metric])
|
|
318
329
|
```
|
|
@@ -323,10 +334,10 @@ Set your `OPENAI_API_KEY` as an environment variable (you can also evaluate usin
|
|
|
323
334
|
export OPENAI_API_KEY="..."
|
|
324
335
|
```
|
|
325
336
|
|
|
326
|
-
And finally, run `
|
|
337
|
+
And finally, run `test_ai_agent.py` in the CLI:
|
|
327
338
|
|
|
328
339
|
```
|
|
329
|
-
deepeval test run
|
|
340
|
+
deepeval test run test_ai_agent.py
|
|
330
341
|
```
|
|
331
342
|
|
|
332
343
|
**Congratulations! Your test case should have passed ✅** Let's break down what happened.
|
|
@@ -342,7 +353,7 @@ deepeval test run test_chatbot.py
|
|
|
342
353
|
|
|
343
354
|
## Evals With Full Traceability
|
|
344
355
|
|
|
345
|
-
Use `evals_iterator()` to run the same dataset through your app, whether you instrument it manually or through one of DeepEval's framework integrations. Because tracing captures the ordered sequence of model decisions, tool calls, and intermediate steps, you can run [trajectory-based evaluations](https://deepeval.com/docs/evaluation-trajectory-based-llm-evals?utm_source=GitHub) over the complete path your agent takes.
|
|
356
|
+
Use `evals_iterator()` to run the same dataset through your app, whether you instrument it manually or through one of DeepEval's framework integrations. Because tracing captures the ordered sequence of model decisions, tool calls, and intermediate steps, you can run [trajectory-based evaluations](https://deepeval.com/docs/evaluation-trajectory-based-llm-evals?utm_source=GitHub) over the complete path your AI agent takes.
|
|
346
357
|
|
|
347
358
|
Here's an example of manual instrumentation:
|
|
348
359
|
|
|
@@ -659,7 +670,7 @@ print(answer_relevancy_metric.score)
|
|
|
659
670
|
print(answer_relevancy_metric.reason)
|
|
660
671
|
```
|
|
661
672
|
|
|
662
|
-
Note that some metrics are for
|
|
673
|
+
Note that some metrics are built for specific use cases, such as AI agents, multi-turn chatbots, voice agents, RAG, and more. Make sure to use our docs to pick the right one for your use case.
|
|
663
674
|
|
|
664
675
|
## A Note on Env Variables (.env / .env.local)
|
|
665
676
|
|
|
@@ -674,23 +685,19 @@ cp .env.example .env.local
|
|
|
674
685
|
|
|
675
686
|
# DeepEval With Confident AI
|
|
676
687
|
|
|
677
|
-
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=cli_login_section&ref_page=github/readme)
|
|
688
|
+
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=cli_login_section&ref_page=github/readme) monitors AI applications in production. Evals run on every production trace, failing traces are clustered into failure modes, and each one can be routed to the right annotators — engineers, QA, domain experts or PMs — and turned into a golden for your next eval. The traces your app already produces with DeepEval stream to it with no code changes.
|
|
678
689
|
|
|
679
|
-
Log in from the CLI to
|
|
690
|
+
Log in from the CLI to connect:
|
|
680
691
|
|
|
681
692
|
```bash
|
|
682
693
|
deepeval login
|
|
683
694
|
```
|
|
684
695
|
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
```bash
|
|
688
|
-
deepeval test run test_chatbot.py
|
|
689
|
-
```
|
|
696
|
+
Test runs also appear on the platform once you're logged in.
|
|
690
697
|
|
|
691
698
|

|
|
692
699
|
|
|
693
|
-
Prefer to stay in your IDE?
|
|
700
|
+
Prefer to stay in your IDE? Inspect failing traces and pull the datasets built from them through [Confident AI's MCP server](https://github.com/confident-ai/confident-mcp-server) without leaving your editor.
|
|
694
701
|
|
|
695
702
|
<p align="center">
|
|
696
703
|
<img src="assets/confident-mcp-architecture.png" alt="Confident AI MCP Architecture" width="500">
|
|
@@ -61,18 +61,18 @@
|
|
|
61
61
|
|
|
62
62
|
**DeepEval** is a simple-to-use, open-source LLM evaluation framework, for evaluating large-language model systems. It is similar to Pytest but specialized for unit testing LLM apps. DeepEval incorporates the latest research to run evals via metrics such as G-Eval, task completion, answer relevancy, hallucination, etc., which use LLM-as-a-judge and other NLP models that run **locally on your machine**.
|
|
63
63
|
|
|
64
|
-
Whether you're building AI agents, RAG pipelines, or
|
|
64
|
+
Whether you're building AI agents, multi-turn chatbots, voice agents, RAG pipelines, or anything else, implemented via LangChain or OpenAI, DeepEval has you covered. With it, you can easily evaluate:
|
|
65
65
|
|
|
66
66
|
- **LLM apps end-to-end** as black boxes
|
|
67
|
-
- **Complete agent trajectories** across every decision and action
|
|
68
|
-
- **Individual agent steps** such as LLM calls, tool use, retrieval, and sub-agent handoffs
|
|
67
|
+
- **Complete AI agent trajectories** across every decision and action
|
|
68
|
+
- **Individual AI agent steps** such as LLM calls, tool use, retrieval, and sub-agent handoffs
|
|
69
69
|
|
|
70
70
|
Use these evaluations to determine the optimal models, prompts, and architecture to improve your AI quality, prevent prompt drifting, or even transition from OpenAI to Claude with confidence.
|
|
71
71
|
|
|
72
72
|
> Jev is now available in DeepEval, both in existing metrics and the latest [JevEval.](https://deepeval.com/docs/metrics-jev-eval)
|
|
73
73
|
|
|
74
74
|
> [!IMPORTANT]
|
|
75
|
-
>
|
|
75
|
+
> If you're already in production, [Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=signup_callout&ref_page=github/readme) surfaces failing traces before anyone has written an eval for them, clusters them into failure modes, and turns them into your next eval.
|
|
76
76
|
>
|
|
77
77
|
> 
|
|
78
78
|
|
|
@@ -89,9 +89,9 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
89
89
|
- [DAG](https://deepeval.com/docs/metrics-dag) — DeepEval's graph-based deterministic LLM-as-a-judge metric builder
|
|
90
90
|
|
|
91
91
|
- <details>
|
|
92
|
-
<summary><b>
|
|
92
|
+
<summary><b>AI Agent Metrics</b></summary>
|
|
93
93
|
|
|
94
|
-
- [Task Completion](https://deepeval.com/docs/metrics-task-completion) — evaluate whether an agent accomplished its goal
|
|
94
|
+
- [Task Completion](https://deepeval.com/docs/metrics-task-completion) — evaluate whether an AI agent accomplished its goal
|
|
95
95
|
- [Tool Correctness](https://deepeval.com/docs/metrics-tool-correctness) — check if the right tools were called with the right arguments
|
|
96
96
|
- [Goal Accuracy](https://deepeval.com/docs/metrics-goal-accuracy) — measure how accurately the agent achieved the intended goal
|
|
97
97
|
- [Step Efficiency](https://deepeval.com/docs/metrics-step-efficiency) — evaluate whether the agent took unnecessary steps
|
|
@@ -102,18 +102,6 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
102
102
|
|
|
103
103
|
</details>
|
|
104
104
|
|
|
105
|
-
- <details>
|
|
106
|
-
<summary><b>RAG Metrics</b></summary>
|
|
107
|
-
|
|
108
|
-
- [Answer Relevancy](https://deepeval.com/docs/metrics-answer-relevancy) — measure how relevant the RAG pipeline's output is to the input
|
|
109
|
-
- [Faithfulness](https://deepeval.com/docs/metrics-faithfulness) — evaluate whether the RAG pipeline's output factually aligns with the retrieval context
|
|
110
|
-
- [Contextual Recall](https://deepeval.com/docs/metrics-contextual-recall) — measure how well the RAG pipeline's retrieval context aligns with the expected output
|
|
111
|
-
- [Contextual Precision](https://deepeval.com/docs/metrics-contextual-precision) — evaluate whether relevant nodes in the RAG pipeline's retrieval context are ranked higher
|
|
112
|
-
- [Contextual Relevancy](https://deepeval.com/docs/metrics-contextual-relevancy) — measure the overall relevance of the RAG pipeline's retrieval context to the input
|
|
113
|
-
- [RAGAS](https://deepeval.com/docs/metrics-ragas) — average of answer relevancy, faithfulness, contextual precision, and contextual recall
|
|
114
|
-
|
|
115
|
-
</details>
|
|
116
|
-
|
|
117
105
|
- <details>
|
|
118
106
|
<summary><b>Multi-Turn Metrics</b></summary>
|
|
119
107
|
|
|
@@ -125,6 +113,29 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
125
113
|
|
|
126
114
|
</details>
|
|
127
115
|
|
|
116
|
+
- <details>
|
|
117
|
+
<summary><b>Voice Agent Metrics</b></summary>
|
|
118
|
+
|
|
119
|
+
- [Agent Responsiveness](https://deepeval.com/docs/metrics-agent-responsiveness) — check whether the voice agent answered when it was spoken to
|
|
120
|
+
- [Turn-Taking Naturalness](https://deepeval.com/docs/metrics-turn-taking-naturalness) — measure response latency and interruptions across the call
|
|
121
|
+
- [Voice Naturalness](https://deepeval.com/docs/metrics-voice-naturalness) — evaluate how natural the voice agent sounds
|
|
122
|
+
- [Transcription Accuracy](https://deepeval.com/docs/metrics-transcription-accuracy) — check whether the voice agent's speech-to-text heard the caller correctly
|
|
123
|
+
- [Audio Glitch](https://deepeval.com/docs/metrics-audio-glitch) — detect audio artifacts in the voice agent's speech
|
|
124
|
+
|
|
125
|
+
</details>
|
|
126
|
+
|
|
127
|
+
- <details>
|
|
128
|
+
<summary><b>RAG Metrics</b></summary>
|
|
129
|
+
|
|
130
|
+
- [Answer Relevancy](https://deepeval.com/docs/metrics-answer-relevancy) — measure how relevant the output is to the input
|
|
131
|
+
- [Faithfulness](https://deepeval.com/docs/metrics-faithfulness) — evaluate whether the RAG pipeline's output factually aligns with the retrieval context
|
|
132
|
+
- [Contextual Recall](https://deepeval.com/docs/metrics-contextual-recall) — measure how well the RAG pipeline's retrieval context aligns with the expected output
|
|
133
|
+
- [Contextual Precision](https://deepeval.com/docs/metrics-contextual-precision) — evaluate whether relevant nodes in the RAG pipeline's retrieval context are ranked higher
|
|
134
|
+
- [Contextual Relevancy](https://deepeval.com/docs/metrics-contextual-relevancy) — measure the overall relevance of the RAG pipeline's retrieval context to the input
|
|
135
|
+
- [RAGAS](https://deepeval.com/docs/metrics-ragas) — average of answer relevancy, faithfulness, contextual precision, and contextual recall
|
|
136
|
+
|
|
137
|
+
</details>
|
|
138
|
+
|
|
128
139
|
- <details>
|
|
129
140
|
<summary><b>MCP Metrics</b></summary>
|
|
130
141
|
|
|
@@ -168,7 +179,7 @@ Use these evaluations to determine the optimal models, prompts, and architecture
|
|
|
168
179
|
|
|
169
180
|
# 🔌 Integrations
|
|
170
181
|
|
|
171
|
-
DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and more.
|
|
182
|
+
DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and more. The same traces can go to **Confident AI** once you're live, where evals run on every production trace.
|
|
172
183
|
|
|
173
184
|
## Frameworks
|
|
174
185
|
|
|
@@ -183,15 +194,16 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
|
|
|
183
194
|
- [Mastra](https://www.deepeval.com/integrations/frameworks/mastra?utm_source=GitHub) — evaluate Mastra agents and workflows with native tracing
|
|
184
195
|
- [OpenAI](https://www.deepeval.com/integrations/frameworks/openai?utm_source=GitHub) — evaluate and trace OpenAI applications via a client wrapper
|
|
185
196
|
- [OpenAI Agents](https://www.deepeval.com/integrations/frameworks/openai-agents?utm_source=GitHub) — evaluate OpenAI Agents end-to-end in under a minute
|
|
186
|
-
- [LlamaIndex](https://www.deepeval.com/integrations/frameworks/llamaindex?utm_source=GitHub) — evaluate RAG applications built with LlamaIndex
|
|
197
|
+
- [LlamaIndex](https://www.deepeval.com/integrations/frameworks/llamaindex?utm_source=GitHub) — evaluate AI agents and RAG applications built with LlamaIndex
|
|
187
198
|
|
|
188
199
|
## ☁️ Platform + Ecosystem
|
|
189
200
|
|
|
190
|
-
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=platform_section&ref_page=github/readme) is
|
|
201
|
+
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=platform_section&ref_page=github/readme) is AI monitoring for applications in production. DeepEval tests what you know to test before you ship; Confident AI finds what you didn't, and it's model- and framework-agnostic.
|
|
191
202
|
|
|
192
|
-
-
|
|
193
|
-
-
|
|
194
|
-
-
|
|
203
|
+
- Failing traces surface before anyone has written an eval for them, clustered into failure modes, with user sentiment and behavior across traces.
|
|
204
|
+
- Failing traces route to the right annotators and become goldens, so production issues turn into your next eval.
|
|
205
|
+
- For enterprise teams, one system for AI quality: governance as release gates and native red teaming.
|
|
206
|
+
- Prefer to stay in your editor? Inspect failing traces and pull the datasets built from them in Claude Code or Cursor through Confident AI's [MCP server](https://github.com/confident-ai/confident-mcp-server).
|
|
195
207
|
|
|
196
208
|
<p align="center">
|
|
197
209
|
<img src="assets/confident-mcp-architecture.png" alt="Confident AI MCP Architecture" width="500">
|
|
@@ -201,7 +213,7 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
|
|
|
201
213
|
|
|
202
214
|
# 🤖 Vibe-Coder QuickStart
|
|
203
215
|
|
|
204
|
-
Want your coding agent to add evals and fix failures for you? Install the DeepEval skill, point it at your agent, RAG pipeline, or
|
|
216
|
+
Want your coding agent to add evals and fix failures for you? Install the DeepEval skill, point it at your AI agent, multi-turn chatbot, voice agent, RAG pipeline, or any other LLM app, and ask it to generate a dataset, write the eval suite, run `deepeval test run`, and iterate on the failing metrics.
|
|
205
217
|
|
|
206
218
|
[Start with the 5-minute vibe-coder guide](https://deepeval.com/docs/vibe-coder-quickstart?utm_source=GitHub).
|
|
207
219
|
|
|
@@ -209,7 +221,7 @@ Want your coding agent to add evals and fix failures for you? Install the DeepEv
|
|
|
209
221
|
|
|
210
222
|
# 🚀 Human QuickStart
|
|
211
223
|
|
|
212
|
-
Let's pretend your LLM application is a
|
|
224
|
+
Let's pretend your LLM application is a customer support AI agent; here's how DeepEval can help test what you've built.
|
|
213
225
|
|
|
214
226
|
## Installation
|
|
215
227
|
|
|
@@ -236,10 +248,10 @@ Follow the instructions in the CLI to create an account, copy your API key, and
|
|
|
236
248
|
Create a test file:
|
|
237
249
|
|
|
238
250
|
```bash
|
|
239
|
-
touch
|
|
251
|
+
touch test_ai_agent.py
|
|
240
252
|
```
|
|
241
253
|
|
|
242
|
-
Open `
|
|
254
|
+
Open `test_ai_agent.py` and write your first test case to run an **end-to-end** evaluation using DeepEval, which treats your LLM app as a black-box:
|
|
243
255
|
|
|
244
256
|
```python
|
|
245
257
|
import pytest
|
|
@@ -259,7 +271,6 @@ def test_case():
|
|
|
259
271
|
# Replace this with the actual output from your LLM application
|
|
260
272
|
actual_output="You have 30 days to get a full refund at no extra cost.",
|
|
261
273
|
expected_output="We offer a 30-day full refund at no extra costs.",
|
|
262
|
-
retrieval_context=["All customers are eligible for a 30 day full refund at no extra costs."]
|
|
263
274
|
)
|
|
264
275
|
assert_test(test_case, [correctness_metric])
|
|
265
276
|
```
|
|
@@ -270,10 +281,10 @@ Set your `OPENAI_API_KEY` as an environment variable (you can also evaluate usin
|
|
|
270
281
|
export OPENAI_API_KEY="..."
|
|
271
282
|
```
|
|
272
283
|
|
|
273
|
-
And finally, run `
|
|
284
|
+
And finally, run `test_ai_agent.py` in the CLI:
|
|
274
285
|
|
|
275
286
|
```
|
|
276
|
-
deepeval test run
|
|
287
|
+
deepeval test run test_ai_agent.py
|
|
277
288
|
```
|
|
278
289
|
|
|
279
290
|
**Congratulations! Your test case should have passed ✅** Let's break down what happened.
|
|
@@ -289,7 +300,7 @@ deepeval test run test_chatbot.py
|
|
|
289
300
|
|
|
290
301
|
## Evals With Full Traceability
|
|
291
302
|
|
|
292
|
-
Use `evals_iterator()` to run the same dataset through your app, whether you instrument it manually or through one of DeepEval's framework integrations. Because tracing captures the ordered sequence of model decisions, tool calls, and intermediate steps, you can run [trajectory-based evaluations](https://deepeval.com/docs/evaluation-trajectory-based-llm-evals?utm_source=GitHub) over the complete path your agent takes.
|
|
303
|
+
Use `evals_iterator()` to run the same dataset through your app, whether you instrument it manually or through one of DeepEval's framework integrations. Because tracing captures the ordered sequence of model decisions, tool calls, and intermediate steps, you can run [trajectory-based evaluations](https://deepeval.com/docs/evaluation-trajectory-based-llm-evals?utm_source=GitHub) over the complete path your AI agent takes.
|
|
293
304
|
|
|
294
305
|
Here's an example of manual instrumentation:
|
|
295
306
|
|
|
@@ -606,7 +617,7 @@ print(answer_relevancy_metric.score)
|
|
|
606
617
|
print(answer_relevancy_metric.reason)
|
|
607
618
|
```
|
|
608
619
|
|
|
609
|
-
Note that some metrics are for
|
|
620
|
+
Note that some metrics are built for specific use cases, such as AI agents, multi-turn chatbots, voice agents, RAG, and more. Make sure to use our docs to pick the right one for your use case.
|
|
610
621
|
|
|
611
622
|
## A Note on Env Variables (.env / .env.local)
|
|
612
623
|
|
|
@@ -621,23 +632,19 @@ cp .env.example .env.local
|
|
|
621
632
|
|
|
622
633
|
# DeepEval With Confident AI
|
|
623
634
|
|
|
624
|
-
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=cli_login_section&ref_page=github/readme)
|
|
635
|
+
[Confident AI](https://www.confident-ai.com?utm_source=deepeval&utm_medium=github&utm_content=cli_login_section&ref_page=github/readme) monitors AI applications in production. Evals run on every production trace, failing traces are clustered into failure modes, and each one can be routed to the right annotators — engineers, QA, domain experts or PMs — and turned into a golden for your next eval. The traces your app already produces with DeepEval stream to it with no code changes.
|
|
625
636
|
|
|
626
|
-
Log in from the CLI to
|
|
637
|
+
Log in from the CLI to connect:
|
|
627
638
|
|
|
628
639
|
```bash
|
|
629
640
|
deepeval login
|
|
630
641
|
```
|
|
631
642
|
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
```bash
|
|
635
|
-
deepeval test run test_chatbot.py
|
|
636
|
-
```
|
|
643
|
+
Test runs also appear on the platform once you're logged in.
|
|
637
644
|
|
|
638
645
|

|
|
639
646
|
|
|
640
|
-
Prefer to stay in your IDE?
|
|
647
|
+
Prefer to stay in your IDE? Inspect failing traces and pull the datasets built from them through [Confident AI's MCP server](https://github.com/confident-ai/confident-mcp-server) without leaving your editor.
|
|
641
648
|
|
|
642
649
|
<p align="center">
|
|
643
650
|
<img src="assets/confident-mcp-architecture.png" alt="Confident AI MCP Architecture" width="500">
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__: str = "4.3.2"
|
|
@@ -67,6 +67,7 @@ API_KEY_PATTERN = re.compile(
|
|
|
67
67
|
r"[A-Za-z0-9+/]+={0,2}$",
|
|
68
68
|
re.IGNORECASE,
|
|
69
69
|
)
|
|
70
|
+
MIN_API_KEY_LENGTH = 20
|
|
70
71
|
|
|
71
72
|
|
|
72
73
|
def _prompt_and_persist_region(save: Optional[str]) -> None:
|
|
@@ -92,6 +93,15 @@ def _print_api_key_location() -> None:
|
|
|
92
93
|
)
|
|
93
94
|
|
|
94
95
|
|
|
96
|
+
def _get_pasted_api_key_error(api_key: str) -> Optional[str]:
|
|
97
|
+
if len(api_key) < MIN_API_KEY_LENGTH or any(c.isspace() for c in api_key):
|
|
98
|
+
return (
|
|
99
|
+
"That doesn't look like a Confident AI API key. Copy the full "
|
|
100
|
+
"key from Project Settings > API Keys."
|
|
101
|
+
)
|
|
102
|
+
return None
|
|
103
|
+
|
|
104
|
+
|
|
95
105
|
def _get_pasted_api_key_warnings(
|
|
96
106
|
api_key: str, configured_region: Optional[str]
|
|
97
107
|
) -> List[str]:
|
|
@@ -132,10 +142,15 @@ def _prompt_paste_api_key() -> str:
|
|
|
132
142
|
api_key = coerce_blank_to_none(
|
|
133
143
|
typer.prompt("🔐 Enter your project API key", hide_input=True)
|
|
134
144
|
)
|
|
135
|
-
if api_key:
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
145
|
+
if not api_key:
|
|
146
|
+
print("❌ Project API key cannot be empty. Please try again.\n")
|
|
147
|
+
continue
|
|
148
|
+
error = _get_pasted_api_key_error(api_key)
|
|
149
|
+
if error:
|
|
150
|
+
print(f"❌ {error}\n")
|
|
151
|
+
continue
|
|
152
|
+
_warn_for_pasted_api_key(api_key)
|
|
153
|
+
return api_key
|
|
139
154
|
|
|
140
155
|
|
|
141
156
|
def _open_platform_and_prompt_api_key() -> str:
|
|
@@ -359,6 +374,9 @@ def login_command(
|
|
|
359
374
|
if api_key is not None:
|
|
360
375
|
span.set_method(LoginMethod.API_KEY_FLAG)
|
|
361
376
|
key = api_key
|
|
377
|
+
error = _get_pasted_api_key_error(key)
|
|
378
|
+
if error:
|
|
379
|
+
raise AuthFlowError(error)
|
|
362
380
|
_warn_for_pasted_api_key(key)
|
|
363
381
|
else:
|
|
364
382
|
key = _resolve_login_key(save, span)
|
|
@@ -396,10 +414,16 @@ def login_command(
|
|
|
396
414
|
"Follow our quickstart tutorial here: "
|
|
397
415
|
f"[bold][link={quickstart_url}]{quickstart_url}[/link][/bold]"
|
|
398
416
|
)
|
|
417
|
+
except (typer.Abort, KeyboardInterrupt):
|
|
418
|
+
span.set_outcome(LoginOutcome.ABANDONED)
|
|
419
|
+
print("\nLogin cancelled. You are not logged in.")
|
|
399
420
|
except Exception as e:
|
|
400
421
|
span.set_outcome(LoginOutcome.FAILED)
|
|
401
422
|
print(f"Login failed: {e}")
|
|
402
423
|
|
|
424
|
+
if span.outcome is not LoginOutcome.COMPLETED:
|
|
425
|
+
raise typer.Exit(code=1)
|
|
426
|
+
|
|
403
427
|
|
|
404
428
|
def logout_command(
|
|
405
429
|
save: Optional[str] = typer.Option(
|
|
@@ -37,6 +37,11 @@ from deepeval.cli.auth import LOGIN_HELP, login_command, logout_command
|
|
|
37
37
|
from deepeval.cli.diagnose import diagnose_command
|
|
38
38
|
from deepeval.cli.generate.command import generate_command
|
|
39
39
|
from deepeval.cli.inspect import inspect_command
|
|
40
|
+
from deepeval.cli.setup import (
|
|
41
|
+
SETUP_CONTEXT_SETTINGS,
|
|
42
|
+
SETUP_HELP,
|
|
43
|
+
setup_command,
|
|
44
|
+
)
|
|
40
45
|
from deepeval.cli.test.command import app as test_app
|
|
41
46
|
from deepeval.cli.utils import (
|
|
42
47
|
handle_save_result as _handle_save_result,
|
|
@@ -58,6 +63,9 @@ app.command(name="inspect")(inspect_command)
|
|
|
58
63
|
app.command(name="diagnose")(diagnose_command)
|
|
59
64
|
app.command(name="login", help=LOGIN_HELP)(login_command)
|
|
60
65
|
app.command(name="logout")(logout_command)
|
|
66
|
+
app.command(
|
|
67
|
+
name="setup", help=SETUP_HELP, context_settings=SETUP_CONTEXT_SETTINGS
|
|
68
|
+
)(setup_command)
|
|
61
69
|
|
|
62
70
|
|
|
63
71
|
class Regions(Enum):
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"""`deepeval setup` Typer command."""
|
|
2
|
+
|
|
3
|
+
import typer
|
|
4
|
+
|
|
5
|
+
from deepeval.cli.setup.launcher import (
|
|
6
|
+
SetupLauncherError,
|
|
7
|
+
ensure_binary,
|
|
8
|
+
run_binary,
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
SETUP_HELP = (
|
|
12
|
+
"Set up an evaluation for this project with a coding agent, optionally "
|
|
13
|
+
"saving results to Confident AI. Downloads the latest setup wizard "
|
|
14
|
+
"(macOS and Linux), verifies its checksum, caches it, and runs it. Wizard options such as --project-dir and --proj-id are passed "
|
|
15
|
+
"through; run `deepeval setup -h` to list them."
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
# Click would otherwise reject the wizard's own flags as unknown options.
|
|
19
|
+
SETUP_CONTEXT_SETTINGS = {
|
|
20
|
+
"allow_extra_args": True,
|
|
21
|
+
"ignore_unknown_options": True,
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def _status(message: str) -> None:
|
|
26
|
+
typer.echo(message, err=True)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def setup_command(ctx: typer.Context) -> None:
|
|
30
|
+
try:
|
|
31
|
+
binary = ensure_binary(notify=_status)
|
|
32
|
+
code = run_binary(binary, list(ctx.args))
|
|
33
|
+
except SetupLauncherError as error:
|
|
34
|
+
_status(str(error))
|
|
35
|
+
raise typer.Exit(1)
|
|
36
|
+
raise typer.Exit(code)
|