https://github.com/lambda-feedback/evaluation-function-api
OpenAPI Specification and Validation Schemas for the Evaluation Function API
https://github.com/lambda-feedback/evaluation-function-api
evaluation-function-api openapi swagger
Last synced: 3 months ago
JSON representation
OpenAPI Specification and Validation Schemas for the Evaluation Function API
- Host: GitHub
- URL: https://github.com/lambda-feedback/evaluation-function-api
- Owner: lambda-feedback
- Created: 2024-06-15T08:58:26.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-15T12:40:04.000Z (almost 2 years ago)
- Last Synced: 2025-09-05T03:50:07.494Z (7 months ago)
- Topics: evaluation-function-api, openapi, swagger
- Homepage: https://lambda-feedback.github.io/evaluation-function-api/
- Size: 23.4 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Citation: CITATION.cff
Awesome Lists containing this project
README
# Evaluation Function API
This repository contains the specification and validation schemas for the Lambda Feedback Evaluation Function API. The API is expected to be implemented by evaluation functions that are used in the Lambda Feedback platform.
## Overview
The Evaluation Function API provides a comprehensive solution for educational assessment systems, using an RPC-like approach via HTTP with commands specified in request headers. It enables automated grading and validation of student responses against educator-defined answers, with support for custom evaluation parameters and real-time preview functionality.
## Core Features
### Evaluation (`eval` command)
The primary endpoint for grading student responses. It compares a student's submission against the correct answer and returns:
- Boolean correctness indicator (`is_correct`)
- Optional feedback (string, array, or object format)
- Support for custom evaluation parameters (e.g., case sensitivity, tolerance levels)
### Preview (`preview` command)
A lightweight validation endpoint that normalizes and validates student responses without performing full evaluation. Useful for:
- Real-time input validation as students type
- Formatting and normalization checks
- Pre-submission validation
Returns a normalized version of the student's response.
### Health Check (`healthcheck` command)
Monitors the operational status of the evaluation function by running internal tests. Returns detailed diagnostics including:
- Overall test status (`tests_passed`)
- Lists of successful tests, failures, and errors
- Useful for monitoring and debugging evaluation functions
## Command Header
The `command` header specifies the action to be performed by the evaluation function. The API currently supports three commands:
- `eval` - Evaluate student responses against correct answers
- `preview` - Validate and normalize responses without evaluation
- `healthcheck` - Verify operational status of the evaluation function
## Documentation
The full OpenAPI documentation is available [here](https://lambda-feedback.github.io/evaluation-function-api/).
## Repository Structure
This repository contains:
- OpenAPI specification (YAML format)
- JSON Schema validation files for:
- Evaluation requests (`request-eval.json`)
- Preview requests (`request-preview.json`)
- Evaluation responses (`response-eval.json`)
- Preview responses (`response-preview.json`)
- Health check responses (`response-health.json`)
## Contributing
Contributions to improve the API specification or documentation are welcome. Please ensure all changes maintain backward compatibility and update both the OpenAPI spec and JSON schemas accordingly.