eld_llm 0.0.1

An LLM built from scratch in Rust
#[derive(Debug, serde_derive::Serialize, serde_derive::Deserialize)]
pub struct CorpusEntry {
    pub name: String,
    pub size_bytes: u64,
}


#[derive(Debug, serde_derive::Serialize, serde_derive::Deserialize)]
pub struct CorpusTracker {
    pub entries: Vec<CorpusEntry>,
}

impl CorpusTracker {
    pub fn new() -> Self {
        Self { entries: Vec::new() }
    }

    pub fn add(&mut self, name: String, size_bytes: u64) {
        self.entries.push(CorpusEntry { name, size_bytes });
    }

    pub fn total_size_bytes(&self) -> u64 {
        self.entries.iter().map(|e| e.size_bytes).sum()
    }
}