from typing import List, Optional

from pydantic import BaseModel, Field


class TraicieAdvancedRAGOutput(BaseModel):
    mode: str = Field(..., description="The mode of execution (RAG or CHECK).")
    answer: str = Field(None, description="Answer to the questions asked, when in RAG")
    insufficient_info: bool = Field(None, description="An indication if there's insufficient information to answer, when in RAG")
    affirmative_answer: bool = Field(None, description="An indication if the answer is affirmative (true) or negative (false), when in CHECK")


