Gerente de GUI multiproceso para la creación de masas de arte generado por IA con soporte para múltiples GPU.
Esto está dirigido al usuario que quiere crear muchas obras de arte de IA con un tiempo práctico mínimo. Si está buscando un repositorio que le permita pasar horas ajustando una sola imagen hasta que sea perfecta, hay mejores opciones (actualización 2022-12-06: Dream Factory ahora usa el repositorio de Automatic1111 en el backend para que obtenga el ¡Lo mejor de ambos mundos!). Si tiene cientos de ideas rápidas y desea fácil y rápido (¡bueno, tan rápido como su GPU pueda manejar!) Véalas en cientos de variaciones y/o estilos diferentes, entonces esto es para ti.
Para ilustrar, he tenido tres GPU ejecutando Dream Factory desatendida prácticamente las 24 horas, los 7 días de la semana durante unos meses, ¡producen miles de imágenes todos los días! Puedo verificar mis imágenes y hacer modificaciones en mis trabajos en ejecución de forma remota, a mi conveniencia, a través de la interfaz de usuario web de Dream Factory. Algunas muestras (todas directamente fuera de la fábrica de ensueño que no sea reducir la resolución a 1024x1024):
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
Algunas capturas de pantalla de la interfaz de usuario:
![]() | ![]() | ![]() | ![]() |
Necesitará al menos una GPU NVIDIA, preferiblemente con una cantidad decente de VRAM. 3GB de VRAM debe ser suficiente para producir imágenes 512x512, pero más memoria de GPU le permitirá crear imágenes más grandes (y/o crearlas más rápido).
También necesitará un WebUI de difusión estable automática11111111111.
Estas instrucciones se probaron en varios escritorios de Windows 10 con una variedad de GPU NVIDIA modernas que van desde 8-12GB VRAM, y también en un sistema Ubuntu Server 20.04.3 con una antigua GPU NVIDIA TESLA M40 (24 GB VRAM).
[1] Instale Anaconda, abra el terminal raíz y cree un nuevo entorno (y activelo):
conda create --name dream-factory python=3.10
conda activate dream-factory
[2] Instale un par de paquetes de Python requeridos:
conda install -c anaconda git urllib3
[3] Clone este repositorio y cambie a su directorio:
git clone https://github.com/rbbrdckybk/dream-factory
cd dream-factory
[4] Ejecute el script de configuración incluido para finalizar el resto de su instalación automáticamente:
python setup.py
[5] Edite su archivo config.txt para especificar la ruta completa a su instalación automática de SD1111:
¡Ya terminaste! Asegúrese de que su instalación automática1111 funcione correctamente antes de intentar probar la fábrica de sueños. Además, asegúrese de que todo en la pestaña "Configuración" de Auto1111 esté configurado para su gusto, ya que Dream Factory heredará automáticamente cualquier opción que establezca allí.
Una vez que haya verificado que pueda generar imágenes individuales con su instalación de Auto1111, puede realizar una prueba para asegurarse de que Dream Factory funcione ejecutando esto (nuevamente, desde la carpeta principal de los sueños ):
python dream-factory.py --prompt_file prompts/example-standard.prompts
Esto debería iniciar la interfaz web con un archivo de pronóstico de ejemplo simple precargado previamente en el que su (s) GPU (s) debe comenzar a trabajar automáticamente. En la primera ejecución, varios archivos grandes (~ 2GB en total) se descargarán automáticamente, por lo que puede pasar unos minutos antes de que las cosas comiencen a suceder.
Eventualmente, debería ver imágenes que aparecen en su carpeta output (o puede hacer clic en el enlace "Galería" dentro de la interfaz de usuario web y mirarlas allí). Si está recibiendo imágenes, todo funciona correctamente y puede pasar a la siguiente sección.
Si desea crear una opción fácil para iniciar Dream Factory, en lugar de lidiar con el lanzamiento de Anaconda y/o abrir una ventana de línea de comandos cada vez, puede seguir estos pasos:
[1] Abra Windows Explorer y navegue a esta ubicación, donde [Nombre de usuario] es su nombre de usuario de Windows:
C:Users[username]anaconda3Scripts
Realice una copia del archivo activate.bat que encuentre allí y nombrelo activate-dream-factory.bat .
[2] Edite el archivo activate-dream-factory.bat que acaba de crear y agregue estas líneas al final del archivo:
@CALL echo Starting Dream Factory...
@CALL conda.bat activate dream-factory
@CALL cd "[full path to your Dream Factory folder]"
@CALL python dream-factory.py
@CALL pause
Reemplace [la ruta completa a la carpeta de la fábrica de sus sueños] con la ruta en la que instaló la fábrica de sueños (por ejemplo: c: usuarios [su nombre de usuario de Windows] Dream-Factory).
Guarde el archivo y cierre.
[3] Coloque un acceso directo a este archivo en su escritorio (o donde sea). Al hacer clic en él, debería iniciar Dream Factory.
Las instrucciones suponen que ha completado la configuración y verificó que su instalación funciona correctamente.
Comienza la fábrica de sueños con:
python dream-factory.py
La interfaz de usuario web debe abrirse automáticamente, si no vaya a http: // localhost: 8080 (suponiendo que no cambió el puerto en config.txt) a través de su navegador. Su (s) GPU (s) comenzarán automáticamente a inicializarse (cada GPU tardará tanto en el lanzamiento de Auto1111 en modo independiente).
Explore al 'panel de control' en el NAV superior y seleccione uno de los dos archivos de solicitud de ejemplo a través del menú desplegable. Su (s) GPU (s) deben comenzar a trabajar en cualquiera que elija tan pronto como terminen de inicializarse. Puede volver a buscar 'Monitor de estado' y debe ver que a su (s) GPU (s) se les asigna trabajo desde el archivo de solicitud seleccionado. Si navega a 'Gallery' en el NAV superior, verá que aparecen imágenes a medida que se completan.
Los archivos rápidos son el corazón de Dream Factory y definen el trabajo que desea que haga su (s) GPU (s). Pueden ser tan simples o tan complejos como desee.
Antes de entrar en la creación de nuevos archivos rápidos, echemos un vistazo a los dos archivos de pronunciación de ejemplo que se incluyen con Dream Factory. Comience haciendo clic en 'Editor de solicitud' en el NAV superior, luego elija 'Ejemplo-Estandard' en el 'Elija un archivo de solicitud:' desplegable '.
Debería ver la carga del archivo de solicitud en el editor. Los archivos rápidos tienen una sección opcional [config] en la parte superior con directivas que definen su configuración de difusión estable, y al menos una sección [indica] que contiene indicaciones (o secciones de indicaciones para combinar con otras secciones [de indicaciones]).
Los archivos de ejemplo contienen comentarios que deberían dejar bastante claro qué hace cada directiva [config] y cómo se combinarán las secciones [indicaciones]. Consulte la referencia de comando a continuación para obtener ayuda en cualquier directiva que no esté clara.
Puede crear archivos de inmediato utilizando el editor integrado (haga clic en 'Surpt Editor' en el NAV superior, luego haga clic en 'Nuevo estándar' o 'Nuevo Random' para iniciar un nuevo archivo). Los archivos de solicitud se crearán automáticamente con un esqueleto que contenga directivas comunes y la configuración predeterminada contenida en su config.txt.
Después de la creación, los archivos de inmediato se pueden renunciar simplemente haciendo clic en el nombre en la parte superior del editor, ingresando un nuevo nombre y luego haciendo clic en 'renombrar'.
Si lo prefiere, también puede crear archivos rápidos externamente utilizando un editor de texto de su elección (nombrarlos con una extensión .prompt y colocarlos en su carpeta de indicaciones). Si usa Notepad ++, hay un complemento en la carpeta Dream-Factory/Survicions/Notepad_Plugin que agregará resaltado sensible al contexto a los archivos .prompt.
Estas directivas son válidas solo en la sección [config] de archivos de inmediato tanto estándar como aleatorios:
Estas directivas son válidas tanto en la sección [config] de archivos de inmediato estándar y aleatorios como en cualquier sección [indica] de archivos de inmediato estándar (! Mods = estándar):
Estas directivas son válidas solo en la sección [config] de los archivos de inmediato estándar (! Mode = Standard):
Estas directivas son válidas solo en la sección [config] de archivos de inmediato aleatorios (! Mode = Random):
Finalmente, estas directivas especiales son válidas solo en los archivos de solicitud de proceso (! Mode = Process):
Ayuda de comando y ejemplos de uso:
Establece el modo de archivo de solicitud a estándar (predeterminado) o aleatorio . Los archivos de solicitud estándar funcionan iterando a través de todas las combinaciones posibles de secciones [indicaciones], y los archivos de solicitud aleatorios simplemente eligen las indicaciones al azar de las secciones [de indicaciones]. Consulte las indicaciones/Ejemplo-standard. Promptos y indicaciones/Ejemplo-Random.Prompts para un tutorial detallado de cómo funciona cada modo.
!MODE = standard
Tenga en cuenta que existe una tercera opción para! Mode ( ! Mode = Process ) que permite a los usuarios avanzados configurar tareas de procesamiento por lotes en las imágenes existentes (por ejemplo: upcalado por lotes, etiquetado de metadatos, renombrar, etc.) usando Dream Factory. Puede ver un proceso de ejemplo .Prompts File aquí.
Establece el delimitador que se usará al unir las secciones [de indicaciones] (el valor predeterminado es un espacio). Por ejemplo, si tiene dos secciones [de indicaciones], y la entrada superior en el primero es "un retrato de" y la entrada superior en el segundo es "un gato", luego, cuando se combinan las dos secciones, terminaría con "un retrato de un gato" if! delim = "".
!DELIM = " "
Establece el ancho de la imagen de salida, en píxeles (el valor predeterminado es 512). ¡Tenga en cuenta que esto debe ser un múltiplo de 64!
!WIDTH = 512
Establece la altura de la imagen de salida, en píxeles (el valor predeterminado es 512). ¡Tenga en cuenta que esto debe ser un múltiplo de 64!
!HEIGHT = 512
Habilita o deshabilita la solución Auto1111 Highres. Las opciones válidas son sí o no (predeterminado). Esto debe habilitarse al generar imágenes a resoluciones significativamente más altas de 512x512.
!HIGHRES_FIX = no
A partir del 2023-09-22, hay una opción Hires_Fix_Mode en el archivo de config de fábrica de sus sueños que le permite especificar simple (predeterminado) o avanzado . Si establece HIRES_FIX_MODE = advanced , habilitará la capacidad de especificar su tamaño inicial de generación de imágenes, así como un factor de escala que determina el tamaño final (¡ver ! HighRes_Scale_Factor a continuación).
En el modo simple predeterminado, simplemente establece! Ancho y! Altura en los archivos. Prompts a su tamaño de imagen de salida final deseado y los pasos intermedios se manejan automáticamente.
El número de pasos de desoción (predeterminado = 20). Más pasos generalmente mejorarán la calidad de la imagen a un punto, a costa del tiempo de procesamiento.
!STEPS = 20
También puede especificar un rango (por ejemplo, pasos = 30-55) y se eligirá un valor aleatorio dentro de su rango cuando se ejecute el aviso.
La muestra para usar (el valor predeterminado es dpm ++ 2m). Esto debe coincidir con una opción disponible en su Auto1111 SD WebUI exactamente. Puede presionar CTRL+H o hacer clic en el icono de ayuda en la esquina superior derecha del editor para ver una lista de referencias de los muestreadores disponibles (haga clic en un muestreador para copiarlo en el portapapeles para que pueda pegarlo fácilmente en el editor).
!SAMPLER = DPM++ 2M
El planificador para usar (el valor predeterminado es automático). Esto debe coincidir con un valor del Auto1111 WebUI (uniforme, karras, exponencial, poliexponencial, uniforme SGM).
!SCHEDULER = Karras
Establecer en nada o automático para volver al valor predeterminado.
La escala de guía, o qué tan cerca desea que la difusión estable siga su mensaje de texto. El valor predeterminado es 7.5, y los valores útiles en general son entre 5 y 30.
!SCALE = 7.5
También puede especificar un rango (por ejemplo, escala = 5.5 - 9) y se eligirá un valor aleatorio dentro de su rango cuando se ejecute el aviso.
Cuántas imágenes producir de cada indicador antes de pasar al siguiente (predeterminado = 1). A diferencia de la siguiente opción Batch_Size, no hay costo adicional en términos de memoria de GPU al aumentar esto. Habrá un aumento del revestimiento en el tiempo de procesamiento al aumentar esto (por ejemplo :! Las muestras = 10 tomarán diez veces más tiempo que las muestras = 1).
!SAMPLES = 1
Cuántas imágenes desea que cada GPU produzca en paralelo (predeterminado = 1). Cada aumento de Batch_Size requerirá más GPU VRAM, y establecer este valor demasiado alto hará que las GPU se queden sin memoria y se bloqueen. Sin embargo, mientras sepa que tiene suficiente VRAM, puede lograr ganancias de velocidad moderadas aumentando esto más allá de 1. Esta es una configuración avanzada y no está incluida en las nuevas plantillas de archivos de inmediato, sin embargo, puede agregarlo manualmente a sus archivos de inmediato .
!BATCH_SIZE = 1
Establece una imagen para usar como punto de partida para el proceso de renovación, en lugar del ruido aleatorio predeterminado. Esto puede ser un relativo (para el directorio base de la fábrica de sueños) o la ruta absoluta, y establecer esto en nada borrará cualquier imagen de entrada previamente establecida.
!INPUT_IMAGE = C:imagesdog.png # specifies the full path to an input image
!INPUT_IMAGE = cat.jpg # specifies an input image 'cat.jpg' in the DF home directory
!INPUT_IMAGE = # specifies no input image should be used
Tenga en cuenta que también puede pasar un directorio de imágenes a esta directiva:
!INPUT_IMAGE = C:images
Si se pasa un directorio, cada imagen en la carpeta se aplicará a los avisos que siguen.
Establece la fuerza de la influencia de la imagen de entrada. Los valores válidos son 0-1 (predeterminado = 0.75). Los valores cercanos a 0 darán como resultado una imagen de salida muy similar a la imagen de entrada, y los valores cercanos a 1 darán como resultado imágenes con menos semejanza. En general, los valores entre 0.2 - 0.8 son más útiles. Tenga en cuenta que esto también se usa cuando! Highres_fix = sí para indicar qué tan cerca debería la imagen final reflejar la imagen de inicialización de baja resolución.
!STRENGTH = 0.75
También puede especificar un rango (por ejemplo, fuerza = 0.55 - 0.75) y se eligirá un valor aleatorio dentro de su rango cuando se ejecute el aviso.
Establece el modelo para usar. Se debe instalar cualquier modelo personalizado en el directorio de modelos apropiado de su instalación de Auto1111. Puede presionar CTRL+H o hacer clic en el icono de ayuda en la esquina superior derecha del editor para ver una lista de referencias de modelos disponibles (haga clic en un modelo para copiarlo en el portapapeles para que pueda pegarlo fácilmente en el editor). Configurar esto en nada volverá a volver a cualquier modelo que haya establecido en su archivo config.txt (si no ha establecido un valor predeterminado, configurar esto en nada no hará nada!).
Muchos también establecen una lista de modelos separados por comas aquí. En el modo estándar, Dream Factory transmitirá todas las indicaciones con el primer modelo, luego el segundo, y así sucesivamente. En modo aleatorio, Dream Factory cambiará los modelos cada 50 indicaciones (este intervalo se puede cambiar en su archivo config.txt).
También puede usar la palabra reservada "todo" aquí, y Dream Factory girará a través de todos sus modelos disponibles automáticamente.
Tenga en cuenta que solo puede especificar más de un modelo en la sección [config]; ¡La rotación del modelo no es compatible en ningún otro lugar!
!CKPT_FILE = analog-style.ckpt # sets a new model to use
!CKPT_FILE = sd-v1-5-vae.ckpt, analog-style.ckpt # sets 2 models to rotate between
!CKPT_FILE = all # will rotate between all of your models
!CKPT_FILE = # sets the default model specified in your config.txt
Nota: Esto utiliza una coincidencia de subcadena en los valores de servidor válidos disponibles a través de la referencia integrada, por lo que, por ejemplo, si 'sd_1.5 dreamshaper_4bakedvae.safetensors [7f16bbcd80]' es lo que informa la referencia, luego configurar ! Ckpt_file = Dreamshaper_4bakedvae.Safetensors encontrará encontrar lo encontrará encontrará encontrar lo encontrará. él.
Establece el VAE para usar. Establezca esto en nada para volver al uso automático de VAE (o lo que sea que especifique su configuración de Auto1111).
!VAE = vae-ft-mse-840000-ema-pruned.ckpt
!VAE =
Nota: los partidos de subcadena son válidos aquí. Set ! Vae = VAE-FT-MSE-840000 encontrará VAE-FT-MSE-840000-EMA-PREMED.CKPT, por ejemplo.
Especifica una solicitud negativa que se utilizará para todas las indicaciones que lo siguen (recuerde que puede colocar la mayoría de las directivas directamente en secciones [de indicaciones] de archivos de solicitud estándar!). Si tiene un indicador negativo de 'Catch-All' que tiende a usar, puede especificarlo en su archivo config.txt y se poblará como el valor predeterminado en los nuevos archivos de solicitud que crea. Establecer esto en nada borrará el mensaje negativo.
!NEG_PROMPT = watermark, blurry, out of focus
Para usar con modelos personalizados que requieren una 'palabra de activación' que se ha configurado en su archivo Model Triggers.txt (consulte los modelos personalizados a continuación). Esto le permite controlar la colocación de la palabra de activación de inserción automáticamente. Las opciones válidas son iniciales (predeterminadas), end , first_comma , palabra clave: [palabra clave para reemplazar] y apagado : 'inicio' pondrá la palabra de activación en la parte delantera de la solicitud, 'end' lo colocará al final, 'first_comma' Lo colocará después de la primera coma (o al final si no hay coma en el mensaje), 'Palabra clave:' reemplazará la palabra clave/frase especificada en el mensaje con la palabra de activación del modelo y 'apagado' deshabilitará Inserción automática por completo.
!AUTO_INSERT_MODEL_TRIGGER = start
Tenga en cuenta que esto también controlará el comportamiento de la inserción de activación automática en su HighRes_Prompt (si está presente), suponiendo que se ha establecido un HighRes_CKPT_File válido con palabras de activación asociadas.
Especifica el valor de la semilla que se utilizará en la creación de imágenes. Este valor normalmente se elige al azar: el uso de la misma configuración con el mismo valor de semilla debería producir exactamente la misma imagen de salida. Establecer esto en nada indicará que se deben usar valores de semillas aleatorias (el valor predeterminado). Esta es una configuración avanzada y no está incluida en las nuevas plantillas de archivo de inmediato, sin embargo, puede agregarla manualmente a sus archivos de solicitud.
!SEED = 42
Si cada imagen de salida debe ser escalonada automáticamente o no. La mejora de la escala puede tomar una cantidad significativa de tiempo, por lo que generalmente solo desea hacerlo en un subconjunto de imágenes seleccionadas. Las opciones válidas son sí o no (predeterminado).
!USE_UPSCALE = no
Establece el modelo de escala para usar.
!UPSCALE_MODEL = esrgan
Tenga en cuenta que esto realizará una coincidencia de subcadena en cualquier escala que haya instalado con Auto1111. En este caso, se debe seleccionar Esrgan_4x * (y también es el valor predeterminado).
En ! MODE = Process .PROMPTS ARCHIVOS, también puede especificar ! Upscale_model = sd o ! Upscale_model = Ultimate .
SD es una opción especial que utiliza el motor IMG2IMG de difusión estable para mejorar sus imágenes. Esto llevará mucho más tiempo que otros métodos y requiere una gran cantidad de GPU VRAM para alcanzar grandes tamaños de imagen (se requiere ~ 12 GB de VRAM para obtener imágenes 2048x2048), pero potencialmente producirá resultados de mayor calidad con la capacidad de agregar detalles. Usar! Upscale_SD_strength = xxx (el valor predeterminado es 0.3) para controlar la fuerza de renovación con! Upscale_model = sd.
Esta opción funciona de manera muy similar a cómo lo hace Highres en Auto1111. Le permite tomar una imagen y usar una difusión estable para crear una versión más grande, cambiando ligeramente la imagen dependiendo de la resistencia de denominación utilizada (el valor predeterminado de 0.3 debe permanecer muy cerca del original en la mayoría de los casos).
!UPSCALE_MODEL = sd
!UPSCALE_SD_STRENGTH = 0.3
Para usar! Upscale_model = SD, primero debe agregar max_output_size a su archivo de fábrica de fábrica Dream (consulte config-fault.txt para una explicación).
Ultimate es una opción especial que requiere que se agregue la extensión exclusiva de SD SD en su instalación automática1111.
Una vez instalado, puede controlar la configuración de la extensión con las siguientes directivas (en el ejemplo a continuación, establecemos la resistencia de Denoising en 0.28, usamos ESRGAN_4X como nuestro escala y excluyendo la imagen original por un factor de 2.5x).
!UPSCALE_MODEL = ultimate
!UPSCALE_SD_STRENGTH = 0.28
!UPSCALE_ULT_MODEL = esrgan
!UPSCALE_AMOUNT = 2.5
Consulte la parte inferior del archivo Ejemplo-Process.Prompts en el directorio de sus sueños de fábrica /solicita para obtener más información.
Para usar! Upscale_model = Ultimate, primero debe instalar la extensión exclusiva de SD a Auto1111.
El factor de exclusión de. Configuración! Upscale_amount = 2 duplicará el ancho y la altura de una imagen (lo que resulta en cuadruplicar la resolución). No tiene efecto a menos que! Use_upscale = sí.
!UPSCALE_AMOUNT = 2
La visibilidad de la mejora de la cara del formador de código en la imagen de salida. Los valores válidos son entre 0-1. Establecer esto en 0 Desactiva la mejora del formador de código por completo. No tiene efecto a menos que! Use_upscale = sí.
!UPSCALE_CODEFORMER_AMOUNT = 0.50
La visibilidad de la mejora de la cara GFPGAN en la imagen de salida. Los valores válidos son entre 0-1. Establecer esto en 0 deshabilita la mejora de GFPGAN por completo. No tiene efecto a menos que! Use_upscale = sí.
!UPSCALE_GFPGAN_AMOUNT = 0.50
Cuando se escala, ¿mantiene la imagen original (no escala) también? Las opciones válidas son sí o no (predeterminado). Si se establece en Sí, los originales se almacenarán en un subdirectorio de /Originals de la carpeta de salida principal. No tiene efecto a menos que! Use_upscale = sí.
!UPSCALE_KEEP_ORG = no
Le permite especificar un nombre de archivo de salida personalizado. Puede usar las siguientes variables; Se llenarán cuando se cree la imagen:
<ad-model><ad-strength><cn-img><cn-model><date><date-year><date-month><date-day><height><hr-model><input-img><lora><model><neg-prompt><prompt><sampler><scheduler><scale><seed><steps><strength><styles><time><width>En los archivos de modo de proceso , los siguientes están disponibles:
<upscale-model><upscale-sd-strength>La extensión del archivo (.jpg) se agregará automáticamente.
!FILENAME = <date-year><date-month><date-day>-<model>-<width>x<height>-<prompt>
El ejemplo anterior podría producir un nombre de archivo de salida de 20230209-Deliberate_V11-768x1280-a-Photo- de-a-cute-cat.jpg , por ejemplo.
Tenga en cuenta que <input-img> y <cn-img> (imagen de entrada de Netnet) será solo el nombre de archivo base (sin subdirectorios o extensión de archivo).
Los nombres de archivo personalizados se truncarán a 200 caracteres (sin incluir la extensión del archivo y cualquier relleno numérico necesario para que el archivo sea único).
Establece el valor de omisión del clip. El valor predeterminado es 1, y la mayoría de los modelos funcionan mejor con él establecido allí. Sin embargo, algunos modelos pueden dar resultados óptimos con otros valores.
!CLIP_SKIP = 2
Puede establecer esto en nada (! Clip_skip =) para borrarlo.
Habilita o deshabilita el modo de mosaico sin costuras. Cuando esté habilitado, las imágenes de salida serán adecuadas para mosaico sin costuras/bordes visibles.
!SEAMLESS_TILING = on
Establecer en OFF para deshabilitar (el valor predeterminado).
Establece una imagen de entrada para usar con Controlnet.
!CONTROLNET_INPUT_IMAGE = posesexamplesopenpose-standing_arms_in_front.png
El ejemplo anterior utilizará OpenPose-Standing_arms_in_front.png como la imagen de entrada Controlnet. Tenga en cuenta que esto no tendrá ningún efecto si no tiene instalada la extensión de ControlNet, y/o no especifica un modelo de control de control a través de la directiva! Controlnet_model.
Puede borrar las imágenes de entrada previamente establecidas emitiendo otra directiva para establecerla en nada (! Controlnet_input_image =).
Tenga en cuenta que también puede pasar un directorio de imágenes a esta directiva:
!CONTROLNET_INPUT_IMAGE = posesexamples
Si se pasa un directorio, cada imagen en la carpeta se aplicará a los avisos que siguen.
Establece el modelo Controlnet para usar.
!CONTROLNET_MODEL = openpose
Puede presionar Control-H (o presionar el botón apropiado) dentro del editor integrado para abrir una referencia que muestra sus modelos de control de control disponibles. Tenga en cuenta que configurar un modelo Controlnet no tendrá efecto si no tiene instalada la extensión de control de control, y/o no especifica una imagen de entrada de Netnet a través de la directiva! Controlnet_input_image.
Tenga en cuenta que opcionalmente puede especificar AUTO para! Controlnet_model (o automáticamente, [predeterminado] ) si desea Dream Factory para extraer el modelo de su (s) nombre (s) de FileN (s) de Filenput_Input_Image. Debe nombrar su imagen en el siguiente formato para que esto funcione: [ControlNet model to use]-[rest of filename].ext . Por ejemplo, una imagen llamada OpenPose-Standing_arms_in_front.png indicaría que el modelo OpenPose debe usarse cuando! Controlnet_model = Auto.
!CONTROLNET_MODEL = auto, depth
En esta directiva de ejemplo, Dream Factory intentará extraer el modelo para usar de sus nombres de archivo, y el retroceso a 'profundidad' como un modelo predeterminado si su nombre de archivo no contenía un modelo válido. Especificar un valor predeterminado es opcional, pero si un modelo no se puede discernir desde su (s) nombre (s) de File (s) y no hay ningún valor predeterminado, ControlNet se deshabilitará.
Nota: Esto utiliza una coincidencia de subcadena en los valores de servidor válidos disponibles a través de la referencia integrada, por ejemplo, si 'Control_Canny-FP16' es lo que informa la referencia, luego configuración ! Controlnet_model = Canny lo encontrará.
Establece el preprocesador Controlnet para usar. Esto se utiliza para "extraer" la información de una imagen normal, para que luego se pueda usar con el modelo de control de control correspondiente. Si está utilizando posturas previamente generadas (como las de ejemplo contenidas en la carpeta Dream Factory Poses ), no necesita establecer esto (o puede establecerlo en el valor predeterminado de 'Ninguno').
!CONTROLNET_PRE = openpose
Puede presionar Control-H (o presionar el botón apropiado) dentro del editor integrado para abrir una referencia que muestra sus preprocesadores de control de control disponibles. Tenga en cuenta que configurar un preprocesador de control de control no tendrá efecto si no tiene instalada la extensión de control de control, y/o no especifica una imagen de entrada de Netnet a través de la directiva! Controlnet_input_image.
AdivesMode ya no es compatible con CN Extension V1.1.09 - ¡Vea a continuación el reemplazo!
Use esto para habilitar (sí) o deshabilitar (no, el modo de adivinación predeterminado) (o "modo no prompt") cuando se usa Controlnet.
!CONTROLNET_GUESSMODE = yes
Puedes leer sobre el modo Guess aquí.
Use esto para decirle a Controlnet que favorezca su solicitud más que Controlnet, o viceversa, o adopte un enfoque equilibrado. Las opciones son ' equilibradas ' (predeterminadas), ' indicador ' (para favorecer más su solicitud) o ' Controlnet ' (para favorecer más a Controlnet).
!CONTROLNET_CONTROLMODE = balanced
Puede leer sobre el modo de control aquí.
Use esto para habilitar (sí) o deshabilitar (no, el modo de píxel predeterminado) cuando se usa Controlnet. Al habilitar esto, la altura y el ancho de la imagen que especificó (con el ancho y la altura) se utilizará para generar la imagen preprocesada de Controlnet.
!CONTROLNET_PIXELPERFECT = yes
Use esto para habilitar (sí) o deshabilitar (no, el modo VRAM bajo predeterminado) cuando use Controlnet.
!CONTROLNET_LOWVRAM = yes
Esto puede ser útil si tiene una GPU con menos VRAM.
Use esto para establecer el peso del Netnet (default = 1.0; establecer entre 0-2).
!CONTROLNET_WEIGHT = 1.0
Le permite tener Dream Factory tamaño automáticamente sus imágenes de salida basadas en el tamaño de las imágenes de entrada o las imágenes de entrada Controlnet. Las opciones válidas son Match_Input_image_Size , Match_Controlnet_Image_Size , Match_input_image_aspect_ratio , match_controlnet_image_aspect_ratio , resize_longest_dimension: [size] o apagado (predeterminado).
# output image will be set to the same size as your input image, regardless of any !WIDTH & !HEIGHT directives
!AUTO_SIZE = match_input_image_size
# output image will use the larger of your !WIDTH & !HEIGHT directives as the longer output dimension
# the shorter output dimension will be calculated so that the output image has the same aspect ratio as the ControlNet input image
!AUTO_SIZE = match_controlnet_image_aspect_ratio
# the output image will be re-sized so that the longer of your !WIDTH/!HEIGHT settings becomes the size specified here
# the shorter dimension will be calculated to maintain the same aspect ratio as the original !WIDTH/!HEIGHT settings
# useful if you have an existing prompt file full of size directives and want to quickly change the size on all of them
!AUTO_SIZE = resize_longest_dimension: 1280
Tenga en cuenta que todas las resfriados darán como resultado dimensiones de imagen que son divisibles por 64 (ambas dimensiones se redondearán al número divisible más cercano por 64).
Por ejemplo, con ! Auto_size = Match_Controlnet_image_aspect_ratio , si establece su ancho y altura a 1408, y pasa una imagen de entrada de control de control de 1920x1080 (relación de aspecto 16: 9), la imagen de salida resultante será 1408x768. La dimensión más grande se ha establecido en la configuración de altura más grande de su ancho y altura, y se ha calculado que la dimensión más pequeña sea lo más cercana posible a una relación de aspecto de 16: 9 con una dimensión más pequeña que es divisual uniformemente por 64.
Establece el título de la imagen en metadatos IPTC incrustados. Generalmente solo es útil si planea exportar sus imágenes a alguna otra aplicación que utiliza estándares IPTC para catalogarse, etc.
IPTC_TITLE = Super awesome AI kitten image!
Establezca esto en nada para aclararlo, como de costumbre.
Establece la descripción de la imagen en metadatos IPTC incrustados. Generalmente solo es útil si planea exportar sus imágenes a alguna otra aplicación que utiliza estándares IPTC para catalogarse, etc.
IPTC_DESCRIPTION = This is an excellent AI image of a cute kitten.
Establezca esto en nada para aclararlo, como de costumbre.
Establece las palabras clave de la imagen en metadatos IPTC integrados. Generalmente solo es útil si planea exportar sus imágenes a alguna otra aplicación que utiliza estándares IPTC para catalogarse, etc. Las palabras clave deben ser una lista separada por comas.
IPTC_KEYWORDS = ai, kitten, cute
Establezca esto en nada para aclararlo, como de costumbre.
Establece la declaración de derechos de autor de la imagen en metadatos IPTC incrustados. Generalmente solo es útil si planea exportar sus imágenes a alguna otra aplicación que utiliza estándares IPTC para catalogarse, etc.
IPTC_COPYRIGHT = Copyright © 2023 Super Awesome Image Studio
Establezca esto en nada para aclararlo, como de costumbre.
Dice Dream Factory si continúa produciendo imágenes o no después de haber terminado todas las combinaciones posibles en el archivo de inmediato. Las opciones son sí (predeterminadas) o no . Si se establece en no, Dream Factory estará inactivo después de que haya completado todas las indicaciones.
!REPEAT = yes
Le permite especificar otro archivo de aviso para cargar cuando el archivo actual termina el procesamiento. No incluya un camino; Dream Factory buscará automáticamente archivos de inmediato en la ubicación de solicitud especificada en su archivo config.txt. Tenga en cuenta que esto no tendrá ningún efecto en archivos de solicitud aleatorios o archivos de solicitud estándar con ! Repet = sí , ya que esos archivos se ejecutarán para siempre.
!NEXT_PROMPT_FILE = example-random
Una extensión del archivo. Prompts se agregará automáticamente si la omite.
Al usar archivos de solicitud de modo aleatorio, establece el valor de escala mínimo! If! Min_scale y! Max_scale se establecen en diferentes valores, Dream Factory elegirá un valor aleatorio entre ellos para cada mensaje.
!MIN_SCALE = 6.0
Deprecido: considere usar! Escala = xx - xx.x formato en su lugar.
When using random mode prompt files, sets the maximum !SCALE value to use. If !MIN_SCALE and !MAX_SCALE are set to different values, Dream Factory will choose a random value between them for each prompt.
!MIN_SCALE = 18.5
Deprecated - consider using !SCALE = xx - xx.x format instead.
When using random mode prompt files, sets the minimum !STRENGTH value to use. If !MIN_STRENGTH and !MAX_STRENGTH are set to different values, Dream Factory will choose a random value between them for each prompt.
!MIN_STRENGTH = 0.45
Deprecated - consider using !STRENGTH = 0.xx - 0.xx format instead.
When using random mode prompt files, sets the maximum !STRENGTH value to use. If !MIN_STRENGTH and !MAX_STRENGTH are set to different values, Dream Factory will choose a random value between them for each prompt.
!MAX_STRENGTH = 0.80
Deprecated - consider using !STRENGTH = 0.xx - 0.xx format instead.
When using random mode prompt files, sets a directory that random input images should be pulled from. If this is set, Dream Factory will choose a random input image to use for each prompt.
!RANDOM_INPUT_IMAGE_DIR = C:images # specifies the full path to a directory containing input images
!RANDOM_INPUT_IMAGE_DIR = images # specifies a relative path to a directory containing input images
!RANDOM_INPUT_IMAGE_DIR = # specifies no input images should be used
Special directive valid only in !MODE = process .prompts files, and only when used with !UPSCALE_MODEL = sd . This directive allows you to specify a different model to use (eg instead of the model used to create the original image) when performing an SD upscale.
!OVERRIDE_CKPT_FILE = juggernaut
Note: substring matches are valid here. In the example, "juggernaut" would match with the first valid model file that contains the string "juggernaut".
Special directive valid only in !MODE = process .prompts files, and only when used with !UPSCALE_MODEL = sd . This directive allows you to specify a different VAE to use (eg instead of the VAE used to create the original image) when performing an SD upscale.
!OVERRIDE_VAE = vae-ft-mse-840000-ema-pruned
Note: substring matches are valid here. In the example, "vae-ft-mse-840000-ema-pruned" would match with the first valid VAE file that contains the string "vae-ft-mse-840000-ema-pruned".
Special directive valid only in !MODE = process .prompts files, and only has any effect when used with !UPSCALE_MODEL = sd . This directive allows you to override the value set for MAX_OUTPUT_SIZE in your config.txt file (see config-default.txt for detailed explanation).
!OVERRIDE_MAX_OUTPUT_SIZE = 2,000,000
Special directive valid only in !MODE = process .prompts files, and only has any effect when used with !UPSCALE_MODEL = sd . This directive allows you to specify a different sampler to use (eg instead of the sampler used to create the original image) when performing an SD upscale.
!OVERRIDE_SAMPLER = DPM++ 2M Karras
Special directive valid only in !MODE = process .prompts files, and only has any effect when used with !UPSCALE_MODEL = sd . This directive allows you to specify a different number of steps (eg instead of the step value used to create the original image) when performing an SD upscale.
!OVERRIDE_STEPS = 40
Note that you're overriding the number of steps used to create the original image, not setting the number of steps to use for the actual upscaling (which is determined by a combination of the step value and the !UPSCALE_SD_STRENGTH). So for example, if the original image was created with 120 steps, and you set !OVERRIDE_STEPS = 40 in a !PROCESS_MODE SD upscale job that uses !UPSCALE_SD_STRENGTH = 0.30 , then the final output image will have ~13 steps (40 * 0.3) instead of 40 steps (120 * 0.3).
Allows you to set the denoising strength when using either of the special !MODE = process upscaling methods ( !UPSCALE_MODEL = ultimate or !UPSCALE_MODEL = sd ).
!UPSCALE_SD_STRENGTH = 0.28
Allows you to set the upscale model to use when controlling the Ultimate SD Upscale extension via !UPSCALE_MODEL = ultimate in a !MODE = process .prompts file.
!UPSCALE_ULT_MODEL = remacri
Note that substring matches are allowed. In this example, the first valid Auto1111 upscaler that contains the string 'remacri' (case insensitive) will be used.
Allows for use of Automatic1111 styles in your Dream Factory prompts. Use a comma-separated list for multiple styles. You may also set !STYLES to random x to have Dream Factory choose x styles randomly each time a prompt is executed ( !STYLES = random implies a single random style). Set !STYLES to nothing to clear it.
!STYLES = pop art
!STYLES = pop art, victorian, neopunk
!STYLES = random
!STYLES = random 4
!STYLES =
Note: Substrings are ok (eg: !STYLES = pop will match with a "pop art" style if it exists in your Auto1111 style catalog).
Allows you to specify a scaling factor to apply to your initial images in order to determine the final output size. For example, if your !WIDTH and !HEIGHT are both set to 1024, and you set !HIGHRES_SCALE_FACTOR = 1.5 , then the final output image size will be 1536x1536. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file, and you've set HIRES_FIX_MODE = advanced in your Dream Factory config.txt file.
!HIGHRES_SCALE_FACTOR = 1.25
Set to nothing to clear it (the default of 2.0 will be used if you set HIGHRES_FIX = yes in advanced mode without specifying your own HIGHRES_SCALE_FACTOR).
Allows you to specify an upscaler to use for during the highres fix portion of image generation. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_UPSCALER = ESRGAN_4x
Set to nothing to clear it ( Latent will be used as a default if you don't set anything here and use HIGHRES_FIX = yes ).
Allows you to specify a different model to use during the highres fix portion of image generation. Note that you can mix and match SDXL and SD 1.5 models here (eg do your initial generation with SDXL and then use a SD 1.5 model for the highres fix)! This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_CKPT_FILE = epicrealism
You may also use a comma-separated list of models. If you also use multiple models for your main model (!CKPT_FILE), then all possible combinations will be generated.
!HIGHRES_CKPT_FILE = epicrealism, deliberate, dreamshaper
Substring matches on model filenames are ok (hashes will work, too). Set to nothing to clear it ( Latent will be used as a default if you don't set anything here and use HIGHRES_FIX = yes ).
Not currently working; Auto1111 doesn't have an API setting for this yet! Allows you to specify a different VAE to use during the highres fix portion of image generation. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_VAE = vae-ft-mse-840000-ema-pruned
Substring matches on VAE filenames are ok. Set to nothing to clear it.
Allows you to specify a different sampler to use during the highres fix portion of image generation. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_SAMPLER = Euler a
Set to nothing to clear it (if you don't set anything here and use HIGHRES_FIX = yes , then the sampler that was used during the initial generation will be used).
Allows you to specify a different scheduler to use during the highres fix portion of image generation. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_SCHEDULER = Karras
Set to nothing or Automatic to clear it (if you don't set anything here and use HIGHRES_FIX = yes , then the sampler that was used during the initial generation will be used).
Allows you to specify a different number of steps during the highres fix portion of image generation. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_STEPS = 20
Set to nothing to clear it (if you don't set anything here and use HIGHRES_FIX = yes , then the step count that was used during the initial generation will be used).
Allows you to specify a different prompt during the highres fix portion of image generation. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_PROMPT = highly detailed
You may also set this to <remove loras> , which will use the main prompt with all LoRA/hypernet references removed. This is useful if you're using a SDXL main model & LoRA(s) and want to use a SD 1.5 model for your high-res fix (in which case the SDXL LoRAs wouldn't be compatible with the SD 1.5 model), Por ejemplo.
!HIGHRES_PROMPT = <remove loras>
Finally, you can use the special token within !HIGHRES_PROMPT to reference the original/main prompt. Useful if you want to add to the original prompt in some way.
!HIGHRES_PROMPT = <prompt>, highly detailed, 8k
Set to nothing to clear it (if you don't set anything here and use HIGHRES_FIX = yes , then the prompt that was used during the initial generation will be used).
Allows you to specify a different negative prompt during the highres fix portion of image generation. This has no effect unless !HIGHRES_FIX = yes is also set in your .prompts file.
!HIGHRES_NEG_PROMPT = ugly
You may also use the special token <neg_prompt> within !HIGHRES_NEG_PROMPT to reference the original/main negative prompt. Useful if you want to add to the original negative prompt in some way.
!HIGHRES_NEG_PROMPT = <neg_prompt>, illustration, drawing
Set to nothing to clear it (if you don't set anything here and use HIGHRES_FIX = yes , then the negative prompt that was used during the initial generation will be used).
Allows you to specify a refiner model to use.
!REFINER_CKPT_FILE = sd_xl_base_1.0_refiner
Substring matches on model filenames are ok (hashes will work, too). Set to nothing to clear it.
Allows you to specify when the refiner model should be switched to during image generation (0 - 1). For example, setting 0.50 here will perform the switch exactly halfway into generation.
!REFINER_SWITCH = 0.75
Set to nothing to clear it (if you don't set anything here but use !REFINER_CKPT_FILE , then 0.8 will be used as a default).
Allows you to control the ADetailer extension via Dream Factory directives. Note that you must have installed the ADetailer extension to use these!
!ADETAILER_USE = yes
!ADETAILER_MODEL = face_yolov8n.pt
The above commands are the minimum required to activate ADetailer. Note that there is currently no way to verify that the value provided to !ADETAILER_MODEL is valid via API calls, so if you supply an invalid model here, you'll see errors (you can see a list of your available models via your Auto1111 UI )!
Set !ADETAILER_USE to no to deactivate ADetailer.
In addition, the following optional directives allow for additional control:
# set these to use a specific checkpoint and/or vae during the ADetailer step
# substring matches are ok here
!ADETAILER_CKPT_FILE = deliberate
!ADETAILER_VAE = vae-ft-mse-840000-ema-pruned
# set these to use a specific prompt/negative prompt during the ADetailer step
# these will target only the area that ADetailer inpaints (e.g. faces, hands, etc)
!ADETAILER_PROMPT = detailed studio portrait of a middle-aged man
!ADETAILER_NEG_PROMPT = hands, cartoon, cgi, render, illustration, painting, drawing
# set these to override default ADetailer values
!ADETAILER_STRENGTH = 0.75
!ADETAILER_SCALE = 7.5
!ADETAILER_SAMPLER = Euler
!ADETAILER_CLIP_SKIP = 1
Note that you may use these ADetailer directives in either normal (!MODE = standard) or process (!MODE = process) .prompts files. The most efficient workflow is to probably generate initial images without ADetailer enabled, and then set up a process .prompts file to batch process a folder of selected images (eg to fix faces/hands/etc).
You can click 'Gallery' in the top nav from any page to see the images that Dream Factory has produced for you. By default, you'll be looking at the most recently-created 200 images (the max number of images to display can be changed in your config.txt file via the GALLERY_MAX_IMAGES setting). You can also select a specific output folder to browse via the dropdown near the top of the page.
When selecting a specific folder to browse, a zip icon will appear next to the folder name. Clicking this will download the entire folder of images as a .zip file.
Clicking any image will open an expanded view of that image, and also display the selected image's associated metadata. While viewing an image, there are several additional commands available - these are represented by icons located over the image. Mousing over each icon will bring up a help bubble explaining the how each works, along with the command's associated hotkey (eg: left and right arrow keys to browse images, 'del' to delete an image, etc.).
When deleting images via the hotkey (the 'del' key), note that the confirmation dialog is disabled to allow you to quickly delete large numbers of images (clicking the delete icon above the image will prompt you to confirm the deletion via an additional popup ). If you accidentally delete images that you meant to keep, you can recover them in your [dream factory]/server/temp folder before you shut Dream Factory down (this folder is cleaned out on every shutdown!).
While Dream Factory is not really intended to be used on mobile devices, you can swipe left and right when viewing images in the gallery to quickly browse. Swiping down while viewing an image will bring up the delete confirmation dialog. Swipe interactions have only been tested on Chrome for Android and aren't guaranteed to work properly on other mobile platforms.
Some usage scenarios for more advanced users can be found here.
Wildcard files are simple text files placed into your dream-factory/prompts/wildcards directory. You can reference these wildcards by using __[wildcard filename]__ (that's 2 underscores, followed by the wildcard filename without the .txt extension, followed by 2 more underscores) from within any of your prompt file [prompts] sections. When Dream Factory builds the final prompt, it'll replace the wildcard reference with a random line from the file.
You can press ctrl+h or click the help button when editing prompt files with the integrated editor to see a list of your available wildcards (click one to copy it to the clipboard for easy inclusion in your prompt files!).
An example colors.txt file is included. Specifying __colors__ in any of your prompts will pull in a random color.
Nested wildcards (references to wildcards within a wildcard file) are permitted (as of 2023-02-16).
Any custom models that you've placed in your Auto1111 models directory are available to use within Dream Factory via the !CKPT_FILE directive. For models that require a trigger word (for example, the Mo-Di model requires you to place the phrase 'modern disney style' somewhere in your prompt), you can have Dream Factory automatically insert these for you.
After each Dream Factory startup (after the first GPU is fully initialized), a model-triggers.txt file will be created/updated in your Dream Factory root folder. Each of your available models should show up in this file, followed by a comma. To associate a trigger phrase/token with a model, simply place it after the comma for that model's entry. For example, the following entry would associate 'modern disney style' with the model named 'moDi-v1-pruned.ckpt':
moDi-v1-pruned.ckpt [ccf3615f], modern disney style
You can control the placement of the auto-inserted trigger word with !AUTO_INSERT_MODEL_TRIGGER.
Note that if you have Civitai integration enabled, entries in your model-triggers.txt file will take precedence over trigger words scraped from Civitai.
If you've installed any textual inversion embeddings into your Auto1111 SD webui, you can reference them via the integrated prompt editor's built-in help.
Just press ctrl+h or click the help button when editing prompt files with the integrated editor to see a list of your available embeddings (click one to copy it to the clipboard for easy inclusion in your prompt files!).
(2023-03-13 Note: this should be considered WIP - the editor reference pages are pretty rough and there may be some bugs!)
If you've installed the Auto1111 ControlNet extension and have at least one of ControlNet pre-trained models installed, then ControlNet functionality should automatically be enabled within Dream Factory.
You can reference current ControlNet prompt file directives here.
Note that at minimum, you'll need to set both !CONTROLNET_INPUT_IMAGE and !CONTROLNET_MODEL in your prompt file to activate ControlNet.
If you have a library of ControlNet poses, you may place them into the poses directory located off your main Dream Factory folder. Pose image files may be organized into their own folders (no more than one level deep).
Optional: you may additionally create a previews sub-directory in each of these folders. Within the previews sub-folder, you may place a rendered image that corresponds to each pose file - these previews must be named the same as the pose file (though you may have different image formats; currently .jpg or .png will work). These previews will appear alongside the pose image files in the Dream Factory integrated prompt editor reference.
Check out the posesexamples Dream Factory folder for a couple examples of pose image files, and their corresponding preview files. You should be able to view these within the Dream Factory prompt file editor reference area (press control-H while editing any prompt file to open).
You can update Dream Factory to the latest version by typing:
python setup.py --update
Fixes for common issues may be found here.
Due to Automatic's lack of a clear license for his Automatic1111 repo, I've elected to not package Dream Factory with it's own version of the Automatic1111 SD webui. If Automatic makes significant changes to Automatic1111 in the future, it's possible that Dream Factory may stop working. I'll try to keep this updated with the hash to the latest known-working version of Automatic1111 in case issues arise.
You can grab a known-compatible version of Automatic1111's SD webui by going to your Auto1111 installation directory and typing this at the command-line:
git checkout 82a973c04367123ae98bd9abdf80d9eda9b910e2
If you get an error that the hash reference is not a tree, run git pull and try again.
If/when you want to go back to the latest version, you can just run git checkout master .
(updated 2024-07-27, previous supported hash: bef51aed032c0aaa5cfd80445bc4cf0d85b408b5)