Skip to main content

entrenar/lora/
mod.rs

1//! LoRA (Low-Rank Adaptation) implementation
2//!
3//! LoRA enables parameter-efficient fine-tuning of large pretrained models
4//! by adding trainable low-rank decomposition matrices to frozen weights.
5
6mod adapter;
7mod config;
8mod dora;
9mod layer;
10mod multi_adapter;
11mod paged_optim;
12mod pissa;
13mod qlora;
14
15#[cfg(test)]
16mod benchmarks;
17#[cfg(test)]
18mod gradient_tests;
19
20pub use adapter::{
21    load_adapter, load_adapter_peft, merge_and_collect, merge_qlora_and_collect, save_adapter,
22    save_adapter_peft, AdapterError, AdapterFormat, AdapterMetadata, LoRAAdapter, MergedModel,
23    PeftAdapterBundle, PeftAdapterConfig,
24};
25#[cfg(feature = "hub-publish")]
26pub use adapter::{
27    merge_export_publish, merge_qlora_export_publish, MergePublishError, MergePublishResult,
28};
29pub use config::LoRAConfig;
30pub use dora::DoRALayer;
31pub use layer::{LoRALayer, LoRAScaling};
32pub use multi_adapter::{MultiAdapterManager, NamedAdapter};
33pub use paged_optim::{PagedOptimStates, PagedState, PagingStats, PagingStrategy, VramBudget};
34pub use pissa::pissa_init;
35pub use qlora::{MemoryStats, QLoRALayer};
36
37#[cfg(test)]
38pub use benchmarks::{
39    benchmark_model, run_transformer_benchmarks, BenchmarkResults, LayerMemoryStats,
40};