llm-evaluator / src /models.py
zaid646's picture
Initial commit: LLM-as-a-Judge evaluator
0b84707
Raw
History Blame Contribute Delete
862 Bytes
from pydantic import BaseModel
class EvalSample(BaseModel):
id: str
prompt: str
expected_answer: str
class TargetResponse(BaseModel):
output: str
error: str | None = None
success: bool = False
latency_ms: float = 0.0
tokens_used: int = 0
class JudgeScore(BaseModel):
relevance: int
hallucination: int
toxicity: int
reasoning: str
class RunRecord(BaseModel):
sample_id: str
prompt: str
expected_answer: str
target_output: str | None = None
target_error: str | None = None
target_success: bool = False
target_latency_ms: float = 0.0
target_tokens: int = 0
relevance: int | None = None
hallucination: int | None = None
toxicity: int | None = None
reasoning: str | None = None
judge_latency_ms: float = 0.0
judge_tokens: int = 0
passed: bool = False