Spaces:
Sleeping
Sleeping
exported using nbdev
Browse files- .DS_Store +0 -0
- app.py +10 -18
- classifier.ipynb +444 -4
- image1.png +0 -0
- model.pkl +2 -2
.DS_Store
CHANGED
Binary files a/.DS_Store and b/.DS_Store differ
|
|
app.py
CHANGED
@@ -1,33 +1,25 @@
|
|
1 |
-
|
2 |
-
import gradio as gr
|
3 |
-
import dill
|
4 |
|
5 |
-
|
|
|
6 |
|
7 |
-
|
|
|
|
|
8 |
|
|
|
9 |
|
|
|
10 |
categories = ('Dog', 'Cat')
|
11 |
-
|
12 |
def classify_image(img):
|
13 |
pred, idx, probs = learn.predict(img)
|
14 |
return dict(zip(categories, map(float, probs)))
|
15 |
|
|
|
16 |
image = gr.Image(image_mode="RGB", type="pil")
|
17 |
label = gr.Label()
|
18 |
|
19 |
-
examples = ['
|
20 |
|
21 |
intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)
|
22 |
intf.launch(inline=False)
|
23 |
-
|
24 |
-
# def greet(name, intensity):
|
25 |
-
# return "Hello, " + name + "!" * int(intensity)
|
26 |
-
|
27 |
-
# demo = gr.Interface(
|
28 |
-
# fn=greet,
|
29 |
-
# inputs=["text", "slider"],
|
30 |
-
# outputs=["text"],
|
31 |
-
# )
|
32 |
-
|
33 |
-
# demo.launch()
|
|
|
1 |
+
# AUTOGENERATED! DO NOT EDIT! File to edit: app.ipynb.
|
|
|
|
|
2 |
|
3 |
+
# %% auto 0
|
4 |
+
__all__ = ['categories', 'image', 'label', 'examples', 'intf', 'is_cat', 'classify_image']
|
5 |
|
6 |
+
# %% app.ipynb 22
|
7 |
+
from fastai.vision.all import *
|
8 |
+
import gradio as gr
|
9 |
|
10 |
+
def is_cat(x): return x[0].isupper()
|
11 |
|
12 |
+
# %% app.ipynb 37
|
13 |
categories = ('Dog', 'Cat')
|
|
|
14 |
def classify_image(img):
|
15 |
pred, idx, probs = learn.predict(img)
|
16 |
return dict(zip(categories, map(float, probs)))
|
17 |
|
18 |
+
# %% app.ipynb 39
|
19 |
image = gr.Image(image_mode="RGB", type="pil")
|
20 |
label = gr.Label()
|
21 |
|
22 |
+
examples = ['image1.png']
|
23 |
|
24 |
intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)
|
25 |
intf.launch(inline=False)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
classifier.ipynb
CHANGED
@@ -30,7 +30,7 @@
|
|
30 |
},
|
31 |
{
|
32 |
"cell_type": "code",
|
33 |
-
"execution_count":
|
34 |
"id": "0473c217",
|
35 |
"metadata": {},
|
36 |
"outputs": [
|
@@ -250,18 +250,458 @@
|
|
250 |
},
|
251 |
{
|
252 |
"cell_type": "code",
|
253 |
-
"execution_count":
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
254 |
"id": "9119ee21",
|
255 |
"metadata": {},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
256 |
"outputs": [],
|
257 |
"source": [
|
258 |
-
"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
259 |
]
|
260 |
},
|
261 |
{
|
262 |
"cell_type": "code",
|
263 |
"execution_count": null,
|
264 |
-
"id": "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
265 |
"metadata": {},
|
266 |
"outputs": [],
|
267 |
"source": []
|
|
|
30 |
},
|
31 |
{
|
32 |
"cell_type": "code",
|
33 |
+
"execution_count": 35,
|
34 |
"id": "0473c217",
|
35 |
"metadata": {},
|
36 |
"outputs": [
|
|
|
250 |
},
|
251 |
{
|
252 |
"cell_type": "code",
|
253 |
+
"execution_count": 37,
|
254 |
+
"id": "8034b898",
|
255 |
+
"metadata": {},
|
256 |
+
"outputs": [
|
257 |
+
{
|
258 |
+
"data": {
|
259 |
+
"text/html": [
|
260 |
+
"\n",
|
261 |
+
"<style>\n",
|
262 |
+
" /* Turns off some styling */\n",
|
263 |
+
" progress {\n",
|
264 |
+
" /* gets rid of default border in Firefox and Opera. */\n",
|
265 |
+
" border: none;\n",
|
266 |
+
" /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
|
267 |
+
" background-size: auto;\n",
|
268 |
+
" }\n",
|
269 |
+
" progress:not([value]), progress:not([value])::-webkit-progress-bar {\n",
|
270 |
+
" background: repeating-linear-gradient(45deg, #7e7e7e, #7e7e7e 10px, #5c5c5c 10px, #5c5c5c 20px);\n",
|
271 |
+
" }\n",
|
272 |
+
" .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
|
273 |
+
" background: #F44336;\n",
|
274 |
+
" }\n",
|
275 |
+
"</style>\n"
|
276 |
+
],
|
277 |
+
"text/plain": [
|
278 |
+
"<IPython.core.display.HTML object>"
|
279 |
+
]
|
280 |
+
},
|
281 |
+
"metadata": {},
|
282 |
+
"output_type": "display_data"
|
283 |
+
},
|
284 |
+
{
|
285 |
+
"data": {
|
286 |
+
"text/html": [],
|
287 |
+
"text/plain": [
|
288 |
+
"<IPython.core.display.HTML object>"
|
289 |
+
]
|
290 |
+
},
|
291 |
+
"metadata": {},
|
292 |
+
"output_type": "display_data"
|
293 |
+
},
|
294 |
+
{
|
295 |
+
"data": {
|
296 |
+
"text/plain": [
|
297 |
+
"{'Dog': 1.0, 'Cat': 6.59496190991149e-09}"
|
298 |
+
]
|
299 |
+
},
|
300 |
+
"execution_count": 37,
|
301 |
+
"metadata": {},
|
302 |
+
"output_type": "execute_result"
|
303 |
+
}
|
304 |
+
],
|
305 |
+
"source": [
|
306 |
+
"pred, idx, probs = learn.predict('i1.jpg')\n",
|
307 |
+
"dict(zip(categories, map(float, probs)))"
|
308 |
+
]
|
309 |
+
},
|
310 |
+
{
|
311 |
+
"cell_type": "code",
|
312 |
+
"execution_count": 38,
|
313 |
"id": "9119ee21",
|
314 |
"metadata": {},
|
315 |
+
"outputs": [
|
316 |
+
{
|
317 |
+
"ename": "AttributeError",
|
318 |
+
"evalue": "Can't get local object 'Transform.__init__.<locals>.wrapped_enc'",
|
319 |
+
"output_type": "error",
|
320 |
+
"traceback": [
|
321 |
+
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
|
322 |
+
"\u001b[31mAttributeError\u001b[39m Traceback (most recent call last)",
|
323 |
+
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[38]\u001b[39m\u001b[32m, line 1\u001b[39m\n\u001b[32m----> \u001b[39m\u001b[32m1\u001b[39m \u001b[43mlearn\u001b[49m\u001b[43m.\u001b[49m\u001b[43mexport\u001b[49m\u001b[43m(\u001b[49m\u001b[33;43m'\u001b[39;49m\u001b[33;43mmodel.pkl\u001b[39;49m\u001b[33;43m'\u001b[39;49m\u001b[43m)\u001b[49m\n",
|
324 |
+
"\u001b[36mFile \u001b[39m\u001b[32m~/miniforge3/lib/python3.12/site-packages/fastai/learner.py:444\u001b[39m, in \u001b[36mexport\u001b[39m\u001b[34m(self, fname, pickle_module, pickle_protocol)\u001b[39m\n\u001b[32m 441\u001b[39m \u001b[38;5;28;01mwith\u001b[39;00m warnings.catch_warnings():\n\u001b[32m 442\u001b[39m \u001b[38;5;66;03m#To avoid the warning that come from PyTorch about model not being checked\u001b[39;00m\n\u001b[32m 443\u001b[39m warnings.simplefilter(\u001b[33m\"\u001b[39m\u001b[33mignore\u001b[39m\u001b[33m\"\u001b[39m)\n\u001b[32m--> \u001b[39m\u001b[32m444\u001b[39m \u001b[43mtorch\u001b[49m\u001b[43m.\u001b[49m\u001b[43msave\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mpath\u001b[49m\u001b[43m/\u001b[49m\u001b[43mfname\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mpickle_module\u001b[49m\u001b[43m=\u001b[49m\u001b[43mpickle_module\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mpickle_protocol\u001b[49m\u001b[43m=\u001b[49m\u001b[43mpickle_protocol\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 445\u001b[39m \u001b[38;5;28mself\u001b[39m.create_opt()\n\u001b[32m 446\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m state \u001b[38;5;129;01mis\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28;01mNone\u001b[39;00m: \u001b[38;5;28mself\u001b[39m.opt.load_state_dict(state)\n",
|
325 |
+
"\u001b[36mFile \u001b[39m\u001b[32m~/miniforge3/lib/python3.12/site-packages/torch/serialization.py:652\u001b[39m, in \u001b[36msave\u001b[39m\u001b[34m(obj, f, pickle_module, pickle_protocol, _use_new_zipfile_serialization, _disable_byteorder_record)\u001b[39m\n\u001b[32m 650\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m _use_new_zipfile_serialization:\n\u001b[32m 651\u001b[39m \u001b[38;5;28;01mwith\u001b[39;00m _open_zipfile_writer(f) \u001b[38;5;28;01mas\u001b[39;00m opened_zipfile:\n\u001b[32m--> \u001b[39m\u001b[32m652\u001b[39m \u001b[43m_save\u001b[49m\u001b[43m(\u001b[49m\u001b[43mobj\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mopened_zipfile\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mpickle_module\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mpickle_protocol\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43m_disable_byteorder_record\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 653\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m\n\u001b[32m 654\u001b[39m \u001b[38;5;28;01melse\u001b[39;00m:\n",
|
326 |
+
"\u001b[36mFile \u001b[39m\u001b[32m~/miniforge3/lib/python3.12/site-packages/torch/serialization.py:864\u001b[39m, in \u001b[36m_save\u001b[39m\u001b[34m(obj, zip_file, pickle_module, pickle_protocol, _disable_byteorder_record)\u001b[39m\n\u001b[32m 862\u001b[39m pickler = pickle_module.Pickler(data_buf, protocol=pickle_protocol)\n\u001b[32m 863\u001b[39m pickler.persistent_id = persistent_id\n\u001b[32m--> \u001b[39m\u001b[32m864\u001b[39m \u001b[43mpickler\u001b[49m\u001b[43m.\u001b[49m\u001b[43mdump\u001b[49m\u001b[43m(\u001b[49m\u001b[43mobj\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 865\u001b[39m data_value = data_buf.getvalue()\n\u001b[32m 866\u001b[39m zip_file.write_record(\u001b[33m'\u001b[39m\u001b[33mdata.pkl\u001b[39m\u001b[33m'\u001b[39m, data_value, \u001b[38;5;28mlen\u001b[39m(data_value))\n",
|
327 |
+
"\u001b[31mAttributeError\u001b[39m: Can't get local object 'Transform.__init__.<locals>.wrapped_enc'"
|
328 |
+
]
|
329 |
+
}
|
330 |
+
],
|
331 |
+
"source": [
|
332 |
+
"learn.export('model.pkl')"
|
333 |
+
]
|
334 |
+
},
|
335 |
+
{
|
336 |
+
"cell_type": "code",
|
337 |
+
"execution_count": 26,
|
338 |
+
"id": "25a3e6c4",
|
339 |
+
"metadata": {},
|
340 |
"outputs": [],
|
341 |
"source": [
|
342 |
+
"!pip install -q gradio\n",
|
343 |
+
"import gradio as gr"
|
344 |
+
]
|
345 |
+
},
|
346 |
+
{
|
347 |
+
"cell_type": "code",
|
348 |
+
"execution_count": 27,
|
349 |
+
"id": "03631813",
|
350 |
+
"metadata": {},
|
351 |
+
"outputs": [
|
352 |
+
{
|
353 |
+
"ename": "ImportError",
|
354 |
+
"evalue": "cannot import name 'http_server' from 'gradio' (/Users/devudilip/miniforge3/lib/python3.12/site-packages/gradio/__init__.py)",
|
355 |
+
"output_type": "error",
|
356 |
+
"traceback": [
|
357 |
+
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
|
358 |
+
"\u001b[31mImportError\u001b[39m Traceback (most recent call last)",
|
359 |
+
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[27]\u001b[39m\u001b[32m, line 13\u001b[39m\n\u001b[32m 10\u001b[39m examples = [\u001b[33m'\u001b[39m\u001b[33msiamese.png\u001b[39m\u001b[33m'\u001b[39m]\n\u001b[32m 12\u001b[39m intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)\n\u001b[32m---> \u001b[39m\u001b[32m13\u001b[39m \u001b[43mintf\u001b[49m\u001b[43m.\u001b[49m\u001b[43mlaunch\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n",
|
360 |
+
"\u001b[36mFile \u001b[39m\u001b[32m~/miniforge3/lib/python3.12/site-packages/gradio/blocks.py:2597\u001b[39m, in \u001b[36mlaunch\u001b[39m\u001b[34m(self, inline, inbrowser, share, debug, max_threads, auth, auth_message, prevent_thread_lock, show_error, server_name, server_port, height, width, favicon_path, ssl_keyfile, ssl_certfile, ssl_keyfile_password, ssl_verify, quiet, show_api, allowed_paths, blocked_paths, root_path, app_kwargs, state_session_capacity, share_server_address, share_server_protocol, share_server_tls_certificate, auth_dependency, max_file_size, enable_monitoring, strict_cors, node_server_name, node_port, ssr_mode, pwa, _frontend)\u001b[39m\n\u001b[32m 0\u001b[39m <Error retrieving source code with stack_data see ipython/ipython#13598>\n",
|
361 |
+
"\u001b[31mImportError\u001b[39m: cannot import name 'http_server' from 'gradio' (/Users/devudilip/miniforge3/lib/python3.12/site-packages/gradio/__init__.py)"
|
362 |
+
]
|
363 |
+
}
|
364 |
+
],
|
365 |
+
"source": [
|
366 |
+
"categories = ('Dog', 'Cat')\n",
|
367 |
+
"\n",
|
368 |
+
"def classify_image(img):\n",
|
369 |
+
" pred, idx, probs = learn.predict(img)\n",
|
370 |
+
" return dict(zip(categories, map(float, probs)))\n",
|
371 |
+
"\n",
|
372 |
+
"image = gr.Image()\n",
|
373 |
+
"label = gr.Label()\n",
|
374 |
+
"\n",
|
375 |
+
"examples = ['siamese.png']\n",
|
376 |
+
"\n",
|
377 |
+
"intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)\n",
|
378 |
+
"intf.launch()"
|
379 |
+
]
|
380 |
+
},
|
381 |
+
{
|
382 |
+
"cell_type": "code",
|
383 |
+
"execution_count": 30,
|
384 |
+
"id": "47d99904",
|
385 |
+
"metadata": {},
|
386 |
+
"outputs": [
|
387 |
+
{
|
388 |
+
"name": "stdout",
|
389 |
+
"output_type": "stream",
|
390 |
+
"text": [
|
391 |
+
"Requirement already satisfied: gradio in /Users/devudilip/miniforge3/lib/python3.12/site-packages (3.0)\n",
|
392 |
+
"Collecting gradio\n",
|
393 |
+
" Using cached gradio-5.22.0-py3-none-any.whl.metadata (16 kB)\n",
|
394 |
+
"Requirement already satisfied: aiofiles<24.0,>=22.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (23.2.1)\n",
|
395 |
+
"Requirement already satisfied: anyio<5.0,>=3.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (4.9.0)\n",
|
396 |
+
"Requirement already satisfied: fastapi<1.0,>=0.115.2 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.115.11)\n",
|
397 |
+
"Requirement already satisfied: ffmpy in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.5.0)\n",
|
398 |
+
"Collecting gradio-client==1.8.0 (from gradio)\n",
|
399 |
+
" Using cached gradio_client-1.8.0-py3-none-any.whl.metadata (7.1 kB)\n",
|
400 |
+
"Requirement already satisfied: groovy~=0.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.1.2)\n",
|
401 |
+
"Requirement already satisfied: httpx>=0.24.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.28.1)\n",
|
402 |
+
"Requirement already satisfied: huggingface-hub>=0.28.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.29.3)\n",
|
403 |
+
"Requirement already satisfied: jinja2<4.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (3.1.6)\n",
|
404 |
+
"Requirement already satisfied: markupsafe<4.0,>=2.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (2.1.5)\n",
|
405 |
+
"Requirement already satisfied: numpy<3.0,>=1.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (1.26.4)\n",
|
406 |
+
"Requirement already satisfied: orjson~=3.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (3.10.15)\n",
|
407 |
+
"Requirement already satisfied: packaging in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (24.2)\n",
|
408 |
+
"Requirement already satisfied: pandas<3.0,>=1.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (2.2.3)\n",
|
409 |
+
"Requirement already satisfied: pillow<12.0,>=8.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (10.4.0)\n",
|
410 |
+
"Requirement already satisfied: pydantic>=2.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (2.10.6)\n",
|
411 |
+
"Requirement already satisfied: pydub in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.25.1)\n",
|
412 |
+
"Requirement already satisfied: python-multipart>=0.0.18 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.0.20)\n",
|
413 |
+
"Requirement already satisfied: pyyaml<7.0,>=5.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (6.0.2)\n",
|
414 |
+
"Requirement already satisfied: ruff>=0.9.3 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.11.2)\n",
|
415 |
+
"Requirement already satisfied: safehttpx<0.2.0,>=0.1.6 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.1.6)\n",
|
416 |
+
"Requirement already satisfied: semantic-version~=2.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (2.10.0)\n",
|
417 |
+
"Requirement already satisfied: starlette<1.0,>=0.40.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.46.1)\n",
|
418 |
+
"Requirement already satisfied: tomlkit<0.14.0,>=0.12.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.13.2)\n",
|
419 |
+
"Requirement already satisfied: typer<1.0,>=0.12 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.15.2)\n",
|
420 |
+
"Requirement already satisfied: typing-extensions~=4.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (4.12.2)\n",
|
421 |
+
"Requirement already satisfied: uvicorn>=0.14.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio) (0.34.0)\n",
|
422 |
+
"Requirement already satisfied: fsspec in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio-client==1.8.0->gradio) (2024.12.0)\n",
|
423 |
+
"Requirement already satisfied: websockets<16.0,>=10.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from gradio-client==1.8.0->gradio) (11.0.3)\n",
|
424 |
+
"Requirement already satisfied: idna>=2.8 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from anyio<5.0,>=3.0->gradio) (3.10)\n",
|
425 |
+
"Requirement already satisfied: sniffio>=1.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from anyio<5.0,>=3.0->gradio) (1.3.1)\n",
|
426 |
+
"Requirement already satisfied: certifi in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from httpx>=0.24.1->gradio) (2025.1.31)\n",
|
427 |
+
"Requirement already satisfied: httpcore==1.* in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from httpx>=0.24.1->gradio) (1.0.7)\n",
|
428 |
+
"Requirement already satisfied: h11<0.15,>=0.13 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from httpcore==1.*->httpx>=0.24.1->gradio) (0.14.0)\n",
|
429 |
+
"Requirement already satisfied: filelock in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from huggingface-hub>=0.28.1->gradio) (3.18.0)\n",
|
430 |
+
"Requirement already satisfied: requests in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from huggingface-hub>=0.28.1->gradio) (2.32.3)\n",
|
431 |
+
"Requirement already satisfied: tqdm>=4.42.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from huggingface-hub>=0.28.1->gradio) (4.67.1)\n",
|
432 |
+
"Requirement already satisfied: python-dateutil>=2.8.2 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from pandas<3.0,>=1.0->gradio) (2.9.0.post0)\n",
|
433 |
+
"Requirement already satisfied: pytz>=2020.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from pandas<3.0,>=1.0->gradio) (2024.1)\n",
|
434 |
+
"Requirement already satisfied: tzdata>=2022.7 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from pandas<3.0,>=1.0->gradio) (2025.1)\n",
|
435 |
+
"Requirement already satisfied: annotated-types>=0.6.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from pydantic>=2.0->gradio) (0.7.0)\n",
|
436 |
+
"Requirement already satisfied: pydantic-core==2.27.2 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from pydantic>=2.0->gradio) (2.27.2)\n",
|
437 |
+
"Requirement already satisfied: click>=8.0.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from typer<1.0,>=0.12->gradio) (8.1.8)\n",
|
438 |
+
"Requirement already satisfied: shellingham>=1.3.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from typer<1.0,>=0.12->gradio) (1.5.4)\n",
|
439 |
+
"Requirement already satisfied: rich>=10.11.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from typer<1.0,>=0.12->gradio) (13.9.4)\n",
|
440 |
+
"Requirement already satisfied: six>=1.5 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from python-dateutil>=2.8.2->pandas<3.0,>=1.0->gradio) (1.17.0)\n",
|
441 |
+
"Requirement already satisfied: markdown-it-py>=2.2.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from rich>=10.11.0->typer<1.0,>=0.12->gradio) (3.0.0)\n",
|
442 |
+
"Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from rich>=10.11.0->typer<1.0,>=0.12->gradio) (2.19.1)\n",
|
443 |
+
"Requirement already satisfied: charset_normalizer<4,>=2 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from requests->huggingface-hub>=0.28.1->gradio) (3.4.1)\n",
|
444 |
+
"Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from requests->huggingface-hub>=0.28.1->gradio) (2.3.0)\n",
|
445 |
+
"Requirement already satisfied: mdurl~=0.1 in /Users/devudilip/miniforge3/lib/python3.12/site-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->typer<1.0,>=0.12->gradio) (0.1.2)\n",
|
446 |
+
"Using cached gradio-5.22.0-py3-none-any.whl (46.2 MB)\n",
|
447 |
+
"Using cached gradio_client-1.8.0-py3-none-any.whl (322 kB)\n",
|
448 |
+
"Installing collected packages: gradio-client, gradio\n",
|
449 |
+
" Attempting uninstall: gradio-client\n",
|
450 |
+
" Found existing installation: gradio_client 0.5.0\n",
|
451 |
+
" Uninstalling gradio_client-0.5.0:\n",
|
452 |
+
" Successfully uninstalled gradio_client-0.5.0\n",
|
453 |
+
" Attempting uninstall: gradio\n",
|
454 |
+
" Found existing installation: gradio 3.0\n",
|
455 |
+
" Uninstalling gradio-3.0:\n",
|
456 |
+
" Successfully uninstalled gradio-3.0\n",
|
457 |
+
"Successfully installed gradio-5.22.0 gradio-client-1.8.0\n"
|
458 |
+
]
|
459 |
+
}
|
460 |
+
],
|
461 |
+
"source": [
|
462 |
+
"!pip install --upgrade gradio"
|
463 |
+
]
|
464 |
+
},
|
465 |
+
{
|
466 |
+
"cell_type": "code",
|
467 |
+
"execution_count": 31,
|
468 |
+
"id": "f43155f8",
|
469 |
+
"metadata": {},
|
470 |
+
"outputs": [
|
471 |
+
{
|
472 |
+
"name": "stdout",
|
473 |
+
"output_type": "stream",
|
474 |
+
"text": [
|
475 |
+
"Name: gradio\r\n",
|
476 |
+
"Version: 5.22.0\r\n",
|
477 |
+
"Summary: Python library for easily interacting with trained machine learning models\r\n",
|
478 |
+
"Home-page: https://github.com/gradio-app/gradio\r\n",
|
479 |
+
"Author: \r\n",
|
480 |
+
"Author-email: Abubakar Abid <gradio-team@huggingface.co>, Ali Abid <gradio-team@huggingface.co>, Ali Abdalla <gradio-team@huggingface.co>, Dawood Khan <gradio-team@huggingface.co>, Ahsen Khaliq <gradio-team@huggingface.co>, Pete Allen <gradio-team@huggingface.co>, Ömer Faruk Özdemir <gradio-team@huggingface.co>, Freddy A Boulton <gradio-team@huggingface.co>, Hannah Blair <gradio-team@huggingface.co>\r\n",
|
481 |
+
"License-Expression: Apache-2.0\r\n",
|
482 |
+
"Location: /Users/devudilip/miniforge3/lib/python3.12/site-packages\r\n",
|
483 |
+
"Requires: aiofiles, anyio, fastapi, ffmpy, gradio-client, groovy, httpx, huggingface-hub, jinja2, markupsafe, numpy, orjson, packaging, pandas, pillow, pydantic, pydub, python-multipart, pyyaml, ruff, safehttpx, semantic-version, starlette, tomlkit, typer, typing-extensions, uvicorn\r\n",
|
484 |
+
"Required-by: \r\n"
|
485 |
+
]
|
486 |
+
}
|
487 |
+
],
|
488 |
+
"source": [
|
489 |
+
"!pip show gradio"
|
490 |
+
]
|
491 |
+
},
|
492 |
+
{
|
493 |
+
"cell_type": "code",
|
494 |
+
"execution_count": 33,
|
495 |
+
"id": "78a256f7",
|
496 |
+
"metadata": {},
|
497 |
+
"outputs": [
|
498 |
+
{
|
499 |
+
"name": "stderr",
|
500 |
+
"output_type": "stream",
|
501 |
+
"text": [
|
502 |
+
"Exception in thread Thread-90 (run):\n",
|
503 |
+
"Traceback (most recent call last):\n",
|
504 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/threading.py\", line 1075, in _bootstrap_inner\n",
|
505 |
+
" self.run()\n",
|
506 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/ipykernel/ipkernel.py\", line 766, in run_closure\n",
|
507 |
+
" _threading_Thread_run(self)\n",
|
508 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/threading.py\", line 1012, in run\n",
|
509 |
+
" self._target(*self._args, **self._kwargs)\n",
|
510 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 66, in run\n",
|
511 |
+
" return asyncio.run(self.serve(sockets=sockets))\n",
|
512 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
513 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/runners.py\", line 195, in run\n",
|
514 |
+
" return runner.run(main)\n",
|
515 |
+
" ^^^^^^^^^^^^^^^^\n",
|
516 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/runners.py\", line 118, in run\n",
|
517 |
+
" return self._loop.run_until_complete(task)\n",
|
518 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
519 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/base_events.py\", line 691, in run_until_complete\n",
|
520 |
+
" return future.result()\n",
|
521 |
+
" ^^^^^^^^^^^^^^^\n",
|
522 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 70, in serve\n",
|
523 |
+
" await self._serve(sockets)\n",
|
524 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 77, in _serve\n",
|
525 |
+
" config.load()\n",
|
526 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/config.py\", line 427, in load\n",
|
527 |
+
" ws_protocol_class = import_from_string(WS_PROTOCOLS[self.ws])\n",
|
528 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
529 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/importer.py\", line 22, in import_from_string\n",
|
530 |
+
" raise exc from None\n",
|
531 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/importer.py\", line 19, in import_from_string\n",
|
532 |
+
" module = importlib.import_module(module_str)\n",
|
533 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
534 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/importlib/__init__.py\", line 90, in import_module\n",
|
535 |
+
" return _bootstrap._gcd_import(name[level:], package, level)\n",
|
536 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
537 |
+
" File \"<frozen importlib._bootstrap>\", line 1387, in _gcd_import\n",
|
538 |
+
" File \"<frozen importlib._bootstrap>\", line 1360, in _find_and_load\n",
|
539 |
+
" File \"<frozen importlib._bootstrap>\", line 1331, in _find_and_load_unlocked\n",
|
540 |
+
" File \"<frozen importlib._bootstrap>\", line 935, in _load_unlocked\n",
|
541 |
+
" File \"<frozen importlib._bootstrap_external>\", line 999, in exec_module\n",
|
542 |
+
" File \"<frozen importlib._bootstrap>\", line 488, in _call_with_frames_removed\n",
|
543 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/protocols/websockets/auto.py\", line 19, in <module>\n",
|
544 |
+
" from uvicorn.protocols.websockets.websockets_impl import WebSocketProtocol\n",
|
545 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/protocols/websockets/websockets_impl.py\", line 16, in <module>\n",
|
546 |
+
" from websockets.legacy.server import HTTPResponse\n",
|
547 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/legacy/server.py\", line 29, in <module>\n",
|
548 |
+
" from ..exceptions import (\n",
|
549 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/imports.py\", line 91, in __getattr__\n",
|
550 |
+
" \n",
|
551 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/imports.py\", line 28, in import_name\n",
|
552 |
+
" return getattr(module, name)\n",
|
553 |
+
" ^^^^^^^^^^^^^^^^^^^^\n",
|
554 |
+
"ModuleNotFoundError: No module named 'websockets.legacy.exceptions'\n",
|
555 |
+
"Exception in thread Thread-91 (run):\n",
|
556 |
+
"Traceback (most recent call last):\n",
|
557 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/threading.py\", line 1075, in _bootstrap_inner\n",
|
558 |
+
" self.run()\n",
|
559 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/ipykernel/ipkernel.py\", line 766, in run_closure\n",
|
560 |
+
" _threading_Thread_run(self)\n",
|
561 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/threading.py\", line 1012, in run\n",
|
562 |
+
" self._target(*self._args, **self._kwargs)\n",
|
563 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 66, in run\n",
|
564 |
+
" return asyncio.run(self.serve(sockets=sockets))\n",
|
565 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
566 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/runners.py\", line 195, in run\n",
|
567 |
+
" return runner.run(main)\n",
|
568 |
+
" ^^^^^^^^^^^^^^^^\n",
|
569 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/runners.py\", line 118, in run\n",
|
570 |
+
" return self._loop.run_until_complete(task)\n",
|
571 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
572 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/base_events.py\", line 691, in run_until_complete\n",
|
573 |
+
" return future.result()\n",
|
574 |
+
" ^^^^^^^^^^^^^^^\n",
|
575 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 70, in serve\n",
|
576 |
+
" await self._serve(sockets)\n",
|
577 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 77, in _serve\n",
|
578 |
+
" config.load()\n",
|
579 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/config.py\", line 427, in load\n",
|
580 |
+
" ws_protocol_class = import_from_string(WS_PROTOCOLS[self.ws])\n",
|
581 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
582 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/importer.py\", line 22, in import_from_string\n",
|
583 |
+
" raise exc from None\n",
|
584 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/importer.py\", line 19, in import_from_string\n",
|
585 |
+
" module = importlib.import_module(module_str)\n",
|
586 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
587 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/importlib/__init__.py\", line 90, in import_module\n",
|
588 |
+
" return _bootstrap._gcd_import(name[level:], package, level)\n",
|
589 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
590 |
+
" File \"<frozen importlib._bootstrap>\", line 1387, in _gcd_import\n",
|
591 |
+
" File \"<frozen importlib._bootstrap>\", line 1360, in _find_and_load\n",
|
592 |
+
" File \"<frozen importlib._bootstrap>\", line 1331, in _find_and_load_unlocked\n",
|
593 |
+
" File \"<frozen importlib._bootstrap>\", line 935, in _load_unlocked\n",
|
594 |
+
" File \"<frozen importlib._bootstrap_external>\", line 999, in exec_module\n",
|
595 |
+
" File \"<frozen importlib._bootstrap>\", line 488, in _call_with_frames_removed\n",
|
596 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/protocols/websockets/auto.py\", line 19, in <module>\n",
|
597 |
+
" from uvicorn.protocols.websockets.websockets_impl import WebSocketProtocol\n",
|
598 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/protocols/websockets/websockets_impl.py\", line 16, in <module>\n",
|
599 |
+
" from websockets.legacy.server import HTTPResponse\n",
|
600 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/legacy/server.py\", line 29, in <module>\n",
|
601 |
+
" from ..exceptions import (\n",
|
602 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/imports.py\", line 91, in __getattr__\n",
|
603 |
+
" \n",
|
604 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/imports.py\", line 28, in import_name\n",
|
605 |
+
" return getattr(module, name)\n",
|
606 |
+
" ^^^^^^^^^^^^^^^^^^^^\n",
|
607 |
+
"ModuleNotFoundError: No module named 'websockets.legacy.exceptions'\n",
|
608 |
+
"Exception in thread Thread-92 (run):\n",
|
609 |
+
"Traceback (most recent call last):\n",
|
610 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/threading.py\", line 1075, in _bootstrap_inner\n",
|
611 |
+
" self.run()\n",
|
612 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/ipykernel/ipkernel.py\", line 766, in run_closure\n",
|
613 |
+
" _threading_Thread_run(self)\n",
|
614 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/threading.py\", line 1012, in run\n",
|
615 |
+
" self._target(*self._args, **self._kwargs)\n",
|
616 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 66, in run\n",
|
617 |
+
" return asyncio.run(self.serve(sockets=sockets))\n",
|
618 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
619 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/runners.py\", line 195, in run\n",
|
620 |
+
" return runner.run(main)\n",
|
621 |
+
" ^^^^^^^^^^^^^^^^\n",
|
622 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/runners.py\", line 118, in run\n",
|
623 |
+
" return self._loop.run_until_complete(task)\n",
|
624 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
625 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/asyncio/base_events.py\", line 691, in run_until_complete\n",
|
626 |
+
" return future.result()\n",
|
627 |
+
" ^^^^^^^^^^^^^^^\n",
|
628 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 70, in serve\n",
|
629 |
+
" await self._serve(sockets)\n",
|
630 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/server.py\", line 77, in _serve\n",
|
631 |
+
" config.load()\n",
|
632 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/config.py\", line 427, in load\n",
|
633 |
+
" ws_protocol_class = import_from_string(WS_PROTOCOLS[self.ws])\n",
|
634 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
635 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/importer.py\", line 22, in import_from_string\n",
|
636 |
+
" raise exc from None\n",
|
637 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/importer.py\", line 19, in import_from_string\n",
|
638 |
+
" module = importlib.import_module(module_str)\n",
|
639 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
640 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/importlib/__init__.py\", line 90, in import_module\n",
|
641 |
+
" return _bootstrap._gcd_import(name[level:], package, level)\n",
|
642 |
+
" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
|
643 |
+
" File \"<frozen importlib._bootstrap>\", line 1387, in _gcd_import\n",
|
644 |
+
" File \"<frozen importlib._bootstrap>\", line 1360, in _find_and_load\n",
|
645 |
+
" File \"<frozen importlib._bootstrap>\", line 1331, in _find_and_load_unlocked\n",
|
646 |
+
" File \"<frozen importlib._bootstrap>\", line 935, in _load_unlocked\n",
|
647 |
+
" File \"<frozen importlib._bootstrap_external>\", line 999, in exec_module\n",
|
648 |
+
" File \"<frozen importlib._bootstrap>\", line 488, in _call_with_frames_removed\n",
|
649 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/protocols/websockets/auto.py\", line 19, in <module>\n",
|
650 |
+
" from uvicorn.protocols.websockets.websockets_impl import WebSocketProtocol\n",
|
651 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/uvicorn/protocols/websockets/websockets_impl.py\", line 16, in <module>\n",
|
652 |
+
" from websockets.legacy.server import HTTPResponse\n",
|
653 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/legacy/server.py\", line 29, in <module>\n",
|
654 |
+
" from ..exceptions import (\n",
|
655 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/imports.py\", line 91, in __getattr__\n",
|
656 |
+
" \n",
|
657 |
+
" File \"/Users/devudilip/miniforge3/lib/python3.12/site-packages/websockets/imports.py\", line 28, in import_name\n",
|
658 |
+
" return getattr(module, name)\n",
|
659 |
+
" ^^^^^^^^^^^^^^^^^^^^\n",
|
660 |
+
"ModuleNotFoundError: No module named 'websockets.legacy.exceptions'\n"
|
661 |
+
]
|
662 |
+
},
|
663 |
+
{
|
664 |
+
"ename": "KeyboardInterrupt",
|
665 |
+
"evalue": "",
|
666 |
+
"output_type": "error",
|
667 |
+
"traceback": [
|
668 |
+
"\u001b[31m---------------------------------------------------------------------------\u001b[39m",
|
669 |
+
"\u001b[31mKeyboardInterrupt\u001b[39m Traceback (most recent call last)",
|
670 |
+
"\u001b[36mCell\u001b[39m\u001b[36m \u001b[39m\u001b[32mIn[33]\u001b[39m\u001b[32m, line 12\u001b[39m\n\u001b[32m 4\u001b[39m \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[33m\"\u001b[39m\u001b[33mHello, \u001b[39m\u001b[33m\"\u001b[39m + name + \u001b[33m\"\u001b[39m\u001b[33m!\u001b[39m\u001b[33m\"\u001b[39m * \u001b[38;5;28mint\u001b[39m(intensity)\n\u001b[32m 6\u001b[39m demo = gr.Interface(\n\u001b[32m 7\u001b[39m fn=greet,\n\u001b[32m 8\u001b[39m inputs=[\u001b[33m\"\u001b[39m\u001b[33mtext\u001b[39m\u001b[33m\"\u001b[39m, \u001b[33m\"\u001b[39m\u001b[33mslider\u001b[39m\u001b[33m\"\u001b[39m],\n\u001b[32m 9\u001b[39m outputs=[\u001b[33m\"\u001b[39m\u001b[33mtext\u001b[39m\u001b[33m\"\u001b[39m],\n\u001b[32m 10\u001b[39m )\n\u001b[32m---> \u001b[39m\u001b[32m12\u001b[39m \u001b[43mdemo\u001b[49m\u001b[43m.\u001b[49m\u001b[43mlaunch\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n",
|
671 |
+
"\u001b[36mFile \u001b[39m\u001b[32m~/miniforge3/lib/python3.12/site-packages/gradio/blocks.py:2604\u001b[39m, in \u001b[36mBlocks.launch\u001b[39m\u001b[34m(self, inline, inbrowser, share, debug, max_threads, auth, auth_message, prevent_thread_lock, show_error, server_name, server_port, height, width, favicon_path, ssl_keyfile, ssl_certfile, ssl_keyfile_password, ssl_verify, quiet, show_api, allowed_paths, blocked_paths, root_path, app_kwargs, state_session_capacity, share_server_address, share_server_protocol, share_server_tls_certificate, auth_dependency, max_file_size, enable_monitoring, strict_cors, node_server_name, node_port, ssr_mode, pwa, _frontend)\u001b[39m\n\u001b[32m 2596\u001b[39m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[32m 2597\u001b[39m \u001b[38;5;28;01mfrom\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[34;01mgradio\u001b[39;00m\u001b[38;5;250m \u001b[39m\u001b[38;5;28;01mimport\u001b[39;00m http_server\n\u001b[32m 2599\u001b[39m (\n\u001b[32m 2600\u001b[39m server_name,\n\u001b[32m 2601\u001b[39m server_port,\n\u001b[32m 2602\u001b[39m local_url,\n\u001b[32m 2603\u001b[39m server,\n\u001b[32m-> \u001b[39m\u001b[32m2604\u001b[39m ) = \u001b[43mhttp_server\u001b[49m\u001b[43m.\u001b[49m\u001b[43mstart_server\u001b[49m\u001b[43m(\u001b[49m\n\u001b[32m 2605\u001b[39m \u001b[43m \u001b[49m\u001b[43mapp\u001b[49m\u001b[43m=\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m.\u001b[49m\u001b[43mapp\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 2606\u001b[39m \u001b[43m \u001b[49m\u001b[43mserver_name\u001b[49m\u001b[43m=\u001b[49m\u001b[43mserver_name\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 2607\u001b[39m \u001b[43m \u001b[49m\u001b[43mserver_port\u001b[49m\u001b[43m=\u001b[49m\u001b[43mserver_port\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 2608\u001b[39m \u001b[43m \u001b[49m\u001b[43mssl_keyfile\u001b[49m\u001b[43m=\u001b[49m\u001b[43mssl_keyfile\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 2609\u001b[39m \u001b[43m \u001b[49m\u001b[43mssl_certfile\u001b[49m\u001b[43m=\u001b[49m\u001b[43mssl_certfile\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 2610\u001b[39m \u001b[43m \u001b[49m\u001b[43mssl_keyfile_password\u001b[49m\u001b[43m=\u001b[49m\u001b[43mssl_keyfile_password\u001b[49m\u001b[43m,\u001b[49m\n\u001b[32m 2611\u001b[39m \u001b[43m \u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 2612\u001b[39m \u001b[38;5;28mself\u001b[39m.server_name = server_name\n\u001b[32m 2613\u001b[39m \u001b[38;5;28mself\u001b[39m.local_url = local_url\n",
|
672 |
+
"\u001b[36mFile \u001b[39m\u001b[32m~/miniforge3/lib/python3.12/site-packages/gradio/http_server.py:151\u001b[39m, in \u001b[36mstart_server\u001b[39m\u001b[34m(app, server_name, server_port, ssl_keyfile, ssl_certfile, ssl_keyfile_password)\u001b[39m\n\u001b[32m 141\u001b[39m reloader = SourceFileReloader(\n\u001b[32m 142\u001b[39m app=app,\n\u001b[32m 143\u001b[39m watch_dirs=GRADIO_WATCH_DIRS,\n\u001b[32m (...)\u001b[39m\u001b[32m 148\u001b[39m watch_module=sys.modules[\u001b[33m\"\u001b[39m\u001b[33m__main__\u001b[39m\u001b[33m\"\u001b[39m],\n\u001b[32m 149\u001b[39m )\n\u001b[32m 150\u001b[39m server = Server(config=config, reloader=reloader)\n\u001b[32m--> \u001b[39m\u001b[32m151\u001b[39m \u001b[43mserver\u001b[49m\u001b[43m.\u001b[49m\u001b[43mrun_in_thread\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[32m 152\u001b[39m \u001b[38;5;28;01mbreak\u001b[39;00m\n\u001b[32m 153\u001b[39m \u001b[38;5;28;01mexcept\u001b[39;00m (\u001b[38;5;167;01mOSError\u001b[39;00m, ServerFailedToStartError):\n",
|
673 |
+
"\u001b[36mFile \u001b[39m\u001b[32m~/miniforge3/lib/python3.12/site-packages/gradio/http_server.py:58\u001b[39m, in \u001b[36mServer.run_in_thread\u001b[39m\u001b[34m(self)\u001b[39m\n\u001b[32m 56\u001b[39m start = time.time()\n\u001b[32m 57\u001b[39m \u001b[38;5;28;01mwhile\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mself\u001b[39m.started:\n\u001b[32m---> \u001b[39m\u001b[32m58\u001b[39m \u001b[43mtime\u001b[49m\u001b[43m.\u001b[49m\u001b[43msleep\u001b[49m\u001b[43m(\u001b[49m\u001b[32;43m1e-3\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[32m 59\u001b[39m \u001b[38;5;28;01mif\u001b[39;00m time.time() - start > \u001b[32m5\u001b[39m:\n\u001b[32m 60\u001b[39m \u001b[38;5;28;01mraise\u001b[39;00m ServerFailedToStartError(\n\u001b[32m 61\u001b[39m \u001b[33m\"\u001b[39m\u001b[33mServer failed to start. Please check that the port is available.\u001b[39m\u001b[33m\"\u001b[39m\n\u001b[32m 62\u001b[39m )\n",
|
674 |
+
"\u001b[31mKeyboardInterrupt\u001b[39m: "
|
675 |
+
]
|
676 |
+
}
|
677 |
+
],
|
678 |
+
"source": [
|
679 |
+
"import gradio as gr\n",
|
680 |
+
"\n",
|
681 |
+
"def greet(name, intensity):\n",
|
682 |
+
" return \"Hello, \" + name + \"!\" * int(intensity)\n",
|
683 |
+
"\n",
|
684 |
+
"demo = gr.Interface(\n",
|
685 |
+
" fn=greet,\n",
|
686 |
+
" inputs=[\"text\", \"slider\"],\n",
|
687 |
+
" outputs=[\"text\"],\n",
|
688 |
+
")\n",
|
689 |
+
"\n",
|
690 |
+
"demo.launch()"
|
691 |
]
|
692 |
},
|
693 |
{
|
694 |
"cell_type": "code",
|
695 |
"execution_count": null,
|
696 |
+
"id": "74837fee",
|
697 |
+
"metadata": {},
|
698 |
+
"outputs": [],
|
699 |
+
"source": []
|
700 |
+
},
|
701 |
+
{
|
702 |
+
"cell_type": "code",
|
703 |
+
"execution_count": null,
|
704 |
+
"id": "f61cb7c0",
|
705 |
"metadata": {},
|
706 |
"outputs": [],
|
707 |
"source": []
|
image1.png
ADDED
![]() |
model.pkl
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:9eec5b97500ca3fadcc8903b116455bd3af6f7e9b6151b8b939d7d5fd15055ea
|
3 |
+
size 47062206
|