burn_std/config/
fusion.rs1use cubecl_common::config::logger::{LogLevel, LoggerConfig};
2
3#[derive(Default, Clone, Debug, serde::Serialize, serde::Deserialize)]
5pub struct FusionConfig {
6 #[serde(default)]
8 pub logger: LoggerConfig<FusionLogLevel>,
9
10 #[serde(default)]
12 pub beam_search: BeamSearchConfig,
13}
14
15#[derive(Clone, Debug, serde::Serialize, serde::Deserialize)]
18pub struct BeamSearchConfig {
19 #[serde(default = "default_max_blocks")]
24 pub max_blocks: usize,
25}
26
27impl Default for BeamSearchConfig {
28 fn default() -> Self {
29 Self {
30 max_blocks: default_max_blocks(),
31 }
32 }
33}
34
35fn default_max_blocks() -> usize {
36 5
37}
38
39#[derive(
41 Default,
42 Clone,
43 Copy,
44 Debug,
45 PartialEq,
46 Eq,
47 PartialOrd,
48 Ord,
49 serde::Serialize,
50 serde::Deserialize,
51)]
52pub enum FusionLogLevel {
53 #[default]
55 #[serde(rename = "disabled")]
56 Disabled,
57
58 #[serde(rename = "basic")]
60 Basic,
61
62 #[serde(rename = "medium")]
64 Medium,
65
66 #[serde(rename = "full")]
68 Full,
69}
70
71impl LogLevel for FusionLogLevel {}