use serde::{Deserialize, Serialize};
pub mod answer;
pub mod ingest;
#[cfg(test)]
mod tests;
pub use answer::{answer_question, AnswerOpts, BenchAnswer, RetrievedEpisode, RetrievedFact};
pub use ingest::{ingest_conversation, IngestStats};
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
pub struct BenchTurn {
pub speaker: String,
pub text: String,
pub dia_id: String,
}
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
pub struct BenchSession {
pub date_time: String,
pub turns: Vec<BenchTurn>,
}
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
pub struct BenchConversation {
pub sample_id: String,
pub speaker_a: String,
pub speaker_b: String,
pub sessions: Vec<BenchSession>,
}