Releases: painebenjamin/app.enfugue.ai
ENFUGUE Web UI v0.1.3
Thank You!
Thanks again to everyone who has helped test Enfugue so far. I'm happy to release the third alpha package, which comes with more bug fixes, some hotly requested features, and improved stability and robustness.
Installation
Standalone
First-Time Installation
Linux
First, decide which version you want - with or without TensorRT support. TensorRT requires a powerful, modern Nvidia GPU.
Then, download the appropriate manylinux
files here (3 for TensorRT, 2 for base,) place them in their own folder, concatenate them and extract them. A simple console command to do that is:
cat enfugue-server-0.1.3*.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 its own.
Upgrading
To upgrade either distribution, download and extract the appropriate upgrade package on this release. Copy all files in the upgrade package into your Enfugue installation directory, overwriting any existing files.
Provided Conda Environments
First-Time Installation
To install with the provided Conda environments, you need to install a version of Conda.
After installing Conda and configuring it so it is available to your shell or command-line, download one of the environment files depending on your platform and graphics API.
- First, choose
windows-
orlinux-
based on your platform. - Then, choose your graphics API:
- If you have a powerful next-generation Nvidia GPU (3000 series and better with at least 12 GB of VRAM), use
tensorrt
for all of the capabilities ofcuda
with the added ability to compile TensorRT engines. - If you have any other Nvidia GPU or other CUDA-compatible device, select
cuda
. - Additional graphics APIs (
rocm
,mps
, anddirectml
) are being added and will be available soon.
- If you have a powerful next-generation Nvidia GPU (3000 series and better with at least 12 GB of VRAM), use
Finally, using the file you downloaded, create your Conda environment:
conda env create -f <downloaded_file.yml>
You've now installed Enfugue and all dependencies. To run it, activate the environment and then run the installed binary.
conda activate enfugue
enfugue run
Upgrading
To upgrade with the provided environment, use pip
like so:
conda activate enfugue
pip install enfugue --ugprade
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
New Features
- Portable distributions are now released in both a standalone package as well as an upgrade package. When using an upgrade package, copy the contents of the folder over your previous installation, overwriting any existing files.
- Added a Linux portable distribution without TensorRT support for a smaller download size (approximately 1.4GB smaller.)
- The Model Picker has been given the ability to directly select checkpoints in addition to the previous method of selecting from preconfigured models. When selecting a checkpoint, an additional set of inputs will be presented that allow the user to enter LoRA and Textual Inversions.
- For portable distributions, added a task to automatically open a browser window to the app once the server has become responsive, to avoid confusion over the format of the interface. This can be disabled with configuration.
- For Windows portable distribution, added a context menu item to the icon displayed in the bottom-right that opens a browser window to the app when clicked.
Issues Fixed
- Fixed an issue whereby the base Stable Diffusion checkpoint would be downloaded even when not required.
- Fixed an issue where invocations were failing to pick up after having refreshed the page. You should now properly return to the current execution if you refresh the page while the engine is still diffusing.
- Fixed an issue with the
File > Save
dialog not working.
Changes
- Altered language around Models - changed to 'Model Configurations' to avoid confusion between Checkpoints and sets of configuration.
- Drastically reduced VRAM usage of initial checkpoint load by offloading to CPU.
- Reduced the size of the Windows and Linux TensorRT installations by ~400MB.
- Added automated, isolated builds to reduce dependency issues going forward.
ENFUGUE Web UI v0.1.2
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.)
- 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
- 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.
- Server logs have had their default level changed to
ENFUGUE Web UI v0.1.0
Thank you for trying out Enfugue!
This is the first alpha release, version 0.1.0.
For Linux users, download the manylinux
files here, concatenate them and extract them. A simple console command to do that is:
cat enfugue-server-0.1.0*.part | tar -xvz
For Windows users, 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.
Checksums:
16b6fcfe4a1e357c6619f55b266ce14b enfugue-server-0.1.0-manylinux.tar.gz.0.part
0adf7fe6b2a378a45212bcc4a4f86939 enfugue-server-0.1.0-manylinux.tar.gz.1.part
c1a226b07fe00aa7825a868254c4fc69 enfugue-server-0.1.0-manylinux.tar.gz.2.part
489ebf6d6a713abc463763a75bff7b4c enfugue-server-0.1.0-win64.zip.001
1d8ce3cdf6e9e5e71747f1e182f27e27 enfugue-server-0.1.0-win64.zip.002
After extraction, simply run the server - with enfugue-server.exe
on Windows, or enfugue.sh
on Linux.
Thank you again!