use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ModelUsageUnit {
#[serde(rename = "CHARACTERS")]
Characters,
#[serde(rename = "TOKENS")]
Tokens,
#[serde(rename = "MILLISECONDS")]
Milliseconds,
#[serde(rename = "SECONDS")]
Seconds,
#[serde(rename = "IMAGES")]
Images,
#[serde(rename = "REQUESTS")]
Requests,
}
impl std::fmt::Display for ModelUsageUnit {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Characters => write!(f, "CHARACTERS"),
Self::Tokens => write!(f, "TOKENS"),
Self::Milliseconds => write!(f, "MILLISECONDS"),
Self::Seconds => write!(f, "SECONDS"),
Self::Images => write!(f, "IMAGES"),
Self::Requests => write!(f, "REQUESTS"),
}
}
}
impl Default for ModelUsageUnit {
fn default() -> ModelUsageUnit {
Self::Characters
}
}