def to_dict()

in yourbench/utils/question_models.py [0:0]


    def to_dict(self, format: str = "unified") -> Dict[str, Any]:
        base = {
            "document_id": self.document_id,
            "additional_instructions": self.additional_instructions,
            "question": self.question,
            "self_answer": self.self_answer,
            "estimated_difficulty": self.estimated_difficulty,
            "self_assessed_question_type": self.self_assessed_question_type,
            "generating_model": self.generating_model,
            "thought_process": self.thought_process,
            "raw_response": self.raw_response,
            "citations": self.citations,
        }

        if self.question_mode == "multi-choice":
            base["choices"] = self.choices

        if format == "multi-hop":
            return {
                **base,
                "source_chunk_ids": self.source_chunk_ids,
            }

        if format == "single-hop":
            return {
                **base,
                "chunk_id": self.chunk_id,
            }

        return {**base, "chunk_id": self.chunk_id, "source_chunk_ids": self.source_chunk_ids}