[HN Gopher] OpenJourney: Midjourney, but Open Source
       ___________________________________________________________________
        
       OpenJourney: Midjourney, but Open Source
        
       Author : walterbell
       Score  : 199 points
       Date   : 2023-01-25 18:36 UTC (4 hours ago)
        
 (HTM) web link (open-journey.github.io)
 (TXT) w3m dump (open-journey.github.io)
        
       | rks404 wrote:
       | noob question - how hard is it to setup and run this on a windows
       | machine? I've had bad luck with python and package management in
       | windows in the past but that was a long time ago.
        
         | andybak wrote:
         | Yeah - it's a real pain (and I'm a Python dev)
         | 
         | I just use
         | https://softology.pro/tutorials/tensorflow/tensorflow.htm
         | 
         | - A few manual steps but mainly a well tested installed that
         | does it all for you.
        
           | rks404 wrote:
           | thank you, I appreciate the honesty! I checked out the guide,
           | it looks promising and will give it a try for the next system
           | I assemble
        
       | celestialcheese wrote:
       | If anyone wants to try it out without having to build and install
       | the thing - https://replicate.com/prompthero/openjourney
       | 
       | I've been using openjourney (and MJ/SD) quite a bit, and it does
       | generate "better" with "less" compared to standard v1.5, but it's
       | nowhere close to Midjourney v4.
       | 
       | Midjourney is so far ahead in generating "good" images across a
       | wide space of styles and subjects using very little prompting.
       | While SD requires careful negative prompts and extravagant
       | prompting to generate something decent.
       | 
       | Very interested in being wrong about this, there's so much
       | happening with SD that it's hard to keep up with what's working
       | best.
        
         | MintsJohn wrote:
         | I've been thinking that for months, but recently swung towards
         | being more optimistic about SD again, everything midjourney
         | looks midjourney while SD allows you to create images in any
         | style. MJ really needs to get rid of that MJ style, make it
         | optional as it's undeniably pretty, it's just becoming a little
         | much.
         | 
         | But I still feel 2.x is somehow a degradation of 1.x, its hard
         | to get something decent out of it. The custom training/tuning
         | and all is nice (and certainly the top rain to use SD over MJ,
         | many use cases MJ just can't do) but it should not be used as a
         | band-aid for appearantly inherent shortcomings in the new clip
         | layer (I'm assuming this is where the largest difference comes
         | from, since the Unet is trained on largely the same dataset as
         | 1.x).
        
         | chamwislothe2nd wrote:
         | Every midjourney image has the same feeling to it. A bit 1950s
         | sci-fi artist. I guess it's just that it all looks airbrushed?
         | I can't put my finger on it.
        
           | IshKebab wrote:
           | It's the science magazine article illustration look.
        
         | ImprobableTruth wrote:
         | I think it's down to having a lot of feedback data due to being
         | a service, SD has its aesthetics ratings, but I assume it pales
         | in comparison.
        
       | 88stacks wrote:
       | I was about to integrate this into https://88stacks.com but it
       | requires a write token to hugging face which makes no sense. It's
       | a model that you download. Why does it need write access to
       | hugging Face!?!
        
         | bootloop wrote:
         | Does it really, have you tried it or do you mean because of the
         | documentation? Just skimmed through the code, haven't really
         | seen anything related to uploading. Might not even be required.
        
       | EamonnMR wrote:
       | If it's using a RAIL license isn't it not open source?
        
         | nickvincent wrote:
         | Yeah, that's a fair critique, I think the short answer is
         | depends who you ask.
         | 
         | See this FAQ here: https://www.licenses.ai/faq-2
         | 
         | Specifically:
         | 
         | Q: "Are OpenRAILs considered open source licenses according to
         | the Open Source Definition? NO."
         | 
         | A: "THESE ARE NOT OPEN SOURCE LICENSES, based on the definition
         | used by Open Source Initiative, because it has some
         | restrictions on the use of the licensed AI artifact.
         | 
         | That said, we consider OpenRAIL licenses to be "open". OpenRAIL
         | enables reuse, distribution, commercialization, and adaptation
         | as long as the artifact is not being applied for use-cases that
         | have been restricted.
         | 
         | Our main aim is not to evangelize what is open and what is not
         | but rather to focus on the intersection between open and
         | responsible licensing."
         | 
         | FWIW, there's a lot of active discussion in this space, and it
         | could be the case that e.g. communities settle on releasing
         | code under OSI-approved licenses and models/artifacts under
         | lowercase "open" but use-restricted licenses.
        
           | skybrian wrote:
           | Fair enough. "Source available" would be better than "open
           | source" in this case, to avoid misleading people. (You do
           | want them to read the terms.)
        
             | daveloyall wrote:
             | I'm not familiar with machine learning.
             | 
             | But, I'm familiar with poking around in source code repos!
             | 
             | I found this https://huggingface.co/openjourney/openjourney
             | /blob/main/tex... . It's a giant binary file. A big binary
             | blob.
             | 
             |  _(The format of the blob is python 's "pickle" format: a
             | binary serialization of an in-memory object, used to store
             | an in-memory object and later load it, perhaps on a
             | different machine.)_
             | 
             | But, I did not find any source code for generating that
             | file. Am I missing something?
             | 
             | Shouldn't there at least be a list of input images, etc and
             | some script that uses them to train the model?
        
               | kmeisthax wrote:
               | Hahahahaha you sweet summer child. Training code? For an
               | _art generator_?!
               | 
               | Yeah, no. Nobody in the AI community actually provides
               | training code. If you want to train from scratch you'll
               | need to understand what their model architecture is,
               | collect your own dataset, and write your own training
               | loop.
               | 
               | The closest I've come across is code for training an
               | unconditional U-Net; those just take an image and
               | denoise/draw it. CLIP also has its own training code -
               | though everyone just seems to use OpenAI CLIP[0]. You'll
               | need to figure out how to write a Diffusers pipeline that
               | lets you combine CLIP and a U-Net together, and then
               | alter the U-Net training code to feed CLIP vectors into
               | the model, etc. Stable Diffusion also uses a Variational
               | Autoencoder in front of the U-Net to get higher
               | resolution and training performance, which I've yet to
               | figure out how to train.
               | 
               | The blob you are looking at is the _actual model
               | weights_. For you see, AI is proprietary software 's
               | final form. Software so proprietary that not even the
               | creators are allowed to see the source code. Because
               | there _is no source code_. Just piles and piles of linear
               | algebra, nonlinear activation functions, and calculus.
               | 
               | For the record, I _am_ trying to train-from-scratch an
               | image generator using public domain data sources[1]. It
               | is not going well: after adding more images it seems to
               | have gotten significantly dumber, with or without a from-
               | scratch trained CLIP.
               | 
               | [0] I think Google Imagen is using BERT actually
               | 
               | [1] Specifically, the PD-Art-old-100 category on
               | Wikimedia Commons.
        
             | JoshTriplett wrote:
             | Yeah, this should not have a headline of "open source".
             | Really disappointing that this isn't actually open, or even
             | particularly close to being open.
        
           | EamonnMR wrote:
           | Seems like 'the lawyers who made the license' and the OSI
           | might be good authorities on what's open source. I'd love to
           | hear a good FSF rant about RAIL though.
        
           | dmm wrote:
           | Are ML models even eligible for copyright protection? The
           | code certainly but what about the trained weights?
        
             | charcircuit wrote:
             | My thought is that it is a derivative work from the
             | training data. The creativity comes from what you choose to
             | or not to include.
        
       | titaniumtown wrote:
       | Someone should do this but for chatGPT. massive undertaking
       | though
       | 
       | Edit: https://github.com/LAION-AI/Open-Assistant
        
         | vnjxk wrote:
         | look up "open assistant"
        
           | titaniumtown wrote:
           | oh damn https://github.com/LAION-AI/Open-Assistant
           | 
           | cool stuff, thanks
        
       | nickthegreek wrote:
       | This is just a sd checkpoint trained on output of Midjourney. You
       | can load it into a1111 or invokeai for easier usage. If you are
       | looking for new checkpoints, check out the Protogen series though
       | for some really neat stuff.
        
         | rahimnathwani wrote:
         | Do you mean this one?
         | https://huggingface.co/darkstorm2150/Protogen_Infinity_Offic...
         | 
         | On the same topic, is there some sort of 'awesome list' of
         | finetuned SD models? (something better than just browsing
         | https://huggingface.co/models?other=stable-diffusion)
        
           | liuliu wrote:
           | https://civitai.com/
        
             | narrator wrote:
             | Looking at this site, I would argue that the canonical
             | "hello world" of an image diffusion model is a picture of a
             | pretty woman. The canonical "hello world" for community
             | chatbots that can run on a consumer GPU will undoubtedly be
             | an AI girlfriend.
        
             | nickthegreek wrote:
             | Not sure why this is downvoted. Civitai does in fact list a
             | bunch of fine tuned models and can be sorted by highest
             | ranked, liked, downloaded, etc. It is a good resource. Many
             | of the models are also available in the .safetensor format
             | so you dont have to worry about a pickled checkpoint.
        
               | lancesells wrote:
               | I didn't downvote but I have to say the images shown on
               | that page are hilariously juvenile. I was a teenager once
               | so I get it but I'm guessing the content is where the
               | downvotes are coming from?
        
           | nickthegreek wrote:
           | Here are the protogen models
           | https://civitai.com/user/darkstorm2150
        
         | Eduard wrote:
         | I didn't understand a single word you said :D
        
           | lxe wrote:
           | sd checkpoint -- stable diffusion checkpoint. a model weights
           | file that was obtained by tuning the stablediffusion weights
           | file using probably something like dreambooth on some number
           | of midjourney-generated images.
           | 
           | a1111 / invokeai -- stable diffusion UI tools
           | 
           | Protogen series -- popular stablediffusion checkpoints you
           | can download so you can generate content in various styles
        
       | KaoruAoiShiho wrote:
       | How is it equivalent, it's not nearly as good. Some transparency
       | about how close it is to MJ would be nice though, because it can
       | still be useful.
        
       | indigodaddy wrote:
       | Looks like I can't use this on M1/2?
        
         | liuliu wrote:
         | This is just openjourney model fine-tuned with Dreambooth. You
         | can use any of these tools: Draw Things, Mochi Diffusion,
         | DiffusionBee, AUTOMATIC1111 UI on M1 / M2 with this model. (I
         | wrote Draw Things).
        
       | vjbknjjvugi wrote:
       | why does this need _write_ permissions on my hf account?
        
         | deathtrader666 wrote:
         | "For using OpenJourney you have to make an account in
         | huggingface and make a token with write permission."
        
           | admax88qqq wrote:
           | But why
        
           | [deleted]
        
       ___________________________________________________________________
       (page generated 2023-01-25 23:00 UTC)