The homework checker module is designed to automate the evaluation of SCRATCH projects using the OpenAI Chat Completion API (https://platform.openai.com/docs/api-reference/chat/object).
[HomeworkCode]_[StudentName].sb3
.To enable the Chat Completion API to intelligently generate a JSON response, a function call has been introduced. The following is a sample function call pattern:
get_evaluation = [
{
'name': 'get_evaluation',
'description': 'Get the homework evaluation based on the given criteria',
'parameters': {
'type': 'object',
'properties': {
'success': {
'type': 'boolean',
'description': 'A flag to determine if the criteria is met.'
},
'criteria': {
'type': 'string',
'description': 'The criteria currently being evaluated.'
},
'sprite': {
'type': 'string[]',
'description': 'A list of sprites that meet the criteria.'
}
}
}
}
]
The homework management module provides the following REST APIs to manage homework metadata.
Method | End Point | Description |
---|---|---|
POST | /homework-management/authentication/users | Register User |
POST | /homework-management/authentication/login | User Login |
POST | /homework-management/homework-management/homework | Create Homework |
GET | /homework-management/homework/[homework_id] | Get Homework By Id |
PUT | /homework-management/homework/[homework_id]/criteria | Add or Update a Criteria to a homework |
DELETE | /homework-management/homework/[homework_id]/criteria/[criteria_id] | Delete Criteria |
DELETE | /homework-management/homework/[homework_id] | Delete Homework |