Directorio de artículos
1. Construcción del entorno
Para mayor comodidad, aquí seleccione directamente el sistema Ubuntu 22.04 provisto por Vultr con Anaconda instalado.
Si su propia computadora tiene suficiente memoria de video, también puede compilarla en su propia computadora, porque mi computadora solo tiene 2 GB de memoria de video y 8 GB de memoria de ejecución, por lo que no es suficiente, así que elijo construir en la nube.
Si además quieres construir rápido, también puedes optar por construir en la nube, aquí te recomiendo dos buenas plataformas de GPU que conozco, una es AutoDL y la otra Vultr . Entre ellos, AutoDL es doméstico, es relativamente barato y el mínimo conocido es 0.78/h, y hay muchas configuraciones opcionales. Por supuesto, también hay desventajas. La desventaja es que el puerto no se puede abrir. Aunque es un cuenta raíz, hay muchas restricciones. Vultr es un proveedor extranjero, su costo es relativamente alto, pero su ventaja es su alto grado de libertad.
Aquí hay una demostración usando Vultr.
1.1, selección de servidor GPU
Haga clic aquí para saltar a Vultr
Elegimos Cloud GPU, Nvidia A100 está seleccionada de forma predeterminada.
Entonces la ubicación predeterminada es suficiente, por supuesto, también puede elegir su ubicación favorita.
Entonces se recomienda elegir la imagen Anaconda o Miniconda para la imagen del servidor. Tenga cuidado de no elegir el sistema CentOS. Habrá muchos problemas ambientales al usar el sistema CentOS, y el sistema no se recomienda oficialmente aquí.
El siguiente paso es elegir el tamaño de la GPU, aquí elijo 8GB de memoria de video.
Finalmente, recuerde cancelar las copias de seguridad automáticas para reducir las deducciones innecesarias.
Finalmente, haga clic en Implementar ahora.
1.2 Configurar el entorno del servidor
Ejecute los siguientes dos comandos
apt-get update
apt-get upgrade
2. Código fuente y descarga del modelo
Crear un directorio para almacenar el código fuente
cd /opt
mkdir sd
cd sd
Clonar el código fuente al servidor
Haga clic aquí para saltar al código fuente
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
Descargue el modelo en la ubicación especificada, descárguelo en el directorio models/Stable difusion del código fuente de webui de difusión estable aquí.
Haga clic aquí para saltar a la descarga del modelo
Solo descárgalo aquí v1-5-pruned-emaonly.safetensors
.
cd /opt/sd/stable-diffusion-webui/models/Stable-diffusion
wget -c https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors
3. Instalar archivos de biblioteca dependientes
Crear un entorno virtual
cd /opt/sd/stable-diffusion-webui
conda create -n ChatGLM python=3.10
Activar el entorno virtual
conda activate ChatGLM
Instalamos bibliotecas dependientes en un entorno virtual.
Editado requirements.txt
, añadido al final xformers
.
vim requirements.txt
Ejecute el siguiente comando
pip install -r requirements_versions.txt
pip install -r requirements.txt
Puede haber errores informados durante la ejecución del comando anterior, simplemente ignórelo.
Modifique el archivo webui.sh, porque el usuario raíz no puede ejecutar de forma predeterminada, así que aquí lo modifico para permitir que el usuario raíz permita el script webui.sh.
vim webui.sh
antes de arreglar
can_run_as_root=0
después de la modificación
can_run_as_root=1
Por supuesto, si está ejecutando en un sistema que no es Linux, entonces no necesita modificar el archivo de script webui.sh.Si está ejecutando en un sistema Windows, se ejecuta el script webui.bat.
Instalarcuda-toolkit
conda install -c "nvidia/label/cuda-11.8.0" cuda-toolkit
python3 -m pip install nvidia-cudnn-cu11==8.7.0.84
mkdir -p $CONDA_PREFIX/etc/conda/activate.d
echo 'CUDNN_PATH=$(dirname $(python -c "import nvidia.cudnn;print(nvidia.cudnn.__file__)"))' >> $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/:$CUDNN_PATH/lib' >> $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
source $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh
4. Ejecutar el proyecto
Finalmente, podemos usar el siguiente comando para iniciar el proyecto. De manera predeterminada, el puerto 7860 se usa para iniciar con el siguiente comando, por lo que debe abrir el puerto 7860 con anticipación.
ufw allow 7860/tcp
./webui.sh --listen
También puede usar el siguiente comando para iniciar el proyecto.
./webui.sh --share
A través del método anterior, se le devolverá automáticamente un nombre de dominio, que se puede copiar y acceder directamente en el navegador.
5. Videotutorial
Si desea ver el video, puede hacer clic aquí .