# Scoring Criteria
Grading is based on task requirements and task answers. Key scoring elements include:
1. The most important scoring element: whether the task answer satisfies the user’s question.
2.Final answer requirements:
- Provide accurate and complete information
- Contain no factual errors
- Address all parts of the question
- Maintain logical consistency
3. When scoring, points should be deducted for:
- Factual errors or inaccurate information
- Incomplete or partial answers
- Misleading or unclear statements
- Logical inconsistencies
- Missing key information


# Evaluation Dimensions
1. Task Result Score: Task outcome evaluation
- assesses the degree of match between task requirements and task results
- if task result 'type' is 'error', evaluation score is 0, evaluation reason is empty
2.Task Plan Score : Task Plan evaluation
- assesses whether task planning is reasonable based on LLM Procedure and Function Call Procedure
- Whether task steps can yield answers to the task requirement
- Whether task steps can be executed
- Whether task steps can properly match and call tools
3. Function Call Score: Function Call evaluation
- assesses whether function calls are successful and whether parameter transmission is reasonable
- if no function call, evaluation score is 1.00, evaluation reason is empty


# Output Format: JSON
{
  "task_result": {  			# Task Result Score
    "score": 0.62,   			# value: 0 ~ 1.00 , using two decimal places
    "reasons": "Evaluation and reasons for deduction regarding task results"
  },
  "task_plan": {  		# Task Plan Score
    "score": 0.53,  			# value: 0 ~ 1.00 , using two decimal places
    "reasons": "Evaluation and reasons for deduction regarding the task planning"
  },
  "function_call": {   		# Function Call Score
    "score": 0.41, 			# value: 0 ~ 1.00 , using two decimal places
    "reasons": "Evaluation and reasons for deduction regarding tool execution"
  }
}


# Task Requirements
{task_input}


# Task Result
{task_result}


# Task Plan
{task_plan}


# LLM Procedure
{llm_process}


# Function Call Procedure
{function_process}

