Skip to content

ENFUGUE Web UI v0.1.2

Compare
Choose a tag to compare
@painebenjamin painebenjamin released this 30 Jun 02:19
· 810 commits to main since this release
92fd3b6

Thank you!

Thank you to everyone who has helped test so far, you've all been extremely helpful.

I hope this release corrects a lot of the issues people have been having!

Installation

Self-Managed Environment

First-Time Installation

pip install enfugue

If you are on Linux and want TensorRT support, execute:

pip install enfugue[tensorrt]

If you are on Windows and want TensorRT support, follow the steps detailed here.

Upgrading from 0.1.x

pip install enfugue --upgrade

Standalone

Linux

Download the manylinux files here, concatenate them and extract them. A simple console command to do that is:

cat enfugue-server-0.1.2*.part | tar -xvz

Windows

Download the win64 files here, and extract them using a program which allows extracting from multiple archives such as 7-Zip.

If you are using 7-Zip, you should not extract both files independently. If they are in the same directory when you unzip the first, 7-Zip will automatically unzip the second. The second file cannot be extracted on it's own.

New Features

  • Added directory options to initialization, allowing you to set where Enfugue looks for and stores checkpoints, LoRA, and other models.
    • Note: Enfugue will only create a directory if it is in it's base cache directory. If you specify a directory outside of that, and the directory does not exist, Enfugue will not accept the input.
  • Added a "change directory" option in System > Installation Manager to change directories after initialization.
    • Note: Files are not moved when you do this. If you want to bring the files from the old directory to the new, you will need to copy them over yourself.
  • Added a new menu option System > Engine Logs. This gives you a realtime view of the activities of the diffusion engine, which inclues all activities of Stable Diffusion itself, as well as any necessary downloads or longer-running processes like TensorRT engine builds.
    • Note: This is a real-time view, and will always show the most recent 100 log entries. There can be a lot of logs, so it's necessary to trim the UI often or else it will bog down substantially. If you want to view the logs in non-real-time, navigate to the your .cache directory (in /home/<youruser> on linux, C:\Users<youruser>.cache on windows, substitute your drive letter as needed.)
  • Added a new command dump-config that reads the packaged configuration a writes to stdout or a file. Default format is yaml, but json is also supported.
Usage: enfugue dump-config [OPTIONS]

  Dumps a copy of the configuration to the console or the specified path.

Options:
  -f, --filename TEXT  A file to write to instead of stdout.
  -j, --json           When passed, use JSON instead of YAML.
  --help               Show this message and exit.
  • Added a new flag to run that allows you to specify a configuration file to load instead of the default. enfugue run now has the signature:
Usage: enfugue run [OPTIONS]

  Runs the server synchronously using cherrypy.

Options:
  -c, --config TEXT  An optional path to a configuration file to use instead
                     of the default.
  --help             Show this message and exit.
  • Note: The configuration file must have a proper extension indicating it's format, i.e. either /json or .yml/.yaml.

Documentation regarding what settings are available and what they do is up on the wiki.

Issue Fixes

  • Fixed an issue where JavaScript Module files were being served with the inappropriate Content-Type, resulting in a non-functional UI.
  • Fixed an issue where the base Stable Diffusion model would be initialized twice when it was explicitly being used, consuming singificant extra amounts of VRAM.
  • Fixed an issue where the Polygraphy package was listed as always required, when it is only required for TensorRT

Changes

  • Removed need to create diffusers cache directory when not using TensorRT (saves significant hard disk space)
  • Added output to the enfugue run command so you know it's working and what URL to go to.
  • Separated server logs and engine logs. Server logs are now kept at the previous ~/.cache/enfugue.log location, and engine logs are at ~/.cache/enfugue-engine.log
    • Server logs have had their default level changed to ERROR to hide unhelpful messages, as the server is mostly stable.
    • Engine logs have their default level at DEBUG to give as much information as possible to the front-end. This may change in the future.