langfuse_client/models/
model_usage_unit.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
17pub enum ModelUsageUnit {
18 #[serde(rename = "CHARACTERS")]
19 Characters,
20 #[serde(rename = "TOKENS")]
21 Tokens,
22 #[serde(rename = "MILLISECONDS")]
23 Milliseconds,
24 #[serde(rename = "SECONDS")]
25 Seconds,
26 #[serde(rename = "IMAGES")]
27 Images,
28 #[serde(rename = "REQUESTS")]
29 Requests,
30
31}
32
33impl std::fmt::Display for ModelUsageUnit {
34 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
35 match self {
36 Self::Characters => write!(f, "CHARACTERS"),
37 Self::Tokens => write!(f, "TOKENS"),
38 Self::Milliseconds => write!(f, "MILLISECONDS"),
39 Self::Seconds => write!(f, "SECONDS"),
40 Self::Images => write!(f, "IMAGES"),
41 Self::Requests => write!(f, "REQUESTS"),
42 }
43 }
44}
45
46impl Default for ModelUsageUnit {
47 fn default() -> ModelUsageUnit {
48 Self::Characters
49 }
50}
51