use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AnalysisCostBreakdown {
#[serde(rename = "summary", skip_serializing_if = "Option::is_none")]
pub summary: Option<f64>,
#[serde(
rename = "summaryPromptTokens",
skip_serializing_if = "Option::is_none"
)]
pub summary_prompt_tokens: Option<f64>,
#[serde(
rename = "summaryCompletionTokens",
skip_serializing_if = "Option::is_none"
)]
pub summary_completion_tokens: Option<f64>,
#[serde(rename = "structuredData", skip_serializing_if = "Option::is_none")]
pub structured_data: Option<f64>,
#[serde(
rename = "structuredDataPromptTokens",
skip_serializing_if = "Option::is_none"
)]
pub structured_data_prompt_tokens: Option<f64>,
#[serde(
rename = "structuredDataCompletionTokens",
skip_serializing_if = "Option::is_none"
)]
pub structured_data_completion_tokens: Option<f64>,
#[serde(rename = "successEvaluation", skip_serializing_if = "Option::is_none")]
pub success_evaluation: Option<f64>,
#[serde(
rename = "successEvaluationPromptTokens",
skip_serializing_if = "Option::is_none"
)]
pub success_evaluation_prompt_tokens: Option<f64>,
#[serde(
rename = "successEvaluationCompletionTokens",
skip_serializing_if = "Option::is_none"
)]
pub success_evaluation_completion_tokens: Option<f64>,
}
impl AnalysisCostBreakdown {
pub fn new() -> AnalysisCostBreakdown {
AnalysisCostBreakdown {
summary: None,
summary_prompt_tokens: None,
summary_completion_tokens: None,
structured_data: None,
structured_data_prompt_tokens: None,
structured_data_completion_tokens: None,
success_evaluation: None,
success_evaluation_prompt_tokens: None,
success_evaluation_completion_tokens: None,
}
}
}