mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
fix crash when installed models < number columns
1. Fixed display crash when the number of installed models is less than the number of desired columns to display them. 2. Added --ckpt_convert option to init file.
This commit is contained in:
parent
3795b40f63
commit
27a2e27c3a
@ -442,6 +442,13 @@ class editOptsForm(npyscreen.FormMultiPage):
|
|||||||
relx=5,
|
relx=5,
|
||||||
scroll_exit=True,
|
scroll_exit=True,
|
||||||
)
|
)
|
||||||
|
self.ckpt_convert = self.add_widget_intelligent(
|
||||||
|
npyscreen.Checkbox,
|
||||||
|
name="Load legacy checkpoint models into memory as diffusers models",
|
||||||
|
value=old_opts.ckpt_convert,
|
||||||
|
relx=5,
|
||||||
|
scroll_exit=True,
|
||||||
|
)
|
||||||
self.always_use_cpu = self.add_widget_intelligent(
|
self.always_use_cpu = self.add_widget_intelligent(
|
||||||
npyscreen.Checkbox,
|
npyscreen.Checkbox,
|
||||||
name="Force CPU to be used on GPU systems",
|
name="Force CPU to be used on GPU systems",
|
||||||
@ -569,13 +576,14 @@ class editOptsForm(npyscreen.FormMultiPage):
|
|||||||
new_opts = Namespace()
|
new_opts = Namespace()
|
||||||
|
|
||||||
for attr in [
|
for attr in [
|
||||||
"outdir",
|
"outdir",
|
||||||
"safety_checker",
|
"safety_checker",
|
||||||
"free_gpu_mem",
|
"free_gpu_mem",
|
||||||
"max_loaded_models",
|
"max_loaded_models",
|
||||||
"xformers",
|
"xformers",
|
||||||
"always_use_cpu",
|
"always_use_cpu",
|
||||||
"embedding_path",
|
"embedding_path",
|
||||||
|
"ckpt_convert",
|
||||||
]:
|
]:
|
||||||
setattr(new_opts, attr, getattr(self, attr).value)
|
setattr(new_opts, attr, getattr(self, attr).value)
|
||||||
|
|
||||||
@ -709,6 +717,7 @@ def write_opts(opts: Namespace, init_file: Path):
|
|||||||
--max_loaded_models={int(opts.max_loaded_models)}
|
--max_loaded_models={int(opts.max_loaded_models)}
|
||||||
--{'no-' if not opts.safety_checker else ''}nsfw_checker
|
--{'no-' if not opts.safety_checker else ''}nsfw_checker
|
||||||
--{'no-' if not opts.xformers else ''}xformers
|
--{'no-' if not opts.xformers else ''}xformers
|
||||||
|
--{'no-' if not opts.ckpt_convert else ''}ckpt_convert
|
||||||
{'--free_gpu_mem' if opts.free_gpu_mem else ''}
|
{'--free_gpu_mem' if opts.free_gpu_mem else ''}
|
||||||
{'--always_use_cpu' if opts.always_use_cpu else ''}
|
{'--always_use_cpu' if opts.always_use_cpu else ''}
|
||||||
"""
|
"""
|
||||||
|
@ -241,7 +241,8 @@ class addModelsForm(npyscreen.FormMultiPage):
|
|||||||
|
|
||||||
def _get_columns(self)->int:
|
def _get_columns(self)->int:
|
||||||
window_height, window_width = curses.initscr().getmaxyx()
|
window_height, window_width = curses.initscr().getmaxyx()
|
||||||
return 4 if window_width > 240 else 3 if window_width>160 else 2 if window_width>80 else 1
|
cols = 4 if window_width > 240 else 3 if window_width>160 else 2 if window_width>80 else 1
|
||||||
|
return min(cols,len(self.installed_models))
|
||||||
|
|
||||||
def on_ok(self):
|
def on_ok(self):
|
||||||
self.parentApp.setNextForm(None)
|
self.parentApp.setNextForm(None)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user