File size: 84,358 Bytes
35be55f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "5138e64f",
   "metadata": {},
   "outputs": [],
   "source": [
    "!pip install -Uqq fastai"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "9f056c8e",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Defaulting to user installation because normal site-packages is not writeable\n",
      "Requirement already satisfied: gradio in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (3.32.0)\n",
      "Requirement already satisfied: markupsafe in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (2.0.1)\n",
      "Requirement already satisfied: pygments>=2.12.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (2.15.1)\n",
      "Requirement already satisfied: aiofiles in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (23.1.0)\n",
      "Requirement already satisfied: matplotlib in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (3.5.2)\n",
      "Requirement already satisfied: aiohttp in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (3.8.4)\n",
      "Requirement already satisfied: httpx in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.24.1)\n",
      "Requirement already satisfied: ffmpy in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.3.0)\n",
      "Requirement already satisfied: pandas in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (1.4.4)\n",
      "Requirement already satisfied: pillow in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (9.2.0)\n",
      "Requirement already satisfied: uvicorn>=0.14.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.22.0)\n",
      "Requirement already satisfied: semantic-version in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (2.10.0)\n",
      "Requirement already satisfied: pydub in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.25.1)\n",
      "Requirement already satisfied: numpy in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (1.21.5)\n",
      "Requirement already satisfied: jinja2 in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (2.11.3)\n",
      "Requirement already satisfied: requests in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (2.28.1)\n",
      "Requirement already satisfied: pyyaml in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (6.0)\n",
      "Requirement already satisfied: altair>=4.2.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (5.0.1)\n",
      "Requirement already satisfied: typing-extensions in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio) (4.3.0)\n",
      "Requirement already satisfied: orjson in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (3.8.14)\n",
      "Requirement already satisfied: huggingface-hub>=0.13.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.14.1)\n",
      "Requirement already satisfied: markdown-it-py[linkify]>=2.0.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (2.2.0)\n",
      "Requirement already satisfied: fastapi in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.95.2)\n",
      "Requirement already satisfied: websockets>=10.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (11.0.3)\n",
      "Requirement already satisfied: gradio-client>=0.2.4 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.2.5)\n",
      "Requirement already satisfied: mdit-py-plugins<=0.3.3 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.3.3)\n",
      "Requirement already satisfied: pydantic in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (1.10.8)\n",
      "Requirement already satisfied: python-multipart in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from gradio) (0.0.6)\n",
      "Requirement already satisfied: jsonschema>=3.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from altair>=4.2.0->gradio) (4.16.0)\n",
      "Requirement already satisfied: toolz in c:\\programdata\\anaconda3\\lib\\site-packages (from altair>=4.2.0->gradio) (0.11.2)\n",
      "Requirement already satisfied: fsspec in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio-client>=0.2.4->gradio) (2022.7.1)\n",
      "Requirement already satisfied: packaging in c:\\programdata\\anaconda3\\lib\\site-packages (from gradio-client>=0.2.4->gradio) (21.3)\n",
      "Requirement already satisfied: tqdm>=4.42.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from huggingface-hub>=0.13.0->gradio) (4.64.1)\n",
      "Requirement already satisfied: filelock in c:\\programdata\\anaconda3\\lib\\site-packages (from huggingface-hub>=0.13.0->gradio) (3.6.0)\n",
      "Requirement already satisfied: mdurl~=0.1 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from markdown-it-py[linkify]>=2.0.0->gradio) (0.1.2)\n",
      "Requirement already satisfied: linkify-it-py<3,>=1 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from markdown-it-py[linkify]>=2.0.0->gradio) (2.0.2)\n",
      "Requirement already satisfied: pytz>=2020.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from pandas->gradio) (2022.1)\n",
      "Requirement already satisfied: python-dateutil>=2.8.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from pandas->gradio) (2.8.2)\n",
      "Requirement already satisfied: h11>=0.8 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from uvicorn>=0.14.0->gradio) (0.14.0)\n",
      "Requirement already satisfied: click>=7.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from uvicorn>=0.14.0->gradio) (8.0.4)\n",
      "Requirement already satisfied: yarl<2.0,>=1.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from aiohttp->gradio) (1.9.2)\n",
      "Requirement already satisfied: multidict<7.0,>=4.5 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from aiohttp->gradio) (6.0.4)\n",
      "Requirement already satisfied: aiosignal>=1.1.2 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from aiohttp->gradio) (1.3.1)\n",
      "Requirement already satisfied: charset-normalizer<4.0,>=2.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from aiohttp->gradio) (2.0.4)\n",
      "Requirement already satisfied: frozenlist>=1.1.1 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from aiohttp->gradio) (1.3.3)\n",
      "Requirement already satisfied: attrs>=17.3.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from aiohttp->gradio) (21.4.0)\n",
      "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from aiohttp->gradio) (4.0.2)\n",
      "Requirement already satisfied: starlette<0.28.0,>=0.27.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from fastapi->gradio) (0.27.0)\n",
      "Requirement already satisfied: idna in c:\\programdata\\anaconda3\\lib\\site-packages (from httpx->gradio) (3.3)\n",
      "Requirement already satisfied: sniffio in c:\\programdata\\anaconda3\\lib\\site-packages (from httpx->gradio) (1.2.0)\n",
      "Requirement already satisfied: httpcore<0.18.0,>=0.15.0 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from httpx->gradio) (0.17.2)\n",
      "Requirement already satisfied: certifi in c:\\programdata\\anaconda3\\lib\\site-packages (from httpx->gradio) (2022.9.14)\n",
      "Requirement already satisfied: pyparsing>=2.2.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib->gradio) (3.0.9)\n",
      "Requirement already satisfied: cycler>=0.10 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib->gradio) (0.11.0)\n",
      "Requirement already satisfied: kiwisolver>=1.0.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib->gradio) (1.4.2)\n",
      "Requirement already satisfied: fonttools>=4.22.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from matplotlib->gradio) (4.25.0)\n",
      "Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\\programdata\\anaconda3\\lib\\site-packages (from requests->gradio) (1.26.11)\n",
      "Requirement already satisfied: colorama in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from click>=7.0->uvicorn>=0.14.0->gradio) (0.4.6)\n",
      "Requirement already satisfied: anyio<5.0,>=3.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from httpcore<0.18.0,>=0.15.0->httpx->gradio) (3.5.0)\n",
      "Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from jsonschema>=3.0->altair>=4.2.0->gradio) (0.18.0)\n",
      "Requirement already satisfied: uc-micro-py in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from linkify-it-py<3,>=1->markdown-it-py[linkify]>=2.0.0->gradio) (1.0.2)\n",
      "Requirement already satisfied: six>=1.5 in c:\\programdata\\anaconda3\\lib\\site-packages (from python-dateutil>=2.8.1->pandas->gradio) (1.16.0)\n"
     ]
    }
   ],
   "source": [
    "!pip install gradio\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "81dba51c",
   "metadata": {},
   "outputs": [],
   "source": [
    "from fastai.vision.all import *\n",
    "import gradio as gr\n",
    "\n",
    "def is_cat(x): return x[0].issupper()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "847134ad",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "PILImage mode=RGB size=131x192"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "im = PILImage.create('dog.jpg')\n",
    "im.thumbnail((192,192))\n",
    "im"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "17d076bb",
   "metadata": {},
   "outputs": [],
   "source": [
    "import pathlib\n",
    "plt = platform.system()\n",
    "if plt == 'Windows': pathlib.PosixPath = pathlib.WindowsPath"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "c3d41956",
   "metadata": {},
   "outputs": [
    {
     "ename": "NameError",
     "evalue": "name 'p' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[1;32m~\\AppData\\Local\\Temp\\ipykernel_11688\\626125819.py\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mp\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[1;31mNameError\u001b[0m: name 'p' is not defined"
     ]
    }
   ],
   "source": [
    "p"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "05ff52d8",
   "metadata": {},
   "outputs": [],
   "source": [
    "p.exists"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "05cc5a19",
   "metadata": {},
   "outputs": [],
   "source": [
    "learn = load_learner('model.pkl')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "518684d7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Wall time: 94.8 ms\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "('False', tensor(0), tensor([9.9991e-01, 8.8685e-05]))"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "%time learn.predict(im)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "3aec036a",
   "metadata": {},
   "outputs": [],
   "source": [
    "categories = ('Dog.jpg','Cat.jpg')\n",
    "\n",
    "def classify_image(img):\n",
    "    pred,idx,probs = learn.predict(img)\n",
    "    return dict(zip(categories,map(float,probs)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "a1516283",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "<style>\n",
       "    /* Turns off some styling */\n",
       "    progress {\n",
       "        /* gets rid of default border in Firefox and Opera. */\n",
       "        border: none;\n",
       "        /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
       "        background-size: auto;\n",
       "    }\n",
       "    progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
       "        background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
       "    }\n",
       "    .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
       "        background: #F44336;\n",
       "    }\n",
       "</style>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "{'Dog.jpg': 0.9999113082885742, 'Cat.jpg': 8.868493750924245e-05}"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "classify_image(im)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "375a1f14",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\ASUS\\AppData\\Roaming\\Python\\Python39\\site-packages\\gradio\\inputs.py:259: UserWarning: Usage of gradio.inputs is deprecated, and will not be supported in the future, please import your component from gradio.components\n",
      "  warnings.warn(\n",
      "C:\\Users\\ASUS\\AppData\\Roaming\\Python\\Python39\\site-packages\\gradio\\inputs.py:262: UserWarning: `optional` parameter is deprecated, and it has no effect\n",
      "  super().__init__(\n",
      "C:\\Users\\ASUS\\AppData\\Roaming\\Python\\Python39\\site-packages\\gradio\\outputs.py:197: UserWarning: Usage of gradio.outputs is deprecated, and will not be supported in the future, please import your components from gradio.components\n",
      "  warnings.warn(\n",
      "C:\\Users\\ASUS\\AppData\\Roaming\\Python\\Python39\\site-packages\\gradio\\outputs.py:200: UserWarning: The 'type' parameter has been deprecated. Use the Number component instead.\n",
      "  super().__init__(num_top_classes=num_top_classes, type=type, label=label)\n",
      "C:\\Users\\ASUS\\AppData\\Local\\Temp\\ipykernel_11688\\2514128255.py:5: UserWarning: You have unused kwarg parameters in Interface, please remove them: {'exampless': ['dog.jpg', 'cat.jpg', 'dunno.jpg']}\n",
      "  intf = gr.Interface(fn=classify_image , inputs=image , outputs=label , exampless = examples)\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Running on local URL:  http://127.0.0.1:7860\n",
      "\n",
      "To create a public link, set `share=True` in `launch()`.\n"
     ]
    },
    {
     "data": {
      "text/plain": []
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "image = gr.inputs.Image(shape=(192,192))\n",
    "label = gr.outputs.Label()\n",
    "examples = ['dog.jpg','cat.jpg','dunno.jpg']\n",
    "\n",
    "intf = gr.Interface(fn=classify_image , inputs=image , outputs=label , exampless = examples)\n",
    "intf.launch(inline = False)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "7e8831c6",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Defaulting to user installation because normal site-packages is not writeable\n",
      "Requirement already satisfied: nbdev in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (2.3.12)\n",
      "Requirement already satisfied: ghapi>=1.0.3 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (1.0.3)\n",
      "Requirement already satisfied: fastcore>=1.5.27 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (1.5.29)\n",
      "Requirement already satisfied: asttokens in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (2.2.1)\n",
      "Requirement already satisfied: PyYAML in c:\\programdata\\anaconda3\\lib\\site-packages (from nbdev) (6.0)\n",
      "Requirement already satisfied: astunparse in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (1.6.3)\n",
      "Requirement already satisfied: watchdog in c:\\programdata\\anaconda3\\lib\\site-packages (from nbdev) (2.1.6)\n",
      "Requirement already satisfied: execnb>=0.1.4 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (0.1.5)\n",
      "Requirement already satisfied: ipython in c:\\programdata\\anaconda3\\lib\\site-packages (from execnb>=0.1.4->nbdev) (7.31.1)\n",
      "Requirement already satisfied: pip in c:\\programdata\\anaconda3\\lib\\site-packages (from fastcore>=1.5.27->nbdev) (22.2.2)\n",
      "Requirement already satisfied: packaging in c:\\programdata\\anaconda3\\lib\\site-packages (from fastcore>=1.5.27->nbdev) (21.3)\n",
      "Requirement already satisfied: six in c:\\programdata\\anaconda3\\lib\\site-packages (from asttokens->nbdev) (1.16.0)\n",
      "Requirement already satisfied: wheel<1.0,>=0.23.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from astunparse->nbdev) (0.37.1)\n",
      "Requirement already satisfied: setuptools>=18.5 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (63.4.1)\n",
      "Requirement already satisfied: matplotlib-inline in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.1.6)\n",
      "Requirement already satisfied: jedi>=0.16 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.18.1)\n",
      "Requirement already satisfied: pygments in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from ipython->execnb>=0.1.4->nbdev) (2.15.1)\n",
      "Requirement already satisfied: decorator in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (5.1.1)\n",
      "Requirement already satisfied: backcall in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.2.0)\n",
      "Requirement already satisfied: colorama in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.4.6)\n",
      "Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (3.0.20)\n",
      "Requirement already satisfied: traitlets>=4.2 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (5.1.1)\n",
      "Requirement already satisfied: pickleshare in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.7.5)\n",
      "Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in c:\\programdata\\anaconda3\\lib\\site-packages (from packaging->fastcore>=1.5.27->nbdev) (3.0.9)\n",
      "Requirement already satisfied: parso<0.9.0,>=0.8.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from jedi>=0.16->ipython->execnb>=0.1.4->nbdev) (0.8.3)\n",
      "Requirement already satisfied: wcwidth in c:\\programdata\\anaconda3\\lib\\site-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython->execnb>=0.1.4->nbdev) (0.2.5)\n"
     ]
    }
   ],
   "source": [
    "!pip install nbdev\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "8528fe7c",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Defaulting to user installation because normal site-packages is not writeable\n",
      "Requirement already satisfied: nbdev in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (2.3.12)\n",
      "Requirement already satisfied: PyYAML in c:\\programdata\\anaconda3\\lib\\site-packages (from nbdev) (6.0)\n",
      "Requirement already satisfied: watchdog in c:\\programdata\\anaconda3\\lib\\site-packages (from nbdev) (2.1.6)\n",
      "Requirement already satisfied: ghapi>=1.0.3 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (1.0.3)\n",
      "Requirement already satisfied: astunparse in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (1.6.3)\n",
      "Requirement already satisfied: asttokens in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (2.2.1)\n",
      "Requirement already satisfied: execnb>=0.1.4 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (0.1.5)\n",
      "Requirement already satisfied: fastcore>=1.5.27 in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from nbdev) (1.5.29)\n",
      "Requirement already satisfied: ipython in c:\\programdata\\anaconda3\\lib\\site-packages (from execnb>=0.1.4->nbdev) (7.31.1)\n",
      "Requirement already satisfied: packaging in c:\\programdata\\anaconda3\\lib\\site-packages (from fastcore>=1.5.27->nbdev) (21.3)\n",
      "Requirement already satisfied: pip in c:\\programdata\\anaconda3\\lib\\site-packages (from fastcore>=1.5.27->nbdev) (22.2.2)\n",
      "Requirement already satisfied: six in c:\\programdata\\anaconda3\\lib\\site-packages (from asttokens->nbdev) (1.16.0)\n",
      "Requirement already satisfied: wheel<1.0,>=0.23.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from astunparse->nbdev) (0.37.1)\n",
      "Requirement already satisfied: pygments in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from ipython->execnb>=0.1.4->nbdev) (2.15.1)\n",
      "Requirement already satisfied: pickleshare in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.7.5)\n",
      "Requirement already satisfied: colorama in c:\\users\\asus\\appdata\\roaming\\python\\python39\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.4.6)\n",
      "Requirement already satisfied: traitlets>=4.2 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (5.1.1)\n",
      "Requirement already satisfied: matplotlib-inline in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.1.6)\n",
      "Requirement already satisfied: backcall in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.2.0)\n",
      "Requirement already satisfied: setuptools>=18.5 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (63.4.1)\n",
      "Requirement already satisfied: decorator in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (5.1.1)\n",
      "Requirement already satisfied: jedi>=0.16 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (0.18.1)\n",
      "Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from ipython->execnb>=0.1.4->nbdev) (3.0.20)\n",
      "Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in c:\\programdata\\anaconda3\\lib\\site-packages (from packaging->fastcore>=1.5.27->nbdev) (3.0.9)\n",
      "Requirement already satisfied: parso<0.9.0,>=0.8.0 in c:\\programdata\\anaconda3\\lib\\site-packages (from jedi>=0.16->ipython->execnb>=0.1.4->nbdev) (0.8.3)\n",
      "Requirement already satisfied: wcwidth in c:\\programdata\\anaconda3\\lib\\site-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython->execnb>=0.1.4->nbdev) (0.2.5)\n",
      "Note: you may need to restart the kernel to use updated packages.\n"
     ]
    }
   ],
   "source": [
    "pip install --upgrade nbdev"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "dbccb112",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Export successful\n"
     ]
    }
   ],
   "source": [
    "import nbdev\n",
    "nbdev.export.nb_export('app.ipynb', 'app')\n",
    "print('Export successful')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "fadde42d",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}