Skip to content

Commit b5d07df

Browse files
committed
delete manul Deserialize for modelInfo
1 parent a0af47e commit b5d07df

File tree

1 file changed

+0
-65
lines changed
  • crates/chat-cli/src/cli/chat/cli

1 file changed

+0
-65
lines changed

crates/chat-cli/src/cli/chat/cli/model.rs

Lines changed: 0 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -61,71 +61,6 @@ impl ModelInfo {
6161
self.model_name.as_deref().unwrap_or(&self.model_id)
6262
}
6363
}
64-
impl<'de> Deserialize<'de> for ModelInfo {
65-
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
66-
where
67-
D: Deserializer<'de>,
68-
{
69-
use std::fmt;
70-
71-
use serde::de::{
72-
self,
73-
MapAccess,
74-
Visitor,
75-
};
76-
77-
struct ModelInfoVisitor;
78-
79-
impl<'de> Visitor<'de> for ModelInfoVisitor {
80-
type Value = ModelInfo;
81-
82-
fn expecting(&self, formatter: &mut fmt::Formatter<'_>) -> fmt::Result {
83-
formatter.write_str("a string or a ModelInfo object")
84-
}
85-
86-
// old version: modelid string
87-
fn visit_str<E>(self, value: &str) -> Result<ModelInfo, E>
88-
where
89-
E: de::Error,
90-
{
91-
Ok(ModelInfo {
92-
model_id: value.to_string(),
93-
model_name: None,
94-
context_window_tokens: default_context_window(),
95-
})
96-
}
97-
98-
// new version: modelInfo object
99-
fn visit_map<M>(self, mut map: M) -> Result<ModelInfo, M::Error>
100-
where
101-
M: MapAccess<'de>,
102-
{
103-
let mut model_id = None;
104-
let mut model_name = None;
105-
let mut context_window_tokens = None;
106-
107-
while let Some(key) = map.next_key::<String>()? {
108-
match key.as_str() {
109-
"model_id" => model_id = Some(map.next_value()?),
110-
"model_name" => model_name = map.next_value()?,
111-
"context_window_tokens" => context_window_tokens = Some(map.next_value()?),
112-
_ => {
113-
let _: serde::de::IgnoredAny = map.next_value()?;
114-
},
115-
}
116-
}
117-
118-
Ok(ModelInfo {
119-
model_id: model_id.ok_or_else(|| de::Error::missing_field("model_id"))?,
120-
model_name,
121-
context_window_tokens: context_window_tokens.unwrap_or_else(default_context_window),
122-
})
123-
}
124-
}
125-
126-
deserializer.deserialize_any(ModelInfoVisitor)
127-
}
128-
}
12964
#[deny(missing_docs)]
13065
#[derive(Debug, PartialEq, Args)]
13166
pub struct ModelArgs;

0 commit comments

Comments
 (0)