Download src/datasets/XCodeDataset.py from smallan13/DebateCoder: direct link, hf CLI and curl.
- Browser
- Download file 1.74 kB
-
https://huggingface.co/smallan13/DebateCoder/resolve/c7a0d4bb35b29abc02cb9891bd19979bf3eab7ad/src/datasets/XCodeDataset.py
- Command line
-
hf download hf://smallan13/DebateCoder@c7a0d4bb35b29abc02cb9891bd19979bf3eab7ad/src/datasets/XCodeDataset.py
-
curl -L -o XCodeDataset.py https://huggingface.co/smallan13/DebateCoder/resolve/c7a0d4bb35b29abc02cb9891bd19979bf3eab7ad/src/datasets/XCodeDataset.py
1.74 kB
| from .Dataset import Dataset | |
| from evaluations.evalute import xcode_evaluate, contest_evaluate_public_tests | |
| from constants.paths import * | |
| class XCodeDataset(Dataset): | |
| def __init__( | |
| self, | |
| path: str = XCODE_VALIDATION_DATA_PATH, | |
| ): | |
| super().__init__(path) | |
| self.id_key = "src_uid" | |
| def evaluate_sample_io( | |
| self, | |
| item: dict, | |
| cur_imp: str, | |
| language: str, | |
| ): | |
| sample_io = [] | |
| for input, output in zip(item["sample_inputs"], item["sample_outputs"]): | |
| sample_io.append({ | |
| "input": input, | |
| "output": [output] | |
| }) | |
| return contest_evaluate_public_tests( | |
| generated_code=cur_imp, | |
| id=item[self.id_key], | |
| tests=sample_io, | |
| lang=language | |
| ) | |
| def evaluate( | |
| self, | |
| item: dict, | |
| cur_imp: str, | |
| language: str, | |
| ): | |
| return xcode_evaluate( | |
| generated_code=cur_imp, | |
| src_uid=item["src_uid"], | |
| lang=language | |
| ) | |
| def get_prompt(item): | |
| return f"Problem Description:\n{item['description']}\nInput Specification:\n{item['input_spec']}\nOutput Specification:\n{item['output_spec']}\nSample Inputs: {item['sample_inputs']}\nSample Outputs: {item['sample_outputs']}\nNote: {item['notes']}\nTake input from: {item['input_from']}\nGive output to: {item['output_to']}\nTime Limit: {item['time_limit']}\nMemory Limit: {item['memory_limit']}\n\nNote: If you are writing a function then after the function definition take input from using `input()` function, call the function with specified parameters and finally print the output of the function." | |