#[derive(Clone, Debug, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
pub struct TokenUsage {
pub prompt_tokens: u32,
pub completion_tokens: u32,
pub total_tokens: u32,
}
#[derive(Clone, Debug, PartialEq, serde::Serialize, serde::Deserialize)]
pub struct LlmInput {
pub model: String,
pub prompt: String,
pub temperature: Option<f32>,
pub max_tokens: Option<u32>,
pub stop_sequences: Vec<String>,
}
#[derive(Clone, Debug, PartialEq, serde::Serialize, serde::Deserialize)]
pub struct LlmResult {
pub token_usage: Option<TokenUsage>,
pub model: String,
pub finish_reason: Option<String>,
pub generations: Vec<String>,
}