Skip to main content

alice_llm/
lib.rs

1//! ALICE-LLM: Pure Rust LLM inference engine.
2
3#![warn(clippy::all, clippy::pedantic, clippy::nursery)]
4#![allow(
5    clippy::module_name_repetitions,
6    clippy::cast_possible_truncation,
7    clippy::cast_sign_loss,
8    clippy::cast_precision_loss,
9    clippy::cast_possible_wrap,
10    clippy::cast_lossless,
11    clippy::doc_markdown,
12    clippy::wildcard_imports,
13    clippy::too_many_lines,
14    clippy::missing_errors_doc,
15    clippy::missing_panics_doc,
16    clippy::must_use_candidate,
17    clippy::similar_names,
18    clippy::return_self_not_must_use,
19    clippy::float_cmp,
20    clippy::suboptimal_flops,
21    clippy::items_after_statements,
22    clippy::many_single_char_names,
23    clippy::manual_midpoint,
24    clippy::approx_constant,
25    clippy::unreadable_literal,
26    clippy::unnecessary_wraps,
27    clippy::match_same_arms,
28    clippy::needless_range_loop,
29    clippy::manual_clamp,
30    clippy::useless_conversion,
31    clippy::used_underscore_binding,
32    clippy::needless_pass_by_value,
33    clippy::missing_const_for_fn,
34    clippy::unused_self,
35    clippy::option_if_let_else,
36    clippy::inline_always,
37    clippy::trivially_copy_pass_by_ref,
38    clippy::or_fun_call,
39    clippy::too_many_arguments,
40    clippy::unnecessary_map_or,
41    clippy::redundant_pub_crate,
42    clippy::branches_sharing_code,
43    clippy::doc_link_with_quotes,
44    clippy::assigning_clones,
45    clippy::redundant_closure_for_method_calls,
46    clippy::significant_drop_tightening,
47    clippy::useless_let_if_seq,
48    clippy::use_self,
49    clippy::collection_is_never_read
50)]
51#![allow(
52    rustdoc::broken_intra_doc_links,
53    rustdoc::invalid_html_tags,
54    rustdoc::bare_urls
55)]
56
57pub mod attention;
58pub mod batch_inference;
59pub mod deepseek_streaming;
60pub mod gguf;
61#[cfg(feature = "gpu")]
62pub mod gpu;
63#[cfg(feature = "grammar")]
64pub mod grammar;
65#[cfg(feature = "imatrix")]
66pub mod imatrix;
67pub mod iq1_s;
68pub mod kv_cache;
69pub mod linalg;
70pub mod llama3;
71pub mod matrix;
72pub mod prelude;
73pub mod quantization;
74pub mod rope;
75pub mod sampling;
76pub mod sparse_attention;
77pub mod speculative_dspark;
78pub mod tokenizer;
79pub mod training;
80
81#[cfg(test)]
82mod integration_tests;
83
84pub use matrix::{dot_flat, Matrix};
85
86pub use crate::attention::*;
87pub use crate::batch_inference::*;
88pub use crate::kv_cache::*;
89pub use crate::linalg::*;
90pub use crate::quantization::*;
91pub use crate::rope::*;
92pub use crate::sampling::*;
93pub use crate::tokenizer::*;