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 #[serde(rename = "typesafe")]
43 Typesafe,
44 #[serde(rename = "cloudflare")]
45 Cloudflare,
46
47}
48
49impl std::fmt::Display for AiProviderKind {
50 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
51 match self {
52 Self::Openai => write!(f, "openai"),
53 Self::AzureOpenai => write!(f, "azure_openai"),
54 Self::AzureFoundry => write!(f, "azure_foundry"),
55 Self::Anthropic => write!(f, "anthropic"),
56 Self::Mistral => write!(f, "mistral"),
57 Self::Deepseek => write!(f, "deepseek"),
58 Self::Googleai => write!(f, "googleai"),
59 Self::Groq => write!(f, "groq"),
60 Self::Openrouter => write!(f, "openrouter"),
61 Self::Togetherai => write!(f, "togetherai"),
62 Self::Customai => write!(f, "customai"),
63 Self::AwsBedrock => write!(f, "aws_bedrock"),
64 Self::Typesafe => write!(f, "typesafe"),
65 Self::Cloudflare => write!(f, "cloudflare"),
66 }
67 }
68}
69
70impl Default for AiProviderKind {
71 fn default() -> AiProviderKind {
72 Self::Openai
73 }
74}
75