rag_judge_env / models.py
yahid's picture
Upload folder using huggingface_hub
478252a verified
Raw
History Blame Contribute Delete
1.02 kB
from pydantic import BaseModel
from typing import Optional, List
from enum import Enum
from openenv.core.env_server.types import Action, Observation
class TaskType(str, Enum):
RELEVANCE = "relevance"
HALLUCINATION = "hallucination"
FULL_JUDGMENT = "full_judgment"
class RAGAction(Action):
relevant_chunk_ids: Optional[List[int]] = None
hallucinated_claims: Optional[List[str]] = None
relevance_score: Optional[float] = None
faithfulness_score: Optional[float] = None
citation_accuracy_score: Optional[float] = None
reasoning: Optional[str] = None
class RAGObservation(Observation):
# Observation base already provides: done=False, reward=None, metadata={}
query: str
retrieved_chunks: List[str]
chunk_ids: List[int]
generated_answer: Optional[str] = None
cited_sources: Optional[List[int]] = None
task_type: TaskType
instructions: str
class RAGReward(BaseModel):
score: float
feedback: str
partial_scores: Optional[dict] = None