Commit b5590008a2
Unsigned
Layout: unified · split
.DS_Store added
Binary file not shown.
notebooks/.DS_Store added
Binary file not shown.
notebooks/StableDiffusion.ipynb added +120
| @@ -0,0 +1,120 @@ | ||
| 1 | { | |
| 2 | "cells": [ | |
| 3 | { | |
| 4 | "cell_type": "markdown", | |
| 5 | "id": "1d22b3c2-c883-4947-aff6-0f23aa7b14e7", | |
| 6 | "metadata": {}, | |
| 7 | "source": [ | |
| 8 | "# Stable Diffusion\n", | |
| 9 | "\n", | |
| 10 | "Using a pre-trained text-to-image model." | |
| 11 | ] | |
| 12 | }, | |
| 13 | { | |
| 14 | "cell_type": "code", | |
| 15 | "execution_count": null, | |
| 16 | "id": "de9ec933-22dd-4018-ad17-67de41b5e3e5", | |
| 17 | "metadata": {}, | |
| 18 | "outputs": [], | |
| 19 | "source": [ | |
| 20 | "# pip3 install diffusers transformers accelerate scipy safetensors xformers" | |
| 21 | ] | |
| 22 | }, | |
| 23 | { | |
| 24 | "cell_type": "code", | |
| 25 | "execution_count": 7, | |
| 26 | "id": "9173c5b8-e9f1-44da-a9e0-2fe36214e602", | |
| 27 | "metadata": {}, | |
| 28 | "outputs": [], | |
| 29 | "source": [ | |
| 30 | "import torch\n", | |
| 31 | "from diffusers import StableDiffusionPipeline, DPMSolverMultistepScheduler\n", | |
| 32 | "import os" | |
| 33 | ] | |
| 34 | }, | |
| 35 | { | |
| 36 | "cell_type": "code", | |
| 37 | "execution_count": 2, | |
| 38 | "id": "645dcf47-fe61-4291-92a5-9abe7c762221", | |
| 39 | "metadata": {}, | |
| 40 | "outputs": [], | |
| 41 | "source": [ | |
| 42 | "model_id = \"stabilityai/stable-diffusion-2-1\"" | |
| 43 | ] | |
| 44 | }, | |
| 45 | { | |
| 46 | "cell_type": "code", | |
| 47 | "execution_count": 12, | |
| 48 | "id": "78581804-40dc-4453-9052-5f4d27bf84d4", | |
| 49 | "metadata": {}, | |
| 50 | "outputs": [ | |
| 51 | { | |
| 52 | "name": "stderr", | |
| 53 | "output_type": "stream", | |
| 54 | "text": [ | |
| 55 | "Loading pipeline components...: 100%|█████████████████████████████████████████████████████| 6/6 [00:00<00:00, 16.38it/s]\n" | |
| 56 | ] | |
| 57 | } | |
| 58 | ], | |
| 59 | "source": [ | |
| 60 | "# Use the DPMSolverMultistepScheduler (DPM-Solver++) scheduler here instead\n", | |
| 61 | "# Using float32 instead of float16+cuda to compute with CPU rather than GPU\n", | |
| 62 | "pipe = StableDiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.float32)\n", | |
| 63 | "pipe.scheduler = DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)\n", | |
| 64 | "# pipe = pipe.to(\"cuda\")" | |
| 65 | ] | |
| 66 | }, | |
| 67 | { | |
| 68 | "cell_type": "code", | |
| 69 | "execution_count": 13, | |
| 70 | "id": "9cadef32-3304-49f0-87c3-fac7caafab12", | |
| 71 | "metadata": {}, | |
| 72 | "outputs": [ | |
| 73 | { | |
| 74 | "name": "stderr", | |
| 75 | "output_type": "stream", | |
| 76 | "text": [ | |
| 77 | "100%|███████████████████████████████████████████████████████████████████████████████████| 50/50 [11:10<00:00, 13.41s/it]\n", | |
| 78 | "/opt/homebrew/lib/python3.11/site-packages/diffusers/image_processor.py:88: RuntimeWarning: invalid value encountered in cast\n", | |
| 79 | " images = (images * 255).round().astype(\"uint8\")\n" | |
| 80 | ] | |
| 81 | } | |
| 82 | ], | |
| 83 | "source": [ | |
| 84 | "prompt = \"a photo of a ninja crouched on a torii on a cliff above the sea\"\n", | |
| 85 | "image = pipe(prompt).images[0]" | |
| 86 | ] | |
| 87 | }, | |
| 88 | { | |
| 89 | "cell_type": "code", | |
| 90 | "execution_count": 15, | |
| 91 | "id": "02e99341-5467-46e8-869b-431fb4946864", | |
| 92 | "metadata": {}, | |
| 93 | "outputs": [], | |
| 94 | "source": [ | |
| 95 | "image.save(\"generated_image.png\")" | |
| 96 | ] | |
| 97 | } | |
| 98 | ], | |
| 99 | "metadata": { | |
| 100 | "kernelspec": { | |
| 101 | "display_name": "Python 3 (ipykernel)", | |
| 102 | "language": "python", | |
| 103 | "name": "python3" | |
| 104 | }, | |
| 105 | "language_info": { | |
| 106 | "codemirror_mode": { | |
| 107 | "name": "ipython", | |
| 108 | "version": 3 | |
| 109 | }, | |
| 110 | "file_extension": ".py", | |
| 111 | "mimetype": "text/x-python", | |
| 112 | "name": "python", | |
| 113 | "nbconvert_exporter": "python", | |
| 114 | "pygments_lexer": "ipython3", | |
| 115 | "version": "3.11.5" | |
| 116 | } | |
| 117 | }, | |
| 118 | "nbformat": 4, | |
| 119 | "nbformat_minor": 5 | |
| 120 | } | |