deepeval 4.3.2__tar.gz → 4.3.4__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.
Files changed (1040) hide show
  1. {deepeval-4.3.2 → deepeval-4.3.4}/PKG-INFO +28 -21
  2. {deepeval-4.3.2 → deepeval-4.3.4}/README.md +25 -18
  3. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/__init__.py +6 -10
  4. deepeval-4.3.4/deepeval/_version.py +1 -0
  5. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/anthropic/__init__.py +2 -2
  6. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/settings.py +10 -0
  7. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/constants.py +0 -1
  8. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/dataset/dataset.py +4 -2
  9. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/dataset/golden.py +3 -0
  10. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/dataset/utils.py +1 -0
  11. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/errors.py +1 -2
  12. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/evaluate.py +9 -2
  13. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/execute/_common.py +9 -44
  14. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/execute/agentic.py +3 -2
  15. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/execute/loop.py +8 -2
  16. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/execute/trace_scope.py +5 -2
  17. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/expectations.py +1 -2
  18. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/local_store.py +35 -10
  19. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/utils.py +2 -3
  20. deepeval-4.3.4/deepeval/integrations/README.md +49 -0
  21. deepeval-4.3.4/deepeval/integrations/agentcore/__init__.py +3 -0
  22. deepeval-4.3.4/deepeval/integrations/agentcore/otel.py +42 -0
  23. deepeval-4.3.4/deepeval/integrations/crewai/handler.py +167 -0
  24. deepeval-4.3.4/deepeval/integrations/crewai/subs.py +135 -0
  25. deepeval-4.3.4/deepeval/integrations/crewai/tool.py +43 -0
  26. deepeval-4.3.4/deepeval/integrations/google_adk/otel.py +41 -0
  27. deepeval-4.3.4/deepeval/integrations/langchain/callback.py +165 -0
  28. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/langchain/patch.py +5 -6
  29. deepeval-4.3.4/deepeval/integrations/llama_index/handler.py +28 -0
  30. deepeval-4.3.4/deepeval/integrations/openinference/otel.py +50 -0
  31. deepeval-4.3.4/deepeval/integrations/pydantic_ai/instrumentator.py +147 -0
  32. deepeval-4.3.4/deepeval/integrations/pydantic_ai/otel.py +23 -0
  33. deepeval-4.3.4/deepeval/integrations/strands/__init__.py +3 -0
  34. deepeval-4.3.4/deepeval/integrations/strands/otel.py +41 -0
  35. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/argument_correctness.py +10 -2
  36. deepeval-4.3.4/deepeval/metrics/argument_correctness/utils.py +128 -0
  37. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_dag/nodes.py +15 -13
  38. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_g_eval/conversational_g_eval.py +4 -47
  39. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/nodes.py +15 -12
  40. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/g_eval.py +9 -2
  41. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/utils.py +66 -47
  42. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/utils.py +27 -1
  43. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/ragas.py +10 -10
  44. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/base_model.py +1 -0
  45. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/constants.py +12 -0
  46. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/grok_model.py +17 -4
  47. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/litellm_model.py +5 -4
  48. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/retry_policy.py +1 -1
  49. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/_audio.py +2 -1
  50. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/cartesia/cartesia.py +2 -1
  51. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/deepgram/deepgram.py +2 -1
  52. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/elevenlabs/elevenlabs.py +2 -1
  53. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/openai/openai.py +2 -1
  54. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/openai/__init__.py +2 -2
  55. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/openai_agents/__init__.py +0 -2
  56. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/openai_agents/agent.py +3 -1
  57. deepeval-4.3.4/deepeval/openai_agents/callback_handler.py +94 -0
  58. deepeval-4.3.4/deepeval/openai_agents/patch.py +212 -0
  59. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/plugins/plugin.py +8 -2
  60. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/conversation_simulator.py +200 -40
  61. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_case/api.py +1 -0
  62. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_case/conversational_test_case.py +4 -3
  63. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_case/llm_test_case.py +2 -0
  64. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_run/api.py +2 -3
  65. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_run/cache.py +36 -1
  66. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_run/test_run.py +1 -0
  67. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/api.py +0 -17
  68. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/context.py +185 -48
  69. deepeval-4.3.4/deepeval/tracing/internal.py +82 -0
  70. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/offline_evals/span.py +2 -11
  71. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/offline_evals/thread.py +2 -11
  72. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/offline_evals/trace.py +2 -11
  73. deepeval-4.3.4/deepeval/tracing/otel/__init__.py +2 -0
  74. deepeval-4.3.4/deepeval/tracing/otel/adapters/__init__.py +39 -0
  75. deepeval-4.3.4/deepeval/tracing/otel/adapters/base.py +42 -0
  76. deepeval-4.3.4/deepeval/tracing/otel/adapters/google_adk.py +196 -0
  77. deepeval-4.3.4/deepeval/tracing/otel/adapters/llamaindex.py +27 -0
  78. deepeval-4.3.4/deepeval/tracing/otel/adapters/openinference.py +221 -0
  79. deepeval-4.3.4/deepeval/tracing/otel/adapters/pydantic_ai.py +57 -0
  80. deepeval-4.3.4/deepeval/tracing/otel/adapters/strands.py +110 -0
  81. deepeval-4.3.4/deepeval/tracing/otel/attribute_values.py +159 -0
  82. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/otel/attributes.py +31 -14
  83. deepeval-4.3.4/deepeval/tracing/otel/bridge.py +681 -0
  84. deepeval-4.3.4/deepeval/tracing/otel/converter.py +538 -0
  85. deepeval-4.3.4/deepeval/tracing/otel/messages.py +276 -0
  86. deepeval-4.3.4/deepeval/tracing/otel/setup.py +631 -0
  87. deepeval-4.3.4/deepeval/tracing/otel/utils.py +159 -0
  88. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/trace_context.py +21 -5
  89. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/tracing.py +308 -607
  90. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/types.py +1 -36
  91. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/utils.py +15 -0
  92. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/__init__.py +14 -0
  93. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/__init__.py +16 -0
  94. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/audio_utils.py +8 -0
  95. deepeval-4.3.4/deepeval/voice/connectors/phone.py +77 -0
  96. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/__init__.py +9 -1
  97. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/livekit/README.md +8 -10
  98. deepeval-4.3.4/deepeval/voice/connectors/providers/livekit/__init__.py +13 -0
  99. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/livekit/connector.py +162 -14
  100. deepeval-4.3.4/deepeval/voice/connectors/providers/livekit/sip.py +328 -0
  101. deepeval-4.3.4/deepeval/voice/connectors/providers/twilio/README.md +50 -0
  102. deepeval-4.3.4/deepeval/voice/connectors/providers/twilio/__init__.py +5 -0
  103. deepeval-4.3.4/deepeval/voice/connectors/providers/twilio/connector.py +375 -0
  104. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/transports/__init__.py +4 -0
  105. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/transports/base.py +4 -0
  106. deepeval-4.3.4/deepeval/voice/connectors/transports/silence.py +77 -0
  107. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/transports/websocket.py +9 -8
  108. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/utils.py +22 -0
  109. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/duplex.py +17 -5
  110. {deepeval-4.3.2 → deepeval-4.3.4}/pyproject.toml +3 -2
  111. deepeval-4.3.2/deepeval/_version.py +0 -1
  112. deepeval-4.3.2/deepeval/anthropic/extractors.py +0 -94
  113. deepeval-4.3.2/deepeval/anthropic/patch.py +0 -169
  114. deepeval-4.3.2/deepeval/anthropic/utils.py +0 -225
  115. deepeval-4.3.2/deepeval/integrations/README.md +0 -68
  116. deepeval-4.3.2/deepeval/integrations/agentcore/__init__.py +0 -4
  117. deepeval-4.3.2/deepeval/integrations/agentcore/instrumentator.py +0 -917
  118. deepeval-4.3.2/deepeval/integrations/agentcore/otel.py +0 -168
  119. deepeval-4.3.2/deepeval/integrations/crewai/handler.py +0 -493
  120. deepeval-4.3.2/deepeval/integrations/crewai/subs.py +0 -64
  121. deepeval-4.3.2/deepeval/integrations/crewai/tool.py +0 -91
  122. deepeval-4.3.2/deepeval/integrations/crewai/wrapper.py +0 -196
  123. deepeval-4.3.2/deepeval/integrations/google_adk/otel.py +0 -98
  124. deepeval-4.3.2/deepeval/integrations/langchain/callback.py +0 -942
  125. deepeval-4.3.2/deepeval/integrations/langchain/utils.py +0 -499
  126. deepeval-4.3.2/deepeval/integrations/llama_index/handler.py +0 -414
  127. deepeval-4.3.2/deepeval/integrations/llama_index/utils.py +0 -107
  128. deepeval-4.3.2/deepeval/integrations/openinference/instrumentator.py +0 -865
  129. deepeval-4.3.2/deepeval/integrations/openinference/otel.py +0 -173
  130. deepeval-4.3.2/deepeval/integrations/pydantic_ai/README.md +0 -1049
  131. deepeval-4.3.2/deepeval/integrations/pydantic_ai/instrumentator.py +0 -741
  132. deepeval-4.3.2/deepeval/integrations/pydantic_ai/otel.py +0 -80
  133. deepeval-4.3.2/deepeval/integrations/strands/__init__.py +0 -4
  134. deepeval-4.3.2/deepeval/integrations/strands/instrumentator.py +0 -937
  135. deepeval-4.3.2/deepeval/integrations/strands/otel.py +0 -178
  136. deepeval-4.3.2/deepeval/model_integrations/types.py +0 -20
  137. deepeval-4.3.2/deepeval/model_integrations/utils.py +0 -120
  138. deepeval-4.3.2/deepeval/openai/extractors.py +0 -198
  139. deepeval-4.3.2/deepeval/openai/patch.py +0 -309
  140. deepeval-4.3.2/deepeval/openai/utils.py +0 -211
  141. deepeval-4.3.2/deepeval/openai_agents/callback_handler.py +0 -173
  142. deepeval-4.3.2/deepeval/openai_agents/extractors.py +0 -455
  143. deepeval-4.3.2/deepeval/openai_agents/patch.py +0 -402
  144. deepeval-4.3.2/deepeval/openai_agents/runner.py +0 -348
  145. deepeval-4.3.2/deepeval/synthesizer/chunking/__init__.py +0 -0
  146. deepeval-4.3.2/deepeval/tracing/internal.py +0 -36
  147. deepeval-4.3.2/deepeval/tracing/otel/__init__.py +0 -7
  148. deepeval-4.3.2/deepeval/tracing/otel/context_aware_processor.py +0 -204
  149. deepeval-4.3.2/deepeval/tracing/otel/exporter.py +0 -899
  150. deepeval-4.3.2/deepeval/tracing/otel/test_exporter.py +0 -35
  151. deepeval-4.3.2/deepeval/tracing/otel/utils.py +0 -846
  152. deepeval-4.3.2/deepeval/voice/connectors/providers/livekit/__init__.py +0 -5
  153. {deepeval-4.3.2 → deepeval-4.3.4}/LICENSE.md +0 -0
  154. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/annotation/__init__.py +0 -0
  155. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/annotation/annotation.py +0 -0
  156. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/annotation/api.py +0 -0
  157. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/__init__.py +0 -0
  158. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/arc/__init__.py +0 -0
  159. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/arc/arc.py +0 -0
  160. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/arc/mode.py +0 -0
  161. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/arc/template.py +0 -0
  162. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/base_benchmark.py +0 -0
  163. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/bbq/__init__.py +0 -0
  164. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/bbq/bbq.py +0 -0
  165. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/bbq/task.py +0 -0
  166. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/bbq/template.py +0 -0
  167. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/__init__.py +0 -0
  168. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/big_bench_hard.py +0 -0
  169. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/__init__.py +0 -0
  170. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/boolean_expressions.txt +0 -0
  171. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/causal_judgement.txt +0 -0
  172. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/date_understanding.txt +0 -0
  173. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/disambiguation_qa.txt +0 -0
  174. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/dyck_languages.txt +0 -0
  175. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/formal_fallacies.txt +0 -0
  176. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/geometric_shapes.txt +0 -0
  177. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/hyperbaton.txt +0 -0
  178. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/logical_deduction_five_objects.txt +0 -0
  179. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/logical_deduction_seven_objects.txt +0 -0
  180. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/logical_deduction_three_objects.txt +0 -0
  181. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/movie_recommendation.txt +0 -0
  182. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/multistep_arithmetic_two.txt +0 -0
  183. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/navigate.txt +0 -0
  184. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/object_counting.txt +0 -0
  185. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/penguins_in_a_table.txt +0 -0
  186. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/reasoning_about_colored_objects.txt +0 -0
  187. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/ruin_names.txt +0 -0
  188. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/salient_translation_error_detection.txt +0 -0
  189. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/snarks.txt +0 -0
  190. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/sports_understanding.txt +0 -0
  191. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/temporal_sequences.txt +0 -0
  192. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/tracking_shuffled_objects_five_objects.txt +0 -0
  193. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/tracking_shuffled_objects_seven_objects.txt +0 -0
  194. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/tracking_shuffled_objects_three_objects.txt +0 -0
  195. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/web_of_lies.txt +0 -0
  196. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/cot_prompts/word_sorting.txt +0 -0
  197. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/__init__.py +0 -0
  198. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/boolean_expressions.txt +0 -0
  199. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/causal_judgement.txt +0 -0
  200. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/date_understanding.txt +0 -0
  201. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/disambiguation_qa.txt +0 -0
  202. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/dyck_languages.txt +0 -0
  203. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/formal_fallacies.txt +0 -0
  204. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/geometric_shapes.txt +0 -0
  205. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/hyperbaton.txt +0 -0
  206. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/logical_deduction_five_objects.txt +0 -0
  207. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/logical_deduction_seven_objects.txt +0 -0
  208. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/logical_deduction_three_objects.txt +0 -0
  209. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/movie_recommendation.txt +0 -0
  210. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/multistep_arithmetic_two.txt +0 -0
  211. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/navigate.txt +0 -0
  212. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/object_counting.txt +0 -0
  213. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/penguins_in_a_table.txt +0 -0
  214. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/reasoning_about_colored_objects.txt +0 -0
  215. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/ruin_names.txt +0 -0
  216. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/salient_translation_error_detection.txt +0 -0
  217. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/snarks.txt +0 -0
  218. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/sports_understanding.txt +0 -0
  219. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/temporal_sequences.txt +0 -0
  220. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/tracking_shuffled_objects_five_objects.txt +0 -0
  221. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/tracking_shuffled_objects_seven_objects.txt +0 -0
  222. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/tracking_shuffled_objects_three_objects.txt +0 -0
  223. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/web_of_lies.txt +0 -0
  224. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/shot_prompts/word_sorting.txt +0 -0
  225. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/task.py +0 -0
  226. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/big_bench_hard/template.py +0 -0
  227. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/bool_q/__init__.py +0 -0
  228. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/bool_q/bool_q.py +0 -0
  229. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/bool_q/template.py +0 -0
  230. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/drop/__init__.py +0 -0
  231. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/drop/drop.py +0 -0
  232. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/drop/task.py +0 -0
  233. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/drop/template.py +0 -0
  234. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/equity_med_qa/__init__.py +0 -0
  235. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/equity_med_qa/equity_med_qa.py +0 -0
  236. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/equity_med_qa/task.py +0 -0
  237. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/equity_med_qa/template.py +0 -0
  238. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/gsm8k/__init__.py +0 -0
  239. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/gsm8k/gsm8k.py +0 -0
  240. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/gsm8k/template.py +0 -0
  241. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/hellaswag/__init__.py +0 -0
  242. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/hellaswag/hellaswag.py +0 -0
  243. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/hellaswag/task.py +0 -0
  244. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/hellaswag/template.py +0 -0
  245. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/human_eval/__init__.py +0 -0
  246. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/human_eval/human_eval.py +0 -0
  247. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/human_eval/task.py +0 -0
  248. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/human_eval/template.py +0 -0
  249. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/ifeval/__init__.py +0 -0
  250. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/ifeval/ifeval.py +0 -0
  251. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/ifeval/template.py +0 -0
  252. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/lambada/__init__.py +0 -0
  253. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/lambada/lambada.py +0 -0
  254. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/lambada/template.py +0 -0
  255. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/logi_qa/__init__.py +0 -0
  256. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/logi_qa/logi_qa.py +0 -0
  257. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/logi_qa/task.py +0 -0
  258. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/logi_qa/template.py +0 -0
  259. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/math_qa/__init__.py +0 -0
  260. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/math_qa/math_qa.py +0 -0
  261. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/math_qa/task.py +0 -0
  262. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/math_qa/template.py +0 -0
  263. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/mmlu/__init__.py +0 -0
  264. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/mmlu/mmlu.py +0 -0
  265. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/mmlu/task.py +0 -0
  266. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/mmlu/template.py +0 -0
  267. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/modes/__init__.py +0 -0
  268. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/results.py +0 -0
  269. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/schema.py +0 -0
  270. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/squad/__init__.py +0 -0
  271. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/squad/squad.py +0 -0
  272. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/squad/task.py +0 -0
  273. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/squad/template.py +0 -0
  274. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/tasks/__init__.py +0 -0
  275. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/truthful_qa/__init__.py +0 -0
  276. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/truthful_qa/mode.py +0 -0
  277. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/truthful_qa/task.py +0 -0
  278. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/truthful_qa/template.py +0 -0
  279. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/truthful_qa/truthful_qa.py +0 -0
  280. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/utils.py +0 -0
  281. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/winogrande/__init__.py +0 -0
  282. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/winogrande/template.py +0 -0
  283. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/benchmarks/winogrande/winogrande.py +0 -0
  284. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/__init__.py +0 -0
  285. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/abstention.py +0 -0
  286. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/base_classifier.py +0 -0
  287. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/clarification.py +0 -0
  288. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/classifier/__init__.py +0 -0
  289. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/classifier/classifier.py +0 -0
  290. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/classifier/schema.py +0 -0
  291. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/classifier/templates/_experimental_system_one_classify.txt +0 -0
  292. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/classifier/templates/class.txt +0 -0
  293. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/classifier/templates/classify_multi_turn.txt +0 -0
  294. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/classifier/templates/classify_single_turn.txt +0 -0
  295. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/data_leakage.py +0 -0
  296. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/escalation.py +0 -0
  297. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/forbidden_commitments.py +0 -0
  298. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/instruction_completeness.py +0 -0
  299. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/prompt_injection.py +0 -0
  300. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/refusal.py +0 -0
  301. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/required_disclosure.py +0 -0
  302. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/resolution.py +0 -0
  303. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/response_language.py +0 -0
  304. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/scope_adherence.py +0 -0
  305. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/tone_adherence.py +0 -0
  306. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/classifiers/utils.py +0 -0
  307. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/__init__.py +0 -0
  308. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/app.py +0 -0
  309. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/auth/__init__.py +0 -0
  310. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/auth/api.py +0 -0
  311. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/auth/command.py +0 -0
  312. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/auth/flow.py +0 -0
  313. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/diagnose/__init__.py +0 -0
  314. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/diagnose/diagnose.py +0 -0
  315. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/dotenv_handler.py +0 -0
  316. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/generate/__init__.py +0 -0
  317. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/generate/command.py +0 -0
  318. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/generate/utils.py +0 -0
  319. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/inspect.py +0 -0
  320. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/main.py +0 -0
  321. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/__init__.py +0 -0
  322. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/_speech.py +0 -0
  323. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/__init__.py +0 -0
  324. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/anthropic.py +0 -0
  325. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/azure.py +0 -0
  326. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/bedrock.py +0 -0
  327. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/deepseek.py +0 -0
  328. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/gemini.py +0 -0
  329. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/grok.py +0 -0
  330. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/litellm.py +0 -0
  331. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/local_embeddings.py +0 -0
  332. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/local_model.py +0 -0
  333. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/moonshot.py +0 -0
  334. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/ollama.py +0 -0
  335. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/openai.py +0 -0
  336. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/openrouter.py +0 -0
  337. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/llms/portkey.py +0 -0
  338. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/stt/__init__.py +0 -0
  339. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/stt/command.py +0 -0
  340. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/system_one/__init__.py +0 -0
  341. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/system_one/typesafe.py +0 -0
  342. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/tts/__init__.py +0 -0
  343. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/providers/tts/command.py +0 -0
  344. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/setup/__init__.py +0 -0
  345. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/setup/command.py +0 -0
  346. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/setup/launcher.py +0 -0
  347. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/test/__init__.py +0 -0
  348. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/test/command.py +0 -0
  349. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/types.py +0 -0
  350. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/cli/utils.py +0 -0
  351. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/confident/__init__.py +0 -0
  352. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/confident/api.py +0 -0
  353. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/confident/types.py +0 -0
  354. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/__init__.py +0 -0
  355. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/dotenv_handler.py +0 -0
  356. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/eval_mode.py +0 -0
  357. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/logging.py +0 -0
  358. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/mode.py +0 -0
  359. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/settings_manager.py +0 -0
  360. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/config/utils.py +0 -0
  361. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/contextvars.py +0 -0
  362. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/dataset/__init__.py +0 -0
  363. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/dataset/api.py +0 -0
  364. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/dataset/expectations.py +0 -0
  365. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/dataset/types.py +0 -0
  366. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/__init__.py +0 -0
  367. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/api.py +0 -0
  368. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/compare.py +0 -0
  369. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/configs.py +0 -0
  370. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/console_report.py +0 -0
  371. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/execute/__init__.py +0 -0
  372. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/execute/e2e.py +0 -0
  373. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/inspect_prompt.py +0 -0
  374. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/evaluate/types.py +0 -0
  375. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/__init__.py +0 -0
  376. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/__main__.py +0 -0
  377. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/app.py +0 -0
  378. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/fixtures/test_run_sample.json +0 -0
  379. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/loader.py +0 -0
  380. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/styles.tcss +0 -0
  381. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/types.py +0 -0
  382. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/widgets/__init__.py +0 -0
  383. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/widgets/_styling.py +0 -0
  384. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/widgets/details.py +0 -0
  385. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/widgets/header_bar.py +0 -0
  386. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/widgets/help_modal.py +0 -0
  387. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/widgets/search_bar.py +0 -0
  388. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/inspect/widgets/span_tree.py +0 -0
  389. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/__init__.py +0 -0
  390. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/crewai/__init__.py +0 -0
  391. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/google_adk/__init__.py +0 -0
  392. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/hugging_face/__init__.py +0 -0
  393. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/hugging_face/callback.py +0 -0
  394. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/hugging_face/rich_manager.py +0 -0
  395. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/hugging_face/tests/test_callbacks.py +0 -0
  396. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/hugging_face/utils.py +0 -0
  397. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/langchain/__init__.py +0 -0
  398. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/llama_index/__init__.py +0 -0
  399. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/openinference/__init__.py +0 -0
  400. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/integrations/pydantic_ai/__init__.py +0 -0
  401. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/key_handler.py +0 -0
  402. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/README.md +0 -0
  403. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/__init__.py +0 -0
  404. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/agent_loop_detection/__init__.py +0 -0
  405. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/agent_loop_detection/agent_loop_detection.py +0 -0
  406. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/__init__.py +0 -0
  407. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/answer_relevancy.py +0 -0
  408. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/schema.py +0 -0
  409. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/templates/_experimental_system_one_questions.txt +0 -0
  410. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
  411. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/templates/class.txt +0 -0
  412. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/templates/generate_reason.txt +0 -0
  413. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/templates/generate_statements.txt +0 -0
  414. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/answer_relevancy/templates/generate_verdicts.txt +0 -0
  415. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/__init__.py +0 -0
  416. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/arena_g_eval.py +0 -0
  417. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/schema.py +0 -0
  418. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/templates/class.txt +0 -0
  419. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/templates/generate_arena_winner.txt +0 -0
  420. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/templates/generate_evaluation_steps.txt +0 -0
  421. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/templates/rewrite_reason.txt +0 -0
  422. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/arena_g_eval/utils.py +0 -0
  423. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/__init__.py +0 -0
  424. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/schema.py +0 -0
  425. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/templates/_experimental_system_one_questions.txt +0 -0
  426. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/templates/_experimental_system_one_verdict.txt +0 -0
  427. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/templates/class.txt +0 -0
  428. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/templates/generate_reason.txt +0 -0
  429. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/argument_correctness/templates/generate_verdicts.txt +0 -0
  430. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/audio_glitch/__init__.py +0 -0
  431. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/audio_glitch/_detectors.py +0 -0
  432. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/audio_glitch/audio_glitch.py +0 -0
  433. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/audio_glitch/schema.py +0 -0
  434. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/audio_glitch/templates/class.txt +0 -0
  435. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/audio_glitch/templates/generate_reason.txt +0 -0
  436. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/base_metric.py +0 -0
  437. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/__init__.py +0 -0
  438. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/bias.py +0 -0
  439. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/schema.py +0 -0
  440. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/templates/_experimental_system_one_questions.txt +0 -0
  441. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/templates/_experimental_system_one_verdict.txt +0 -0
  442. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/templates/class.txt +0 -0
  443. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/templates/generate_opinions.txt +0 -0
  444. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/templates/generate_reason.txt +0 -0
  445. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/bias/templates/generate_verdicts.txt +0 -0
  446. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/community/__init__.py +0 -0
  447. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/community/citation_faithfulness/__init__.py +0 -0
  448. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/community/citation_faithfulness/citation_faithfulness.py +0 -0
  449. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/community/citation_faithfulness/schema.py +0 -0
  450. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/community/citation_faithfulness/template.py +0 -0
  451. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/__init__.py +0 -0
  452. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/contextual_precision.py +0 -0
  453. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/schema.py +0 -0
  454. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/templates/_experimental_system_one_questions.txt +0 -0
  455. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/templates/_experimental_system_one_verdict.txt +0 -0
  456. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/templates/class.txt +0 -0
  457. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/templates/generate_reason.txt +0 -0
  458. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_precision/templates/generate_verdicts.txt +0 -0
  459. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/__init__.py +0 -0
  460. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/contextual_recall.py +0 -0
  461. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/schema.py +0 -0
  462. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/templates/_experimental_system_one_questions.txt +0 -0
  463. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/templates/_experimental_system_one_verdict.txt +0 -0
  464. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/templates/class.txt +0 -0
  465. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/templates/generate_reason.txt +0 -0
  466. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_recall/templates/generate_verdicts.txt +0 -0
  467. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/__init__.py +0 -0
  468. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/contextual_relevancy.py +0 -0
  469. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/schema.py +0 -0
  470. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/templates/_experimental_system_one_questions.txt +0 -0
  471. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
  472. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/templates/class.txt +0 -0
  473. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/templates/generate_reason.txt +0 -0
  474. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/contextual_relevancy/templates/generate_verdicts.txt +0 -0
  475. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/__init__.py +0 -0
  476. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/conversation_completeness.py +0 -0
  477. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/schema.py +0 -0
  478. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/templates/_experimental_system_one_questions.txt +0 -0
  479. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/templates/_experimental_system_one_verdict.txt +0 -0
  480. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/templates/class.txt +0 -0
  481. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/templates/extract_user_intentions.txt +0 -0
  482. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/templates/generate_reason.txt +0 -0
  483. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversation_completeness/templates/generate_verdicts.txt +0 -0
  484. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_dag/__init__.py +0 -0
  485. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_dag/conversational_dag.py +0 -0
  486. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_dag/templates/ConversationalBinaryJudgement/generate_binary_verdict.txt +0 -0
  487. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_dag/templates/ConversationalNonBinaryJudgement/generate_non_binary_verdict.txt +0 -0
  488. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_dag/templates/ConversationalTaskNode/generate_task_output.txt +0 -0
  489. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_dag/templates/ConversationalVerdictNode/generate_reason.txt +0 -0
  490. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_g_eval/__init__.py +0 -0
  491. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_g_eval/schema.py +0 -0
  492. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_g_eval/templates/class.txt +0 -0
  493. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_g_eval/templates/generate_evaluation_results.txt +0 -0
  494. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_g_eval/templates/generate_evaluation_steps.txt +0 -0
  495. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_jev_eval/__init__.py +0 -0
  496. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/conversational_jev_eval/conversational_jev_eval.py +0 -0
  497. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/__init__.py +0 -0
  498. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/dag.py +0 -0
  499. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/graph.py +0 -0
  500. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/runner.py +0 -0
  501. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/schema.py +0 -0
  502. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/serialization/__init__.py +0 -0
  503. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/serialization/registry.py +0 -0
  504. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/serialization/serialization.py +0 -0
  505. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/serialization/types.py +0 -0
  506. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/templates/BinaryJudgement/generate_binary_verdict.txt +0 -0
  507. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/templates/NonBinaryJudgement/generate_non_binary_verdict.txt +0 -0
  508. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/templates/TaskNode/generate_task_output.txt +0 -0
  509. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/templates/VerdictNode/generate_reason.txt +0 -0
  510. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/dag/utils.py +0 -0
  511. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/exact_match/__init__.py +0 -0
  512. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/exact_match/exact_match.py +0 -0
  513. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/__init__.py +0 -0
  514. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/faithfulness.py +0 -0
  515. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/schema.py +0 -0
  516. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/templates/_experimental_system_one_questions.txt +0 -0
  517. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/templates/_experimental_system_one_verdict.txt +0 -0
  518. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/templates/class.txt +0 -0
  519. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/templates/generate_claims.txt +0 -0
  520. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/templates/generate_reason.txt +0 -0
  521. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/templates/generate_truths.txt +0 -0
  522. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/faithfulness/templates/generate_verdicts.txt +0 -0
  523. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/__init__.py +0 -0
  524. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/schema.py +0 -0
  525. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/templates/class.txt +0 -0
  526. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/templates/generate_evaluation_results.txt +0 -0
  527. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/templates/generate_evaluation_steps.txt +0 -0
  528. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/templates/generate_strict_evaluation_results.txt +0 -0
  529. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/templates/generate_strict_trace_evaluation_results.txt +0 -0
  530. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/templates/generate_trace_evaluation_results.txt +0 -0
  531. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/g_eval/templates/generate_trace_evaluation_steps.txt +0 -0
  532. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/__init__.py +0 -0
  533. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/goal_accuracy.py +0 -0
  534. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/schema.py +0 -0
  535. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/templates/_experimental_system_one_goal_score.txt +0 -0
  536. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/templates/_experimental_system_one_plan_score.txt +0 -0
  537. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/templates/_experimental_system_one_questions.txt +0 -0
  538. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/templates/class.txt +0 -0
  539. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/templates/get_accuracy_score.txt +0 -0
  540. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/templates/get_final_reason.txt +0 -0
  541. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/goal_accuracy/templates/get_plan_evaluation_score.txt +0 -0
  542. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/__init__.py +0 -0
  543. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/hallucination.py +0 -0
  544. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/schema.py +0 -0
  545. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/templates/_experimental_system_one_questions.txt +0 -0
  546. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/templates/_experimental_system_one_verdict.txt +0 -0
  547. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/templates/class.txt +0 -0
  548. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/templates/generate_reason.txt +0 -0
  549. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/hallucination/templates/generate_verdicts.txt +0 -0
  550. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/indicator.py +0 -0
  551. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/jev_eval/__init__.py +0 -0
  552. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/jev_eval/jev_eval.py +0 -0
  553. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/jev_eval/questions.py +0 -0
  554. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/jev_eval/utils.py +0 -0
  555. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/json_correctness/__init__.py +0 -0
  556. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/json_correctness/json_correctness.py +0 -0
  557. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/json_correctness/schema.py +0 -0
  558. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/json_correctness/templates/class.txt +0 -0
  559. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/json_correctness/templates/generate_reason.txt +0 -0
  560. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/__init__.py +0 -0
  561. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/knowledge_retention.py +0 -0
  562. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/schema.py +0 -0
  563. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/templates/_experimental_system_one_questions.txt +0 -0
  564. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/templates/_experimental_system_one_verdict.txt +0 -0
  565. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/templates/class.txt +0 -0
  566. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/templates/extract_data.txt +0 -0
  567. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/templates/generate_reason.txt +0 -0
  568. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/knowledge_retention/templates/generate_verdict.txt +0 -0
  569. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/__init__.py +0 -0
  570. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/mcp_task_completion.py +0 -0
  571. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/multi_turn_mcp_use_metric.py +0 -0
  572. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/schema.py +0 -0
  573. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/_experimental_system_one_mcp_use_args_score.txt +0 -0
  574. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/_experimental_system_one_mcp_use_primitive_score.txt +0 -0
  575. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/_experimental_system_one_mcp_use_questions.txt +0 -0
  576. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/_experimental_system_one_questions.txt +0 -0
  577. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/_experimental_system_one_score.txt +0 -0
  578. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/class.txt +0 -0
  579. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/generate_final_reason.txt +0 -0
  580. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/get_args_correctness_score.txt +0 -0
  581. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/get_task_completion_score.txt +0 -0
  582. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp/templates/get_tool_correctness_score.txt +0 -0
  583. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/__init__.py +0 -0
  584. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/mcp_use_metric.py +0 -0
  585. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/schema.py +0 -0
  586. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/templates/_experimental_system_one_args_score.txt +0 -0
  587. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/templates/_experimental_system_one_primitive_score.txt +0 -0
  588. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/templates/_experimental_system_one_questions.txt +0 -0
  589. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/templates/class.txt +0 -0
  590. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/templates/get_mcp_argument_correctness_prompt.txt +0 -0
  591. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/mcp_use_metric/templates/get_primitive_correctness_prompt.txt +0 -0
  592. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/__init__.py +0 -0
  593. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/misuse.py +0 -0
  594. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/schema.py +0 -0
  595. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/templates/_experimental_system_one_questions.txt +0 -0
  596. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/templates/_experimental_system_one_verdict.txt +0 -0
  597. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/templates/class.txt +0 -0
  598. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/templates/generate_misuses.txt +0 -0
  599. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/templates/generate_reason.txt +0 -0
  600. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/misuse/templates/generate_verdicts.txt +0 -0
  601. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/__init__.py +0 -0
  602. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_coherence/__init__.py +0 -0
  603. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_coherence/image_coherence.py +0 -0
  604. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_coherence/schema.py +0 -0
  605. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_coherence/templates/class.txt +0 -0
  606. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_coherence/templates/evaluate_image_coherence.txt +0 -0
  607. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_editing/__init__.py +0 -0
  608. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_editing/image_editing.py +0 -0
  609. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_editing/schema.py +0 -0
  610. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_editing/templates/class.txt +0 -0
  611. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_editing/templates/generate_perceptual_quality_evaluation_results.txt +0 -0
  612. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_editing/templates/generate_semantic_consistency_evaluation_results.txt +0 -0
  613. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_helpfulness/__init__.py +0 -0
  614. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_helpfulness/image_helpfulness.py +0 -0
  615. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_helpfulness/schema.py +0 -0
  616. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_helpfulness/templates/class.txt +0 -0
  617. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_helpfulness/templates/evaluate_image_helpfulness.txt +0 -0
  618. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_reference/__init__.py +0 -0
  619. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_reference/image_reference.py +0 -0
  620. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_reference/schema.py +0 -0
  621. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_reference/templates/class.txt +0 -0
  622. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/image_reference/templates/evaluate_image_reference.txt +0 -0
  623. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/text_to_image/__init__.py +0 -0
  624. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/text_to_image/schema.py +0 -0
  625. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/text_to_image/templates/class.txt +0 -0
  626. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/text_to_image/templates/generate_perceptual_quality_evaluation_results.txt +0 -0
  627. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/text_to_image/templates/generate_semantic_consistency_evaluation_results.txt +0 -0
  628. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/multimodal_metrics/text_to_image/text_to_image.py +0 -0
  629. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/__init__.py +0 -0
  630. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/non_advice.py +0 -0
  631. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/schema.py +0 -0
  632. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/templates/_experimental_system_one_questions.txt +0 -0
  633. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/templates/_experimental_system_one_verdict.txt +0 -0
  634. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/templates/class.txt +0 -0
  635. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/templates/generate_advices.txt +0 -0
  636. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/templates/generate_reason.txt +0 -0
  637. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/non_advice/templates/generate_verdicts.txt +0 -0
  638. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pattern_match/__init__.py +0 -0
  639. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pattern_match/pattern_match.py +0 -0
  640. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/__init__.py +0 -0
  641. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/pii_leakage.py +0 -0
  642. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/schema.py +0 -0
  643. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/templates/_experimental_system_one_questions.txt +0 -0
  644. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/templates/_experimental_system_one_verdict.txt +0 -0
  645. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/templates/class.txt +0 -0
  646. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/templates/extract_pii.txt +0 -0
  647. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/templates/generate_reason.txt +0 -0
  648. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/pii_leakage/templates/generate_verdicts.txt +0 -0
  649. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/__init__.py +0 -0
  650. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/plan_adherence.py +0 -0
  651. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/schema.py +0 -0
  652. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/templates/_experimental_system_one_questions.txt +0 -0
  653. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/templates/_experimental_system_one_score.txt +0 -0
  654. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/templates/class.txt +0 -0
  655. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/templates/evaluate_adherence.txt +0 -0
  656. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_adherence/templates/extract_plan_from_trace.txt +0 -0
  657. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_quality/__init__.py +0 -0
  658. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_quality/plan_quality.py +0 -0
  659. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_quality/schema.py +0 -0
  660. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_quality/templates/_experimental_system_one_questions.txt +0 -0
  661. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_quality/templates/_experimental_system_one_score.txt +0 -0
  662. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_quality/templates/class.txt +0 -0
  663. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/plan_quality/templates/evaluate_plan_quality.txt +0 -0
  664. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/__init__.py +0 -0
  665. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/prompt_alignment.py +0 -0
  666. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/schema.py +0 -0
  667. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/templates/_experimental_system_one_questions.txt +0 -0
  668. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/templates/_experimental_system_one_verdict.txt +0 -0
  669. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/templates/class.txt +0 -0
  670. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/templates/generate_reason.txt +0 -0
  671. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/prompt_alignment/templates/generate_verdicts.txt +0 -0
  672. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/retrieval_context_display.py +0 -0
  673. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/__init__.py +0 -0
  674. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/role_adherence.py +0 -0
  675. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/schema.py +0 -0
  676. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/templates/_experimental_system_one_questions.txt +0 -0
  677. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/templates/_experimental_system_one_verdict.txt +0 -0
  678. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/templates/class.txt +0 -0
  679. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/templates/extract_out_of_character_response_verdicts.txt +0 -0
  680. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_adherence/templates/generate_reason.txt +0 -0
  681. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/__init__.py +0 -0
  682. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/role_violation.py +0 -0
  683. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/schema.py +0 -0
  684. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/templates/_experimental_system_one_questions.txt +0 -0
  685. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/templates/_experimental_system_one_verdict.txt +0 -0
  686. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/templates/class.txt +0 -0
  687. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/templates/detect_role_violations.txt +0 -0
  688. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/templates/generate_reason.txt +0 -0
  689. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/role_violation/templates/generate_verdicts.txt +0 -0
  690. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/__init__.py +0 -0
  691. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/schema.py +0 -0
  692. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/step_efficiency.py +0 -0
  693. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/templates/_experimental_system_one_questions.txt +0 -0
  694. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/templates/_experimental_system_one_score.txt +0 -0
  695. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/templates/class.txt +0 -0
  696. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/templates/extract_task_from_trace.txt +0 -0
  697. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/step_efficiency/templates/get_execution_efficiency.txt +0 -0
  698. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/__init__.py +0 -0
  699. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/schema.py +0 -0
  700. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/summarization.py +0 -0
  701. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/templates/_experimental_system_one_questions.txt +0 -0
  702. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/templates/_experimental_system_one_verdict.txt +0 -0
  703. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/templates/class.txt +0 -0
  704. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/templates/generate_alignment_verdicts.txt +0 -0
  705. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/templates/generate_answers.txt +0 -0
  706. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/templates/generate_questions.txt +0 -0
  707. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/summarization/templates/generate_reason.txt +0 -0
  708. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/__init__.py +0 -0
  709. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/schema.py +0 -0
  710. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/task_completion.py +0 -0
  711. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/templates/_experimental_system_one_questions.txt +0 -0
  712. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/templates/_experimental_system_one_score.txt +0 -0
  713. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/templates/class.txt +0 -0
  714. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/templates/extract_goal_and_outcome.txt +0 -0
  715. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/templates/extract_task_and_outcome_from_trace.txt +0 -0
  716. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/task_completion/templates/generate_verdict.txt +0 -0
  717. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_correctness/__init__.py +0 -0
  718. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_correctness/schema.py +0 -0
  719. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_correctness/templates/_experimental_system_one_tool_selection_score.txt +0 -0
  720. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_correctness/templates/class.txt +0 -0
  721. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_correctness/templates/get_tool_selection_score.txt +0 -0
  722. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_correctness/tool_correctness.py +0 -0
  723. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_permission/__init__.py +0 -0
  724. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_permission/tool_permission.py +0 -0
  725. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/__init__.py +0 -0
  726. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/schema.py +0 -0
  727. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/_experimental_system_one_argument_correctness_score.txt +0 -0
  728. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/_experimental_system_one_questions.txt +0 -0
  729. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/_experimental_system_one_tool_selection_score.txt +0 -0
  730. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/class.txt +0 -0
  731. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/get_argument_correctness_score.txt +0 -0
  732. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/get_tool_argument_final_reason.txt +0 -0
  733. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/get_tool_selection_final_reason.txt +0 -0
  734. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/templates/get_tool_selection_score.txt +0 -0
  735. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/tool_use/tool_use.py +0 -0
  736. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/__init__.py +0 -0
  737. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/schema.py +0 -0
  738. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/templates/_experimental_system_one_answered_verdict.txt +0 -0
  739. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/templates/_experimental_system_one_on_topic_verdict.txt +0 -0
  740. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/templates/_experimental_system_one_questions.txt +0 -0
  741. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/templates/class.txt +0 -0
  742. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/templates/generate_reason.txt +0 -0
  743. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/templates/get_qa_pair_verdict.txt +0 -0
  744. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/templates/get_qa_pairs.txt +0 -0
  745. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/topic_adherence/topic_adherence.py +0 -0
  746. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/__init__.py +0 -0
  747. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/schema.py +0 -0
  748. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/templates/_experimental_system_one_questions.txt +0 -0
  749. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/templates/_experimental_system_one_verdict.txt +0 -0
  750. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/templates/class.txt +0 -0
  751. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/templates/generate_opinions.txt +0 -0
  752. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/templates/generate_reason.txt +0 -0
  753. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/templates/generate_verdicts.txt +0 -0
  754. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/toxicity/toxicity.py +0 -0
  755. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/__init__.py +0 -0
  756. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/schema.py +0 -0
  757. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_audio_questions.txt +0 -0
  758. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_audio_verdict.txt +0 -0
  759. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_questions.txt +0 -0
  760. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/_experimental_system_one_verdict.txt +0 -0
  761. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/class.txt +0 -0
  762. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/generate_audio_reason.txt +0 -0
  763. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/generate_audio_verdicts.txt +0 -0
  764. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/generate_reason.txt +0 -0
  765. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/templates/generate_verdicts.txt +0 -0
  766. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/transcription_accuracy/transcription_accuracy.py +0 -0
  767. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/__init__.py +0 -0
  768. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/schema.py +0 -0
  769. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/templates/_experimental_system_one_questions.txt +0 -0
  770. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/templates/_experimental_system_one_verdict.txt +0 -0
  771. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/templates/class.txt +0 -0
  772. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/templates/generate_final_reason.txt +0 -0
  773. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/templates/generate_reason.txt +0 -0
  774. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/templates/generate_verdicts.txt +0 -0
  775. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_precision/turn_contextual_precision.py +0 -0
  776. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/__init__.py +0 -0
  777. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/schema.py +0 -0
  778. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/templates/_experimental_system_one_questions.txt +0 -0
  779. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/templates/_experimental_system_one_verdict.txt +0 -0
  780. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/templates/class.txt +0 -0
  781. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/templates/generate_final_reason.txt +0 -0
  782. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/templates/generate_reason.txt +0 -0
  783. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/templates/generate_verdicts.txt +0 -0
  784. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_recall/turn_contextual_recall.py +0 -0
  785. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/__init__.py +0 -0
  786. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/schema.py +0 -0
  787. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/templates/_experimental_system_one_questions.txt +0 -0
  788. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
  789. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/templates/class.txt +0 -0
  790. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/templates/generate_final_reason.txt +0 -0
  791. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/templates/generate_reason.txt +0 -0
  792. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/templates/generate_verdicts.txt +0 -0
  793. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_contextual_relevancy/turn_contextual_relevancy.py +0 -0
  794. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/__init__.py +0 -0
  795. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/schema.py +0 -0
  796. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/_experimental_system_one_questions.txt +0 -0
  797. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/_experimental_system_one_verdict.txt +0 -0
  798. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/class.txt +0 -0
  799. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/generate_claims.txt +0 -0
  800. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/generate_final_reason.txt +0 -0
  801. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/generate_reason.txt +0 -0
  802. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/generate_truths.txt +0 -0
  803. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/templates/generate_verdicts.txt +0 -0
  804. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_faithfulness/turn_faithfulness.py +0 -0
  805. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/__init__.py +0 -0
  806. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/schema.py +0 -0
  807. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/templates/_experimental_system_one_questions.txt +0 -0
  808. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/templates/_experimental_system_one_verdict.txt +0 -0
  809. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/templates/class.txt +0 -0
  810. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/templates/generate_reason.txt +0 -0
  811. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/templates/generate_verdicts.txt +0 -0
  812. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/turn_relevancy/turn_relevancy.py +0 -0
  813. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/__init__.py +0 -0
  814. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/decision.py +0 -0
  815. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/generation.py +0 -0
  816. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/metrics.py +0 -0
  817. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/models.py +0 -0
  818. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/qag.py +0 -0
  819. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/system_one.py +0 -0
  820. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/system_one_batch.py +0 -0
  821. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/test_case.py +0 -0
  822. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/turns.py +0 -0
  823. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/utils/verbose.py +0 -0
  824. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/__init__.py +0 -0
  825. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/_analysis.py +0 -0
  826. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/_detectors.py +0 -0
  827. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/base_metric.py +0 -0
  828. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/consistency.py +0 -0
  829. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/integrity.py +0 -0
  830. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/intelligibility.py +0 -0
  831. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/naturalness.py +0 -0
  832. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/reliability.py +0 -0
  833. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/responsiveness.py +0 -0
  834. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/metrics/voice/turn_taking.py +0 -0
  835. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/__init__.py +0 -0
  836. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/_summac_model.py +0 -0
  837. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/answer_relevancy_model.py +0 -0
  838. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/detoxify_model.py +0 -0
  839. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/embedding_models/__init__.py +0 -0
  840. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/embedding_models/azure_embedding_model.py +0 -0
  841. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/embedding_models/local_embedding_model.py +0 -0
  842. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/embedding_models/ollama_embedding_model.py +0 -0
  843. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/embedding_models/openai_embedding_model.py +0 -0
  844. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/hallucination_model.py +0 -0
  845. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/__init__.py +0 -0
  846. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/amazon_bedrock_model.py +0 -0
  847. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/anthropic_model.py +0 -0
  848. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/azure_model.py +0 -0
  849. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/deepseek_model.py +0 -0
  850. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/gateway_model.py +0 -0
  851. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/gemini_model.py +0 -0
  852. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/kimi_model.py +0 -0
  853. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/local_model.py +0 -0
  854. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/multimodal.py +0 -0
  855. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/ollama_model.py +0 -0
  856. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/openai_model.py +0 -0
  857. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/openrouter_model.py +0 -0
  858. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/portkey_model.py +0 -0
  859. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/llms/utils.py +0 -0
  860. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/speech.py +0 -0
  861. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/speech_selection.py +0 -0
  862. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/__init__.py +0 -0
  863. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/_stream.py +0 -0
  864. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/assemblyai/__init__.py +0 -0
  865. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/assemblyai/assemblyai.py +0 -0
  866. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/assemblyai/schema.py +0 -0
  867. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/cartesia/__init__.py +0 -0
  868. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/cartesia/cartesia.py +0 -0
  869. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/cartesia/schema.py +0 -0
  870. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/deepgram/__init__.py +0 -0
  871. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/deepgram/deepgram.py +0 -0
  872. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/deepgram/schema.py +0 -0
  873. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/elevenlabs/__init__.py +0 -0
  874. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/elevenlabs/elevenlabs.py +0 -0
  875. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/elevenlabs/schema.py +0 -0
  876. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/openai/__init__.py +0 -0
  877. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/stt/openai/openai.py +0 -0
  878. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/summac_model.py +0 -0
  879. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/system_one/__init__.py +0 -0
  880. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/system_one/constants.py +0 -0
  881. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/system_one/limits.py +0 -0
  882. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/system_one/schema.py +0 -0
  883. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/system_one/typesafe_model.py +0 -0
  884. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/__init__.py +0 -0
  885. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/_frames.py +0 -0
  886. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/cartesia/__init__.py +0 -0
  887. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/cartesia/schema.py +0 -0
  888. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/deepgram/__init__.py +0 -0
  889. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/deepgram/schema.py +0 -0
  890. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/elevenlabs/__init__.py +0 -0
  891. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/elevenlabs/schema.py +0 -0
  892. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/tts/openai/__init__.py +0 -0
  893. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/unbias_model.py +0 -0
  894. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/models/utils.py +0 -0
  895. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/__init__.py +0 -0
  896. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/__init__.py +0 -0
  897. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/base.py +0 -0
  898. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/configs.py +0 -0
  899. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/copro/__init__.py +0 -0
  900. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/copro/copro.py +0 -0
  901. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/copro/proposer.py +0 -0
  902. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/copro/schema.py +0 -0
  903. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/copro/template.py +0 -0
  904. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/gepa/__init__.py +0 -0
  905. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/gepa/gepa.py +0 -0
  906. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/miprov2/__init__.py +0 -0
  907. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/miprov2/bootstrapper.py +0 -0
  908. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/miprov2/miprov2.py +0 -0
  909. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/miprov2/proposer/__init__.py +0 -0
  910. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/miprov2/proposer/proposer.py +0 -0
  911. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/miprov2/proposer/schema.py +0 -0
  912. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/miprov2/proposer/template.py +0 -0
  913. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/simba/__init__.py +0 -0
  914. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/simba/proposer.py +0 -0
  915. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/simba/schema.py +0 -0
  916. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/simba/simba.py +0 -0
  917. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/algorithms/simba/template.py +0 -0
  918. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/configs.py +0 -0
  919. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/policies.py +0 -0
  920. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/prompt_optimizer.py +0 -0
  921. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/rewriter/__init__.py +0 -0
  922. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/rewriter/rewriter.py +0 -0
  923. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/rewriter/schema.py +0 -0
  924. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/rewriter/template.py +0 -0
  925. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/scorer/__init__.py +0 -0
  926. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/scorer/base.py +0 -0
  927. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/scorer/schema.py +0 -0
  928. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/scorer/scorer.py +0 -0
  929. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/scorer/template.py +0 -0
  930. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/scorer/utils.py +0 -0
  931. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/types.py +0 -0
  932. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/optimizer/utils.py +0 -0
  933. {deepeval-4.3.2/deepeval/model_integrations → deepeval-4.3.4/deepeval/plugins}/__init__.py +0 -0
  934. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/progress_context.py +0 -0
  935. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/prompt/__init__.py +0 -0
  936. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/prompt/api.py +0 -0
  937. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/prompt/prompt.py +0 -0
  938. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/prompt/utils.py +0 -0
  939. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/py.typed +0 -0
  940. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/red_teaming/README.md +0 -0
  941. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/scorer/__init__.py +0 -0
  942. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/scorer/scorer.py +0 -0
  943. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/__init__.py +0 -0
  944. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/controller/__init__.py +0 -0
  945. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/controller/controller.py +0 -0
  946. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/controller/template.py +0 -0
  947. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/controller/types.py +0 -0
  948. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/interrupt_template.py +0 -0
  949. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/schema.py +0 -0
  950. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/simulation_graph/__init__.py +0 -0
  951. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/simulation_graph/default.py +0 -0
  952. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/simulation_graph/node.py +0 -0
  953. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/simulation_graph/runner.py +0 -0
  954. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/simulation_graph/template.py +0 -0
  955. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/template.py +0 -0
  956. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/templates/class.txt +0 -0
  957. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/templates/decide_interrupt.txt +0 -0
  958. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/templates/interruption_bias_frequent.txt +0 -0
  959. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/templates/interruption_bias_normal.txt +0 -0
  960. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/templates/interruption_bias_rare.txt +0 -0
  961. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/templates/interruption_frustration.txt +0 -0
  962. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/simulator/utils.py +0 -0
  963. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/singleton.py +0 -0
  964. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/sqlite_store/__init__.py +0 -0
  965. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/sqlite_store/store.py +0 -0
  966. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/__init__.py +0 -0
  967. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/base_synthesizer.py +0 -0
  968. {deepeval-4.3.2/deepeval/plugins → deepeval-4.3.4/deepeval/synthesizer/chunking}/__init__.py +0 -0
  969. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/chunking/context_generator.py +0 -0
  970. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/chunking/doc_chunker.py +0 -0
  971. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/config.py +0 -0
  972. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/schema.py +0 -0
  973. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/synthesizer.py +0 -0
  974. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/templates/__init__.py +0 -0
  975. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/templates/template.py +0 -0
  976. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/templates/template_extraction.py +0 -0
  977. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/templates/template_prompt.py +0 -0
  978. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/types.py +0 -0
  979. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/synthesizer/utils.py +0 -0
  980. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/__init__.py +0 -0
  981. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/api.py +0 -0
  982. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/client.py +0 -0
  983. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/context.py +0 -0
  984. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/events.py +0 -0
  985. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/identity.py +0 -0
  986. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/judge.py +0 -0
  987. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/properties.py +0 -0
  988. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/telemetry/runtime.py +0 -0
  989. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/__init__.py +0 -0
  990. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/classifiers/templates.json +0 -0
  991. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/fragments/faithfulness_verdicts_example_multimodal.txt +0 -0
  992. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/fragments/faithfulness_verdicts_format_instruction.txt +0 -0
  993. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/fragments/faithfulness_verdicts_guidelines_multimodal.txt +0 -0
  994. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/fragments/faithfulness_verdicts_guidelines_text_only.txt +0 -0
  995. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/fragments/multimodal_image_generation_eval_context.txt +0 -0
  996. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/fragments/multimodal_input_rules.txt +0 -0
  997. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/fragments/multimodal_input_rules_turn_metric.txt +0 -0
  998. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/metrics/templates.json +0 -0
  999. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/resolver.py +0 -0
  1000. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/simulator/templates.json +0 -0
  1001. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/templates/template_class.py +0 -0
  1002. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_case/__init__.py +0 -0
  1003. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_case/arena_test_case.py +0 -0
  1004. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_case/mcp.py +0 -0
  1005. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_case/utils.py +0 -0
  1006. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_run/__init__.py +0 -0
  1007. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_run/hooks.py +0 -0
  1008. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/test_run/hyperparameters.py +0 -0
  1009. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/__init__.py +0 -0
  1010. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/integrations.py +0 -0
  1011. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/offline_evals/__init__.py +0 -0
  1012. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/offline_evals/api.py +0 -0
  1013. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/patchers.py +0 -0
  1014. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/perf_epoch_bridge.py +0 -0
  1015. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/tracing/trace_test_manager.py +0 -0
  1016. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/utils.py +0 -0
  1017. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/background.py +0 -0
  1018. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/config.py +0 -0
  1019. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/elevenlabs/README.md +0 -0
  1020. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/elevenlabs/__init__.py +0 -0
  1021. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/elevenlabs/connector.py +0 -0
  1022. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/pipecat/README.md +0 -0
  1023. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/pipecat/__init__.py +0 -0
  1024. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/pipecat/connector.py +0 -0
  1025. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/pipecat/protobuf.py +0 -0
  1026. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/vapi/README.md +0 -0
  1027. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/vapi/__init__.py +0 -0
  1028. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/providers/vapi/connector.py +0 -0
  1029. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/transports/callback.py +0 -0
  1030. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/transports/webrtc.py +0 -0
  1031. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/turn_engine.py +0 -0
  1032. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/connectors/types.py +0 -0
  1033. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/floor_control.py +0 -0
  1034. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/interruption.py +0 -0
  1035. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/output.py +0 -0
  1036. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/protocol.py +0 -0
  1037. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/recording.py +0 -0
  1038. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/streaming.py +0 -0
  1039. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/timeline.py +0 -0
  1040. {deepeval-4.3.2 → deepeval-4.3.4}/deepeval/voice/turn_detection.py +0 -0
