make sure to raise an error when missing training data

This commit is contained in:
Brandon Hancock
2025-01-28 13:17:48 -05:00
parent 164d105fd1
commit 1f014c1d61

View File

@@ -90,16 +90,37 @@ class TaskEvaluator:
- training_data (dict): The training data to be evaluated.
- agent_id (str): The ID of the agent.
"""
print("Training data: ", training_data)
output_training_data = training_data[agent_id]
final_aggregated_data = ""
for _, data in output_training_data.items():
for iteration, data in output_training_data.items():
improved_output = data.get("improved_output")
initial_output = data.get("initial_output")
human_feedback = data.get("human_feedback")
if not all([improved_output, initial_output, human_feedback]):
missing_fields = [
field
for field in ["improved_output", "initial_output", "human_feedback"]
if not data.get(field)
]
error_msg = (
f"Critical training data error: Missing fields ({', '.join(missing_fields)}) "
f"for agent {agent_id} in iteration {iteration}.\n"
"This indicates a broken training process. "
"Cannot proceed with evaluation.\n"
"Please check your training implementation."
)
self._logger.log("critical", error_msg, color="red")
raise ValueError(error_msg)
final_aggregated_data += (
f"Initial Output:\n{data.get('initial_output')}\n\n"
f"Human Feedback:\n{data.get('human_feedback')}\n\n"
f"Improved Output:\n{data.get('improved_output')}\n\n"
f"Iteration: {iteration}\n"
f"Initial Output:\n{initial_output}\n\n"
f"Human Feedback:\n{human_feedback}\n\n"
f"Improved Output:\n{improved_output}\n\n"
"------------------------------------------------\n\n"
)
evaluation_query = (