#![warn(missing_docs)]
#![allow(clippy::module_name_repetitions)]
#![allow(clippy::must_use_candidate)]
pub mod adaptive_tiering;
pub mod arbiter_integration;
pub mod attention_cache;
pub mod backend;
pub mod config;
pub mod device;
pub mod engine;
pub mod flash_attention;
pub mod gguf;
pub mod gpu_dequant;
pub mod gpu_fused;
pub mod gpu_holo;
pub mod gpu_lz4;
pub mod hct;
pub mod hct_sequential;
pub mod holotensor;
pub mod kv_cache;
pub mod kv_cache_quant;
pub mod kv_cache_quant_cuda;
pub mod lazy_varbuilder;
pub mod loader;
pub mod models;
pub mod quantize;
pub mod sampler;
pub mod speculative;
pub mod speculative_405b;
pub mod system_memory;
pub mod tokenizer;
#[cfg(feature = "cuda")]
pub mod cuda_inference;
#[cfg(feature = "cuda")]
pub mod cuda_svd;
pub mod gpu_dtype;
#[cfg(feature = "cuda")]
pub mod gpu_lrdf;
pub mod llama_cpp_engine;
pub use arbiter_integration::{ArbiterCoordinator, ArbiterCoordinatorError, QualityLevel};
pub use config::{
EngineConfig, EngineConfigBuilder, HoloTensorConfig, MemoryConfig, SpeculativeConfig,
};
pub use device::{best_device, cuda_available, enumerate_devices, print_devices, DeviceInfo};
pub use engine::{Engine, InferenceEngine, ShutdownResult, WarmupResult};
pub use gguf::{GgufLoader, GgufMetadata, QuantizedModelConfig};
pub use gpu_dequant::GpuDequantContext;
#[cfg(feature = "cuda")]
pub use gpu_dequant::GpuDequantError;
pub use gpu_dequant::INT4_BLOCK_SIZE;
pub use gpu_fused::GpuFusedContext;
#[cfg(feature = "cuda")]
pub use gpu_fused::GpuFusedError;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::GpuHoloContext;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::GpuHoloError;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::HoloStreamPool;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::KernelConfig;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::MultiGpuHoloContext;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::MultiGpuStats;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::PinnedMemoryPool;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::PinnedPoolStats;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::ProgressiveHoloLoader;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::StreamingHoloContext;
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::StreamingHoloStats;
pub use system_memory::{
MemoryPressure as SystemMemoryPressure, RecommendedConfig, SystemMemoryInfo,
};
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::{
FaultToleranceConfig, FaultToleranceStats, FaultTolerantDecoder, ValidationResult,
};
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::{
DistributedLoadConfig, DistributedLoadStats, DistributedLoader, FragmentSource,
MemoryFragmentSource,
};
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::{
AdaptiveQualityConfig, AdaptiveQualityController, AdaptiveQualityStats, LayerQualityTarget,
QualityPolicy,
};
pub use flash_attention::{AttentionVariant, FlashAttention, FlashAttentionConfig};
#[cfg(feature = "cuda")]
pub use gpu_holo::cuda::{HotReloadController, HotReloadStats};
#[cfg(feature = "cuda")]
pub use gpu_lrdf::cuda::{GpuHoloFragment, GpuLrdfEncoder};
pub use gpu_lz4::cuda::{CudaStreamPool, StreamingLz4Context, StreamingStats};
pub use gpu_lz4::GpuLz4Context;
#[cfg(feature = "cuda")]
pub use gpu_lz4::GpuLz4Error;
#[cfg(feature = "cuda")]
pub use hct::ProgressiveLoadResult;
pub use hct::{
filename_to_tensor_name, load_hct_directory, load_hct_directory_gpu,
load_hct_directory_gpu_progressive, HctError, HctLoader, HctMetadata,
};
#[cfg(feature = "haagenti-gpu")]
pub use hct_sequential::{
load_hct_directory_gpu as load_hct_directory_gpu_fast, load_hct_directory_gpu_with_stats,
GpuDecompressStats,
};
pub use hct_sequential::{
load_hct_directory_parallel, load_hct_directory_sequential,
load_hct_directory_sequential_budgeted, FallbackStrategy, LoadProgress, LoadedTensor,
MemoryBudget, SequentialHctLoader, SequentialLoadConfig,
};
pub use kv_cache::KVCache;
pub use lazy_varbuilder::{CacheConfig, DirectoryTensorProvider, LazyVarBuilder, TensorProvider};
pub use loader::ModelLoader;
pub use quantize::{
ModelQuantizer,
QuantizeConfig,
QuantizeError,
QuantizeFormat,
QuantizeStats,
QuantizedTensor,
Quantizer,
RuntimeQuantConfig,
RuntimeQuantizedStore,
RuntimeQuantizedWeight,
DEFAULT_BLOCK_SIZE,
};
pub use sampler::Sampler;
pub use speculative::{SpeculativeDecoder, SpeculativeStats};
pub use tokenizer::Tokenizer;
pub use kv_cache_quant::{KvCacheQuantConfig, QuantizedKvCache};
#[cfg(feature = "cuda")]
pub use kv_cache_quant_cuda::cuda::{
CudaQuantizedKvCache, Int8AttentionContext, Int8AttentionError,
};
pub use kv_cache_quant_cuda::{DynamicQuantConfig, OptimizedQuantizedKvCache, QuantGranularity};
#[cfg(feature = "cuda")]
pub use attention_cache::CudaQuantizedCache;
pub use attention_cache::{
attention_with_cache, create_causal_mask, repeat_kv, AttentionConfig, CacheType, KvCache,
KvCacheConfig, QuantizationGranularity, QuantizedCache, StandardCache,
};
pub use holotensor::{
ConversionConfig,
ConversionProgress,
FragmentLocation,
HoloInferenceConfig,
HoloInferenceError,
HoloInferenceStats,
HoloMemoryManager,
HoloModelConverter,
HoloModelMetadata,
LayerWeightInfo,
LayerWeights,
MemoryConfig as HoloMemoryConfig,
MemoryTier,
PlacementDecision,
ProgressiveWeightProvider,
QualityMetrics,
StreamManager,
StreamPriority,
StreamStats,
TieredConfig,
TieredHoloLoader,
TieredStats,
};
pub use adaptive_tiering::{
AdaptiveLoader,
AdaptiveLoaderError,
AdaptiveLoaderStats,
AdaptiveTieringConfig,
AllocationPlan,
AllocationPlanner,
EagerTensorProvider,
ImportanceScorer,
LoadingBackend,
MemoryTier as AdaptiveMemoryTier, ModelProfile,
ProfileError,
ReconstructionPath,
ReconstructionSummary,
TensorAllocation,
TensorInfo,
TensorPrecision,
TensorType,
};
pub use infernum_core::{
EmbedRequest, EmbedResponse, GenerateRequest, GenerateResponse, ModelArchitecture,
ModelMetadata, ModelSource, SamplingParams, TokenStream,
};
#[cfg(feature = "llama-cpp")]
pub use llama_cpp_engine::{ChatTemplate, LlamaCppConfig, LlamaCppConfigBuilder, LlamaCppEngine};
pub use llama_cpp_engine::{BackendType, GpuSplitMode};