1#![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::*;