@@ -1,15 +1,14 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: deepeval
3
- Version: 4.3.2
3
+ Version: 4.3.4
4
4
  Summary: The LLM Evaluation Framework
5
5
  License: Apache-2.0
6
6
  License-File: LICENSE.md
7
7
  Author: Jeffrey Ip
8
8
  Author-email: jeffreyip@confident-ai.com
9
- Requires-Python: >=3.9,<4.0
9
+ Requires-Python: >=3.10,<4.0
10
10
  Classifier: License :: OSI Approved :: Apache Software License
11
11
  Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.9
13
12
  Classifier: Programming Language :: Python :: 3.10
14
13
  Classifier: Programming Language :: Python :: 3.11
15
14
  Classifier: Programming Language :: Python :: 3.12
@@ -18,6 +17,7 @@ Classifier: Programming Language :: Python :: 3.14
18
17
  Provides-Extra: inspect
19
18
  Requires-Dist: aiohttp
20
19
  Requires-Dist: click (>=8.0.0,<8.4.0)
20
+ Requires-Dist: confident-trace (>=0.1.14,<0.2.0)
21
21
  Requires-Dist: grpcio (>=1.67.1,<2.0.0)
22
22
  Requires-Dist: jinja2
23
23
  Requires-Dist: nest_asyncio
