TalentPerformer

Education

Education

Grading Assistant

You are an advanced AI grading system responsible for consistent, fair, and comprehensive assessment.

LIVE

Purpose

You are an advanced AI grading system responsible for consistent, fair, and comprehensive assessment.

AI-Powered IntelligenceAdvanced AI capabilities for automated processing and analysis

Enterprise ReadyBuilt for production with security, scalability, and reliability

Seamless IntegrationEasy to integrate with your existing systems and workflows

Agent Capabilities

This agent is equipped with the following advanced capabilities:

Knowledge Base

Vector search & retrieval

Knowledge (NoneType)

Available Tools

Apply Rubric Grading

Apply a grading rubric to student work and generate detailed feedback. Args: assignment_data: JSON with assignment submission details rubric: JSON rubric with criteria and point values Returns: Graded assessment with rubric scores and feedback

def apply_rubric_grading(assignment_data: str, rubric: str) -> str:
    """
    Apply a grading rubric to student work and generate detailed feedback.
    
    Args:
        assignment_data: JSON with assignment submission details
        rubric: JSON rubric with criteria and point values
    
    Returns:
        Graded assessment with rubric scores and feedback
    """
    try:
        if isinstance(assignment_data, str):
            assignment = json.loads(assignment_data)
        else:
            assignment = assignment_data
            
        if isinstance(rubric, str):
            rubric_data = json.loads(rubric)
        else:
            rubric_data = rubric
        
        student_name = assignment.get('student_name', 'Unknown')
        assignment_title = assignment.get('title', 'Assignment')
        criteria_scores = assignment.get('criteria_scores', {})
        
        rubric_criteria = rubric_data.get('criteria', [])
        
        report = f"=== GRADING ASSESSMENT ===\n\n"
        report += f"Student: {student_name}\n"
        report += f"Assignment: {assignment_title}\n\n"
        
        report += f"{'Criterion':<30} {'Points':>10} {'Max Points':>12} {'Percentage':>12}\n"
        report += "-" * 70 + "\n"
        
        total_earned = 0
        total_possible = 0
        
        for criterion in rubric_criteria:
            name = criterion.get('name', 'Unknown')
            max_points = criterion.get('max_points', 0)
            earned = criteria_scores.get(name, 0)
            percentage = (earned / max_points * 100) if max_points > 0 else 0
            
            total_earned += earned
            total_possible += max_points
            
            report += f"{name:<30} {earned:>10} {max_points:>12} {percentage:>11.1f}%\n"
        
        final_percentage = (total_earned / total_possible * 100) if total_possible > 0 else 0
        
        report += "-" * 70 + "\n"
        report += f"{'TOTAL':<30} {total_earned:>10} {total_possible:>12} {final_percentage:>11.1f}%\n\n"
        
        "color: #6b7280;"># Letter grade
        if final_percentage >= 90:
            letter_grade = "A"
        elif final_percentage >= 80:
            letter_grade = "B"
        elif final_percentage >= 70:
            letter_grade = "C"
        elif final_percentage >= 60:
            letter_grade = "D"
        else:
            letter_grade = "F"
        
        report += f"=== FINAL GRADE ===\n"
        report += f"Score: {final_percentage:.1f}% ({letter_grade})\n\n"
        
        report += "=== FEEDBACK RECOMMENDATIONS ===\n"
        if final_percentage >= 90:
            report += "Excellent work! Consider highlighting specific strengths.\n"
        elif final_percentage >= 70:
            report += "Good effort. Provide specific suggestions for improvement in lower-scoring areas.\n"
        else:
            report += "⚠️ Below standards. Schedule student conference and provide detailed improvement plan.\n"
        
        return report
        
    except Exception as e:
        return f"Error applying rubric grading: {str(e)}"

Calculate Class Statistics

Calculate class-wide grade statistics and identify outliers. Args: grades: JSON array of student grades for an assignment or class Example: {"assignment": "Midterm Exam", "grades": [85, 92, 78, 65, 88, 90, 72]} Returns: Statistical analysis report with class distribution

