Spaces:
Paused
Paused
| from dataclasses import dataclass | |
| from datetime import datetime | |
| import logging | |
| def parse_variables(prompt): | |
| import re | |
| # Extract variables enclosed in double curly braces | |
| variables = re.findall(r"{{(.*?)}}", prompt) | |
| # Remove duplicates while preserving order | |
| seen = set() | |
| variables = [ | |
| x.strip() for x in variables if not (x.strip() in seen or seen.add(x.strip())) | |
| ] | |
| return variables | |
| def get_logger(sink_name: str = "core_utils") -> logging.Logger: | |
| logging.basicConfig( | |
| format="%(asctime)s,%(msecs)03d %(levelname)-8s " | |
| "[%(filename)s:%(lineno)d] %(message)s", | |
| datefmt="%Y-%m-%d:%H:%M:%S", | |
| level=logging.INFO, | |
| force=True, | |
| ) | |
| logger = logging.getLogger(sink_name) | |
| return logger | |
| class Vote: | |
| timestamp: str | |
| prompt: str | |
| response_a: str | |
| response_b: str | |
| model_a: str | |
| model_b: str | |
| winner: str | |
| judge_id: str | |