InvokeAI/features/UTILITIES/index.html

2667 lines
81 KiB
HTML
Raw Permalink Normal View History

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="author" content="mauwii">
<link rel="canonical" href="https://invoke-ai.github.io/InvokeAI/features/UTILITIES/">
<link rel="prev" href="../WEBUIHOTKEYS/">
<link rel="next" href="../OTHER/">
<link rel="icon" href="../../img/favicon.ico">
<meta name="generator" content="mkdocs-1.6.0, mkdocs-material-9.5.33">
<title>Command-line Utilities - InvokeAI Documentation</title>
<link rel="stylesheet" href="../../assets/stylesheets/main.3cba04c6.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
<link rel="stylesheet" href="../../assets/_mkdocstrings.css">
<link rel="stylesheet" href="../../stylesheets/extra.css">
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
<script id="__analytics">function __md_analytics(){function n(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],n("js",new Date),n("config","G-2X4JR4S4FB"),document.addEventListener("DOMContentLoaded",function(){document.forms.search&&document.forms.search.query.addEventListener("blur",function(){this.value&&n("event","search",{search_term:this.value})}),document$.subscribe(function(){var a=document.forms.feedback;if(void 0!==a)for(var e of a.querySelectorAll("[type=submit]"))e.addEventListener("click",function(e){e.preventDefault();var t=document.location.pathname,e=this.getAttribute("data-md-value");n("event","feedback",{page:t,data:e}),a.firstElementChild.disabled=!0;e=a.querySelector(".md-feedback__note [data-md-value='"+e+"']");e&&(e.hidden=!1)}),a.hidden=!1}),location$.subscribe(function(e){n("config","G-2X4JR4S4FB",{page_path:e.pathname})})});var e=document.createElement("script");e.async=!0,e.src="https://www.googletagmanager.com/gtag/js?id=G-2X4JR4S4FB",document.getElementById("__analytics").insertAdjacentElement("afterEnd",e)}</script>
<script>"undefined"!=typeof __md_analytics&&__md_analytics()</script>
</head>
<body dir="ltr" data-md-color-scheme="slate" data-md-color-primary="indigo" data-md-color-accent="indigo">
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#utilities" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
</div>
<header class="md-header md-header--shadow md-header--lifted" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../.." title="InvokeAI Documentation" class="md-header__button md-logo" aria-label="InvokeAI Documentation" data-md-component="logo">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
InvokeAI Documentation
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Command-line Utilities
</span>
</div>
</div>
</div>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg>
</button>
</nav>
<div class="md-search__suggest" data-md-component="search-suggest"></div>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
Initializing search
</div>
<ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
</div>
</div>
<div class="md-header__source">
<a href="https://github.com/invoke-ai/InvokeAI" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</div>
<div class="md-source__repository">
invoke-ai/InvokeAI
</div>
</a>
</div>
</nav>
<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
<div class="md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item">
<a href="../.." class="md-tabs__link">
Home
</a>
</li>
<li class="md-tabs__item">
<a href="../../installation/INSTALLATION/" class="md-tabs__link">
Installation
</a>
</li>
<li class="md-tabs__item">
<a href="../../nodes/overview/" class="md-tabs__link">
Workflows & Nodes
</a>
</li>
<li class="md-tabs__item">
<a href="../../nodes/communityNodes/" class="md-tabs__link">
Community Nodes
</a>
</li>
<li class="md-tabs__item md-tabs__item--active">
<a href="../" class="md-tabs__link">
Features
</a>
</li>
<li class="md-tabs__item">
<a href="../../contributing/CONTRIBUTING/" class="md-tabs__link">
Contributing
</a>
</li>
<li class="md-tabs__item">
<a href="../../help/gettingStartedWithAI/" class="md-tabs__link">
Help
</a>
</li>
<li class="md-tabs__item">
<a href="../../other/CONTRIBUTORS/" class="md-tabs__link">
Other
</a>
</li>
</ul>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary md-nav--lifted md-nav--integrated" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../.." title="InvokeAI Documentation" class="md-nav__button md-logo" aria-label="InvokeAI Documentation" data-md-component="logo">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54Z"/></svg>
</a>
InvokeAI Documentation
</label>
<div class="md-nav__source">
<a href="https://github.com/invoke-ai/InvokeAI" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
</div>
<div class="md-source__repository">
invoke-ai/InvokeAI
</div>
</a>
</div>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../.." class="md-nav__link">
<span class="md-ellipsis">
Home
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
<span class="md-ellipsis">
Installation
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
Installation
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../installation/INSTALLATION/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../installation/INSTALL_REQUIREMENTS/" class="md-nav__link">
<span class="md-ellipsis">
Requirements
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../installation/010_INSTALL_AUTOMATED/" class="md-nav__link">
<span class="md-ellipsis">
Automatic Install
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../installation/020_INSTALL_MANUAL/" class="md-nav__link">
<span class="md-ellipsis">
Manual Install
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../installation/INSTALL_DEVELOPMENT/" class="md-nav__link">
<span class="md-ellipsis">
Developer Install
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../installation/040_INSTALL_DOCKER/" class="md-nav__link">
<span class="md-ellipsis">
Docker
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../installation/050_INSTALLING_MODELS/" class="md-nav__link">
<span class="md-ellipsis">
Installing Models
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../installation/060_INSTALL_PATCHMATCH/" class="md-nav__link">
<span class="md-ellipsis">
Installing PyPatchMatch
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<span class="md-ellipsis">
Workflows & Nodes
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
Workflows & Nodes
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../nodes/overview/" class="md-nav__link">
<span class="md-ellipsis">
Nodes Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/NODES/" class="md-nav__link">
<span class="md-ellipsis">
Workflow Editor Basics
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/defaultNodes/" class="md-nav__link">
<span class="md-ellipsis">
List of Default Nodes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/exampleWorkflows/" class="md-nav__link">
<span class="md-ellipsis">
Example Workflows
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/comfyToInvoke/" class="md-nav__link">
<span class="md-ellipsis">
ComfyUI to InvokeAI
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/detailedNodes/faceTools/" class="md-nav__link">
<span class="md-ellipsis">
Facetool Node
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/contributingNodes/" class="md-nav__link">
<span class="md-ellipsis">
Contributing Nodes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/NODES_MIGRATION_V3_V4/" class="md-nav__link">
<span class="md-ellipsis">
Migrating from v3 to v4
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/INVOCATION_API/" class="md-nav__link">
<span class="md-ellipsis">
Invocation API
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../nodes/communityNodes/" class="md-nav__link">
<span class="md-ellipsis">
Community Nodes
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<div class="md-nav__link md-nav__container">
<a href="../" class="md-nav__link ">
<span class="md-ellipsis">
Features
</span>
</a>
<label class="md-nav__link " for="__nav_5" id="__nav_5_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Features
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../help/gettingStartedWithAI/" class="md-nav__link">
<span class="md-ellipsis">
New to InvokeAI?
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../CONFIGURATION/" class="md-nav__link">
<span class="md-ellipsis">
Configuration
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../DATABASE/" class="md-nav__link">
<span class="md-ellipsis">
Database
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../CONTROLNET/" class="md-nav__link">
<span class="md-ellipsis">
Control Adapters
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../IMG2IMG/" class="md-nav__link">
<span class="md-ellipsis">
Image-to-Image
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../LOGGING/" class="md-nav__link">
<span class="md-ellipsis">
Controlling Logging
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../LORAS/" class="md-nav__link">
<span class="md-ellipsis">
LoRAs & LCM-LoRAs
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../MODEL_MERGING/" class="md-nav__link">
<span class="md-ellipsis">
Model Merging
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../nodes/overview" class="md-nav__link">
<span class="md-ellipsis">
Workflows & Nodes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../WATERMARK%2BNSFW/" class="md-nav__link">
<span class="md-ellipsis">
NSFW Checker
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../POSTPROCESS/" class="md-nav__link">
<span class="md-ellipsis">
Postprocessing
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../PROMPTS/" class="md-nav__link">
<span class="md-ellipsis">
Prompting Features
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_14" >
<label class="md-nav__link" for="__nav_5_14" id="__nav_5_14_label" tabindex="0">
<span class="md-ellipsis">
Textual Inversions
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_14_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5_14">
<span class="md-nav__icon md-icon"></span>
Textual Inversions
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../TEXTUAL_INVERSIONS/" class="md-nav__link">
<span class="md-ellipsis">
Textual Inversions
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../TRAINING/" class="md-nav__link">
<span class="md-ellipsis">
Textual Inversion Training
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../UNIFIED_CANVAS/" class="md-nav__link">
<span class="md-ellipsis">
Unified Canvas
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../WEB/" class="md-nav__link">
<span class="md-ellipsis">
InvokeAI Web Server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../WEBUIHOTKEYS/" class="md-nav__link">
<span class="md-ellipsis">
WebUI Hotkeys
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
Maintenance Utilities
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../OTHER/" class="md-nav__link">
<span class="md-ellipsis">
Other
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
<span class="md-ellipsis">
Contributing
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../contributing/CONTRIBUTING/" class="md-nav__link">
<span class="md-ellipsis">
How to Contribute
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../CODE_OF_CONDUCT/" class="md-nav__link">
<span class="md-ellipsis">
InvokeAI Code of Conduct
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_3" >
<label class="md-nav__link" for="__nav_6_3" id="__nav_6_3_label" tabindex="0">
<span class="md-ellipsis">
Development
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_3">
<span class="md-nav__icon md-icon"></span>
Development
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../contributing/contribution_guides/development/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/contribution_guides/newContributorChecklist/" class="md-nav__link">
<span class="md-ellipsis">
New Contributors
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/MODEL_MANAGER/" class="md-nav__link">
<span class="md-ellipsis">
Model Manager v2
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/contribution_guides/contributingToFrontend.md" class="md-nav__link">
<span class="md-ellipsis">
Frontend Documentation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/LOCAL_DEVELOPMENT/" class="md-nav__link">
<span class="md-ellipsis">
Local Development
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/TESTS/" class="md-nav__link">
<span class="md-ellipsis">
Testing
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_3_7" >
<label class="md-nav__link" for="__nav_6_3_7" id="__nav_6_3_7_label" tabindex="0">
<span class="md-ellipsis">
Frontend
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_6_3_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_3_7">
<span class="md-nav__icon md-icon"></span>
Frontend
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../contributing/frontend/OVERVIEW/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/frontend/STATE_MGMT/" class="md-nav__link">
<span class="md-ellipsis">
State Management
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/frontend/WORKFLOWS/" class="md-nav__link">
<span class="md-ellipsis">
Workflows
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../contributing/contribution_guides/documentation/" class="md-nav__link">
<span class="md-ellipsis">
Documentation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/INVOCATIONS/" class="md-nav__link">
<span class="md-ellipsis">
Nodes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/MODEL_MANAGER/" class="md-nav__link">
<span class="md-ellipsis">
Model Manager v2
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/DOWNLOAD_QUEUE/" class="md-nav__link">
<span class="md-ellipsis">
Download Queue
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/contribution_guides/translation/" class="md-nav__link">
<span class="md-ellipsis">
Translation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributing/contribution_guides/tutorials/" class="md-nav__link">
<span class="md-ellipsis">
Tutorials
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Help
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Help
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../help/gettingStartedWithAI/" class="md-nav__link">
<span class="md-ellipsis">
New to InvokeAI?
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../help/FAQ/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../help/diffusion/" class="md-nav__link">
<span class="md-ellipsis">
Diffusion Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../help/SAMPLER_CONVERGENCE/" class="md-nav__link">
<span class="md-ellipsis">
Sampler Convergence
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
<label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
<span class="md-ellipsis">
Other
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_8">
<span class="md-nav__icon md-icon"></span>
Other
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../other/CONTRIBUTORS/" class="md-nav__link">
<span class="md-ellipsis">
Contributors
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../other/README-CompViz/" class="md-nav__link">
<span class="md-ellipsis">
CompViz-README
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<h1 id="utilities"><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 9h5.5L13 3.5V9M6 2h8l6 6v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4c0-1.11.89-2 2-2m9 16v-2H6v2h9m3-4v-2H6v2h12Z"/></svg></span> Utilities<a class="headerlink" href="#utilities" title="Permanent link">#</a></h1>
<h1 id="command-line-utilities">Command-line Utilities<a class="headerlink" href="#command-line-utilities" title="Permanent link">#</a></h1>
<p>InvokeAI comes with several scripts that are accessible via the
command line. To access these commands, start the "developer's
console" from the launcher (<code>invoke.bat</code> menu item [7]). Users who are
familiar with Python can alternatively activate InvokeAI's virtual
environment (typically, but not necessarily <code>invokeai/.venv</code>).</p>
<p>In the developer's console, type the script's name to run it. To get a
synopsis of what a utility does and the command-line arguments it
accepts, pass it the <code>-h</code> argument, e.g.</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a>invokeai-merge<span class="w"> </span>-h
</code></pre></div>
<h2 id="invokeai-web"><strong>invokeai-web</strong><a class="headerlink" href="#invokeai-web" title="Permanent link">#</a></h2>
<p>This script launches the web server and is effectively identical to
selecting option [1] in the launcher. An advantage of launching the
server from the command line is that you can override any setting
configuration option in <code>invokeai.yaml</code> using like-named command-line
arguments. For example, to temporarily change the size of the RAM
cache to 7 GB, you can launch as follows:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a>invokeai-web<span class="w"> </span>--ram<span class="w"> </span><span class="m">7</span>
</code></pre></div>
<h2 id="invokeai-merge"><strong>invokeai-merge</strong><a class="headerlink" href="#invokeai-merge" title="Permanent link">#</a></h2>
<p>This is the model merge script, the same as launcher option [3]. Call
it with the <code>--gui</code> command-line argument to start the interactive
console-based GUI. Alternatively, you can run it non-interactively
using command-line arguments as illustrated in the example below which
merges models named <code>stable-diffusion-1.5</code> and <code>inkdiffusion</code> into a new model named
<code>my_new_model</code>:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a>invokeai-merge<span class="w"> </span>--force<span class="w"> </span>--base-model<span class="w"> </span>sd-1<span class="w"> </span>--models<span class="w"> </span>stable-diffusion-1.5<span class="w"> </span>inkdiffusion<span class="w"> </span>--merged_model_name<span class="w"> </span>my_new_model
</code></pre></div>
<h2 id="invokeai-ti"><strong>invokeai-ti</strong><a class="headerlink" href="#invokeai-ti" title="Permanent link">#</a></h2>
<p>This is the textual inversion training script that is run by launcher
option [2]. Call it with <code>--gui</code> to run the interactive console-based
front end. It can also be run non-interactively. It has about a
zillion arguments, but a typical training session can be launched
with:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-3-1" name="__codelineno-3-1" href="#__codelineno-3-1"></a>invokeai-ti<span class="w"> </span>--model<span class="w"> </span>stable-diffusion-1.5<span class="w"> </span><span class="se">\</span>
<a id="__codelineno-3-2" name="__codelineno-3-2" href="#__codelineno-3-2"></a><span class="w"> </span>--placeholder_token<span class="w"> </span><span class="s1">&#39;jello&#39;</span><span class="w"> </span><span class="se">\</span>
<a id="__codelineno-3-3" name="__codelineno-3-3" href="#__codelineno-3-3"></a><span class="w"> </span>--learnable_property<span class="w"> </span>object<span class="w"> </span><span class="se">\</span>
<a id="__codelineno-3-4" name="__codelineno-3-4" href="#__codelineno-3-4"></a><span class="w"> </span>--num_train_epochs<span class="w"> </span><span class="m">50</span><span class="w"> </span><span class="se">\</span>
<a id="__codelineno-3-5" name="__codelineno-3-5" href="#__codelineno-3-5"></a><span class="w"> </span>--train_data_dir<span class="w"> </span>/path/to/training/images<span class="w"> </span><span class="se">\</span>
<a id="__codelineno-3-6" name="__codelineno-3-6" href="#__codelineno-3-6"></a><span class="w"> </span>--output_dir<span class="w"> </span>/path/to/trained/model
</code></pre></div>
<p>(Note that \ is the Linux/Mac long-line continuation character. Use ^
in Windows).</p>
<h2 id="invokeai-install"><strong>invokeai-install</strong><a class="headerlink" href="#invokeai-install" title="Permanent link">#</a></h2>
<p>This is the console-based model install script that is run by launcher
option [4]. If called without arguments, it will launch the
interactive console-based interface. It can also be used
non-interactively to list, add and remove models as shown by these
examples:</p>
<ul>
<li>This will download and install three models from CivitAI, HuggingFace,
and local disk:</li>
</ul>
<p><div class="highlight"><pre><span></span><code><a id="__codelineno-4-1" name="__codelineno-4-1" href="#__codelineno-4-1"></a>invokeai-install<span class="w"> </span>--add<span class="w"> </span>https://civitai.com/api/download/models/161302<span class="w"> </span>^
<a id="__codelineno-4-2" name="__codelineno-4-2" href="#__codelineno-4-2"></a><span class="w"> </span>gsdf/Counterfeit-V3.0<span class="w"> </span>^
<a id="__codelineno-4-3" name="__codelineno-4-3" href="#__codelineno-4-3"></a><span class="w"> </span>D:<span class="se">\M</span>odels<span class="se">\m</span>erge_model_two.safetensors
</code></pre></div>
(Note that ^ is the Windows long-line continuation character. Use \ on
Linux/Mac).</p>
<ul>
<li>This will list installed models of type <code>main</code>:</li>
</ul>
<div class="highlight"><pre><span></span><code><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a>invokeai-model-install<span class="w"> </span>--list-models<span class="w"> </span>main
</code></pre></div>
<ul>
<li>This will delete the models named <code>voxel-ish</code> and <code>realisticVision</code>:</li>
</ul>
<div class="highlight"><pre><span></span><code><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a>invokeai-model-install<span class="w"> </span>--delete<span class="w"> </span>voxel-ish<span class="w"> </span>realisticVision
</code></pre></div>
<h2 id="invokeai-configure"><strong>invokeai-configure</strong><a class="headerlink" href="#invokeai-configure" title="Permanent link">#</a></h2>
<p>This is the console-based configure script that ran when InvokeAI was
first installed. You can run it again at any time to change the
configuration, repair a broken install.</p>
<p>Called without any arguments, <code>invokeai-configure</code> enters interactive
mode with two screens. The first screen is a form that provides access
to most of InvokeAI's configuration options. The second screen lets
you download, add, and delete models interactively. When you exit the
second screen, the script will add any missing "support models"
needed for core functionality, and any selected "sd weights" which are
the model checkpoint/diffusers files.</p>
<p>This behavior can be changed via a series of command-line
arguments. Here are some of the useful ones:</p>
<ul>
<li>
<p><code>invokeai-configure --skip-sd-weights --skip-support-models</code>
This will run just the configuration part of the utility, skipping
downloading of support models and stable diffusion weights.</p>
</li>
<li>
<p><code>invokeai-configure --yes</code>
This will run the configure script non-interactively. It will set the
configuration options to their default values, install/repair support
models, and download the "recommended" set of SD models.</p>
</li>
<li>
<p><code>invokeai-configure --yes --default_only</code>
This will run the configure script non-interactively. In contrast to
the previous command, it will only download the default SD model,
Stable Diffusion v1.5</p>
</li>
<li>
<p><code>invokeai-configure --yes --default_only --skip-sd-weights</code>
This is similar to the previous command, but will not download any
SD models at all. It is usually used to repair a broken install.</p>
</li>
</ul>
<p>By default, <code>invokeai-configure</code> runs on the currently active InvokeAI
root folder. To run it against a different root, pass it the <code>--root
&lt;/path/to/root&gt;</code> argument.</p>
<p>Lastly, you can use <code>invokeai-configure</code> to create a working root
directory entirely from scratch. Assuming you wish to make a root directory
named <code>InvokeAI-New</code>, run this command:</p>
<p><div class="highlight"><pre><span></span><code><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a>invokeai-configure<span class="w"> </span>--root<span class="w"> </span>InvokeAI-New<span class="w"> </span>--yes<span class="w"> </span>--default_only
</code></pre></div>
This will create a minimally functional root directory. You can now
launch the web server against it with <code>invokeai-web --root InvokeAI-New</code>.</p>
<h2 id="invokeai-update"><strong>invokeai-update</strong><a class="headerlink" href="#invokeai-update" title="Permanent link">#</a></h2>
<p>This is the interactive console-based script that is run by launcher
menu item [8] to update to a new version of InvokeAI. It takes no
command-line arguments.</p>
<h2 id="invokeai-metadata"><strong>invokeai-metadata</strong><a class="headerlink" href="#invokeai-metadata" title="Permanent link">#</a></h2>
<p>This is a script which takes a list of InvokeAI-generated images and
outputs their metadata in the same JSON format that you get from the
`` button in the Web GUI. For example:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-8-1" name="__codelineno-8-1" href="#__codelineno-8-1"></a>$<span class="w"> </span>invokeai-metadata<span class="w"> </span>ffe2a115-b492-493c-afff-7679aa034b50.png
<a id="__codelineno-8-2" name="__codelineno-8-2" href="#__codelineno-8-2"></a>ffe2a115-b492-493c-afff-7679aa034b50.png:
<a id="__codelineno-8-3" name="__codelineno-8-3" href="#__codelineno-8-3"></a><span class="o">{</span>
<a id="__codelineno-8-4" name="__codelineno-8-4" href="#__codelineno-8-4"></a><span class="w"> </span><span class="s2">&quot;app_version&quot;</span>:<span class="w"> </span><span class="s2">&quot;3.1.0&quot;</span>,
<a id="__codelineno-8-5" name="__codelineno-8-5" href="#__codelineno-8-5"></a><span class="w"> </span><span class="s2">&quot;cfg_scale&quot;</span>:<span class="w"> </span><span class="m">8</span>.0,
<a id="__codelineno-8-6" name="__codelineno-8-6" href="#__codelineno-8-6"></a><span class="w"> </span><span class="s2">&quot;clip_skip&quot;</span>:<span class="w"> </span><span class="m">0</span>,
<a id="__codelineno-8-7" name="__codelineno-8-7" href="#__codelineno-8-7"></a><span class="w"> </span><span class="s2">&quot;controlnets&quot;</span>:<span class="w"> </span><span class="o">[]</span>,
<a id="__codelineno-8-8" name="__codelineno-8-8" href="#__codelineno-8-8"></a><span class="w"> </span><span class="s2">&quot;generation_mode&quot;</span>:<span class="w"> </span><span class="s2">&quot;sdxl_txt2img&quot;</span>,
<a id="__codelineno-8-9" name="__codelineno-8-9" href="#__codelineno-8-9"></a><span class="w"> </span><span class="s2">&quot;height&quot;</span>:<span class="w"> </span><span class="m">1024</span>,
<a id="__codelineno-8-10" name="__codelineno-8-10" href="#__codelineno-8-10"></a><span class="w"> </span><span class="s2">&quot;loras&quot;</span>:<span class="w"> </span><span class="o">[]</span>,
<a id="__codelineno-8-11" name="__codelineno-8-11" href="#__codelineno-8-11"></a><span class="w"> </span><span class="s2">&quot;model&quot;</span>:<span class="w"> </span><span class="o">{</span>
<a id="__codelineno-8-12" name="__codelineno-8-12" href="#__codelineno-8-12"></a><span class="w"> </span><span class="s2">&quot;base_model&quot;</span>:<span class="w"> </span><span class="s2">&quot;sdxl&quot;</span>,
<a id="__codelineno-8-13" name="__codelineno-8-13" href="#__codelineno-8-13"></a><span class="w"> </span><span class="s2">&quot;model_name&quot;</span>:<span class="w"> </span><span class="s2">&quot;stable-diffusion-xl-base-1.0&quot;</span>,
<a id="__codelineno-8-14" name="__codelineno-8-14" href="#__codelineno-8-14"></a><span class="w"> </span><span class="s2">&quot;model_type&quot;</span>:<span class="w"> </span><span class="s2">&quot;main&quot;</span>
<a id="__codelineno-8-15" name="__codelineno-8-15" href="#__codelineno-8-15"></a><span class="w"> </span><span class="o">}</span>,
<a id="__codelineno-8-16" name="__codelineno-8-16" href="#__codelineno-8-16"></a><span class="w"> </span><span class="s2">&quot;negative_prompt&quot;</span>:<span class="w"> </span><span class="s2">&quot;&quot;</span>,
<a id="__codelineno-8-17" name="__codelineno-8-17" href="#__codelineno-8-17"></a><span class="w"> </span><span class="s2">&quot;negative_style_prompt&quot;</span>:<span class="w"> </span><span class="s2">&quot;&quot;</span>,
<a id="__codelineno-8-18" name="__codelineno-8-18" href="#__codelineno-8-18"></a><span class="w"> </span><span class="s2">&quot;positive_prompt&quot;</span>:<span class="w"> </span><span class="s2">&quot;military grade sushi dinner for shock troopers&quot;</span>,
<a id="__codelineno-8-19" name="__codelineno-8-19" href="#__codelineno-8-19"></a><span class="w"> </span><span class="s2">&quot;positive_style_prompt&quot;</span>:<span class="w"> </span><span class="s2">&quot;&quot;</span>,
<a id="__codelineno-8-20" name="__codelineno-8-20" href="#__codelineno-8-20"></a><span class="w"> </span><span class="s2">&quot;rand_device&quot;</span>:<span class="w"> </span><span class="s2">&quot;cpu&quot;</span>,
<a id="__codelineno-8-21" name="__codelineno-8-21" href="#__codelineno-8-21"></a><span class="w"> </span><span class="s2">&quot;refiner_cfg_scale&quot;</span>:<span class="w"> </span><span class="m">7</span>.5,
<a id="__codelineno-8-22" name="__codelineno-8-22" href="#__codelineno-8-22"></a><span class="w"> </span><span class="s2">&quot;refiner_model&quot;</span>:<span class="w"> </span><span class="o">{</span>
<a id="__codelineno-8-23" name="__codelineno-8-23" href="#__codelineno-8-23"></a><span class="w"> </span><span class="s2">&quot;base_model&quot;</span>:<span class="w"> </span><span class="s2">&quot;sdxl-refiner&quot;</span>,
<a id="__codelineno-8-24" name="__codelineno-8-24" href="#__codelineno-8-24"></a><span class="w"> </span><span class="s2">&quot;model_name&quot;</span>:<span class="w"> </span><span class="s2">&quot;sd_xl_refiner_1.0&quot;</span>,
<a id="__codelineno-8-25" name="__codelineno-8-25" href="#__codelineno-8-25"></a><span class="w"> </span><span class="s2">&quot;model_type&quot;</span>:<span class="w"> </span><span class="s2">&quot;main&quot;</span>
<a id="__codelineno-8-26" name="__codelineno-8-26" href="#__codelineno-8-26"></a><span class="w"> </span><span class="o">}</span>,
<a id="__codelineno-8-27" name="__codelineno-8-27" href="#__codelineno-8-27"></a><span class="w"> </span><span class="s2">&quot;refiner_negative_aesthetic_score&quot;</span>:<span class="w"> </span><span class="m">2</span>.5,
<a id="__codelineno-8-28" name="__codelineno-8-28" href="#__codelineno-8-28"></a><span class="w"> </span><span class="s2">&quot;refiner_positive_aesthetic_score&quot;</span>:<span class="w"> </span><span class="m">6</span>.0,
<a id="__codelineno-8-29" name="__codelineno-8-29" href="#__codelineno-8-29"></a><span class="w"> </span><span class="s2">&quot;refiner_scheduler&quot;</span>:<span class="w"> </span><span class="s2">&quot;euler&quot;</span>,
<a id="__codelineno-8-30" name="__codelineno-8-30" href="#__codelineno-8-30"></a><span class="w"> </span><span class="s2">&quot;refiner_start&quot;</span>:<span class="w"> </span><span class="m">0</span>.8,
<a id="__codelineno-8-31" name="__codelineno-8-31" href="#__codelineno-8-31"></a><span class="w"> </span><span class="s2">&quot;refiner_steps&quot;</span>:<span class="w"> </span><span class="m">20</span>,
<a id="__codelineno-8-32" name="__codelineno-8-32" href="#__codelineno-8-32"></a><span class="w"> </span><span class="s2">&quot;scheduler&quot;</span>:<span class="w"> </span><span class="s2">&quot;euler&quot;</span>,
<a id="__codelineno-8-33" name="__codelineno-8-33" href="#__codelineno-8-33"></a><span class="w"> </span><span class="s2">&quot;seed&quot;</span>:<span class="w"> </span><span class="m">387129902</span>,
<a id="__codelineno-8-34" name="__codelineno-8-34" href="#__codelineno-8-34"></a><span class="w"> </span><span class="s2">&quot;steps&quot;</span>:<span class="w"> </span><span class="m">25</span>,
<a id="__codelineno-8-35" name="__codelineno-8-35" href="#__codelineno-8-35"></a><span class="w"> </span><span class="s2">&quot;width&quot;</span>:<span class="w"> </span><span class="m">1024</span>
<a id="__codelineno-8-36" name="__codelineno-8-36" href="#__codelineno-8-36"></a><span class="o">}</span>
</code></pre></div>
<p>You may list multiple files on the command line.</p>
<h2 id="invokeai-import-images"><strong>invokeai-import-images</strong><a class="headerlink" href="#invokeai-import-images" title="Permanent link">#</a></h2>
<p>InvokeAI uses a database to store information about images it
generated, and just copying the image files from one InvokeAI root
directory to another does not automatically import those images into
the destination's gallery. This script allows you to bulk import
images generated by one instance of InvokeAI into a gallery maintained
by another. It also works on images generated by older versions of
InvokeAI, going way back to version 1.</p>
<p>This script has an interactive mode only. The following example shows
it in action:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-9-1" name="__codelineno-9-1" href="#__codelineno-9-1"></a>$<span class="w"> </span>invokeai-import-images
<a id="__codelineno-9-2" name="__codelineno-9-2" href="#__codelineno-9-2"></a><span class="o">===============================================================================</span>
<a id="__codelineno-9-3" name="__codelineno-9-3" href="#__codelineno-9-3"></a>This<span class="w"> </span>script<span class="w"> </span>will<span class="w"> </span>import<span class="w"> </span>images<span class="w"> </span>generated<span class="w"> </span>by<span class="w"> </span>earlier<span class="w"> </span>versions<span class="w"> </span>of
<a id="__codelineno-9-4" name="__codelineno-9-4" href="#__codelineno-9-4"></a>InvokeAI<span class="w"> </span>into<span class="w"> </span>the<span class="w"> </span>currently<span class="w"> </span>installed<span class="w"> </span>root<span class="w"> </span>directory:
<a id="__codelineno-9-5" name="__codelineno-9-5" href="#__codelineno-9-5"></a><span class="w"> </span>/home/XXXX/invokeai-main
<a id="__codelineno-9-6" name="__codelineno-9-6" href="#__codelineno-9-6"></a>If<span class="w"> </span>this<span class="w"> </span>is<span class="w"> </span>not<span class="w"> </span>what<span class="w"> </span>you<span class="w"> </span>want<span class="w"> </span>to<span class="w"> </span><span class="k">do</span>,<span class="w"> </span><span class="nb">type</span><span class="w"> </span>ctrl-C<span class="w"> </span>now<span class="w"> </span>to<span class="w"> </span>cancel.
<a id="__codelineno-9-7" name="__codelineno-9-7" href="#__codelineno-9-7"></a><span class="o">===============================================================================</span>
<a id="__codelineno-9-8" name="__codelineno-9-8" href="#__codelineno-9-8"></a><span class="o">=</span><span class="w"> </span>Configuration<span class="w"> </span><span class="p">&amp;</span><span class="w"> </span>Settings
<a id="__codelineno-9-9" name="__codelineno-9-9" href="#__codelineno-9-9"></a>Found<span class="w"> </span>invokeai.yaml<span class="w"> </span>file<span class="w"> </span>at<span class="w"> </span>/home/XXXX/invokeai-main/invokeai.yaml:
<a id="__codelineno-9-10" name="__codelineno-9-10" href="#__codelineno-9-10"></a><span class="w"> </span>Database<span class="w"> </span>:<span class="w"> </span>/home/XXXX/invokeai-main/databases/invokeai.db
<a id="__codelineno-9-11" name="__codelineno-9-11" href="#__codelineno-9-11"></a><span class="w"> </span>Outputs<span class="w"> </span>:<span class="w"> </span>/home/XXXX/invokeai-main/outputs/images
<a id="__codelineno-9-12" name="__codelineno-9-12" href="#__codelineno-9-12"></a>
<a id="__codelineno-9-13" name="__codelineno-9-13" href="#__codelineno-9-13"></a>Use<span class="w"> </span>these<span class="w"> </span>paths<span class="w"> </span><span class="k">for</span><span class="w"> </span>import<span class="w"> </span><span class="o">(</span>yes<span class="o">)</span><span class="w"> </span>or<span class="w"> </span>choose<span class="w"> </span>different<span class="w"> </span>ones<span class="w"> </span><span class="o">(</span>no<span class="o">)</span><span class="w"> </span><span class="o">[</span>Yn<span class="o">]</span>:
<a id="__codelineno-9-14" name="__codelineno-9-14" href="#__codelineno-9-14"></a>Inputs:<span class="w"> </span>Specify<span class="w"> </span>absolute<span class="w"> </span>path<span class="w"> </span>containing<span class="w"> </span>InvokeAI<span class="w"> </span>.png<span class="w"> </span>images<span class="w"> </span>to<span class="w"> </span>import:<span class="w"> </span>/home/XXXX/invokeai-2.3/outputs/images/
<a id="__codelineno-9-15" name="__codelineno-9-15" href="#__codelineno-9-15"></a>Include<span class="w"> </span>files<span class="w"> </span>from<span class="w"> </span>subfolders<span class="w"> </span>recursively<span class="w"> </span><span class="o">[</span>yN<span class="o">]</span>?
<a id="__codelineno-9-16" name="__codelineno-9-16" href="#__codelineno-9-16"></a>
<a id="__codelineno-9-17" name="__codelineno-9-17" href="#__codelineno-9-17"></a>Options<span class="w"> </span><span class="k">for</span><span class="w"> </span>board<span class="w"> </span>selection<span class="w"> </span><span class="k">for</span><span class="w"> </span>imported<span class="w"> </span>images:
<a id="__codelineno-9-18" name="__codelineno-9-18" href="#__codelineno-9-18"></a><span class="m">1</span><span class="o">)</span><span class="w"> </span>Select<span class="w"> </span>an<span class="w"> </span>existing<span class="w"> </span>board<span class="w"> </span>name.<span class="w"> </span><span class="o">(</span>found<span class="w"> </span><span class="m">4</span><span class="o">)</span>
<a id="__codelineno-9-19" name="__codelineno-9-19" href="#__codelineno-9-19"></a><span class="m">2</span><span class="o">)</span><span class="w"> </span>Specify<span class="w"> </span>a<span class="w"> </span>board<span class="w"> </span>name<span class="w"> </span>to<span class="w"> </span>create/add<span class="w"> </span>to.
<a id="__codelineno-9-20" name="__codelineno-9-20" href="#__codelineno-9-20"></a><span class="m">3</span><span class="o">)</span><span class="w"> </span>Create/add<span class="w"> </span>to<span class="w"> </span>board<span class="w"> </span>named<span class="w"> </span><span class="s1">&#39;IMPORT&#39;</span>.
<a id="__codelineno-9-21" name="__codelineno-9-21" href="#__codelineno-9-21"></a><span class="m">4</span><span class="o">)</span><span class="w"> </span>Create/add<span class="w"> </span>to<span class="w"> </span>board<span class="w"> </span>named<span class="w"> </span><span class="s1">&#39;IMPORT&#39;</span><span class="w"> </span>with<span class="w"> </span>the<span class="w"> </span>current<span class="w"> </span>datetime<span class="w"> </span>string<span class="w"> </span>appended<span class="w"> </span><span class="o">(</span>.e.g<span class="w"> </span>IMPORT_20230919T203519Z<span class="o">)</span>.
<a id="__codelineno-9-22" name="__codelineno-9-22" href="#__codelineno-9-22"></a><span class="m">5</span><span class="o">)</span><span class="w"> </span>Create/add<span class="w"> </span>to<span class="w"> </span>board<span class="w"> </span>named<span class="w"> </span><span class="s1">&#39;IMPORT&#39;</span><span class="w"> </span>with<span class="w"> </span>a<span class="w"> </span>the<span class="w"> </span>original<span class="w"> </span>file<span class="w"> </span>app_version<span class="w"> </span>appended<span class="w"> </span><span class="o">(</span>.e.g<span class="w"> </span>IMPORT_2.2.5<span class="o">)</span>.
<a id="__codelineno-9-23" name="__codelineno-9-23" href="#__codelineno-9-23"></a>Specify<span class="w"> </span>desired<span class="w"> </span>board<span class="w"> </span>option:<span class="w"> </span><span class="nv">3</span>
<a id="__codelineno-9-24" name="__codelineno-9-24" href="#__codelineno-9-24"></a>
<a id="__codelineno-9-25" name="__codelineno-9-25" href="#__codelineno-9-25"></a><span class="o">===============================================================================</span>
<a id="__codelineno-9-26" name="__codelineno-9-26" href="#__codelineno-9-26"></a><span class="o">=</span><span class="w"> </span>Import<span class="w"> </span>Settings<span class="w"> </span>Confirmation
<a id="__codelineno-9-27" name="__codelineno-9-27" href="#__codelineno-9-27"></a>
<a id="__codelineno-9-28" name="__codelineno-9-28" href="#__codelineno-9-28"></a>Database<span class="w"> </span>File<span class="w"> </span>Path<span class="w"> </span>:<span class="w"> </span>/home/XXXX/invokeai-main/databases/invokeai.db
<a id="__codelineno-9-29" name="__codelineno-9-29" href="#__codelineno-9-29"></a>Outputs/Images<span class="w"> </span>Directory<span class="w"> </span>:<span class="w"> </span>/home/XXXX/invokeai-main/outputs/images
<a id="__codelineno-9-30" name="__codelineno-9-30" href="#__codelineno-9-30"></a>Import<span class="w"> </span>Image<span class="w"> </span>Source<span class="w"> </span>Directory<span class="w"> </span>:<span class="w"> </span>/home/XXXX/invokeai-2.3/outputs/images/
<a id="__codelineno-9-31" name="__codelineno-9-31" href="#__codelineno-9-31"></a><span class="w"> </span>Recurse<span class="w"> </span>Source<span class="w"> </span>SubDirectories<span class="w"> </span>:<span class="w"> </span>No
<a id="__codelineno-9-32" name="__codelineno-9-32" href="#__codelineno-9-32"></a>Count<span class="w"> </span>of<span class="w"> </span>.png<span class="w"> </span>file<span class="o">(</span>s<span class="o">)</span><span class="w"> </span>found<span class="w"> </span>:<span class="w"> </span><span class="m">5785</span>
<a id="__codelineno-9-33" name="__codelineno-9-33" href="#__codelineno-9-33"></a>Board<span class="w"> </span>name<span class="w"> </span>option<span class="w"> </span>specified<span class="w"> </span>:<span class="w"> </span>IMPORT
<a id="__codelineno-9-34" name="__codelineno-9-34" href="#__codelineno-9-34"></a>Database<span class="w"> </span>backup<span class="w"> </span>will<span class="w"> </span>be<span class="w"> </span>taken<span class="w"> </span>at<span class="w"> </span>:<span class="w"> </span>/home/XXXX/invokeai-main/databases/backup
<a id="__codelineno-9-35" name="__codelineno-9-35" href="#__codelineno-9-35"></a>
<a id="__codelineno-9-36" name="__codelineno-9-36" href="#__codelineno-9-36"></a>Notes<span class="w"> </span>about<span class="w"> </span>the<span class="w"> </span>import<span class="w"> </span>process:
<a id="__codelineno-9-37" name="__codelineno-9-37" href="#__codelineno-9-37"></a>-<span class="w"> </span>Source<span class="w"> </span>image<span class="w"> </span>files<span class="w"> </span>will<span class="w"> </span>not<span class="w"> </span>be<span class="w"> </span>modified,<span class="w"> </span>only<span class="w"> </span>copied<span class="w"> </span>to<span class="w"> </span>the<span class="w"> </span>outputs<span class="w"> </span>directory.
<a id="__codelineno-9-38" name="__codelineno-9-38" href="#__codelineno-9-38"></a>-<span class="w"> </span>If<span class="w"> </span>the<span class="w"> </span>same<span class="w"> </span>file<span class="w"> </span>name<span class="w"> </span>already<span class="w"> </span>exists<span class="w"> </span><span class="k">in</span><span class="w"> </span>the<span class="w"> </span>destination,<span class="w"> </span>the<span class="w"> </span>file<span class="w"> </span>will<span class="w"> </span>be<span class="w"> </span>skipped.
<a id="__codelineno-9-39" name="__codelineno-9-39" href="#__codelineno-9-39"></a>-<span class="w"> </span>If<span class="w"> </span>the<span class="w"> </span>same<span class="w"> </span>file<span class="w"> </span>name<span class="w"> </span>already<span class="w"> </span>has<span class="w"> </span>a<span class="w"> </span>record<span class="w"> </span><span class="k">in</span><span class="w"> </span>the<span class="w"> </span>database,<span class="w"> </span>the<span class="w"> </span>file<span class="w"> </span>will<span class="w"> </span>be<span class="w"> </span>skipped.
<a id="__codelineno-9-40" name="__codelineno-9-40" href="#__codelineno-9-40"></a>-<span class="w"> </span>Invoke<span class="w"> </span>AI<span class="w"> </span>metadata<span class="w"> </span>tags<span class="w"> </span>will<span class="w"> </span>be<span class="w"> </span>updated/written<span class="w"> </span>into<span class="w"> </span>the<span class="w"> </span>imported<span class="w"> </span>copy<span class="w"> </span>only.
<a id="__codelineno-9-41" name="__codelineno-9-41" href="#__codelineno-9-41"></a>-<span class="w"> </span>On<span class="w"> </span>the<span class="w"> </span>imported<span class="w"> </span>copy,<span class="w"> </span>only<span class="w"> </span>Invoke<span class="w"> </span>AI<span class="w"> </span>known<span class="w"> </span>tags<span class="w"> </span><span class="o">(</span>latest<span class="w"> </span>and<span class="w"> </span>legacy<span class="o">)</span><span class="w"> </span>will<span class="w"> </span>be<span class="w"> </span>retained<span class="w"> </span><span class="o">(</span>dream,<span class="w"> </span>sd-metadata,<span class="w"> </span>invokeai,<span class="w"> </span>invokeai_metadata<span class="o">)</span>
<a id="__codelineno-9-42" name="__codelineno-9-42" href="#__codelineno-9-42"></a>-<span class="w"> </span>A<span class="w"> </span>property<span class="w"> </span><span class="s1">&#39;imported_app_version&#39;</span><span class="w"> </span>will<span class="w"> </span>be<span class="w"> </span>added<span class="w"> </span>to<span class="w"> </span>metadata<span class="w"> </span>that<span class="w"> </span>can<span class="w"> </span>be<span class="w"> </span>viewed<span class="w"> </span><span class="k">in</span><span class="w"> </span>the<span class="w"> </span>UI<span class="err">&#39;</span>s<span class="w"> </span>metadata<span class="w"> </span>viewer.
<a id="__codelineno-9-43" name="__codelineno-9-43" href="#__codelineno-9-43"></a>-<span class="w"> </span>The<span class="w"> </span>new<span class="w"> </span><span class="m">3</span>.x<span class="w"> </span>InvokeAI<span class="w"> </span>outputs<span class="w"> </span>folder<span class="w"> </span>structure<span class="w"> </span>is<span class="w"> </span>flat<span class="w"> </span>so<span class="w"> </span>recursively<span class="w"> </span>found<span class="w"> </span><span class="nb">source</span><span class="w"> </span>imges<span class="w"> </span>will<span class="w"> </span>all<span class="w"> </span>be<span class="w"> </span>placed<span class="w"> </span>into<span class="w"> </span>the<span class="w"> </span>single<span class="w"> </span>outputs/images<span class="w"> </span>folder.
<a id="__codelineno-9-44" name="__codelineno-9-44" href="#__codelineno-9-44"></a>
<a id="__codelineno-9-45" name="__codelineno-9-45" href="#__codelineno-9-45"></a>Do<span class="w"> </span>you<span class="w"> </span>wish<span class="w"> </span>to<span class="w"> </span><span class="k">continue</span><span class="w"> </span>with<span class="w"> </span>the<span class="w"> </span>import<span class="w"> </span><span class="o">[</span>Yn<span class="o">]</span><span class="w"> </span>?
<a id="__codelineno-9-46" name="__codelineno-9-46" href="#__codelineno-9-46"></a>
<a id="__codelineno-9-47" name="__codelineno-9-47" href="#__codelineno-9-47"></a>Making<span class="w"> </span>DB<span class="w"> </span>Backup<span class="w"> </span>at<span class="w"> </span>/home/lstein/invokeai-main/databases/backup/backup-20230919T203519Z-invokeai.db...Done!
<a id="__codelineno-9-48" name="__codelineno-9-48" href="#__codelineno-9-48"></a>
<a id="__codelineno-9-49" name="__codelineno-9-49" href="#__codelineno-9-49"></a><span class="o">===============================================================================</span>
<a id="__codelineno-9-50" name="__codelineno-9-50" href="#__codelineno-9-50"></a>Importing<span class="w"> </span>/home/XXXX/invokeai-2.3/outputs/images/17d09907-297d-4db3-a18a-60b337feac66.png
<a id="__codelineno-9-51" name="__codelineno-9-51" href="#__codelineno-9-51"></a>...<span class="w"> </span><span class="o">(</span><span class="m">5785</span><span class="w"> </span>more<span class="w"> </span>lines<span class="o">)</span><span class="w"> </span>...
<a id="__codelineno-9-52" name="__codelineno-9-52" href="#__codelineno-9-52"></a><span class="o">===============================================================================</span>
<a id="__codelineno-9-53" name="__codelineno-9-53" href="#__codelineno-9-53"></a><span class="o">=</span><span class="w"> </span>Import<span class="w"> </span>Complete<span class="w"> </span>-<span class="w"> </span>Elpased<span class="w"> </span>Time:<span class="w"> </span><span class="m">0</span>.28<span class="w"> </span>second<span class="o">(</span>s<span class="o">)</span>
<a id="__codelineno-9-54" name="__codelineno-9-54" href="#__codelineno-9-54"></a>
<a id="__codelineno-9-55" name="__codelineno-9-55" href="#__codelineno-9-55"></a>Source<span class="w"> </span>File<span class="o">(</span>s<span class="o">)</span><span class="w"> </span>:<span class="w"> </span><span class="m">5785</span>
<a id="__codelineno-9-56" name="__codelineno-9-56" href="#__codelineno-9-56"></a>Total<span class="w"> </span>Imported<span class="w"> </span>:<span class="w"> </span><span class="m">5783</span>
<a id="__codelineno-9-57" name="__codelineno-9-57" href="#__codelineno-9-57"></a>Skipped<span class="w"> </span>b/c<span class="w"> </span>file<span class="w"> </span>already<span class="w"> </span>exists<span class="w"> </span>on<span class="w"> </span>disk<span class="w"> </span>:<span class="w"> </span><span class="m">1</span>
<a id="__codelineno-9-58" name="__codelineno-9-58" href="#__codelineno-9-58"></a>Skipped<span class="w"> </span>b/c<span class="w"> </span>file<span class="w"> </span>already<span class="w"> </span>exists<span class="w"> </span><span class="k">in</span><span class="w"> </span>db<span class="w"> </span>:<span class="w"> </span><span class="m">0</span>
<a id="__codelineno-9-59" name="__codelineno-9-59" href="#__codelineno-9-59"></a>Errors<span class="w"> </span>during<span class="w"> </span>import<span class="w"> </span>:<span class="w"> </span><span class="m">1</span>
</code></pre></div>
<h2 id="invokeai-db-maintenance"><strong>invokeai-db-maintenance</strong><a class="headerlink" href="#invokeai-db-maintenance" title="Permanent link">#</a></h2>
<p>This script helps maintain the integrity of your InvokeAI database by
finding and fixing three problems that can arise over time:</p>
<ol>
<li>
<p>An image was manually deleted from the outputs directory, leaving a
dangling image record in the InvokeAI database. This will cause a
black image to appear in the gallery. This is an "orphaned database
image record." The script can fix this by running a "clean"
operation on the database, removing the orphaned entries.</p>
</li>
<li>
<p>An image is present in the outputs directory but there is no
corresponding entry in the database. This can happen when the image
is added manually to the outputs directory, or if a crash occurred
after the image was generated but before the database was
completely updated. The symptom is that the image is present in the
outputs folder but doesn't appear in the InvokeAI gallery. This is
called an "orphaned image file." The script can fix this problem by
running an "archive" operation in which orphaned files are moved
into a directory named <code>outputs/images-archive</code>. If you wish, you
can then run <code>invokeai-image-import</code> to reimport these images back
into the database.</p>
</li>
<li>
<p>The thumbnail for an image is missing, again causing a black
gallery thumbnail. This is fixed by running the "thumbnaiils"
operation, which simply regenerates and re-registers the missing
thumbnail.</p>
</li>
</ol>
<p>You can find and fix all three of these problems in a single go by
executing this command:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-10-1" name="__codelineno-10-1" href="#__codelineno-10-1"></a>invokeai-db-maintenance<span class="w"> </span>--operation<span class="w"> </span>all
</code></pre></div>
<p>Or you can run just the clean and thumbnail operations like this:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-11-1" name="__codelineno-11-1" href="#__codelineno-11-1"></a>invokeai-db-maintenance<span class="w"> </span>-operation<span class="w"> </span>clean,<span class="w"> </span>thumbnail
</code></pre></div>
<p>If called without any arguments, the script will ask you which
operations you wish to perform.</p>
<h2 id="invokeai-migrate3"><strong>invokeai-migrate3</strong><a class="headerlink" href="#invokeai-migrate3" title="Permanent link">#</a></h2>
<p>This script will migrate settings and models (but not images!) from an
InvokeAI v2.3 root folder to an InvokeAI 3.X folder. Call it with the
source and destination root folders like this:</p>
<div class="highlight"><pre><span></span><code><a id="__codelineno-12-1" name="__codelineno-12-1" href="#__codelineno-12-1"></a>invokeai-migrate3<span class="w"> </span>--from<span class="w"> </span>~/invokeai-2.3<span class="w"> </span>--to<span class="w"> </span>invokeai-3.1.1
</code></pre></div>
<p>Both directories must previously have been properly created and
initialized by <code>invokeai-configure</code>. If you wish to migrate the images
contained in the older root as well, you can use the
<code>invokeai-image-migrate</code> script described earlier.</p>
<hr />
<p>Copyright &copy; 2023, Lincoln Stein and the InvokeAI Development Team</p>
<aside class="md-source-file">
<span class="md-source-file__fact">
<span class="md-icon" title="Last update">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 13.1c-.1 0-.3.1-.4.2l-1 1 2.1 2.1 1-1c.2-.2.2-.6 0-.8l-1.3-1.3c-.1-.1-.2-.2-.4-.2m-1.9 1.8-6.1 6V23h2.1l6.1-6.1-2.1-2M12.5 7v5.2l4 2.4-1 1L11 13V7h1.5M11 21.9c-5.1-.5-9-4.8-9-9.9C2 6.5 6.5 2 12 2c5.3 0 9.6 4.1 10 9.3-.3-.1-.6-.2-1-.2s-.7.1-1 .2C19.6 7.2 16.2 4 12 4c-4.4 0-8 3.6-8 8 0 4.1 3.1 7.5 7.1 7.9l-.1.2v1.8Z"/></svg>
</span>
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">August 29, 2024</span>
</span>
<span class="md-source-file__fact">
<span class="md-icon" title="Created">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14.47 15.08 11 13V7h1.5v5.25l3.08 1.83c-.41.28-.79.62-1.11 1m-1.39 4.84c-.36.05-.71.08-1.08.08-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8c0 .37-.03.72-.08 1.08.69.1 1.33.32 1.92.64.1-.56.16-1.13.16-1.72 0-5.5-4.5-10-10-10S2 6.5 2 12s4.47 10 10 10c.59 0 1.16-.06 1.72-.16-.32-.59-.54-1.23-.64-1.92M18 15v3h-3v2h3v3h2v-3h3v-2h-3v-3h-2Z"/></svg>
</span>
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">August 29, 2024</span>
</span>
</aside>
</article>
</div>
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
</div>
</main>
<footer class="md-footer">
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
<div class="md-copyright__highlight">
Copyright &copy; 2023 InvokeAI Team
</div>
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.instant", "navigation.tabs", "navigation.tabs.sticky", "navigation.tracking", "navigation.indexes", "navigation.path", "search.highlight", "search.suggest", "toc.integrate"], "search": "../../assets/javascripts/workers/search.b8dbb3d2.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}}</script>
<script src="../../assets/javascripts/bundle.af256bd8.min.js"></script>
<script src="https://unpkg.com/tablesort@5.3.0/dist/tablesort.min.js"></script>
<script src="../../javascripts/tablesort.js"></script>
<script src="../../javascript/init_kapa_widget.js"></script>
</body>
</html>