def calculate_class_statistics(grades: str) -> str:
    """
    Calculate class-wide grade statistics and identify outliers.
    
    Args:
        grades: JSON array of student grades for an assignment or class
        Example: {"assignment": "Midterm Exam", "grades": [85, 92, 78, 65, 88, 90, 72]}
    
    Returns:
        Statistical analysis report with class distribution
    """
    try:
        if isinstance(grades, str):
            data = json.loads(grades)
        else:
            data = grades
        
        assignment = data.get('assignment', 'Assignment')
        grade_list = data.get('grades', [])
        
        if not grade_list:
            return "Error: No grades provided"
        
        grade_list_sorted = sorted(grade_list)
        n = len(grade_list_sorted)
        
        mean = sum(grade_list) / n
        median = grade_list_sorted[n // 2] if n % 2 == 1 else(grade_list_sorted[n // 2 - 1] + grade_list_sorted[n // 2]) / 2
        minimum = min(grade_list)
        maximum = max(grade_list)
        
        "color: #6b7280;"># Calculate standard deviation
        variance = sum((x - mean) ** 2 for x in grade_list) / n
        std_dev = variance ** 0.5
        
        "color: #6b7280;"># Grade distribution
        distribution = {'A': 0, 'B': 0, 'C': 0, 'D': 0, 'F': 0}
        for grade in grade_list:
            if grade >= 90:
                distribution['A'] += 1
            elif grade >= 80:
                distribution['B'] += 1
            elif grade >= 70:
                distribution['C'] += 1
            elif grade >= 60:
                distribution['D'] += 1
            else:
                distribution['F'] += 1
        
        report = f"=== CLASS GRADE STATISTICS ===\n\n"
        report += f"Assignment: {assignment}\n"
        report += f"Total Students: {n}\n\n"
        
        report += "=== DESCRIPTIVE STATISTICS ===\n"
        report += f"Mean(Average): {mean:.2f}%\n"
        report += f"Median: {median:.2f}%\n"
        report += f"Standard Deviation: {std_dev:.2f}\n"
        report += f"Minimum: {minimum:.2f}%\n"
        report += f"Maximum: {maximum:.2f}%\n"
        report += f"Range: {maximum - minimum:.2f}%\n\n"
        
        report += "=== GRADE DISTRIBUTION ===\n"
        report += f"{'Grade':<10} {'Count':>10} {'Percentage':>12}\n"
        report += "-" * 35 + "\n"
        for grade, count in distribution.items():
            percentage = (count / n * 100)
            bar = '█' * int(percentage / 5)
            report += f"{grade:<10} {count:>10} {percentage:>11.1f}% {bar}\n"
        
        report += "\n=== ANALYSIS ===\n"
        
        failing_count = distribution['F']
        if failing_count > n * 0.2:
            report += f"⚠️ HIGH FAILURE RATE: {failing_count} students({failing_count/n*100:.1f}%)\n"
            report += "Recommendations:\n"
            report += "  - Review assignment difficulty and clarity\n"
            report += "  - Consider offering reassessment opportunity\n"
            report += "  - Schedule review session for struggling students\n\n"
        
        if std_dev > 20:
            report += "⚠️ HIGH VARIABILITY in student performance\n"
            report += "Recommendations:\n"
            report += "  - Differentiated instruction may be needed\n"
            report += "  - Identify students needing additional support\n\n"
        
        if mean >= 85:
            report += "✓ Strong class performance overall\n"
        elif mean < 70:
            report += "⚠️ Below-target class average - instructional review recommended\n"
        
        return report
        
    except Exception as e:
        return f"Error calculating class statistics: {str(e)}"

Reasoning Tools

ReasoningTools from agno framework

Required Inputs

Generated Outputs

Business Value

Automated processing reduces manual effort and improves accuracy

Consistent validation logic ensures compliance and audit readiness

Early detection of issues minimizes downstream risks and costs

Graph

Grading Assistant preview

Pricing

Get in touch for a tailored pricing

Contact us to discuss your specific needs and requirements and get a personalized plan.

Custom Deployment

Tailored to your organization's specific workflows and requirements.

Enterprise Support

Dedicated support team and onboarding assistance.

Continuous Updates

Regular updates and improvements based on latest AI advancements.

Contact Us

For enterprise deployments.

Custom

one time payment

plus local taxes

Contact Sales

Tailored solutionsCustom pricing based on your organization's size and usage requirements.

)}