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#[cfg(test)]
20mod train_to_loss_tests;
21
22pub use adapter::{
23    load_adapter, load_adapter_peft, merge_and_collect, merge_qlora_and_collect, save_adapter,
24    save_adapter_peft, AdapterError, AdapterFormat, AdapterMetadata, LoRAAdapter, MergedModel,
25    PeftAdapterBundle, PeftAdapterConfig,
26};
27#[cfg(feature = "hub-publish")]
28pub use adapter::{
29    merge_export_publish, merge_qlora_export_publish, MergePublishError, MergePublishResult,
30};
31pub use config::LoRAConfig;
32pub use dora::DoRALayer;
33pub use layer::{LoRALayer, LoRAScaling};
34pub use multi_adapter::{MultiAdapterManager, NamedAdapter};
35pub use paged_optim::{PagedOptimStates, PagedState, PagingStats, PagingStrategy, VramBudget};
36pub use pissa::pissa_init;
37pub use qlora::{MemoryStats, QLoRALayer};
38
39#[cfg(test)]
40pub use benchmarks::{
41    benchmark_model, run_transformer_benchmarks, BenchmarkResults, LayerMemoryStats,
42};