m2m/models/
mod.rs

1//! Model registry and metadata.
2//!
3//! This module provides model cards with metadata including:
4//! - Abbreviations for compression
5//! - Tokenizer encoding types
6//! - Default parameter values
7//! - Context window sizes
8//!
9//! # Example
10//!
11//! ```
12//! use m2m::models::{ModelRegistry, Encoding, Provider};
13//!
14//! // Create a registry
15//! let registry = ModelRegistry::new();
16//!
17//! // Lookup a model
18//! let card = registry.get("openai/gpt-4o").unwrap();
19//! assert_eq!(card.abbrev, "og4o");
20//! assert_eq!(card.provider, Provider::OpenAI);
21//! assert_eq!(card.encoding, Encoding::O200kBase);
22//!
23//! // Abbreviate and expand
24//! assert_eq!(registry.abbreviate("openai/gpt-4o"), "og4o");
25//! assert_eq!(registry.expand("og4o"), Some("openai/gpt-4o".to_string()));
26//! ```
27
28mod card;
29mod embedded;
30mod registry;
31
32pub use card::{Encoding, ModelCard, Pricing, Provider};
33pub use embedded::{
34    get_embedded_by_abbrev, get_embedded_by_id, get_embedded_models, get_pricing, EMBEDDED_MODELS,
35};
36pub use registry::ModelRegistry;