1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//! Provider registry system for multi-provider management.
//!
//! This module provides a registry system for managing multiple AI providers
//! in a single application. It enables:
//!
//! - Registering multiple providers (OpenAI, Anthropic, Google, etc.)
//! - Accessing models via composite IDs (e.g., "openai:gpt-4")
//! - Custom provider implementations
//! - Fallback provider support
//!
//! # Example
//!
//! ```rust,ignore
//! use ai_sdk_core::registry::create_provider_registry;
//! use ai_sdk_openai::OpenAIProvider;
//! use std::sync::Arc;
//!
//! // Create providers
//! let openai = Arc::new(OpenAIProvider::new("api-key"));
//!
//! // Build registry
//! let registry = create_provider_registry(Some(":"))
//! .with_provider("openai", openai)
//! .build();
//!
//! // Use models via registry
//! let gpt4 = registry.language_model("openai:gpt-4")?;
//! ```
// mod error;
pub use ;
pub use CustomProviderBuilder;
pub use ;