
Véalo en acción: https://tinybots.net/artbot
ArtBot es un cliente web front-end no oficial diseñado para interactuar con el clúster distribuido de la horda estable, un grupo de GPU que ejecutan difusión estable cuyo tiempo de procesamiento ha sido amablemente donado por una comunidad entusiasta de voluntarios.
ArtBot se construye usando Next.js 13 y TypeScript. Se creó como un proyecto paralelo para experimentar con varias tecnologías del lado del cliente, como IndexedDB y LocalStoray API. Estas API le permiten almacenar de forma segura y de forma segura las imágenes generadas por IA que ha creado con el clúster dentro de su propio navegador.
Los componentes de la interfaz de usuario se construyen a medida utilizando una combinación de componentes de estilo y CSS de viento de cola, con esfuerzos más recientes centrados estrictamente en el uso de CSS de viento de cola. El objetivo a largo plazo es eliminar completamente los componentes de estilo de la base del código.
ArtBot hace uso de iconos de Tabler.
>= 18.0.0>= 9.0.0La mayoría de estos pasos deben ser aplicables a los entornos de Linux / MacOS / Windows.
La instalación de varias versiones de Node.js en su máquina puede ser complicado. Soy un gran fanático de NVM, que le permite ejecutar múltiples versiones aisladas de Node.js en su máquina con facilidad.
Usando nvm , puede instalar un nodo como este:
> nvm install v18.16.0
> nvm alias default nodeUna vez que tenga su configuración de entorno Node.js, puede clonar este repositorio e instalar los paquetes requeridos. Dependiendo de las especificaciones de su máquina y la velocidad de su conexión a Internet, la instalación de todos los paquetes puede tomar uno o dos minutos.
> git clone https://github.com/daveschumaker/artbot-for-stable-diffusion
> cd artbot-for-stable-diffusion
> npm install Se ejecutará automáticamente un script postinstall que crea un archivo .env en blanco en la raíz de la carpeta del proyecto. No necesita agregarle nada, pero su presencia es requerida por el paquete dotenv .
Si bien no es necesario, la base de código hace referencia a algunas variables ambientales en varios lugares. Estos son generalmente puntos finales para mensajes, servicios de telemetría que ejecuto o el almacenamiento de datos locales relacionados con los recuentos de modelos y los totales de generación de imágenes.
IMPORTANTE: Intentar ejecutar la aplicación de esta manera en una máquina de Windows no funcionará. Esto se debe a la aprobación de las variables de entorno a la aplicación web con los scripts npm . Consulte la sección de solución de problemas para obtener más información.
Muy bien, ¡ahora deberías poder ejecutar la aplicación web ArtBot! Para ejecutarse en modo de desarrollo (que utiliza la función de recarga en caliente de NextJS, donde puede ver las actualizaciones en vivo en el sitio a medida que realiza cambios)
> npm run dev Luego, abra su navegador y visite http://localhost:3000 , ahora debería poder hacer solicitudes de imagen de inmediato a la horda estable. Dirígete a http://localhost:3000/artbot/settings e ingresa tu tecla API de Horde estable para tiempos de generación más rápidos.
Si desea ejecutar esto en un tipo de entorno de producción, primero deberá iniciar una compilación y luego ejecutar, ya que normalmente ejecutaría una aplicación Node.js.
> npm run build
> npm run startEn TinyBots, mi servidor web para alojar ArtBot, uso PM2 para persistir la aplicación y reiniciar automáticamente después de los bloqueos o reinicios. Puede modificar la configuración relacionada con PM2 dentro de Ecosystem.config.js.
Además, puede comenzar y detener PM2 usando:
> npm run pm2:start-prod
> npm run pm2:stop-prod Como se mencionó anteriormente, intentar usar npm run dev o npm run start dentro de un entorno de Windows dará como resultado un error. Una posible solución a esto es eliminar la variable de entorno. En el caso de npm run dev , eso se vería así.
package.jsonscripts/dev para eliminar PORT=3000 del script: > npm run update:build-id && node server.jspackage.json e intente ejecutar nuevamente: > npm run devPara otros temas no mencionados aquí, no dude en abrir un nuevo problema en GitHub o visitar el canal de retroalimentación de ArtBot en el servidor estable Horde Discord.
¡Las contribuciones son muy bienvenidas! Las pautas generales son las siguientes:
> git checkout -b my-cool-new-featureAvísame si tienes alguna pregunta. Estoy más que feliz de ayudar.
Ver licencia.md