Skip to main content

llm_kernel/provider/
mod.rs

1//! LLM provider catalog and capability profiles.
2//!
3//! The embedded catalog (`catalog.json`) contains 20 providers with model
4//! metadata aligned to the [models.dev](https://github.com/anomalyco/models.dev)
5//! schema: pricing, token limits, modalities, and capability flags.
6//!
7//! ```
8//! use llm_kernel::provider::ProviderIndex;
9//!
10//! let catalog = ProviderIndex::embedded();
11//! assert!(!catalog.ids().is_empty());
12//! ```
13
14/// Capability profiles and authentication strategies for providers.
15pub mod capability;
16/// Provider catalog, model descriptors, and pricing data.
17pub mod catalog;
18/// Provider-id mapping between the catalog and the models.dev upstream.
19pub mod mapping;
20/// Catalog sync tooling — merge models.dev into the embedded catalog.
21#[cfg(feature = "catalog-sync")]
22pub mod sync;
23
24pub use capability::{AuthStrategy, CapabilityProfile};
25pub use catalog::{
26    ModelCapabilities, ModelCost, ModelDescriptor, ModelLimit, ModelModalities, ProviderIndex,
27    ServiceDescriptor,
28};
29pub use mapping::{Mapping, resolve};