Pintura AI, estilo de pintura al óleo de estilo nacional personalizado ~ Uso del modelo de difusión estable, comience en tres pasos

prefacio

Recientemente, AIGC (es decir, contenido generado por IA , que se refiere al uso de tecnología de inteligencia artificial para generar contenido) realmente ha explotado en el cielo. Además de chatGPT , que ha sido exprimido a plena carga del servidor , otro campo que ha llamado mucho la atención es sin duda la pintura de IA . Usando una clase de código abierto de modelos de "difusión " , puede pintar con IA en cualquier momento. Además del proceso común de registrarse en la versión web -> ingresar texto -> llamar API -> esperar a que se genere la pintura -> captura de pantalla o descargar y guardar, por supuesto, como un desarrollador que no quiere ser restringido , Creo que debe haber amigos que quieran guardarlo en sus propias computadoras , Creación sin obstáculos. Luego, siga nuestros tres sencillos pasos a continuación para ver cómo puede crear fácil y rápidamente un entorno para ejecutar la canalización del modelo Stable Diffusion en su propia computadora, y deje que AI lo ayude a dibujar como desee.


1. OpenVINO ™ optimiza y acelera el despliegue de inferencia de difusión estable

Dado que la canalización del modelo de Stable Diffusion contiene varios modelos de aprendizaje profundo de gran tamaño, tiene ciertos requisitos de recursos informáticos de hardware para ejecutar el razonamiento. Aquí usamos OpenVINO para convertir el modelo de difusión estable en el formato PyTorch original, a fin de optimizar la canalización del modelo y acelerar la inferencia.

¿Cómo hacerlo? Abrimos todos los códigos en el repositorio de OpenVINO Notebooks . Para obtener más detalles, consulte ( openvino_notebooks/notebooks/225-stable-diffusion-text-to-image en openvinotoolkit/openvino_notebooks principal GitHub ). En este ejemplo de código, tomamos el modelo de difusión estable y lo convertimos al formato de representación intermedia (IR) de OpenVINO para que pueda ejecutarse de manera eficiente en las GPU Intel® . Además, al comprimir el modelo FP32 a FP16 , reducimos el tamaño del modelo a la mitad (casi a la mitad), y ahora requiere mucha menos RAM/VRAM para funcionar. Lo que es más importante, debido a la adición de Intel® Xe Matrix Extensions ( XMX ), la velocidad de procesamiento de la GPU también se ha mejorado significativamente.

Estos son algunos resultados interesantes que obtuve al ejecutar este portátil . Con los gráficos discretos Intel Sharp ™ A770m , puedo lograr alrededor de 6,0 iteraciones por segundo (sin usar el modo de depuración). Esto significa que, por lo general, lleva menos de 10 segundos generar una de las imágenes de alta calidad a continuación.

 

2. Pasos de instalación

Si necesita instalar OpenVINO Notebooks , puede consultar los pasos de instalación detallados aquí (para Windows ): Windows · openvinotoolkit/openvino_notebooks Wiki · GitHub

Si es usuario de Linux , puede hacer clic en este enlace: https://github.com/openvinotoolkit/openvino_notebooks/wiki/Ubuntu

1. Instale Python 3.10.x. ( y Git, C++ Redistributable (si usa Python 3.8) ) y cree un entorno virtual

python3 -m venv openvino_env
openvino_env\Scripts\activate

2. Implementar el clon de Git para el directorio

git clone --depth=1 https://github.com/openvinotoolkit/openvino_notebooks.git
cd openvino_notebooks

3. Instalar todas las bibliotecas y dependencias

python -m pip install --upgrade pip wheel setuptools
pip install -r requirements.txt

3. Ejecute Notebook y realice pintura AI

Cargue todos los cuadernos con el siguiente comando:

jupyter lab notebooks

En la carpeta 225-stable-diffusion-text-to-image, puede encontrar el ejemplo de código de Notebook para pintar con IA:

Ejecutar todas las celdas:

Espere un momento para ver las pinturas generadas por IA ~

Echa un vistazo a mis pinturas generadas.

4. Consejos para correr y ampliar a más modelos

Mirando el código en Notebook, en realidad optimizamos la canalización de PyTorch y usamos OpenVINO para ejecutar el código para acelerar el razonamiento y la generación de dibujos.

1. Descargue el modelo OpenVINO IR directamente:

La primera descarga del modelo Stable Diffusion PyTorch y la conversión pueden tardar un poco. Una vez completado, obtendrá un conjunto de archivos modelo en formato OpenVINO IR . Para mayor comodidad, hemos actualizado estos modelos de optimización preentrenados a huggingface ( https://huggingface.co/bes-dev/stable-diffusion-v1-4-openvino ), y puede descargarlos y usarlos directamente.

2. Seleccione el dispositivo para ejecutar la inferencia:

OpenVINO puede ayudar fácilmente a los desarrolladores a implementar modelos en diferentes plataformas de hardware para ejecutar la inferencia. Ahora, si su dispositivo tiene una tarjeta gráfica discreta Intel Sharp además de la CPU, puede cambiar el código del nombre del dispositivo en la figura a continuación a "GPU" . De forma predeterminada, utiliza " AUTO " y cambiará automáticamente a la GPU detectada .

 déjalo correr en la GPU

Complemento automático. Primero usa la CPU, luego cambia automáticamente a la GPU. 

3. Ajuste el número total de pasos para generar la pintura y mejore el indicador de texto de entrada:

En este paso, configuré el paso en 30 . Idealmente, usaría 50 , que da los mejores resultados.

Al modificar el texto de entrada, puede generar diferentes escenarios aquí. Para obtener imágenes realmente geniales, puede probar algunos consejos útiles elaborados por la comunidad. Las más de 100 mejores indicaciones de difusión estable: las más hermosas indicaciones de texto a imagen de IA | Publicación de Metaverse

 4. Use la versión china del modelo para realizar la pintura de estilo nacional:

Además del modelo Stable Diffusion que se muestra en Notebook, el ejemplo de código de Notebook anterior se puede extender fácilmente a más modelos después de unas pocas líneas de modificación de código, como la versión china del modelo Stable Diffusion "Taiyi" IDEA-CCNL/Taiyi - Estable- Difusión-1B-Anime-Chino-v0.1 Cara abrazada

Cambie el nombre del modelo preentrenado aquí a "IDEA-CCNL/Taiyi-Stable-Diffusion-1B-Anime-Chinese-v0.1"

Y modifique el tokenizador aquí en consecuencia.

cambie a 

from transformers import BertTokenizer
tokenizer = BertTokenizer.from_pretrained("IDEA-CCNL/Taiyi-Stable-Diffusion-1B-Chinese-v0.1")

Luego ingrese algunas palabras de indicación en chino, y puede crear la pintura de estilo nacional


Resumir

Por el momento, si desea comprender cómo funciona la " difusión estable " y cómo la acelera el hardware de Intel, OpenVINO Notebooks es sin duda la primera opción. Si tiene alguna pregunta o desea mostrar algunos de sus mejores trabajos, deje un comentario aquí o a través de nuestro foro de discusión de GitHub .

openvinotoolkit/openvino_notebooks · Discusiones · GitHub · GitHub

Supongo que te gusta

Origin blog.csdn.net/m0_59448707/article/details/129420307
Recomendado
Clasificación