open_routerer/types/
model.rs

1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Serialize, Clone, Deserialize, Default)]
4pub enum Model {
5    #[default]
6    #[serde(rename = "deepseek/deepseek-r1-distill-llama-70b:free")]
7    DeepSeekLlama,
8    #[serde(rename = "deepseek/deepseek-r1:free")]
9    DeepSeekR1,
10}
11
12impl From<String> for Model {
13    fn from(value: String) -> Self {
14        match value.to_ascii_lowercase().as_str() {
15            "deepseek-llama" => Model::DeepSeekLlama,
16            "deepseek/deepseek-r1:free" => Model::DeepSeekR1,
17            _ => Model::default(),
18        }
19    }
20}
21
22impl From<&str> for Model {
23    fn from(value: &str) -> Self {
24        value.to_string().into()
25    }
26}