Skip to main content

walrus_model/
lib.rs

1//! Model crate — LLM provider implementations, enum dispatch, configuration,
2//! construction, and runtime management.
3//!
4//! Merges all provider backends (OpenAI, Claude, Local) with the `Provider`
5//! enum, `ProviderManager`, and `ProviderDef` into a single crate.
6//! `ProviderDef` describes a provider (api_key, base_url, standard, models).
7//! Each `[provider.<name>]` in TOML becomes one `ProviderDef`.
8
9pub mod config;
10pub mod manager;
11mod provider;
12
13#[path = "../remote/mod.rs"]
14pub mod remote;
15
16/// Default model name when none is configured.
17pub fn default_model() -> &'static str {
18    "deepseek-chat"
19}
20
21pub use config::{ApiStandard, ModelConfig, ProviderDef};
22pub use manager::ProviderManager;
23pub use provider::{Provider, build_provider};
24pub use reqwest::Client;