kanishka089 commited on
Commit
249488e
·
verified ·
1 Parent(s): 6bf3d14

Upload story.ipynb

Browse files
Files changed (1) hide show
  1. story.ipynb +270 -0
story.ipynb ADDED
@@ -0,0 +1,270 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "code",
5
+ "execution_count": 13,
6
+ "id": "1d67fde4",
7
+ "metadata": {
8
+ "collapsed": true
9
+ },
10
+ "outputs": [
11
+ {
12
+ "name": "stdout",
13
+ "output_type": "stream",
14
+ "text": [
15
+ "Defaulting to user installation because normal site-packages is not writeable\n",
16
+ "Requirement already satisfied: opencv-python in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (4.10.0.84)\n",
17
+ "Requirement already satisfied: transformers in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (4.44.0)\n",
18
+ "Requirement already satisfied: diffusers in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (0.30.0)\n",
19
+ "Requirement already satisfied: torch in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (2.4.0+cu124)\n",
20
+ "Requirement already satisfied: accelerate in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (0.33.0)\n",
21
+ "Requirement already satisfied: sentencepiece in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (0.2.0)\n",
22
+ "Requirement already satisfied: torchvision in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (0.19.0+cu124)\n",
23
+ "Requirement already satisfied: torchaudio in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (2.4.0+cu124)\n",
24
+ "Requirement already satisfied: peft in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (0.12.0)\n",
25
+ "Requirement already satisfied: pillow in c:\\programdata\\anaconda3\\lib\\site-packages (9.0.1)\n",
26
+ "Collecting pillow\n",
27
+ " Downloading pillow-10.4.0-cp39-cp39-win_amd64.whl (2.6 MB)\n",
28
+ "Requirement already satisfied: gradio in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (4.40.0)\n",
29
+ "Requirement already satisfied: numpy>=1.17.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from opencv-python) (1.26.4)\n",
30
+ "Requirement already satisfied: huggingface-hub<1.0,>=0.23.2 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from transformers) (0.24.5)\n",
31
+ "Requirement already satisfied: packaging>=20.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from transformers) (21.3)\n",
32
+ "Requirement already satisfied: regex!=2019.12.17 in c:\\programdata\\anaconda3\\lib\\site-packages (from transformers) (2022.3.15)\n",
33
+ "Requirement already satisfied: requests in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from transformers) (2.32.3)\n",
34
+ "Requirement already satisfied: safetensors>=0.4.1 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from transformers) (0.4.4)\n",
35
+ "Requirement already satisfied: tqdm>=4.27 in c:\\programdata\\anaconda3\\lib\\site-packages (from transformers) (4.64.0)\n",
36
+ "Requirement already satisfied: tokenizers<0.20,>=0.19 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from transformers) (0.19.1)\n",
37
+ "Requirement already satisfied: filelock in c:\\programdata\\anaconda3\\lib\\site-packages (from transformers) (3.6.0)\n",
38
+ "Requirement already satisfied: pyyaml>=5.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from transformers) (6.0)\n",
39
+ "Requirement already satisfied: importlib-metadata in c:\\programdata\\anaconda3\\lib\\site-packages (from diffusers) (4.11.3)\n",
40
+ "Requirement already satisfied: networkx in c:\\programdata\\anaconda3\\lib\\site-packages (from torch) (2.7.1)\n",
41
+ "Requirement already satisfied: jinja2 in c:\\programdata\\anaconda3\\lib\\site-packages (from torch) (2.11.3)\n",
42
+ "Requirement already satisfied: fsspec in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from torch) (2024.6.1)\n",
43
+ "Requirement already satisfied: typing-extensions>=4.8.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from torch) (4.12.2)\n",
44
+ "Requirement already satisfied: sympy in c:\\programdata\\anaconda3\\lib\\site-packages (from torch) (1.10.1)\n",
45
+ "Requirement already satisfied: psutil in c:\\programdata\\anaconda3\\lib\\site-packages (from accelerate) (5.8.0)\n",
46
+ "Requirement already satisfied: ruff>=0.2.2 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.5.6)\n",
47
+ "Requirement already satisfied: tomlkit==0.12.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.12.0)\n",
48
+ "Requirement already satisfied: aiofiles<24.0,>=22.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (23.2.1)\n",
49
+ "Requirement already satisfied: ffmpy in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.4.0)\n",
50
+ "Requirement already satisfied: typer<1.0,>=0.12 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.12.3)\n",
51
+ "Requirement already satisfied: pydantic>=2.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (2.8.2)\n",
52
+ "Requirement already satisfied: httpx>=0.24.1 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.27.0)\n",
53
+ "Requirement already satisfied: gradio-client==1.2.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (1.2.0)\n",
54
+ "Requirement already satisfied: anyio<5.0,>=3.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (3.5.0)\n",
55
+ "Requirement already satisfied: matplotlib~=3.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (3.5.1)\n",
56
+ "Requirement already satisfied: uvicorn>=0.14.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.30.5)\n",
57
+ "Requirement already satisfied: orjson~=3.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (3.10.6)\n",
58
+ "Requirement already satisfied: fastapi in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.112.0)\n",
59
+ "Requirement already satisfied: urllib3~=2.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (2.2.2)\n",
60
+ "Requirement already satisfied: importlib-resources<7.0,>=1.3 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (6.4.0)\n",
61
+ "Requirement already satisfied: pandas<3.0,>=1.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (1.4.2)\n",
62
+ "Requirement already satisfied: pydub in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.25.1)\n",
63
+ "Requirement already satisfied: semantic-version~=2.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (2.10.0)\n",
64
+ "Requirement already satisfied: python-multipart>=0.0.9 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.0.9)\n",
65
+ "Requirement already satisfied: markupsafe~=2.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (2.0.1)\n",
66
+ "Requirement already satisfied: websockets<13.0,>=10.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from gradio-client==1.2.0->gradio) (12.0)\n",
67
+ "Requirement already satisfied: sniffio>=1.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from anyio<5.0,>=3.0->gradio) (1.2.0)\n",
68
+ "Requirement already satisfied: idna>=2.8 in c:\\programdata\\anaconda3\\lib\\site-packages (from anyio<5.0,>=3.0->gradio) (3.3)\n",
69
+ "Requirement already satisfied: httpcore==1.* in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from httpx>=0.24.1->gradio) (1.0.5)\n",
70
+ "Requirement already satisfied: certifi in c:\\programdata\\anaconda3\\lib\\site-packages (from httpx>=0.24.1->gradio) (2021.10.8)\n",
71
+ "Requirement already satisfied: h11<0.15,>=0.13 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from httpcore==1.*->httpx>=0.24.1->gradio) (0.14.0)\n",
72
+ "Requirement already satisfied: zipp>=3.1.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from importlib-resources<7.0,>=1.3->gradio) (3.7.0)\n",
73
+ "Requirement already satisfied: python-dateutil>=2.7 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib~=3.0->gradio) (2.8.2)\n",
74
+ "Requirement already satisfied: fonttools>=4.22.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib~=3.0->gradio) (4.25.0)\n",
75
+ "Requirement already satisfied: cycler>=0.10 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib~=3.0->gradio) (0.11.0)\n",
76
+ "Requirement already satisfied: kiwisolver>=1.0.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib~=3.0->gradio) (1.3.2)\n",
77
+ "Requirement already satisfied: pyparsing>=2.2.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib~=3.0->gradio) (3.0.4)\n",
78
+ "Requirement already satisfied: pytz>=2020.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from pandas<3.0,>=1.0->gradio) (2021.3)\n",
79
+ "Requirement already satisfied: annotated-types>=0.4.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from pydantic>=2.0->gradio) (0.7.0)\n",
80
+ "Requirement already satisfied: pydantic-core==2.20.1 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from pydantic>=2.0->gradio) (2.20.1)\n",
81
+ "Requirement already satisfied: six>=1.5 in c:\\programdata\\anaconda3\\lib\\site-packages (from python-dateutil>=2.7->matplotlib~=3.0->gradio) (1.16.0)\n",
82
+ "Requirement already satisfied: colorama in c:\\programdata\\anaconda3\\lib\\site-packages (from tqdm>=4.27->transformers) (0.4.4)\n",
83
+ "Requirement already satisfied: rich>=10.11.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from typer<1.0,>=0.12->gradio) (13.7.1)\n",
84
+ "Requirement already satisfied: shellingham>=1.3.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from typer<1.0,>=0.12->gradio) (1.5.4)\n",
85
+ "Requirement already satisfied: click>=8.0.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from typer<1.0,>=0.12->gradio) (8.0.4)Note: you may need to restart the kernel to use updated packages.\n",
86
+ "Requirement already satisfied: markdown-it-py>=2.2.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from rich>=10.11.0->typer<1.0,>=0.12->gradio) (3.0.0)\n",
87
+ "\n"
88
+ ]
89
+ },
90
+ {
91
+ "name": "stdout",
92
+ "output_type": "stream",
93
+ "text": [
94
+ "Requirement already satisfied: pygments<3.0.0,>=2.13.0 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from rich>=10.11.0->typer<1.0,>=0.12->gradio) (2.18.0)\n",
95
+ "Requirement already satisfied: mdurl~=0.1 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->typer<1.0,>=0.12->gradio) (0.1.2)\n",
96
+ "Requirement already satisfied: starlette<0.38.0,>=0.37.2 in c:\\users\\msi\\appdata\\roaming\\python\\python39\\site-packages (from fastapi->gradio) (0.37.2)\n",
97
+ "Requirement already satisfied: charset-normalizer<4,>=2 in c:\\programdata\\anaconda3\\lib\\site-packages (from requests->transformers) (2.0.4)\n",
98
+ "Requirement already satisfied: mpmath>=0.19 in c:\\programdata\\anaconda3\\lib\\site-packages (from sympy->torch) (1.2.1)\n",
99
+ "Installing collected packages: pillow\n",
100
+ "Successfully installed pillow-10.4.0\n"
101
+ ]
102
+ }
103
+ ],
104
+ "source": [
105
+ "pip install --upgrade opencv-python transformers diffusers torch accelerate sentencepiece torch torchvision torchaudio peft pillow gradio"
106
+ ]
107
+ },
108
+ {
109
+ "cell_type": "code",
110
+ "execution_count": 20,
111
+ "id": "660228aa",
112
+ "metadata": {},
113
+ "outputs": [
114
+ {
115
+ "data": {
116
+ "application/vnd.jupyter.widget-view+json": {
117
+ "model_id": "df0bcf152c6748d9ae56e7c669d55ce8",
118
+ "version_major": 2,
119
+ "version_minor": 0
120
+ },
121
+ "text/plain": [
122
+ "Loading pipeline components...: 0%| | 0/6 [00:00<?, ?it/s]"
123
+ ]
124
+ },
125
+ "metadata": {},
126
+ "output_type": "display_data"
127
+ },
128
+ {
129
+ "name": "stderr",
130
+ "output_type": "stream",
131
+ "text": [
132
+ "C:\\Users\\MSI\\AppData\\Roaming\\Python\\Python39\\site-packages\\transformers\\models\\clip\\feature_extraction_clip.py:28: FutureWarning: The class CLIPFeatureExtractor is deprecated and will be removed in version 5 of Transformers. Please use CLIPImageProcessor instead.\n",
133
+ " warnings.warn(\n"
134
+ ]
135
+ },
136
+ {
137
+ "name": "stdout",
138
+ "output_type": "stream",
139
+ "text": [
140
+ "Running on local URL: http://127.0.0.1:7869\n",
141
+ "\n",
142
+ "To create a public link, set `share=True` in `launch()`.\n"
143
+ ]
144
+ },
145
+ {
146
+ "data": {
147
+ "text/html": [
148
+ "<div><iframe src=\"http://127.0.0.1:7869/\" width=\"100%\" height=\"500\" allow=\"autoplay; camera; microphone; clipboard-read; clipboard-write;\" frameborder=\"0\" allowfullscreen></iframe></div>"
149
+ ],
150
+ "text/plain": [
151
+ "<IPython.core.display.HTML object>"
152
+ ]
153
+ },
154
+ "metadata": {},
155
+ "output_type": "display_data"
156
+ },
157
+ {
158
+ "data": {
159
+ "text/plain": []
160
+ },
161
+ "execution_count": 20,
162
+ "metadata": {},
163
+ "output_type": "execute_result"
164
+ },
165
+ {
166
+ "data": {
167
+ "application/vnd.jupyter.widget-view+json": {
168
+ "model_id": "c88ef78e3fa84b969c50f0b18ca37be3",
169
+ "version_major": 2,
170
+ "version_minor": 0
171
+ },
172
+ "text/plain": [
173
+ " 0%| | 0/6 [00:00<?, ?it/s]"
174
+ ]
175
+ },
176
+ "metadata": {},
177
+ "output_type": "display_data"
178
+ }
179
+ ],
180
+ "source": [
181
+ "import torch\n",
182
+ "from diffusers import AnimateDiffPipeline, LCMScheduler, MotionAdapter\n",
183
+ "from diffusers.utils import export_to_gif\n",
184
+ "import os\n",
185
+ "import gc\n",
186
+ "import gradio as gr\n",
187
+ "\n",
188
+ "# Environment setup\n",
189
+ "os.environ['PYTORCH_CUDA_ALLOC_CONF'] = 'expandable_segments:True'\n",
190
+ "gc.collect()\n",
191
+ "torch.cuda.empty_cache()\n",
192
+ "gc.collect()\n",
193
+ "torch.cuda.empty_cache()\n",
194
+ "\n",
195
+ "# Load models and pipeline\n",
196
+ "adapter = MotionAdapter.from_pretrained(\"wangfuyun/AnimateLCM\", torch_dtype=torch.float16)\n",
197
+ "pipe = AnimateDiffPipeline.from_pretrained(\"emilianJR/epiCRealism\", motion_adapter=adapter, torch_dtype=torch.float16)\n",
198
+ "pipe.scheduler = LCMScheduler.from_config(pipe.scheduler.config, beta_schedule=\"linear\")\n",
199
+ "pipe.load_lora_weights(\"wangfuyun/AnimateLCM\", weight_name=\"AnimateLCM_sd15_t2v_lora.safetensors\", adapter_name=\"lcm-lora\")\n",
200
+ "pipe.set_adapters([\"lcm-lora\"], [0.8])\n",
201
+ "pipe.enable_vae_slicing()\n",
202
+ "pipe.enable_model_cpu_offload()\n",
203
+ "\n",
204
+ "# Hardcoded predefined prompts\n",
205
+ "predefined_prompts = [\n",
206
+ " \"640*480 pixels, high resolution, ultra realistic\",\n",
207
+ " \"bad quality, worse quality, low resolution\"\n",
208
+ "]\n",
209
+ "\n",
210
+ "def generate_gif(custom_prompt):\n",
211
+ " # Combine the predefined prompts with the custom prompt\n",
212
+ " prompt = custom_prompt + \", \" + predefined_prompts[0]\n",
213
+ " negative_prompt = predefined_prompts[1]\n",
214
+ " \n",
215
+ " output = pipe(\n",
216
+ " prompt=prompt,\n",
217
+ " negative_prompt=negative_prompt,\n",
218
+ " num_frames=32,\n",
219
+ " guidance_scale=2.0,\n",
220
+ " num_inference_steps=6,\n",
221
+ " generator=torch.Generator(\"cuda\").manual_seed(0),\n",
222
+ " )\n",
223
+ " frames = output.frames[0]\n",
224
+ " export_to_gif(frames, \"animatelcm.gif\")\n",
225
+ " return \"animatelcm.gif\"\n",
226
+ "\n",
227
+ "# Create Gradio interface\n",
228
+ "with gr.Blocks() as demo:\n",
229
+ " gr.Markdown(\"## Animate LCM GIF Generator\")\n",
230
+ " custom_prompt_input = gr.Textbox(label=\"Custom Prompt\", placeholder=\"Enter your custom prompt here...\")\n",
231
+ " output_gif = gr.Image(label=\"Generated GIF\")\n",
232
+ " generate_button = gr.Button(\"Generate GIF\")\n",
233
+ " \n",
234
+ " generate_button.click(fn=generate_gif, inputs=custom_prompt_input, outputs=output_gif)\n",
235
+ "\n",
236
+ "# Launch the interface\n",
237
+ "demo.launch()\n"
238
+ ]
239
+ },
240
+ {
241
+ "cell_type": "code",
242
+ "execution_count": null,
243
+ "id": "5d4339ee",
244
+ "metadata": {},
245
+ "outputs": [],
246
+ "source": []
247
+ }
248
+ ],
249
+ "metadata": {
250
+ "kernelspec": {
251
+ "display_name": "Python 3 (ipykernel)",
252
+ "language": "python",
253
+ "name": "python3"
254
+ },
255
+ "language_info": {
256
+ "codemirror_mode": {
257
+ "name": "ipython",
258
+ "version": 3
259
+ },
260
+ "file_extension": ".py",
261
+ "mimetype": "text/x-python",
262
+ "name": "python",
263
+ "nbconvert_exporter": "python",
264
+ "pygments_lexer": "ipython3",
265
+ "version": "3.9.12"
266
+ }
267
+ },
268
+ "nbformat": 4,
269
+ "nbformat_minor": 5
270
+ }