Commit Graph

429 Commits

Author SHA1 Message Date
Bryce
9b95e8b0b6 perf: improve cli startup time
- do not provide automatically imported api functions and objects in `imaginairy` root module
- horrible hack to overcome horrible design choices by easy_install/setuptools

The hack modifies the installed script to remove the __import__ pkg_resources line

If we don't do this then the scripts will be slow to start up because of
pkg_resources.require() which is called by setuptools to ensure the
"correct" version of the package is installed.

before modification example:
```
__requires__ = 'imaginAIry==14.0.0b5'
__import__('pkg_resources').require('imaginAIry==14.0.0b5')
__file__ = '/home/user/projects/imaginairy/imaginairy/bin/aimg'
with open(__file__) as f:
    exec(compile(f.read(), __file__, 'exec'))
```
2023-12-12 20:54:39 -08:00
Bryce
2bd6cb264b feature: large refactor
- add type hints
- size parameter
- ControlNetInput => ControlInput
- simplify imagineresult
2023-12-12 20:54:39 -08:00
Bryce
db85f0898a feature: remove training feature 2023-12-06 22:04:06 -08:00
jaydrennan
ef0f44646e feature: adds --control-strength as parameter for cli 2023-12-05 22:14:19 -08:00
Bryce
24f4af3482 feature: better torch installation experience 2023-12-05 21:46:55 -08:00
Bryce
71d4992dca feature: added --size parameter to allow using named sizes 2023-12-05 21:46:55 -08:00
Bryce
14ecf93c6a feature: add sliced self-attention for future use with video generation 2023-12-05 21:46:55 -08:00
Bryce
1136fdb939 version: 14.0.0b5 2023-12-03 15:48:36 -08:00
Bryce
6fcf0da331 test: try local runner 2023-12-03 09:13:01 -08:00
Bryce
0fe3733933 fix: memory management issue
the dtype being used as a cache key wasn't consistent. this caused the model to be loaded twice
2023-12-03 09:13:01 -08:00
Bryce
82c30024c9 feature: DDIM now default sampler
better output quality
2023-12-03 09:13:01 -08:00
Bryce
ba57393022 feature: patch refiners ScaledDotProductAttention for sliced attention 2023-12-03 09:13:01 -08:00
Bryce
1b15d6dcd4 feature: sliced image encoding for SD1Autoencoder 2023-12-03 09:13:01 -08:00
Bryce
b61d06651c tests: fix tests
- disable details mode. needs more work done to support
2023-12-03 09:13:01 -08:00
jaydrennan
cff17ef6f4
feature: adds text to video generation flag (#404)
Co-authored-by: jaydrennan
2023-11-27 18:00:56 -08:00
Bryce
8fec56970e version: 14.0.0b4 2023-11-25 16:25:14 -08:00
Bryce
8267482aad fix: remove padding approach
- padding didnt make animations better
- some changes to better support CPU generation (not yet working)
- better log output coloring
- better log messages when cuda not found
2023-11-25 16:18:44 -08:00
Bryce
6e1c44dae7 fix: add missing data files
fixes #402
2023-11-25 15:44:44 -08:00
Bryce
b9e245eb7d fix: remove cuda memory tracking 2023-11-24 12:39:49 -08:00
Bryce
3b2265f82d feature: add video progress bar 2023-11-24 12:33:36 -08:00
Bryce
b5a0e65f35 fix: edit mode and some controlnet tests 2023-11-24 09:10:12 -08:00
Bryce
b7fad562d0 feature: improved logging
- clean up some error messages
- add color
- indent tqdm bar
2023-11-24 08:27:36 -08:00
Bryce
07b097e001 version: 14.0.0b3 2023-11-23 12:25:35 -08:00
Bryce
a126e1c1d7 feature: better error message when file not found 2023-11-23 12:24:48 -08:00
Bryce
aa91d0a9c9 feature: autoresize and crop videos.
This means you can just stick any image into the video generator without worrying about the size.

- better generated video filenames
- output h264 video as well
2023-11-23 10:16:12 -08:00
Bryce
f6c9927d0c version: 14.0.0b2 2023-11-22 20:44:30 -08:00
Bryce
c24ed1f33d feature: videogen improvements
- better filenames
- allow urls as image inputs
- better memory efficiency
- add timing information
2023-11-22 20:43:32 -08:00
Bryce
ab75c49b15 docs: smaller animations 2023-11-22 18:33:28 -08:00
Bryce
ed23c7e1ca version: 14.0.0b1 2023-11-22 18:26:50 -08:00
Bryce
1da7043081 docs: update documentation 2023-11-22 18:26:50 -08:00
Bryce
e8fe8d7d6c feature: stable diffusion video (SVD) 2023-11-22 17:20:08 -08:00
jaydrennan
80ff006604 fix: updates weights_url's for controlnet 2023-11-22 17:18:22 -08:00
jaydrennan
e91a041a78 refactor: removes unused model configs 2023-11-22 17:14:44 -08:00
jaydrennan
76df1210f4 refactor: removes outdated info and spelling error 2023-11-22 17:14:44 -08:00
jaydrennan
d6d2f4b9dd refactor: updates README for 14.0.0
adds notes under currently broken features, removes deprecated features descriptions, and adds 14.0.0 changelog
2023-11-22 17:14:44 -08:00
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
2023-11-22 13:22:00 -08:00
Bryce
6cd519cdb2 refactor: move code to avoid conflicts with "http" namespace 2023-10-10 23:03:01 -07:00
Bryce
703fb6e331 ci: faster pip install in github actions 2023-09-29 23:01:50 -07:00
Bryce
2273c9144d ci: smarter model caching in github actions 2023-09-29 23:01:50 -07:00
Bryce
db4f040536 tests: split test suite for faster overall runtime 2023-09-29 23:01:50 -07:00
Bryce
558d3388e5 style: speed up linting and autoformatting. fix lints 2023-09-29 23:01:50 -07:00
Bryce
460add16b8 version: 13.2.1 2023-09-29 01:14:14 -07:00
Bryce
8243ed616d fix: pydantic models for http server working now. Fixes #380 2023-09-29 00:40:46 -07:00
Bryce
ba51364a73 version: 13.2.0 2023-09-16 23:20:35 -07:00
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
2023-09-16 23:09:18 -07:00
Bryce
8e956f5360 feature: add some helper functions 2023-09-16 23:09:18 -07:00
Bryce
f243006236 fix: allow tile_mode to be set to True or False for backward compatibility 2023-09-09 17:37:43 -07:00
Bryce
3b17d8b3ee version: 3.1.0 2023-09-09 15:50:48 -07:00
Bryce
477d161c91 build: better communicate lack of support for Python 3.11 2023-09-09 15:25:57 -07:00
Bryce
1354cb9ed1 build: add minimum package requirements
Should speed up dependency resolution.
2023-09-09 14:26:23 -07:00