|
|
|
|
|
|
|
|
|
export interface GpuUtilization { |
|
gpu: number; |
|
memory: number; |
|
} |
|
|
|
export interface GpuMemory { |
|
total: number; |
|
free: number; |
|
used: number; |
|
} |
|
|
|
export interface GpuPower { |
|
draw: number; |
|
limit: number; |
|
} |
|
|
|
export interface GpuClocks { |
|
graphics: number; |
|
memory: number; |
|
} |
|
|
|
export interface GpuFan { |
|
speed: number; |
|
} |
|
|
|
export interface GpuInfo { |
|
index: number; |
|
name: string; |
|
driverVersion: string; |
|
temperature: number; |
|
utilization: GpuUtilization; |
|
memory: GpuMemory; |
|
power: GpuPower; |
|
clocks: GpuClocks; |
|
fan: GpuFan; |
|
} |
|
|
|
export interface GPUApiResponse { |
|
hasNvidiaSmi: boolean; |
|
gpus: GpuInfo[]; |
|
error?: string; |
|
} |
|
|
|
|
|
|
|
|
|
|
|
export interface NetworkConfig { |
|
type: string; |
|
linear: number; |
|
linear_alpha: number; |
|
lokr_full_rank: boolean; |
|
lokr_factor: number; |
|
network_kwargs: { |
|
ignore_if_contains: string[]; |
|
} |
|
} |
|
|
|
export interface SaveConfig { |
|
dtype: string; |
|
save_every: number; |
|
max_step_saves_to_keep: number; |
|
save_format: string; |
|
push_to_hub: boolean; |
|
} |
|
|
|
export interface DatasetConfig { |
|
folder_path: string; |
|
mask_path: string | null; |
|
mask_min_value: number; |
|
default_caption: string; |
|
caption_ext: string; |
|
caption_dropout_rate: number; |
|
shuffle_tokens?: boolean; |
|
is_reg: boolean; |
|
network_weight: number; |
|
cache_latents_to_disk?: boolean; |
|
resolution: number[]; |
|
controls: string[]; |
|
} |
|
|
|
export interface EMAConfig { |
|
use_ema: boolean; |
|
ema_decay: number; |
|
} |
|
|
|
export interface TrainConfig { |
|
batch_size: number; |
|
bypass_guidance_embedding?: boolean; |
|
steps: number; |
|
gradient_accumulation: number; |
|
train_unet: boolean; |
|
train_text_encoder: boolean; |
|
gradient_checkpointing: boolean; |
|
noise_scheduler: string; |
|
timestep_type: string; |
|
content_or_style: string; |
|
optimizer: string; |
|
lr: number; |
|
ema_config?: EMAConfig; |
|
dtype: string; |
|
unload_text_encoder: boolean; |
|
optimizer_params: { |
|
weight_decay: number; |
|
}; |
|
diff_output_preservation: boolean; |
|
diff_output_preservation_multiplier: number; |
|
diff_output_preservation_class: string; |
|
} |
|
|
|
export interface QuantizeKwargsConfig { |
|
exclude: string[]; |
|
} |
|
|
|
export interface ModelConfig { |
|
name_or_path: string; |
|
quantize: boolean; |
|
quantize_te: boolean; |
|
quantize_kwargs?: QuantizeKwargsConfig; |
|
arch: string; |
|
low_vram: boolean; |
|
model_kwargs: {[key: string]: any}; |
|
} |
|
|
|
export interface SampleConfig { |
|
sampler: string; |
|
sample_every: number; |
|
width: number; |
|
height: number; |
|
prompts: string[]; |
|
neg: string; |
|
seed: number; |
|
walk_seed: boolean; |
|
guidance_scale: number; |
|
sample_steps: number; |
|
num_frames: number; |
|
fps: number; |
|
} |
|
|
|
export interface ProcessConfig { |
|
type: 'ui_trainer'; |
|
sqlite_db_path?: string; |
|
training_folder: string; |
|
performance_log_every: number; |
|
trigger_word: string | null; |
|
device: string; |
|
network?: NetworkConfig; |
|
save: SaveConfig; |
|
datasets: DatasetConfig[]; |
|
train: TrainConfig; |
|
model: ModelConfig; |
|
sample: SampleConfig; |
|
} |
|
|
|
export interface ConfigObject { |
|
name: string; |
|
process: ProcessConfig[]; |
|
} |
|
|
|
export interface MetaConfig { |
|
name: string; |
|
version: string; |
|
} |
|
|
|
export interface JobConfig { |
|
job: string; |
|
config: ConfigObject; |
|
meta: MetaConfig; |
|
} |
|
|