Benedict Thekkel commited on
Commit
d67ffd8
·
1 Parent(s): 21bb048

Inital commit

Browse files
Files changed (4) hide show
  1. app.ipynb +342 -0
  2. app.py +33 -0
  3. grizzly.jpg +0 -0
  4. requirements.txt +1 -0
app.ipynb ADDED
@@ -0,0 +1,342 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "code",
5
+ "execution_count": null,
6
+ "id": "2c1a0cda-918c-4bcb-abb1-3afeb823add8",
7
+ "metadata": {},
8
+ "outputs": [],
9
+ "source": [
10
+ "#| default_exp app"
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "id": "baaff5aa-0845-4184-90de-533fec9fc366",
17
+ "metadata": {},
18
+ "outputs": [],
19
+ "source": [
20
+ "#|export\n",
21
+ "from fastai.vision.all import *\n",
22
+ "import gradio as gr"
23
+ ]
24
+ },
25
+ {
26
+ "cell_type": "code",
27
+ "execution_count": null,
28
+ "id": "0bfbf2a5-a46a-4a47-b982-4e36d8418c0c",
29
+ "metadata": {},
30
+ "outputs": [],
31
+ "source": [
32
+ "#def greet(name):\n",
33
+ "# return \"Hello \" + name + \"!!\""
34
+ ]
35
+ },
36
+ {
37
+ "cell_type": "code",
38
+ "execution_count": null,
39
+ "id": "c725868e-a654-4ea7-9a2f-78bee1491e72",
40
+ "metadata": {},
41
+ "outputs": [],
42
+ "source": [
43
+ "#iface = gr.Interface(fn=greet, inputs=\"text\", outputs=\"text\")\n",
44
+ "#iface.launch(share=False)"
45
+ ]
46
+ },
47
+ {
48
+ "cell_type": "code",
49
+ "execution_count": null,
50
+ "id": "b908abcb-2973-48d5-89ec-0f02b75b9ed3",
51
+ "metadata": {},
52
+ "outputs": [
53
+ {
54
+ "data": {
55
+ "image/png": "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",
56
+ "text/plain": [
57
+ "PILImage mode=RGB size=192x120"
58
+ ]
59
+ },
60
+ "execution_count": null,
61
+ "metadata": {},
62
+ "output_type": "execute_result"
63
+ }
64
+ ],
65
+ "source": [
66
+ "img = PILImage.create('grizzly.jpg')\n",
67
+ "img.thumbnail((192,192))\n",
68
+ "img"
69
+ ]
70
+ },
71
+ {
72
+ "cell_type": "code",
73
+ "execution_count": null,
74
+ "id": "88d3212b-6136-4f0e-a93f-133d0c07528d",
75
+ "metadata": {},
76
+ "outputs": [],
77
+ "source": [
78
+ "#|export\n",
79
+ "learn = load_learner(Path(\"model.pkl\"))"
80
+ ]
81
+ },
82
+ {
83
+ "cell_type": "code",
84
+ "execution_count": null,
85
+ "id": "7dba9619-034f-476d-a7c4-5f4511ed18ce",
86
+ "metadata": {},
87
+ "outputs": [
88
+ {
89
+ "data": {
90
+ "text/html": [
91
+ "\n",
92
+ "<style>\n",
93
+ " /* Turns off some styling */\n",
94
+ " progress {\n",
95
+ " /* gets rid of default border in Firefox and Opera. */\n",
96
+ " border: none;\n",
97
+ " /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
98
+ " background-size: auto;\n",
99
+ " }\n",
100
+ " progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
101
+ " background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
102
+ " }\n",
103
+ " .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
104
+ " background: #F44336;\n",
105
+ " }\n",
106
+ "</style>\n"
107
+ ],
108
+ "text/plain": [
109
+ "<IPython.core.display.HTML object>"
110
+ ]
111
+ },
112
+ "metadata": {},
113
+ "output_type": "display_data"
114
+ },
115
+ {
116
+ "data": {
117
+ "text/html": [],
118
+ "text/plain": [
119
+ "<IPython.core.display.HTML object>"
120
+ ]
121
+ },
122
+ "metadata": {},
123
+ "output_type": "display_data"
124
+ },
125
+ {
126
+ "name": "stdout",
127
+ "output_type": "stream",
128
+ "text": [
129
+ "CPU times: total: 93.8 ms\n",
130
+ "Wall time: 97.5 ms\n"
131
+ ]
132
+ },
133
+ {
134
+ "data": {
135
+ "text/plain": [
136
+ "('grizzly bears', tensor(1), tensor([1.5317e-07, 9.9964e-01, 3.5997e-04]))"
137
+ ]
138
+ },
139
+ "execution_count": null,
140
+ "metadata": {},
141
+ "output_type": "execute_result"
142
+ }
143
+ ],
144
+ "source": [
145
+ "%time learn.predict(img)"
146
+ ]
147
+ },
148
+ {
149
+ "cell_type": "code",
150
+ "execution_count": null,
151
+ "id": "74f92818-e648-4198-a061-308aebf61989",
152
+ "metadata": {},
153
+ "outputs": [],
154
+ "source": [
155
+ "#|export\n",
156
+ "\n",
157
+ "searches = (\"grizzly bears\",\"black bears\",\"teddy bears\")\n",
158
+ "\n",
159
+ "def classify_image(img):\n",
160
+ " pred,idx,probs = learn.predict(img)\n",
161
+ " return dict(zip(searches, map(float,probs)))"
162
+ ]
163
+ },
164
+ {
165
+ "cell_type": "code",
166
+ "execution_count": null,
167
+ "id": "634686dd-4306-4888-8792-699d95f2782c",
168
+ "metadata": {},
169
+ "outputs": [
170
+ {
171
+ "data": {
172
+ "text/html": [
173
+ "\n",
174
+ "<style>\n",
175
+ " /* Turns off some styling */\n",
176
+ " progress {\n",
177
+ " /* gets rid of default border in Firefox and Opera. */\n",
178
+ " border: none;\n",
179
+ " /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
180
+ " background-size: auto;\n",
181
+ " }\n",
182
+ " progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
183
+ " background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
184
+ " }\n",
185
+ " .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
186
+ " background: #F44336;\n",
187
+ " }\n",
188
+ "</style>\n"
189
+ ],
190
+ "text/plain": [
191
+ "<IPython.core.display.HTML object>"
192
+ ]
193
+ },
194
+ "metadata": {},
195
+ "output_type": "display_data"
196
+ },
197
+ {
198
+ "data": {
199
+ "text/html": [],
200
+ "text/plain": [
201
+ "<IPython.core.display.HTML object>"
202
+ ]
203
+ },
204
+ "metadata": {},
205
+ "output_type": "display_data"
206
+ },
207
+ {
208
+ "name": "stdout",
209
+ "output_type": "stream",
210
+ "text": [
211
+ "CPU times: total: 109 ms\n",
212
+ "Wall time: 52.1 ms\n"
213
+ ]
214
+ },
215
+ {
216
+ "data": {
217
+ "text/plain": [
218
+ "{'grizzly bears': 1.5316950907617866e-07,\n",
219
+ " 'black bears': 0.9996398687362671,\n",
220
+ " 'teddy bears': 0.0003599724150262773}"
221
+ ]
222
+ },
223
+ "execution_count": null,
224
+ "metadata": {},
225
+ "output_type": "execute_result"
226
+ }
227
+ ],
228
+ "source": [
229
+ "%time classify_image(img)"
230
+ ]
231
+ },
232
+ {
233
+ "cell_type": "code",
234
+ "execution_count": null,
235
+ "id": "33d12cfc-68eb-4666-8bd7-b7617eec65cd",
236
+ "metadata": {},
237
+ "outputs": [],
238
+ "source": [
239
+ "#|export\n",
240
+ "\n",
241
+ "title = \"FastAi demo\"\n",
242
+ "description = \"This demo is the original\"\n",
243
+ "examples = [\"grizzly.jpg\"]"
244
+ ]
245
+ },
246
+ {
247
+ "cell_type": "code",
248
+ "execution_count": null,
249
+ "id": "5dfdfd51-32bd-4364-a41a-a391962e72c6",
250
+ "metadata": {},
251
+ "outputs": [
252
+ {
253
+ "name": "stdout",
254
+ "output_type": "stream",
255
+ "text": [
256
+ "Running on local URL: http://127.0.0.1:7861\n",
257
+ "\n",
258
+ "To create a public link, set `share=True` in `launch()`.\n"
259
+ ]
260
+ },
261
+ {
262
+ "data": {
263
+ "text/html": [
264
+ "<div><iframe src=\"http://127.0.0.1:7861/\" width=\"100%\" height=\"500\" allow=\"autoplay; camera; microphone; clipboard-read; clipboard-write;\" frameborder=\"0\" allowfullscreen></iframe></div>"
265
+ ],
266
+ "text/plain": [
267
+ "<IPython.core.display.HTML object>"
268
+ ]
269
+ },
270
+ "metadata": {},
271
+ "output_type": "display_data"
272
+ },
273
+ {
274
+ "data": {
275
+ "text/plain": []
276
+ },
277
+ "execution_count": null,
278
+ "metadata": {},
279
+ "output_type": "execute_result"
280
+ }
281
+ ],
282
+ "source": [
283
+ "#|export\n",
284
+ "\n",
285
+ "\n",
286
+ "demo = gr.Interface(\n",
287
+ " fn=classify_image,\n",
288
+ " inputs=\"image\",\n",
289
+ " outputs=\"label\",\n",
290
+ " title=title,\n",
291
+ " description=description,\n",
292
+ " examples = examples)\n",
293
+ "demo.launch()"
294
+ ]
295
+ },
296
+ {
297
+ "cell_type": "markdown",
298
+ "id": "ac141816-1577-41bb-bd91-dc79682896de",
299
+ "metadata": {},
300
+ "source": [
301
+ "## export"
302
+ ]
303
+ },
304
+ {
305
+ "cell_type": "code",
306
+ "execution_count": null,
307
+ "id": "5f14dab3-e6c3-4768-a8e0-8b7355c50929",
308
+ "metadata": {},
309
+ "outputs": [],
310
+ "source": [
311
+ "from nbdev.export import *"
312
+ ]
313
+ },
314
+ {
315
+ "cell_type": "code",
316
+ "execution_count": null,
317
+ "id": "1998fe76-7137-4f3a-b1b2-69f202bc0f49",
318
+ "metadata": {},
319
+ "outputs": [],
320
+ "source": [
321
+ "nb_export('app.ipynb',lib_path=Path())"
322
+ ]
323
+ },
324
+ {
325
+ "cell_type": "code",
326
+ "execution_count": null,
327
+ "id": "239cb8da-13bc-4873-9126-43eb42dfbab4",
328
+ "metadata": {},
329
+ "outputs": [],
330
+ "source": []
331
+ }
332
+ ],
333
+ "metadata": {
334
+ "kernelspec": {
335
+ "display_name": "python3",
336
+ "language": "python",
337
+ "name": "python3"
338
+ }
339
+ },
340
+ "nbformat": 4,
341
+ "nbformat_minor": 5
342
+ }
app.py ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # AUTOGENERATED! DO NOT EDIT! File to edit: app.ipynb.
2
+
3
+ # %% auto 0
4
+ __all__ = ['learn', 'searches', 'title', 'description', 'examples', 'demo', 'classify_image']
5
+
6
+ # %% app.ipynb 1
7
+ from fastai.vision.all import *
8
+ import gradio as gr
9
+
10
+ # %% app.ipynb 5
11
+ learn = load_learner(Path("model.pkl"))
12
+
13
+ # %% app.ipynb 7
14
+ searches = ("grizzly bears","black bears","teddy bears")
15
+
16
+ def classify_image(img):
17
+ pred,idx,probs = learn.predict(img)
18
+ return dict(zip(searches, map(float,probs)))
19
+
20
+ # %% app.ipynb 9
21
+ title = "FastAi demo"
22
+ description = "This demo is the original"
23
+ examples = ["grizzly.jpg"]
24
+
25
+ # %% app.ipynb 10
26
+ demo = gr.Interface(
27
+ fn=classify_image,
28
+ inputs="image",
29
+ outputs="label",
30
+ title=title,
31
+ description=description,
32
+ examples = examples)
33
+ demo.launch()
grizzly.jpg ADDED
requirements.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ fastai