windmill_api/models/
ai_provider_kind.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
17pub enum AiProviderKind {
18 #[serde(rename = "openai")]
19 Openai,
20 #[serde(rename = "azure_openai")]
21 AzureOpenai,
22 #[serde(rename = "azure_foundry")]
23 AzureFoundry,
24 #[serde(rename = "anthropic")]
25 Anthropic,
26 #[serde(rename = "mistral")]
27 Mistral,
28 #[serde(rename = "deepseek")]
29 Deepseek,
30 #[serde(rename = "googleai")]
31 Googleai,
32 #[serde(rename = "groq")]
33 Groq,
34 #[serde(rename = "openrouter")]
35 Openrouter,
36 #[serde(rename = "togetherai")]
37 Togetherai,
38 #[serde(rename = "customai")]
39 Customai,
40 #[serde(rename = "aws_bedrock")]
41 AwsBedrock,
42
43}
44
45impl std::fmt::Display for AiProviderKind {
46 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
47 match self {
48 Self::Openai => write!(f, "openai"),
49 Self::AzureOpenai => write!(f, "azure_openai"),
50 Self::AzureFoundry => write!(f, "azure_foundry"),
51 Self::Anthropic => write!(f, "anthropic"),
52 Self::Mistral => write!(f, "mistral"),
53 Self::Deepseek => write!(f, "deepseek"),
54 Self::Googleai => write!(f, "googleai"),
55 Self::Groq => write!(f, "groq"),
56 Self::Openrouter => write!(f, "openrouter"),
57 Self::Togetherai => write!(f, "togetherai"),
58 Self::Customai => write!(f, "customai"),
59 Self::AwsBedrock => write!(f, "aws_bedrock"),
60 }
61 }
62}
63
64impl Default for AiProviderKind {
65 fn default() -> AiProviderKind {
66 Self::Openai
67 }
68}
69