dreambooth-gui icon indicating copy to clipboard operation
dreambooth-gui copied to clipboard

[FEATURE REQUEST] Multiple concepts training

Open LaikaSa opened this issue 2 years ago • 4 comments

It would be handy if you can add the function for it to train multiple concepts at once like Shivam's repo. That way there would be no need for daisy chain models to train if you want to add new while also keeping the already trained concept, the losses between them are pretty heavy.

LaikaSa avatar Nov 08 '22 06:11 LaikaSa

Thank you! That's on my roadmap but I'm thinking about a good way for people to config it.

smy20011 avatar Nov 08 '22 06:11 smy20011

Awesome! can't wait to see it. Just my opinion though while the GUI goal is to be as simple to use as possible, the common way from other repos is using a JSON file as instruction frankly very easy to understand and flexible. E.g.

[
    {
        "instance_prompt":      "photo of zwx dog",
        "class_prompt":         "photo of a dog",
        "instance_data_dir":    "../../../data/alvan",
        "class_data_dir":       "../../../data/dog"
    },
    {
        "instance_prompt":      "photo of dsfgfs cat",
        "class_prompt":         "photo of a cat",
        "instance_data_dir":    "../../../data/olvon",
        "class_data_dir":       "../../../data/cat"
    }	
]

So I don't know how you will design the GUI but having the option to drag that JSON file in or direct a path to it would be great.

LaikaSa avatar Nov 08 '22 07:11 LaikaSa

Thank you! That's on my roadmap but I'm thinking about a good way for people to config it.

For the Gui you may need to change the design a bit. For example in the first page it asks for input images.Instead you can combine first page with the second page. Like you can put an input images field as in the first page,next instance prompt and class input field(if none is given it can behave the same if not we can browse for a custom folder for regularization class images), then class prompt. This is going to be the first batch of inputs. Then you can add a "+" sign or whatever you like to replicate this.So it can ask for more input images,instance prompt,class images,class prompt for the second batch of images and again a "+" sign for more and so on.

I have made a concept design for you. It is up to you to make it read from json or whatever suits. design

For the second page arguments stuff can be done.

@smy20011 Thanks for the project btw.I like it a lot. If I was a better coder I would like to help,but at least I can provide the idea atm. Edit: Seperate learning rates or options per set can be tricky,but it can be on the road map if this can be done first.

FlowDownTheRiver avatar Nov 16 '22 14:11 FlowDownTheRiver

@smy20011 Also the https://github.com/bmaltais/kohya_ss repo uses a folder structure to solve this problem but @FlowDownTheRiver solution seems much more user friendly

CypherQube avatar Nov 29 '22 15:11 CypherQube