use crate::builder::LlmBuilder;
impl LlmBuilder {
#[cfg(feature = "openai")]
pub fn openai(self) -> crate::providers::openai::OpenAiBuilder {
crate::providers::openai::OpenAiBuilder::new(self)
}
#[cfg(feature = "anthropic")]
pub fn anthropic(self) -> crate::providers::anthropic::AnthropicBuilder {
crate::providers::anthropic::AnthropicBuilder::new(self)
}
#[cfg(feature = "google")]
pub fn gemini(self) -> crate::providers::gemini::GeminiBuilder {
crate::providers::gemini::GeminiBuilder::new(self)
}
#[cfg(feature = "ollama")]
pub fn ollama(self) -> crate::providers::ollama::OllamaBuilder {
crate::providers::ollama::OllamaBuilder::new(self)
}
#[cfg(feature = "groq")]
pub fn groq(self) -> crate::providers::groq::GroqBuilderWrapper {
crate::providers::groq::GroqBuilderWrapper::new(self)
}
#[cfg(feature = "xai")]
pub fn xai(self) -> crate::providers::xai::XaiBuilderWrapper {
crate::providers::xai::XaiBuilderWrapper::new(self)
}
#[cfg(feature = "openai")]
pub fn deepseek(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "deepseek")
}
#[cfg(feature = "openai")]
pub fn openrouter(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "openrouter")
}
#[cfg(feature = "openai")]
pub fn siliconflow(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "siliconflow")
}
#[cfg(feature = "openai")]
pub fn together(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "together")
}
#[cfg(feature = "openai")]
pub fn fireworks(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "fireworks")
}
#[cfg(feature = "openai")]
pub fn github_copilot(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "github_copilot")
}
#[cfg(feature = "openai")]
pub fn perplexity(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "perplexity")
}
#[cfg(feature = "openai")]
pub fn mistral(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "mistral")
}
#[cfg(feature = "openai")]
pub fn cohere(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "cohere")
}
#[cfg(feature = "openai")]
pub fn zhipu(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "zhipu")
}
#[cfg(feature = "openai")]
pub fn moonshot(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "moonshot")
}
#[cfg(feature = "openai")]
pub fn yi(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "yi")
}
#[cfg(feature = "openai")]
pub fn doubao(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "doubao")
}
#[cfg(feature = "openai")]
pub fn baichuan(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "baichuan")
}
#[cfg(feature = "openai")]
pub fn qwen(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "qwen")
}
#[cfg(feature = "openai")]
pub fn groq_openai_compatible(
self,
) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(
self,
"groq_openai_compatible",
)
}
#[cfg(feature = "openai")]
pub fn xai_openai_compatible(
self,
) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(
self,
"xai_openai_compatible",
)
}
#[cfg(feature = "openai")]
pub fn nvidia(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "nvidia")
}
#[cfg(feature = "openai")]
pub fn hyperbolic(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "hyperbolic")
}
#[cfg(feature = "openai")]
pub fn jina(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "jina")
}
#[cfg(feature = "openai")]
pub fn github(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "github")
}
#[cfg(feature = "openai")]
pub fn voyageai(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "voyageai")
}
#[cfg(feature = "openai")]
pub fn poe(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "poe")
}
#[cfg(feature = "openai")]
pub fn stepfun(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "stepfun")
}
#[cfg(feature = "openai")]
pub fn minimax(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "minimax")
}
#[cfg(feature = "openai")]
pub fn infini(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "infini")
}
#[cfg(feature = "openai")]
pub fn modelscope(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "modelscope")
}
#[cfg(feature = "openai")]
pub fn hunyuan(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "hunyuan")
}
#[cfg(feature = "openai")]
pub fn baidu_cloud(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "baidu_cloud")
}
#[cfg(feature = "openai")]
pub fn tencent_cloud_ti(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "tencent_cloud_ti")
}
#[cfg(feature = "openai")]
pub fn xirang(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "xirang")
}
#[cfg(feature = "openai")]
pub fn ai302(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "302ai")
}
#[cfg(feature = "openai")]
pub fn aihubmix(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "aihubmix")
}
#[cfg(feature = "openai")]
pub fn ppio(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "ppio")
}
#[cfg(feature = "openai")]
pub fn ocoolai(self) -> crate::providers::openai_compatible::OpenAiCompatibleBuilder {
crate::providers::openai_compatible::OpenAiCompatibleBuilder::new(self, "ocoolai")
}
}