ferrous_llm_core/
lib.rs

1//! Core traits and types for the LLM library ecosystem.
2//!
3//! This crate provides the foundational abstractions that all LLM providers
4//! implement, including traits for chat, completion, streaming, and tool calling,
5//! as well as standardized request/response types and error handling.
6
7pub mod config;
8pub mod error;
9pub mod traits;
10pub mod types;
11#[cfg(feature = "dynamic-image")]
12mod util;
13
14// Re-export core types for convenience
15pub use config::*;
16pub use error::*;
17pub use traits::*;
18pub use types::*;
19
20// External dependencies
21pub use async_trait::async_trait;
22pub use chrono::{DateTime, Utc};
23pub use futures::Stream;
24pub use serde::{Deserialize, Serialize};
25pub use serde_json::Value;
26pub use std::collections::HashMap;
27pub use std::error::Error;
28pub use std::time::Duration;