jaydrennan
e91a041a78
refactor: removes unused model configs
6 months ago
Bryce
f97f6a3b4b
feature: use refiners library for generation
...
BREAKING CHANGE
- stable diffusion 1.5 + inpainting working
- self-attention guidance working. improves image generation quality
- tile-mode working
- inpainting self-attention guidance working
disable/broken features:
- sd 1.4, 2.0, 2.1
- most of the samplers
- pix2pix edit
- most of the controlnets
- memory management
- python 3.8 support
wip
6 months ago
Bryce
6cd519cdb2
refactor: move code to avoid conflicts with "http" namespace
8 months ago
Bryce
558d3388e5
style: speed up linting and autoformatting. fix lints
8 months ago
Bryce
8243ed616d
fix: pydantic models for http server working now. Fixes #380
8 months ago
Bryce
7c2004bfcc
feature/fix: migrate to pydantic 2.3
...
- test: add schema tests/fuzzer and fixes
- fix default prompt. add tests
- fix outpaint and controlnet defaults
- fix init image strength defaults
9 months ago
Bryce
8e956f5360
feature: add some helper functions
9 months ago
Bryce
f243006236
fix: allow tile_mode to be set to True or False for backward compatibility
9 months ago
Bryce
477d161c91
build: better communicate lack of support for Python 3.11
9 months ago
Bryce
82d74c6b49
feature: switch to pydantic models
...
- allow prompt re-use by deferring random seed
1 year ago
Bryce
3fb0dcd891
fix: hide log warning
1 year ago
Bryce
c5c90df337
feature: fix debug level logging
1 year ago
Bryce
8ffb0fac0e
fix: add routes to match stablestudio routes
1 year ago
Bryce
edafcc5529
feature: show full stack trace on server error
1 year ago
Bryce
671aa86ad7
version: 13.0.0
1 year ago
Bryce
7b032c8e9a
feature: StableStudio web interface
...
run `aimg server` and visit http://127.0.0.1:8000/
1 year ago
Bryce
8e28a2ed02
feature: API support for StableStudio
1 year ago
Bryce
e53459a50a
build: check for torch version at runtime ( fixes #329 )
1 year ago
Bryce
2a26495653
fix: package will not try to install xformers on `aarch64` machines.
...
While this will allow the dockerfile to build on MacOS M1, [torch will not be able to use the M1 when generating images.](https://github.com/pytorch/pytorch/issues/81224#issuecomment-1499741152 )
1 year ago
Bryce
14739bc90b
feature: api server (alpha)
...
`aimg run-api-server`
Proof of concept for now
1 year ago
Bryce
38ac0b7f54
tests: fix tests
1 year ago
Bryce
39dffa9166
style: lintfix
1 year ago
Bryce
dc8f8d5a3d
feature: add colorization controlnet. improve `aimg colorize` command
1 year ago
Bryce
df25936d6f
feature: automatic use of inpainting
...
feature disabled since controlnet inpainting doesn't work great. Was disabled by setting `inpaint_method="finetune",`
1 year ago
Bryce
d32e1060cd
feature: multi-controlnet support at the command line
...
add controlnet option for edit demo
1 year ago
Bryce
bcaa000d35
fix: model logging
1 year ago
Bryce
926692ad03
tests: "prime" the controlnets
...
Trying to get things working on m1. doesn't fix everything
1 year ago
Bryce
fb19e34acc
fix: allow use of upscaler on mps device
1 year ago
Bryce
3b066f8e29
fix: don't hide error messages during upscale
1 year ago
Bryce
eca97a25a0
tests: adjust tests to pass
1 year ago
Bryce
4c77fd376b
feature: improvements to memory management
...
not thoroughly tested on low-memory devices
1 year ago
Bryce
d5a276584b
fix: move normal map code inline
...
Fixes conda package. Fixes #317
1 year ago
Bryce
3258af7e02
fix: use correct device for depth images on mps
1 year ago
Bryce
17f3541d57
version: 12.0.0
1 year ago
Bryce
c9fccc1757
feature: add openjourney-v4
1 year ago
Bryce
db8d3b74ea
feature: add "detail" control mode.
...
Add details to an image. Great for upscaling an image.
1 year ago
Bryce
b5356b143f
feature: partial add of inpainting controlnet
...
todo: figure out how to input "mask" for this mode
1 year ago
Bryce
9526a85a71
feature: add "edit" control mode
...
Edit images using text instructions with any SD 1.5 based model. Similar to instructPix2Pix.
1 year ago
Bryce
476a81a967
feature: add "shuffle" control mode
...
Image is generated from elements of control image. similar to style transfer
1 year ago
Bryce
750d4f7ea8
docs: cleanup
1 year ago
Bryce
832adf27bc
feature: update controlnets to 1.1
...
- smaller filesizes for the controlnet weights
- fix: works with other 1.5 based models
- enables more control modes getting added
1 year ago
Bryce
9a82dc5e4c
fix: raw control images are now properly loaded. fixes #296
1 year ago
Bryce
765e607c2c
fix: file numbers start after latest image, even if some previous images were deleted
1 year ago
Luke Pearson
94728d978e
fix: changed sample to True to generate caption using blip model
1 year ago
Bryce
95d3d08d27
fix: better input image path handling
...
throw exception for non-existent images
1 year ago
Bryce
37d6642c83
fix: fix model downloads that were broken
...
by [library change in transformers 4.27.0](8f3b4a1d5b
)
1 year ago
Bryce
eb26d5a7c5
feature: add art-scene, desktop-background, interior-style, painting-style phraselists
...
fix: file globbing works in the interactive shell
feature: make compilation animations simple slide shows
1 year ago
Bryce
52044c1073
fix: use model appropriate composition size
1 year ago
Bryce
3b777b98d8
fix: improved large images using composition
1 year ago
Bryce
a449fbd5e2
feature: remove tiling message for upscaler
1 year ago
Bryce
40da2b0357
tests: fix tests
1 year ago
Bryce
dbc6a249a6
fix: k-diff samplers made more stable by skipping second to last step
...
https://github.com/crowsonkb/k-diffusion/issues/43#issuecomment-1305195666
See discussion here as well: https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/3483
1 year ago
Bryce
70c58467c0
fix: img2img was broken for all samplers except ddim,plms
...
img2img was broken for all samplers except plms and ddim when init image strength was >~0.25. Been this way for a while. whoops
1 year ago
Bryce
28c294554b
fix: specify name of imagine command
1 year ago
Bryce
8273ab2c26
feature: add `--fix-faces` options to `aimg upscale` command
1 year ago
Bryce
d14c8f98f4
feature: `aimg model-list` command lists included models
1 year ago
Bryce
e3b23584ed
refactor: split up command line tool
1 year ago
Bryce
c0fad5b2a3
fix: add missing alias
1 year ago
Bryce
d5cff45bff
feature: allow input of raw control images
1 year ago
Bryce
8f56e14dc7
feature: add system memory to debug output
1 year ago
Bryce
d7e494241c
fix: composition images were too blurry
1 year ago
cocktailpeanut
be7f8f3c2a
feature: support additional metadata attributes ( #271 )
...
added `init-image-strength` and `model` so they can be fully displayed on png info inspectors or stable diffusion browsers such as https://breadboard.me
1 year ago
Bryce
9831d8a24a
feature: `aimg colorize` attempts to use controlnet to colorize images
1 year ago
Bryce
b261c62d4e
docs: update docs
1 year ago
Bryce
54c3ad51d6
feature: controlnet
1 year ago
Bryce
bcd761b8a6
tests: better coverage of cli commands
...
add "empty" model that just uses empty state for models
1 year ago
Bryce
1563e0b871
test: add some autoencoder tests
...
the fold-unfold encoding/decoding looks like it's slower and has worse seams than the sliced feathering approach
1 year ago
Bryce
929eff353e
fix: edit was broken by recent changes
1 year ago
Bryce
5b1cded94f
fix: compose phase for edits probably doesn't make sense
1 year ago
Bryce
6f749ac4b6
fix: create compilations dir as needed
1 year ago
Bryce
882cc7e0f1
feature: generate large images with coherent composition
1 year ago
Bryce
c3a88c44cd
perf: tiled encoding of images
...
The fold/unfold/split_input_params images didn't look good
1 year ago
Bryce
2aef6089e0
feature: generate large images
...
Added a composition stage so large images are more coherent
1 year ago
Bryce
b93b6a4d7c
perf: use silu instead of nonlinearity for speedup
1 year ago
Bryce
68e7fd73c5
perf: add xformers dependency
1 year ago
Bryce
003a512dc8
perf: mps perf improvement
...
attention slicing wasn't working
1 year ago
Bryce
66b28c80fc
fix: images came out wrong if processed on mps
1 year ago
Bryce
8db73707ff
perf: load model to gpu after making it "half"
1 year ago
Bryce
1c8893cecc
fix: fix image gen retry
1 year ago
Bryce
ea1d4baafe
refactor: cleanup image generation code
1 year ago
Bryce
8a97213622
feature: sliced latent decoding
...
allows generation of bigger images. tile seams can be noticeable occasionally despite the feathering
1 year ago
Bryce
da70b310d5
fix: edit interface was broken
1 year ago
Bryce
eeb80f81aa
docs: update changelog
1 year ago
Bryce
76d40560ef
style: lintfix
1 year ago
Bryce
6c1e3b2ae7
feature: allow specifying output format
...
closes #228
1 year ago
Bryce
d220819377
feature: accept multiple input images to allow batch editing
...
- move "surprise me" to "edit-demo"
1 year ago
Bryce
63f32846bb
docs: no mps training; how change cache dir
1 year ago
Bryce
d9a70a55c6
feature/docs: cleanup cli
...
- add colors to help text
- add suggestion to use `aimg` shell
- lazy imports for faster response time
1 year ago
Bryce Drennan
9eacf5e7ed
perf: improve startup time by doing some imports lazily ( #233 )
...
just running `aimg --help` or `aimg --version` was very slow due to all the imports being brought in eagerly
Before changes `aimg --help`
`2.24s user 4.05s system 184% cpu 3.416 total`
After changes:
`0.04s user 0.02s system 8% cpu 0.625 total`
Used `PYTHONPROFILEIMPORTTIME=1 aimg --help` to find time consuming imports.
Also switched to using `scripts` instead of `entrypoints` since the scripts are much faster.
Made duplicate SAMPLER_TYPE_OPTIONS that can be loaded without loading all the samplers themselves.
Likely a breaking change - not sure.
1 year ago
Bryce
19444d8e22
fix: first frame should be the interesting one
1 year ago
Bryce Drennan
e619dc2867
fix: init image strength ( #225 )
1 year ago
Bryce Drennan
9ee09ac842
feature: add compilation animations ( #224 )
...
- add generation/compare gifs
1 year ago
Bryce Drennan
a67683d318
feature: add upscale command line function ( #222 )
1 year ago
Bryce Drennan
542e4fbd55
fix: tile mode was broken since latest perf improvements ( #220 )
1 year ago
Pavel Yakovlev
e1c9f14489
feature: add openjourney models
1 year ago
Bryce Drennan
9e06013ade
feature: save gifs that show image generation process ( #218 )
1 year ago
Bryce Drennan
6d733ed3ff
feature: added `aimg system-info` command to help debug issues ( #216 )
1 year ago
Bryce Drennan
7bdde559cc
performance: memory management improvements ( #210 )
...
- tile mode made more efficient. especially when not being used
- add script to iteratively make bigger images
1 year ago
Jiaming Sun
a338902ab5
fix: add png handling for LazyLoadingImage ( #203 )
...
Loading png images for captioning will cause the following error since PIL loads png images in RGBA mode.
```python
File "./miniconda3/lib/python3.8/site-packages/torchvision/transforms/functional_tensor.py", line 940, in normalize
return tensor.sub_(mean).div_(std)
RuntimeError: The size of tensor a (4) must match the size of tensor b (3) at non-singleton dimension 0
```
1 year ago
Mahmoud Al-Qudsi
0b7692df07
fix: make model cached paths compatible with windows ( #205 )
...
If a model has a remote filename with characters that might not be supported on
the local cache filesystem, replace them during translation of URL to cached
file path.
Closes #202 .
1 year ago
Bryce
92baff890e
feature: surprise me improvements
1 year ago
Bryce
c7ed86a36f
feature: auto-retry generation unsafe image is created
1 year ago
Bryce
f60fa880a7
feature: less visually confusing shell output
1 year ago
Bryce
16cef16c3e
feature: facilitate references to previous image generation
1 year ago
Bryce
248679d8de
feature: image sizes can now be multiples of 8 instead of 64
...
from https://github.com/CompVis/stable-diffusion/issues/60#issuecomment-1240294667
1 year ago
Bryce
9212f0227c
fix: bypass hf cache retrieval bug
...
If one uses `hf_hub_download` only referencing specific commits the `refs` folder will not be created even though data will be cached via `snapshots` and `blobs`. Subsequent calls to `try_to_load_from_cache` will return None even though the desired data was in the cache.
Example:
```python
# download something
hf_hub_download(repo_id=repo, revision=commit_hash, filename=filepath, token=token)
# returns None
try_to_load_from_cache(repo_id=repo, revision=commit_hash, filename=filepath)
```
https://github.com/huggingface/huggingface_hub/pull/1306
1 year ago
Bryce
290b0a318e
fix: MacOS MPS background can't handle large slices
...
per
- https://github.com/brycedrennan/imaginAIry/issues/175
- https://github.com/invoke-ai/InvokeAI/issues/1244
1 year ago
Bryce
1c986d8644
fix: use py3.7 compat lru_cache
...
- disable lint fixer that updates to newer syntax
1 year ago
Bryce
097e763887
fix: hf_hub_download signature compat
...
instead of (incorrectly) trying to detect the function signature of the old version, just catch the error and try the old signature
1 year ago
mebelz
2571097087
fix: spelling typo
...
leave references to misspelled files- don't want to break any existing links
1 year ago
Bryce
00408d176f
performance: use tiling for upscaling for better use of memory
1 year ago
Bryce
2fca01b911
fix: not so old
1 year ago
Bryce
7c05c3aae2
feature: image edit gifs and demo-reels
1 year ago
Bryce
2a3e19f5a1
feature: 🎉 Edit Images with Instructions alone!
1 year ago
Bryce
7285644909
feature: prune-ckpt command can prune to just the ema
1 year ago
Bryce
5b56f05da7
feature: print version
...
- fix: default config wasn't being selected for custom models
1 year ago
Bryce
9b1d130f93
feature: ability to load safetensors
1 year ago
Bryce
81f294216b
feature: 🎉 outpainting
1 year ago
Bryce
02af4c37b9
fix: gracefully fail if older pytorch-lightning installed
1 year ago
Bryce
24e10f9e5f
fix: don't report a safety issue when a black image is generated
1 year ago
Bryce
fad7f17790
feature: run face enhancement on the GPU
...
Should run 10x faster
1 year ago
Bryce
85c084099c
fix: incorrect config files being used for non-1.0 models
1 year ago
Bryce
5cc73f6087
feature: finetuning
...
- feature: finetuning your own image models
- feature: image prep command. crops to face or other interesting parts of photo
- fix: back-compat for hf_hub_download
- feature: add prune-ckpt command
- feature: allow specification of model config file
1 year ago
Bryce
4bc78b9be5
build: vendorize realesrgan
...
Removes lots of dependencies including problematic `grpcio` and `tb-nightly`
1 year ago
Bryce
35ac8d64d7
build: vendorize parts of basicsr
...
Trying to get rid of tb-nightly dependency and any other unnecessary dependencies.
1 year ago
Bryce
e9a3e1a99b
build: unpin dependencies
1 year ago
Bryce
4bc940ddf4
feature: remove more randomness
1 year ago
Bryce
1381c7fed4
lint: new ruff linter
1 year ago
Bryce
da0f1e1ee6
fix: make sure randomness is generated on cpu for consistency
1 year ago
Bryce
239b235140
feature: depth-based image-to-image generations (and inpainting)
1 year ago
Bryce
ad0b9e8ab8
feature: tile in a single dimension ("x" or "y")
1 year ago
Bryce
1f7403155e
fix: more thorough cleaning of memory when switching models
...
also cleanup up some test failures
1 year ago
Bryce Drennan
ccf9749df5
fix: performance improvement. disable ema ( #139 )
...
A configuration `use_ema: False` was became necessary in the newer Stable Diffusion code but was missing from the 1.5 config.
1 year ago
Paul Mestemaker
ad5e467042
feat: include negative prompts in logs and exif metadata ( #135 )
1 year ago
Paul Mestemaker
68791cf236
feat: better handling for default model names ( #134 )
...
* feat: better handling for default model names
Addresses #124
1 year ago
Bryce
f30823e0b5
feature: Stable Diffusion 2.1
2 years ago
Bryce
2f8edc1530
feature: negative prompting
...
- feature: negative prompting. `--negative-prompt` or `ImaginePrompt(..., negative_prompt="ugly, deformed, extra arms, etc")`
- feature: a default negative prompt is added to all generations. Images in SD-2.0 don't look bad anymore. Images in 1.5 look improved as well.
2 years ago
Bryce
257752887d
perf: add back memory efficiency improvements
...
Removed these in a rush to get SD-2.0 out.
2 years ago
Bryce
e0af5d0089
fix: version metadata was broken
...
Fixes #114
2 years ago
Bryce
4610d7f01d
feature: xformers support
...
add more upscaling code (that doesn't yet work)
2 years ago
Bryce
9c153a8d2d
feature: support k-sampler methods for SD-2.0-v (768)
2 years ago
Bryce
015088507f
feature/refactor/fix: better defaults. correct version in metadata
...
- feature: use different default steps and image sizes depending on sampler and model selceted
- fix : #110 use proper version in image metadata
- refactor: samplers all have their own class that inherits from ImageSampler
2 years ago
Kian-Meng Ang
3d04df4dee
Fix typos
...
Found via `codespell -S ./imaginairy/vendored`
2 years ago
Bryce
58c2897dd1
refactor: fix lint issues
2 years ago
Maxime Mouchet
40ab571fc1
cli: show defaults and cleanup help text
2 years ago
Bryce
e67341223b
feature: Stable Diffusion 2.0
...
working: CUDA and MacOS
working: 512p model with all samplers
working: inpainting with all samplers
working: 768p model with ddim sampler
2 years ago
Bryce
893b041a8f
feature: progress image callback
2 years ago
Bryce
095a905d72
fix: cpu generation doesn't use autocast
...
autocast not supported on CPU
https://github.com/pytorch/pytorch/issues/55374
https://github.com/invoke-ai/InvokeAI/pull/518
2 years ago
Bryce
b8a88370de
fix: lower memory reqs for attention on M1s
2 years ago
Bryce
d499ca307b
fix: use inpainting source that doesn't require login
2 years ago