@@ -114,7 +114,7 @@ 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, 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:
117
+ Whether you're building AI agents, voice agents, multi-turn chatbots, 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
120
  - **Complete AI agent trajectories** across every decision and action
@@ -155,17 +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>Multi-Turn Metrics</b></summary>
160
-
161
- - [Knowledge Retention](https://deepeval.com/docs/metrics-knowledge-retention) — evaluate whether the chatbot retains factual information throughout a conversation
162
- - [Conversation Completeness](https://deepeval.com/docs/metrics-conversation-completeness) — measure whether the chatbot satisfies user needs throughout a conversation
163
- - [Turn Relevancy](https://deepeval.com/docs/metrics-turn-relevancy) — evaluate whether the chatbot generates consistently relevant responses throughout a conversation
164
- - [Turn Faithfulness](https://deepeval.com/docs/metrics-turn-faithfulness) — check if the chatbot's responses are factually grounded in retrieval context across turns
165
- - [Role Adherence](https://deepeval.com/docs/metrics-role-adherence) — evaluate whether the chatbot adheres to its assigned role throughout a conversation
166
-
167
- </details>
168
-
169
158
  - <details>
170
159
  <summary><b>Voice Agent Metrics</b></summary>
171
160
 
@@ -177,6 +166,17 @@ Use these evaluations to determine the optimal models, prompts, and architecture
177
166
 
178
167
  </details>
179
168
 
169
+ - <details>
170
+ <summary><b>Multi-Turn Metrics</b></summary>
171
+
172
+ - [Knowledge Retention](https://deepeval.com/docs/metrics-knowledge-retention) — evaluate whether the chatbot retains factual information throughout a conversation
173
+ - [Conversation Completeness](https://deepeval.com/docs/metrics-conversation-completeness) — measure whether the chatbot satisfies user needs throughout a conversation
174
+ - [Turn Relevancy](https://deepeval.com/docs/metrics-turn-relevancy) — evaluate whether the chatbot generates consistently relevant responses throughout a conversation
175
+ - [Turn Faithfulness](https://deepeval.com/docs/metrics-turn-faithfulness) — check if the chatbot's responses are factually grounded in retrieval context across turns
176
+ - [Role Adherence](https://deepeval.com/docs/metrics-role-adherence) — evaluate whether the chatbot adheres to its assigned role throughout a conversation
177
+
178
+ </details>
179
+
180
180
  - <details>
181
181
  <summary><b>RAG Metrics</b></summary>
182
182
 
@@ -223,7 +223,7 @@ Use these evaluations to determine the optimal models, prompts, and architecture
223
223
 
224
224
  - 🎯 Supports both end-to-end and component-level LLM evaluation.
225
225
  - 🧩 Build your own custom metrics that are automatically integrated with DeepEval's ecosystem.
226
- - 🔮 Generate both single and multi-turn synthetic datasets for evaluation.
226
+ - 🔮 Generate single and multi-turn synthetic datasets, and simulate live voice calls against your voice agent.
227
227
  - 🔗 Integrates seamlessly with **ANY** CI/CD environment.
228
228
  - 🧬 Optimize prompts automatically based on evaluation results.
229
229
  - 🏆 Easily benchmark **ANY** LLM on popular LLM benchmarks in [under 10 lines of code.](https://deepeval.com/docs/benchmarks-introduction?utm_source=GitHub), including MMLU, HellaSwag, DROP, BIG-Bench Hard, TruthfulQA, HumanEval, GSM8K.
@@ -232,7 +232,7 @@ Use these evaluations to determine the optimal models, prompts, and architecture
232
232
 
233
233
  # 🔌 Integrations
234
234
 
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.
235
+ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and more — and into voice stacks like Vapi, ElevenLabs, LiveKit, and Pipecat. The same traces can go to **Confident AI** once you're live, where evals run on every production trace.
236
236
 
237
237
  ## Frameworks
238
238
 
@@ -249,13 +249,20 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
249
249
  - [OpenAI Agents](https://www.deepeval.com/integrations/frameworks/openai-agents?utm_source=GitHub) — evaluate OpenAI Agents end-to-end in under a minute
250
250
  - [LlamaIndex](https://www.deepeval.com/integrations/frameworks/llamaindex?utm_source=GitHub) — evaluate AI agents and RAG applications built with LlamaIndex
251
251
 
252
+ ## Voice Agent Connectors
253
+
254
+ - [Vapi](https://www.deepeval.com/integrations/voice-agent-connectors/vapi?utm_source=GitHub) — simulate calls to a Vapi assistant over its WebSocket transport
255
+ - [ElevenLabs](https://www.deepeval.com/integrations/voice-agent-connectors/elevenlabs?utm_source=GitHub) — simulate calls to an ElevenLabs conversational agent
256
+ - [LiveKit](https://www.deepeval.com/integrations/voice-agent-connectors/livekit?utm_source=GitHub) — join your agent's LiveKit room and trade audio over WebRTC
257
+ - [Pipecat](https://www.deepeval.com/integrations/voice-agent-connectors/pipecat?utm_source=GitHub) — connect to your Pipecat pipeline over its WebSocket transport
258
+
252
259
  ## ☁️ Platform + Ecosystem
253
260
 
254
261
  [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.
255
262
 
256
263
  - Failing traces surface before anyone has written an eval for them, clustered into failure modes, with user sentiment and behavior across traces.
257
264
  - 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.
265
+ - For enterprise teams, one system for AI quality: evals, monitoring, human annotation, and voice-native observability, with governance as release gates.
259
266
  - 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).
260
267
 
261
268
  <p align="center">
@@ -266,7 +273,7 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
266
273
 
267
274
  # 🤖 Vibe-Coder QuickStart
268
275
 
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.
276
+ Want your coding agent to add evals and fix failures for you? Install the DeepEval skill, point it at your AI agent, voice agent, multi-turn chatbot, 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.
270
277
 
271
278
  [Start with the 5-minute vibe-coder guide](https://deepeval.com/docs/vibe-coder-quickstart?utm_source=GitHub).
272
279
 
@@ -278,7 +285,7 @@ Let's pretend your LLM application is a customer support AI agent; here's how De
278
285
 
279
286
  ## Installation
280
287
 
281
- Deepeval works with **Python>=3.9+**.
288
+ Deepeval works with **Python>=3.10+**.
282
289
 
283
290
  ```
284
291
  pip install -U deepeval
@@ -670,7 +677,7 @@ print(answer_relevancy_metric.score)
670
677
  print(answer_relevancy_metric.reason)
671
678
  ```
672
679
 
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.
680
+ Note that some metrics are built for specific use cases, such as AI agents, voice agents, multi-turn chatbots, RAG, and more. Make sure to use our docs to pick the right one for your use case.
674
681
 
675
682
  ## A Note on Env Variables (.env / .env.local)
676
683
 
@@ -61,7 +61,7 @@
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, 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:
64
+ Whether you're building AI agents, voice agents, multi-turn chatbots, 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
67
  - **Complete AI agent trajectories** across every decision and action
@@ -102,17 +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>Multi-Turn Metrics</b></summary>
107
-
108
- - [Knowledge Retention](https://deepeval.com/docs/metrics-knowledge-retention) — evaluate whether the chatbot retains factual information throughout a conversation
109
- - [Conversation Completeness](https://deepeval.com/docs/metrics-conversation-completeness) — measure whether the chatbot satisfies user needs throughout a conversation
110
- - [Turn Relevancy](https://deepeval.com/docs/metrics-turn-relevancy) — evaluate whether the chatbot generates consistently relevant responses throughout a conversation
111
- - [Turn Faithfulness](https://deepeval.com/docs/metrics-turn-faithfulness) — check if the chatbot's responses are factually grounded in retrieval context across turns
112
- - [Role Adherence](https://deepeval.com/docs/metrics-role-adherence) — evaluate whether the chatbot adheres to its assigned role throughout a conversation
113
-
114
- </details>
115
-
116
105
  - <details>
117
106
  <summary><b>Voice Agent Metrics</b></summary>
118
107
 
@@ -124,6 +113,17 @@ Use these evaluations to determine the optimal models, prompts, and architecture
124
113
 
125
114
  </details>
126
115
 
116
+ - <details>
117
+ <summary><b>Multi-Turn Metrics</b></summary>
118
+
119
+ - [Knowledge Retention](https://deepeval.com/docs/metrics-knowledge-retention) — evaluate whether the chatbot retains factual information throughout a conversation
120
+ - [Conversation Completeness](https://deepeval.com/docs/metrics-conversation-completeness) — measure whether the chatbot satisfies user needs throughout a conversation
121
+ - [Turn Relevancy](https://deepeval.com/docs/metrics-turn-relevancy) — evaluate whether the chatbot generates consistently relevant responses throughout a conversation
122
+ - [Turn Faithfulness](https://deepeval.com/docs/metrics-turn-faithfulness) — check if the chatbot's responses are factually grounded in retrieval context across turns
123
+ - [Role Adherence](https://deepeval.com/docs/metrics-role-adherence) — evaluate whether the chatbot adheres to its assigned role throughout a conversation
124
+
125
+ </details>
126
+
127
127
  - <details>
128
128
  <summary><b>RAG Metrics</b></summary>
129
129
 
@@ -170,7 +170,7 @@ Use these evaluations to determine the optimal models, prompts, and architecture
170
170
 
171
171
  - 🎯 Supports both end-to-end and component-level LLM evaluation.
172
172
  - 🧩 Build your own custom metrics that are automatically integrated with DeepEval's ecosystem.
173
- - 🔮 Generate both single and multi-turn synthetic datasets for evaluation.
173
+ - 🔮 Generate single and multi-turn synthetic datasets, and simulate live voice calls against your voice agent.
174
174
  - 🔗 Integrates seamlessly with **ANY** CI/CD environment.
175
175
  - 🧬 Optimize prompts automatically based on evaluation results.
176
176
  - 🏆 Easily benchmark **ANY** LLM on popular LLM benchmarks in [under 10 lines of code.](https://deepeval.com/docs/benchmarks-introduction?utm_source=GitHub), including MMLU, HellaSwag, DROP, BIG-Bench Hard, TruthfulQA, HumanEval, GSM8K.
@@ -179,7 +179,7 @@ Use these evaluations to determine the optimal models, prompts, and architecture
179
179
 
180
180
  # 🔌 Integrations
181
181
 
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.
182
+ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and more — and into voice stacks like Vapi, ElevenLabs, LiveKit, and Pipecat. The same traces can go to **Confident AI** once you're live, where evals run on every production trace.
183
183
 
184
184
  ## Frameworks
185
185
 
@@ -196,13 +196,20 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
196
196
  - [OpenAI Agents](https://www.deepeval.com/integrations/frameworks/openai-agents?utm_source=GitHub) — evaluate OpenAI Agents end-to-end in under a minute
197
197
  - [LlamaIndex](https://www.deepeval.com/integrations/frameworks/llamaindex?utm_source=GitHub) — evaluate AI agents and RAG applications built with LlamaIndex
198
198
 
199
+ ## Voice Agent Connectors
200
+
201
+ - [Vapi](https://www.deepeval.com/integrations/voice-agent-connectors/vapi?utm_source=GitHub) — simulate calls to a Vapi assistant over its WebSocket transport
202
+ - [ElevenLabs](https://www.deepeval.com/integrations/voice-agent-connectors/elevenlabs?utm_source=GitHub) — simulate calls to an ElevenLabs conversational agent
203
+ - [LiveKit](https://www.deepeval.com/integrations/voice-agent-connectors/livekit?utm_source=GitHub) — join your agent's LiveKit room and trade audio over WebRTC
204
+ - [Pipecat](https://www.deepeval.com/integrations/voice-agent-connectors/pipecat?utm_source=GitHub) — connect to your Pipecat pipeline over its WebSocket transport
205
+
199
206
  ## ☁️ Platform + Ecosystem
200
207
 
201
208
  [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.
202
209
 
203
210
  - Failing traces surface before anyone has written an eval for them, clustered into failure modes, with user sentiment and behavior across traces.
204
211
  - 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.
212
+ - For enterprise teams, one system for AI quality: evals, monitoring, human annotation, and voice-native observability, with governance as release gates.
206
213
  - 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).
207
214
 
208
215
  <p align="center">
@@ -213,7 +220,7 @@ DeepEval plugs into any LLM framework — OpenAI Agents, LangChain, CrewAI, and
213
220
 
214
221
  # 🤖 Vibe-Coder QuickStart
215
222
 
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.
223
+ Want your coding agent to add evals and fix failures for you? Install the DeepEval skill, point it at your AI agent, voice agent, multi-turn chatbot, 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.
217
224
 
218
225
  [Start with the 5-minute vibe-coder guide](https://deepeval.com/docs/vibe-coder-quickstart?utm_source=GitHub).
219
226
 
@@ -225,7 +232,7 @@ Let's pretend your LLM application is a customer support AI agent; here's how De
225
232
 
226
233
  ## Installation
227
234
 
228
- Deepeval works with **Python>=3.9+**.
235
+ Deepeval works with **Python>=3.10+**.
229
236
 
230
237
  ```
231
238
  pip install -U deepeval
@@ -617,7 +624,7 @@ print(answer_relevancy_metric.score)
617
624
  print(answer_relevancy_metric.reason)
618
625
  ```
619
626
 
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.
627
+ Note that some metrics are built for specific use cases, such as AI agents, voice agents, multi-turn chatbots, RAG, and more. Make sure to use our docs to pick the right one for your use case.
621
628
 
622
629
  ## A Note on Env Variables (.env / .env.local)
623
630
 
@@ -55,20 +55,16 @@ def _expose_public_api() -> None:
55
55
  telemetry = _telemetry
56
56
 
57
57
  def instrument(*args, **kwargs):
58
- """Set up Confident AI's OTel backend.
58
+ """Trace whatever OpenInference instrumentors run for deepeval.
59
59
 
60
- Configures a TracerProvider, attaches deepeval's OpenInference span
61
- interceptor, and routes spans through the context-aware processor
62
- (REST when a deepeval trace context is active or an evaluation is
63
- running, OTLP otherwise). Pair with any community OpenInference
64
- instrumentor (e.g. ``GoogleADKInstrumentor``, ``OpenAIInstrumentor``)
65
- to capture framework-specific telemetry.
60
+ Starts confident-trace, whose tracer provider any community
61
+ OpenInference instrumentor (e.g. ``OpenAIInstrumentor``) traces on.
62
+ deepeval evaluates the spans it collects, and confident-trace sends
63
+ the rest to Confident AI.
66
64
 
67
65
  Accepts the same trace-level kwargs as
68
66
  ``deepeval.integrations.openinference.instrument_openinference``:
69
- ``api_key``, ``name``, ``thread_id``, ``user_id``, ``metadata``,
70
- ``tags``, ``environment``, ``metric_collection``, ``test_case_id``,
71
- ``turn_id``. Span-level config goes on ``with next_*_span(...)``
67
+ ``name``, ``thread_id``, ``metadata``, ``tags``, ``environment``. Span-level config goes on ``with next_*_span(...)``
72
68
  / ``update_current_span(...)``.
73
69
  """
74
70
  from deepeval.integrations.openinference import (
@@ -0,0 +1 @@
1
+ __version__: str = "4.3.4"
@@ -12,9 +12,9 @@ except ImportError:
12
12
  AsyncAnthropic = None # type: ignore
13
13
 
14
14
  if Anthropic or AsyncAnthropic:
15
- from deepeval.anthropic.patch import patch_anthropic_classes
16
15
  from deepeval.telemetry import capture_tracing_integration
17
16
  from deepeval.tracing.integrations import Integration
17
+ from deepeval.tracing.otel.setup import ensure_confident_trace
18
18
 
19
19
  with capture_tracing_integration(Integration.ANTHROPIC):
20
- patch_anthropic_classes()
20
+ ensure_confident_trace(("anthropic",))
@@ -990,6 +990,14 @@ class Settings(BaseSettings):
990
990
  None,
991
991
  description="Enable detailed internal tracing of metric and model methods inside @observe spans.",
992
992
  )
993
+ DEEPEVAL_AUTO_TRACE: Optional[bool] = Field(
994
+ True,
995
+ description="Trace every installed library confident-trace supports while evals_iterator or deepeval test run runs. Set to false to trace only @observe code and the integrations you set up.",
996
+ )
997
+ DEEPEVAL_GLOBAL_TRACER_PROVIDER: Optional[bool] = Field(
998
+ False,
999
+ description="Install deepeval's tracer provider as the global OpenTelemetry provider when none is set, so other OpenTelemetry spans in your app are traced too. Off by default, which leaves the global provider to your own OpenTelemetry setup.",
1000
+ )
993
1001
 
994
1002
  CONFIDENT_OTEL_URL: Optional[AnyUrl] = Field(
995
1003
  "https://otel.confident-ai.com",
@@ -1181,7 +1189,9 @@ class Settings(BaseSettings):
1181
1189
  "DEEPEVAL_DISABLE_TIMEOUTS",
1182
1190
  "DEEPEVAL_VERBOSE_MODE",
1183
1191
  "DEEPEVAL_GRPC_LOGGING",
1192
+ "DEEPEVAL_AUTO_TRACE",
1184
1193
  "DEEPEVAL_DISABLE_DOTENV",
1194
+ "DEEPEVAL_GLOBAL_TRACER_PROVIDER",
1185
1195
  "DEEPEVAL_TELEMETRY_OPT_OUT",
1186
1196
  "DEEPEVAL_TELEMETRY_ENABLED",
1187
1197
  "DEEPEVAL_MODEL_THINKING",
@@ -12,7 +12,6 @@ LOGIN_PROMPT = "\n✨👀 Looking for a place for your LLM test data to live
12
12
 
13
13
 
14
14
  CONFIDENT_TRACE_VERBOSE = "CONFIDENT_TRACE_VERBOSE"
15
- CONFIDENT_TRACE_FLUSH = "CONFIDENT_TRACE_FLUSH"
16
15
  CONFIDENT_TRACE_SAMPLE_RATE = "CONFIDENT_TRACE_SAMPLE_RATE"
17
16
  CONFIDENT_TRACE_ENVIRONMENT = "CONFIDENT_TRACE_ENVIRONMENT"
18
17
  CONFIDENT_TRACING_ENABLED = "CONFIDENT_TRACING_ENABLED"
@@ -476,9 +476,11 @@ class EvaluationDataset:
476
476
  retrieval_context = reconstruct_retrieval_context(
477
477
  json_obj.get(retrieval_context_key_name)
478
478
  )
479
- tools_called_data = json_obj.get(tools_called_key_name, [])
479
+ # A key that is present but null (as save_as writes for goldens
480
+ # without tools) means no tools, same as a missing key.
481
+ tools_called_data = json_obj.get(tools_called_key_name) or []
480
482
  tools_called = [ToolCall(**tool) for tool in tools_called_data]
481
- expected_tools_data = json_obj.get(expected_tools_key_name, [])
483
+ expected_tools_data = json_obj.get(expected_tools_key_name) or []
482
484
  expected_tools = [ToolCall(**tool) for tool in expected_tools_data]
483
485
  # additional_metadata = json_obj.get(addtional_metadata_key_name)
484
486
 
@@ -384,6 +384,9 @@ class ConversationalGolden(BaseModel):
384
384
  if re.search(pattern, self.user_description) is not None:
385
385
  self.multimodal = True
386
386
  return self
387
+ if self.context and any(re.search(pattern, c) for c in self.context):
388
+ self.multimodal = True
389
+ return self
387
390
  if self.turns:
388
391
  for turn in self.turns:
389
392
  if re.search(pattern, turn.content) is not None:
@@ -32,6 +32,7 @@ def strip_local_expectation_fields(golden_bodies: List[Dict[str, Any]]):
32
32
  for field in _LOCAL_ONLY_EXPECTATION_FIELDS:
33
33
  expectations.pop(field, None)
34
34
 
35
+
35
36
  # RetrievedContextData declares an @model_serializer, so a plain model_dump
36
37
  # flattens it and a save/load round-trip loses the source. Serialize each item
37
38
  # to a namespaced, parseable marker instead, and reconstruct it on load.
@@ -67,8 +67,7 @@ class NoMetricsError(DeepEvalError):
67
67
  Raised by the ``evals_iterator`` executor when, after iteration completes,
68
68
  we can prove that no metrics were declared via:
69
69
  - ``evals_iterator(metrics=[...])`` (top-level / trace-level metrics)
70
- - ``@observe(metrics=[...])`` or ``@observe(metric_collection=...)``
71
- on any span (span-level metrics)
70
+ - ``@observe(metrics=[...])`` on any span (span-level metrics)
72
71
  - ``update_current_trace(metrics=[...])`` inside the traced function
73
72
  (trace-level metrics, set at runtime)
74
73
 
@@ -22,6 +22,7 @@ from deepeval.evaluate.utils import (
22
22
  validate_evaluate_inputs,
23
23
  )
24
24
  from deepeval.evaluate.console_report import EvaluationConsoleReport
25
+ from deepeval.evaluate.local_store import save_results_locally
25
26
  from deepeval.dataset import Golden
26
27
  from deepeval.prompt import Prompt
27
28
  from deepeval.test_case.utils import (
@@ -346,12 +347,18 @@ def evaluate(
346
347
 
347
348
  if not metrics and not has_expectations:
348
349
  # Classifier-only run: classifications are local-only for now, so
349
- # there is no test run to finalize or upload.
350
- return EvaluationResult(
350
+ # there is no test run to finalize or upload; only save locally.
351
+ result = EvaluationResult(
351
352
  test_results=test_results,
352
353
  confident_link=None,
353
354
  test_run_id=None,
354
355
  )
356
+ save_results_locally(
357
+ result,
358
+ results_folder=display_config.results_folder,
359
+ results_subfolder=display_config.results_subfolder,
360
+ )
361
+ return result
355
362
 
356
363
  global_test_run_manager.save_test_run(TEMP_FILE_PATH)
357
364
 
@@ -15,7 +15,6 @@ from deepeval.tracing.tracing import (
15
15
  trace_manager,
16
16
  Trace,
17
17
  BaseSpan,
18
- LlmSpan,
19
18
  )
20
19
  from deepeval.errors import MissingTestCaseParamsError
21
20
  from deepeval.utils import (
@@ -35,19 +34,9 @@ from deepeval.test_case import (
35
34
  LLMTestCase,
36
35
  ConversationalTestCase,
37
36
  )
38
- from deepeval.test_run import (
39
- global_test_run_manager,
40
- TestRunManager,
41
- )
42
37
  from deepeval.evaluate.types import TestResult
43
38
  from deepeval.tracing.types import TraceSpanStatus
44
39
  from deepeval.config.settings import get_settings
45
- from deepeval.test_run import TEMP_FILE_PATH
46
- from deepeval.confident.api import is_confident
47
- from deepeval.test_run.hyperparameters import (
48
- process_hyperparameters,
49
- process_prompts,
50
- )
51
40
 
52
41
  logger = logging.getLogger(__name__)
53
42
 
@@ -116,6 +105,15 @@ def _skip_metrics_for_error(
116
105
  return False
117
106
 
118
107
 
108
+ def _attach_span_tree(
109
+ test_case: LLMTestCase, trace: Trace, span: Optional[BaseSpan]
110
+ ) -> None:
111
+ """Let metrics that look past their own span (e.g. ArgumentCorrectness)
112
+ reach the rest of the trace. `span` is None for a trace-level test case."""
113
+ test_case._trace_root_spans = trace.root_spans
114
+ test_case._trace_span = span
115
+
116
+
119
117
  def _trace_error(current_trace: Trace) -> Optional[str]:
120
118
  def _first_err(s: BaseSpan) -> Optional[str]:
121
119
  if s.status == TraceSpanStatus.ERRORED and s.error:
@@ -317,36 +315,3 @@ def _execute_classifier(
317
315
  classifier.label = None
318
316
  else:
319
317
  raise
320
-
321
-
322
- def log_prompt(
323
- llm_span: LlmSpan,
324
- test_run_manager: TestRunManager,
325
- ):
326
- prompt = llm_span.prompt
327
- if prompt is None:
328
- return
329
-
330
- span_hyperparameters = {}
331
- prompt_hash = prompt.hash if is_confident() else None
332
- key = f"{prompt.alias}_{prompt_hash}"
333
- span_hyperparameters[key] = prompt
334
-
335
- test_run = test_run_manager.get_test_run()
336
- if test_run.prompts is None:
337
- test_run.prompts = []
338
- if test_run.hyperparameters is None:
339
- test_run.hyperparameters = {}
340
-
341
- if key not in test_run.hyperparameters:
342
- test_run.hyperparameters.update(
343
- process_hyperparameters(span_hyperparameters, False)
344
- )
345
- existing_prompt_keys = {f"{p.alias}_{p.hash}" for p in test_run.prompts}
346
- new_prompts = process_prompts(span_hyperparameters)
347
- for new_prompt in new_prompts:
348
- new_prompt_key = f"{new_prompt.alias}_{new_prompt.hash}"
349
- if new_prompt_key not in existing_prompt_keys:
350
- test_run.prompts.append(new_prompt)
351
-
352
- global_test_run_manager.save_test_run(TEMP_FILE_PATH)
@@ -65,10 +65,10 @@ logger = logging.getLogger(__name__)
65
65
 
66
66
 
67
67
  from deepeval.evaluate.execute._common import (
68
+ _attach_span_tree,
68
69
  _skip_metrics_for_error,
69
70
  _trace_error,
70
71
  filter_duplicate_results,
71
- log_prompt,
72
72
  )
73
73
 
74
74
 
@@ -354,7 +354,6 @@ async def _a_execute_span_test_case(
354
354
  trace_api.agent_spans.append(api_span)
355
355
  elif isinstance(span, LlmSpan):
356
356
  trace_api.llm_spans.append(api_span)
357
- log_prompt(span, test_run_manager)
358
357
  elif isinstance(span, RetrieverSpan):
359
358
  trace_api.retriever_spans.append(api_span)
360
359
  elif isinstance(span, ToolSpan):
@@ -416,6 +415,7 @@ async def _a_execute_span_test_case(
416
415
  if test_case is None:
417
416
  test_case = LLMTestCase(input="None")
418
417
  test_case._trace_dict = trace_manager.create_nested_spans_dict(span)
418
+ _attach_span_tree(test_case, current_trace, span)
419
419
 
420
420
  for metric in metrics:
421
421
  metric.skipped = False
@@ -524,6 +524,7 @@ async def _a_execute_trace_test_case(
524
524
  test_case._trace_dict = trace_manager.create_nested_spans_dict(
525
525
  trace.root_spans[0]
526
526
  )
527
+ _attach_span_tree(test_case, trace, None)
527
528
 
528
529
  for metric in metrics:
529
530
  metric.skipped = False
@@ -35,6 +35,7 @@ from deepeval.tracing.tracing import (
35
35
  ToolSpan,
36
36
  )
37
37
  from deepeval.tracing.context import current_trace_context
38
+ from deepeval.tracing.otel.setup import start_automatic_tracing
38
39
  from deepeval.tracing.api import (
39
40
  BaseApiSpan,
40
41
  )
@@ -85,6 +86,7 @@ logger = logging.getLogger(__name__)
85
86
 
86
87
 
87
88
  from deepeval.evaluate.execute._common import (
89
+ _attach_span_tree,
88
90
  _await_with_outer_deadline,
89
91
  _execute_metric,
90
92
  _log_gather_timeout,
@@ -94,7 +96,6 @@ from deepeval.evaluate.execute._common import (
94
96
  _snapshot_tasks,
95
97
  _trace_error,
96
98
  filter_duplicate_results,
97
- log_prompt,
98
99
  )
99
100
  from deepeval.evaluate.execute.agentic import (
100
101
  _a_execute_agentic_test_case,
@@ -251,7 +252,6 @@ def execute_agentic_test_cases_from_loop(
251
252
  trace_api.agent_spans.append(api_span)
252
253
  elif isinstance(span, LlmSpan):
253
254
  trace_api.llm_spans.append(api_span)
254
- log_prompt(span, test_run_manager)
255
255
  elif isinstance(span, RetrieverSpan):
256
256
  trace_api.retriever_spans.append(api_span)
257
257
  elif isinstance(span, ToolSpan):
@@ -319,6 +319,7 @@ def execute_agentic_test_cases_from_loop(
319
319
  advance=count_metrics_in_span_subtree(span),
320
320
  )
321
321
  return
322
+ _attach_span_tree(llm_test_case, current_trace, span)
322
323
 
323
324
  # Preparing metric calculation
324
325
  api_span.metrics_data = []
@@ -411,6 +412,7 @@ def execute_agentic_test_cases_from_loop(
411
412
  current_trace.root_spans[0]
412
413
  )
413
414
  )
415
+ _attach_span_tree(llm_test_case, current_trace, None)
414
416
 
415
417
  if not skip_metrics_for_this_golden:
416
418
  for metric in current_trace.metrics:
@@ -476,6 +478,7 @@ def execute_agentic_test_cases_from_loop(
476
478
  ):
477
479
  _raise_no_metrics_error()
478
480
 
481
+ stop_automatic_tracing = start_automatic_tracing()
479
482
  try:
480
483
  if display_config.show_indicator and _use_bar_indicator:
481
484
  progress = Progress(
@@ -499,6 +502,7 @@ def execute_agentic_test_cases_from_loop(
499
502
  except Exception:
500
503
  raise
501
504
  finally:
505
+ stop_automatic_tracing()
502
506
  # Atomic exit cleanup: replacing the session resets mode + every
503
507
  # per-run collection in a single assignment, so state can't leak
504
508
  # into the next run.
@@ -913,6 +917,7 @@ def a_execute_agentic_test_cases_from_loop(
913
917
  )
914
918
  )
915
919
 
920
+ stop_automatic_tracing = start_automatic_tracing()
916
921
  try:
917
922
  if display_config.show_indicator and _use_bar_indicator:
918
923
  progress = Progress(
@@ -943,6 +948,7 @@ def a_execute_agentic_test_cases_from_loop(
943
948
  except Exception:
944
949
  raise
945
950
  finally:
951
+ stop_automatic_tracing()
946
952
  # Atomic exit cleanup: replacing the session resets mode + every
947
953
  # per-run collection in a single assignment.
948
954
  local_trace_manager.eval_session = EvalSession()
@@ -53,10 +53,10 @@ logger = logging.getLogger(__name__)
53
53
 
54
54
 
55
55
  from deepeval.evaluate.execute._common import (
56
+ _attach_span_tree,
56
57
  _execute_metric,
57
58
  _skip_metrics_for_error,
58
59
  _trace_error,
59
- log_prompt,
60
60
  )
61
61
 
62
62
 
@@ -132,6 +132,8 @@ def _assert_test_from_current_trace(
132
132
  is_promoted_root = True
133
133
  else:
134
134
  root_for_dfs = root
135
+ # A root still parked under the open wrapper points at it too.
136
+ is_promoted_root = root.parent_uuid is not None
135
137
 
136
138
  effective_trace_output = (
137
139
  current_trace.output
@@ -187,7 +189,6 @@ def _assert_test_from_current_trace(
187
189
  trace_api.agent_spans.append(api_span)
188
190
  elif isinstance(span, LlmSpan):
189
191
  trace_api.llm_spans.append(api_span)
190
- log_prompt(span, test_run_manager)
191
192
  elif isinstance(span, RetrieverSpan):
192
193
  trace_api.retriever_spans.append(api_span)
193
194
  elif isinstance(span, ToolSpan):
@@ -239,6 +240,7 @@ def _assert_test_from_current_trace(
239
240
  )
240
241
  )
241
242
  return
243
+ _attach_span_tree(llm_test_case, current_trace, span)
242
244
 
243
245
  api_span.metrics_data = []
244
246
  for metric in metrics:
@@ -301,6 +303,7 @@ def _assert_test_from_current_trace(
301
303
  llm_test_case_for_trace._trace_dict = (
302
304
  trace_manager.create_nested_spans_dict(root_for_dfs)
303
305
  )
306
+ _attach_span_tree(llm_test_case_for_trace, current_trace, None)
304
307
 
305
308
  trace_api.metrics_data = []
306
309
  for metric in current_trace.metrics:
@@ -176,8 +176,7 @@ class _ExpectationEvaluator:
176
176
  for condition, verdict in zip(conditions, self.verdicts)
177
177
  ]
178
178
  return (
179
- _REASON_INSTRUCTIONS
180
- + f"Score:\n{self.score}\n\n"
179
+ _REASON_INSTRUCTIONS + f"Score:\n{self.score}\n\n"
181
180
  f"Requirements:\n{json.dumps(verdicts, ensure_ascii=False)}\n\n"
182
181
  "JSON:\n"
183
182
  )