Skip to main content

llm/
lib.rs

1#![doc = include_str!("../README.md")]
2
3pub mod alloyed;
4pub mod catalog;
5mod chat_message;
6mod context;
7mod credential;
8pub mod error;
9mod llm_response;
10mod message_id;
11mod model_settings;
12pub mod parser;
13pub mod provider;
14pub mod provider_connection;
15pub mod providers;
16mod reasoning;
17pub mod testing;
18mod tool_schema;
19mod tools;
20pub mod types;
21pub mod usage;
22
23pub use catalog::LlmModel;
24pub use chat_message::{AssistantReasoning, ChatMessage, ContentBlock, EncryptedReasoningContent};
25pub use context::Context;
26pub use credential::ProviderCredential;
27pub use error::{LlmError, ProviderError, ProviderErrorKind, Result};
28pub use llm_response::{LlmResponse, StopReason};
29pub use message_id::MessageId;
30pub use model_settings::ModelSettings;
31pub use provider::{LlmResponseStream, ProviderFactory, StreamingModelProvider};
32pub use provider_connection::{
33    ProviderAuthMode, ProviderConnectionConfig, ProviderConnectionOverride, ProviderConnectionOverrides,
34};
35pub use reasoning::ReasoningEffort;
36pub use tools::*;
37pub use usage::{
38    ContextUsage, LlmCallPurpose, ModelIdentity, ModelPricing, SessionUsageEvent, SessionUsageTotals, TokenUsage,
39    Tokens, UsageCost, UsageSource, Usd,
40};
41
42#[cfg(feature = "codex")]
43pub use providers::codex::{CodexProvider, perform_codex_oauth_flow};