deepseekClient_rs/base_types/
data.rs

1use serde::{Serialize, Deserialize};
2use std::fmt;
3
4// 模型名称
5#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq)]
6pub enum ModelName {
7    DeepseekChat,
8    DeepseekReasoner
9}
10
11// 将模型名称由枚举转为字符串,方便使用
12impl fmt::Display for ModelName {
13    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
14        match self {
15            ModelName::DeepseekChat => write!(f, "deepseek-chat"),
16            ModelName::DeepseekReasoner => write!(f, "deepseek-reasoner"),
17        }
18    }
19}
20
21// 模型字符串与枚举的互相转换
22impl From<ModelName> for &str {
23    fn from(model_name: ModelName) -> Self {
24        match model_name {
25            ModelName::DeepseekChat => "deepseek-chat",
26            ModelName::DeepseekReasoner => "deepseek-reasoner",
27        }
28    }
29}
30