pub mod chat_node;
pub mod error;
pub mod generator;
pub mod json_repair;
pub mod message;
pub mod provider;
pub mod tracking;
pub mod utils;
pub use chat_node::{
format_conversation, pretty_messages, ChatNode, ConversationBuilder, PrettyPrintConfig,
ThreadData,
};
pub use error::{MiniLLMError, Result};
pub use generator::{
CompletionParameters, GeneratorInfo, NodeCompletionParameters, ProviderSettings,
ReasoningConfig,
};
pub use json_repair::{loads, repair_json, JsonValue, RepairOptions};
pub use message::{
AudioData, AudioInput, ContentPart, ImageData, ImageUrl, Media, MediaData, Message,
MessageContent, Role, VideoData, VideoUrl,
};
pub use provider::{
resolve_claude_subscription_auth, AnthropicProvider, AppIdentity, Auth, CompletionResponse,
CostCallback, CostInfo, CostOutcome, CostResolution, GenericProvider, LLMClient,
OpenAiProvider, OpenRouterProvider, PostStreamCtx, Provider, StreamChunk, StreamingCompletion,
TokenPrice, Usage,
};
pub use tracking::{AsyncCostCallback, CompletionContext, CompletionMeta, TrackedStream};
pub use utils::{
configure_logging, extract_json, extract_json_value, pretty_json, to_dict, LogLevel,
};
pub fn init() {
let _ = dotenvy::dotenv();
utils::configure_logging(utils::LogLevel::Info);
}
pub fn init_with_logging(level: LogLevel) {
let _ = dotenvy::dotenv();
utils::configure_logging(level);
}