aidale_provider/lib.rs
1//! # AI Core Providers
2//!
3//! Provider implementations for various AI services.
4
5pub mod openai;
6
7// Re-exports
8pub use openai::{OpenAiBuilder, OpenAiProvider};
9
10use aidale_core::error::AiError;
11
12/// Create a DeepSeek provider (OpenAI-compatible)
13///
14/// DeepSeek uses the OpenAI API protocol but with a different endpoint.
15/// This is a convenience function that creates an OpenAI provider configured
16/// for DeepSeek's API endpoint.
17///
18/// # Example
19///
20/// ```ignore
21/// use aidale_provider::deepseek;
22///
23/// let provider = deepseek("your-api-key")?;
24/// ```
25pub fn deepseek(api_key: impl Into<String>) -> Result<OpenAiProvider, AiError> {
26 OpenAiProvider::builder()
27 .api_key(api_key)
28 .api_base("https://api.deepseek.com/v1")
29 .build_with_id("deepseek", "DeepSeek")
30}