mirror of
https://github.com/ostris/ai-toolkit.git
synced 2026-04-30 19:21:39 +00:00
Add hidream to the ui
This commit is contained in:
@@ -29,7 +29,8 @@ config:
|
|||||||
# it is probably best to ignore the mixture of experts since only 2 are active each block. It works activating it, but I wouldnt.
|
# it is probably best to ignore the mixture of experts since only 2 are active each block. It works activating it, but I wouldnt.
|
||||||
# proper training of it is not fully implemented
|
# proper training of it is not fully implemented
|
||||||
ignore_if_contains:
|
ignore_if_contains:
|
||||||
- "ff_i"
|
- "ff_i.experts"
|
||||||
|
- "ff_i.gate"
|
||||||
save:
|
save:
|
||||||
dtype: bfloat16 # precision to save
|
dtype: bfloat16 # precision to save
|
||||||
save_every: 250 # save every this many steps
|
save_every: 250 # save every this many steps
|
||||||
|
|||||||
@@ -283,7 +283,7 @@ export default function SimpleJob({
|
|||||||
options={[
|
options={[
|
||||||
{ value: 'sigmoid', label: 'Sigmoid' },
|
{ value: 'sigmoid', label: 'Sigmoid' },
|
||||||
{ value: 'linear', label: 'Linear' },
|
{ value: 'linear', label: 'Linear' },
|
||||||
{ value: 'flux_shift', label: 'Flux Shift' },
|
{ value: 'shift', label: 'Shift' },
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
<SelectInput
|
<SelectInput
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ export const defaultDatasetConfig: DatasetConfig = {
|
|||||||
export const defaultJobConfig: JobConfig = {
|
export const defaultJobConfig: JobConfig = {
|
||||||
job: 'extension',
|
job: 'extension',
|
||||||
config: {
|
config: {
|
||||||
name: 'my_first_flex_lora_v1',
|
name: 'my_first_lora_v1',
|
||||||
process: [
|
process: [
|
||||||
{
|
{
|
||||||
type: 'ui_trainer',
|
type: 'ui_trainer',
|
||||||
@@ -31,6 +31,9 @@ export const defaultJobConfig: JobConfig = {
|
|||||||
linear_alpha: 32,
|
linear_alpha: 32,
|
||||||
lokr_full_rank: true,
|
lokr_full_rank: true,
|
||||||
lokr_factor: -1,
|
lokr_factor: -1,
|
||||||
|
network_kwargs: {
|
||||||
|
ignore_if_contains: [],
|
||||||
|
},
|
||||||
},
|
},
|
||||||
save: {
|
save: {
|
||||||
dtype: 'bf16',
|
dtype: 'bf16',
|
||||||
@@ -43,7 +46,7 @@ export const defaultJobConfig: JobConfig = {
|
|||||||
train: {
|
train: {
|
||||||
batch_size: 1,
|
batch_size: 1,
|
||||||
bypass_guidance_embedding: true,
|
bypass_guidance_embedding: true,
|
||||||
steps: 2000,
|
steps: 3000,
|
||||||
gradient_accumulation: 1,
|
gradient_accumulation: 1,
|
||||||
train_unet: true,
|
train_unet: true,
|
||||||
train_text_encoder: false,
|
train_text_encoder: false,
|
||||||
@@ -58,7 +61,7 @@ export const defaultJobConfig: JobConfig = {
|
|||||||
unload_text_encoder: false,
|
unload_text_encoder: false,
|
||||||
lr: 0.0001,
|
lr: 0.0001,
|
||||||
ema_config: {
|
ema_config: {
|
||||||
use_ema: true,
|
use_ema: false,
|
||||||
ema_decay: 0.99,
|
ema_decay: 0.99,
|
||||||
},
|
},
|
||||||
dtype: 'bf16',
|
dtype: 'bf16',
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ export const modelArchs = [
|
|||||||
{ name: 'flux', label: 'Flux.1' },
|
{ name: 'flux', label: 'Flux.1' },
|
||||||
{ name: 'wan21', label: 'Wan 2.1' },
|
{ name: 'wan21', label: 'Wan 2.1' },
|
||||||
{ name: 'lumina2', label: 'Lumina2' },
|
{ name: 'lumina2', label: 'Lumina2' },
|
||||||
|
{ name: 'hidream', label: 'HiDream' },
|
||||||
];
|
];
|
||||||
|
|
||||||
export const isVideoModelFromArch = (arch: string) => {
|
export const isVideoModelFromArch = (arch: string) => {
|
||||||
@@ -83,6 +84,20 @@ export const options = {
|
|||||||
'config.process[0].train.noise_scheduler': ['flowmatch', 'flowmatch'],
|
'config.process[0].train.noise_scheduler': ['flowmatch', 'flowmatch'],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name_or_path: 'HiDream-ai/HiDream-I1-Full',
|
||||||
|
defaults: {
|
||||||
|
// default updates when [selected, unselected] in the UI
|
||||||
|
'config.process[0].model.quantize': [true, false],
|
||||||
|
'config.process[0].model.quantize_te': [true, false],
|
||||||
|
'config.process[0].model.arch': ['hidream', defaultModelArch],
|
||||||
|
'config.process[0].sample.sampler': ['flowmatch', 'flowmatch'],
|
||||||
|
'config.process[0].train.noise_scheduler': ['flowmatch', 'flowmatch'],
|
||||||
|
'config.process[0].train.lr': [0.0002, 0.0001],
|
||||||
|
'config.process[0].train.timestep_type': ['shift', 'sigmoid'],
|
||||||
|
'config.process[0].network.network_kwargs.ignore_if_contains': [['ff_i.experts', 'ff_i.gate'], []],
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name_or_path: 'ostris/objective-reality',
|
name_or_path: 'ostris/objective-reality',
|
||||||
dev_only: true,
|
dev_only: true,
|
||||||
|
|||||||
@@ -55,6 +55,9 @@ export interface NetworkConfig {
|
|||||||
linear_alpha: number;
|
linear_alpha: number;
|
||||||
lokr_full_rank: boolean;
|
lokr_full_rank: boolean;
|
||||||
lokr_factor: number;
|
lokr_factor: number;
|
||||||
|
network_kwargs: {
|
||||||
|
ignore_if_contains: string[];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface SaveConfig {
|
export interface SaveConfig {
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
VERSION = "0.2.5"
|
VERSION = "0.2.6"
|
||||||
Reference in New Issue
Block a user