{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "435a6f23", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Note: you may need to restart the kernel to use updated packages.\n", "Requirement already satisfied: fastbook in c:\\users\\adnan\\anaconda3\\lib\\site-packages (0.0.28)\n", "Requirement already satisfied: requests in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (2.28.1)\n", "Requirement already satisfied: fastai>=2.6 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (2.7.9)\n", "Requirement already satisfied: pip in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (22.1.2)\n", "Requirement already satisfied: sentencepiece in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (0.1.97)\n", "Requirement already satisfied: graphviz in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (0.20.1)\n", "Requirement already satisfied: datasets in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (2.4.0)\n", "Requirement already satisfied: packaging in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (21.3)\n", "Requirement already satisfied: pandas in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (1.4.3)\n", "Requirement already satisfied: transformers in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastbook) (4.21.3)\n", "Requirement already satisfied: fastdownload<2,>=0.0.5 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (0.0.7)\n", "Requirement already satisfied: matplotlib in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (3.5.2)\n", "Requirement already satisfied: scikit-learn in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (1.1.1)\n", "Requirement already satisfied: spacy<4 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (3.4.1)\n", "Requirement already satisfied: fastprogress>=0.2.4 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (1.0.3)\n", "Requirement already satisfied: scipy in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (1.7.3)\n", "Requirement already satisfied: pillow>6.0.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (9.2.0)\n", "Requirement already satisfied: torch<1.14,>=1.7 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (1.12.1)\n", "Requirement already satisfied: torchvision>=0.8.2 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (0.13.1)\n", "Requirement already satisfied: fastcore<1.6,>=1.4.5 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (1.5.26)\n", "Requirement already satisfied: pyyaml in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from fastai>=2.6->fastbook) (6.0)\n", "Requirement already satisfied: dill<0.3.6 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (0.3.5.1)\n", "Requirement already satisfied: pyarrow>=6.0.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (9.0.0)\n", "Requirement already satisfied: huggingface-hub<1.0.0,>=0.1.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (0.9.1)\n", "Requirement already satisfied: aiohttp in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (3.8.1)\n", "Requirement already satisfied: fsspec[http]>=2021.11.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (2022.7.1)\n", "Requirement already satisfied: xxhash in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (3.0.0)\n", "Requirement already satisfied: responses<0.19 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (0.18.0)\n", "Requirement already satisfied: numpy>=1.17 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (1.21.5)\n", "Requirement already satisfied: multiprocess in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (0.70.13)\n", "Requirement already satisfied: tqdm>=4.62.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from datasets->fastbook) (4.64.0)\n", "Requirement already satisfied: certifi>=2017.4.17 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from requests->fastbook) (2022.6.15)\n", "Requirement already satisfied: charset-normalizer<3,>=2 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from requests->fastbook) (2.0.4)\n", "Requirement already satisfied: idna<4,>=2.5 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from requests->fastbook) (3.3)\n", "Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from requests->fastbook) (1.26.11)\n", "Requirement already satisfied: pyparsing!=3.0.5,>=2.0.2 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from packaging->fastbook) (3.0.9)\n", "Requirement already satisfied: python-dateutil>=2.8.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from pandas->fastbook) (2.8.2)\n", "Requirement already satisfied: pytz>=2020.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from pandas->fastbook) (2022.1)\n", "Requirement already satisfied: tokenizers!=0.11.3,<0.13,>=0.11.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from transformers->fastbook) (0.12.1)\n", "Requirement already satisfied: filelock in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from transformers->fastbook) (3.6.0)\n", "Requirement already satisfied: regex!=2019.12.17 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from transformers->fastbook) (2022.7.9)\n", "Requirement already satisfied: typing-extensions>=3.7.4.3 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from huggingface-hub<1.0.0,>=0.1.0->datasets->fastbook) (4.3.0)\n", "Requirement already satisfied: six>=1.5 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from python-dateutil>=2.8.1->pandas->fastbook) (1.16.0)\n", "Requirement already satisfied: preshed<3.1.0,>=3.0.2 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (3.0.7)\n", "Requirement already satisfied: langcodes<4.0.0,>=3.2.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (3.3.0)\n", "Requirement already satisfied: jinja2 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (2.11.3)\n", "Requirement already satisfied: spacy-legacy<3.1.0,>=3.0.9 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (3.0.10)\n", "Requirement already satisfied: pathy>=0.3.5 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (0.6.2)\n", "Requirement already satisfied: thinc<8.2.0,>=8.1.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (8.1.1)\n", "Requirement already satisfied: wasabi<1.1.0,>=0.9.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (0.10.1)\n", "Requirement already satisfied: setuptools in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (63.4.1)\n", "Requirement already satisfied: srsly<3.0.0,>=2.4.3 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (2.4.4)\n", "Requirement already satisfied: typer<0.5.0,>=0.3.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (0.4.2)\n", "Requirement already satisfied: pydantic!=1.8,!=1.8.1,<1.10.0,>=1.7.4 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (1.9.2)\n", "Requirement already satisfied: spacy-loggers<2.0.0,>=1.0.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (1.0.3)\n", "Requirement already satisfied: cymem<2.1.0,>=2.0.2 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (2.0.6)\n", "Requirement already satisfied: catalogue<2.1.0,>=2.0.6 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (2.0.8)\n", "Requirement already satisfied: murmurhash<1.1.0,>=0.28.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from spacy<4->fastai>=2.6->fastbook) (1.0.8)\n", "Requirement already satisfied: colorama in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from tqdm>=4.62.1->datasets->fastbook) (0.4.5)\n", "Requirement already satisfied: yarl<2.0,>=1.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from aiohttp->datasets->fastbook) (1.8.1)\n", "Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from aiohttp->datasets->fastbook) (4.0.1)\n", "Requirement already satisfied: aiosignal>=1.1.2 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from aiohttp->datasets->fastbook) (1.2.0)\n", "Requirement already satisfied: attrs>=17.3.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from aiohttp->datasets->fastbook) (21.4.0)\n", "Requirement already satisfied: frozenlist>=1.1.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from aiohttp->datasets->fastbook) (1.2.0)\n", "Requirement already satisfied: multidict<7.0,>=4.5 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from aiohttp->datasets->fastbook) (5.2.0)\n", "Requirement already satisfied: cycler>=0.10 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from matplotlib->fastai>=2.6->fastbook) (0.11.0)\n", "Requirement already satisfied: fonttools>=4.22.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from matplotlib->fastai>=2.6->fastbook) (4.25.0)\n", "Requirement already satisfied: kiwisolver>=1.0.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from matplotlib->fastai>=2.6->fastbook) (1.4.2)\n", "Requirement already satisfied: threadpoolctl>=2.0.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from scikit-learn->fastai>=2.6->fastbook) (2.2.0)\n", "Requirement already satisfied: joblib>=1.0.0 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from scikit-learn->fastai>=2.6->fastbook) (1.1.0)\n", "Requirement already satisfied: smart-open<6.0.0,>=5.2.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from pathy>=0.3.5->spacy<4->fastai>=2.6->fastbook) (5.2.1)\n", "Requirement already satisfied: blis<0.10.0,>=0.7.8 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from thinc<8.2.0,>=8.1.0->spacy<4->fastai>=2.6->fastbook) (0.9.1)\n", "Requirement already satisfied: confection<1.0.0,>=0.0.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from thinc<8.2.0,>=8.1.0->spacy<4->fastai>=2.6->fastbook) (0.0.1)\n", "Requirement already satisfied: click<9.0.0,>=7.1.1 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from typer<0.5.0,>=0.3.0->spacy<4->fastai>=2.6->fastbook) (8.0.4)\n", "Requirement already satisfied: MarkupSafe>=0.23 in c:\\users\\adnan\\anaconda3\\lib\\site-packages (from jinja2->spacy<4->fastai>=2.6->fastbook) (2.0.1)\n", "Note: you may need to restart the kernel to use updated packages.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Note: you may need to restart the kernel to use updated packages.\n" ] } ], "source": [ "%pip install -q gradio\n", "%pip install fastbook\n", "%pip install -Uqq fastai" ] }, { "cell_type": "code", "execution_count": 2, "id": "a89a7628", "metadata": {}, "outputs": [], "source": [ "import fastbook\n", "fastbook.setup_book()\n", "from fastbook import *\n", "from fastai.vision.widgets import *\n", "from fastai.vision.all import *\n", "import gradio as gr" ] }, { "cell_type": "code", "execution_count": 3, "id": "8c95d6bd", "metadata": {}, "outputs": [], "source": [ "#!pip uninstall Pillow\n", "#!pip install Pillow\n", "# import PIL.Image\n", "# if not hasattr(PIL.Image, 'Resampling'): # Pillow<9.0\n", "# PIL.Image.Resampling = PIL.Image\n", "# Now PIL.Image.Resampling.BICUBIC is always recognized." ] }, { "cell_type": "code", "execution_count": 5, "id": "fe4889a5", "metadata": {}, "outputs": [], "source": [ "import pathlib\n", "temp = pathlib.PosixPath\n", "pathlib.PosixPath = pathlib.WindowsPath" ] }, { "cell_type": "code", "execution_count": 8, "id": "d1d0d596", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Running on local URL: http://127.0.0.1:7865\n", "\n", "To create a public link, set `share=True` in `launch()`.\n" ] }, { "data": { "text/plain": [ "(, 'http://127.0.0.1:7865/', None)" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/html": [ "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "learn_inf = load_learner('NovaOrToastModel.pkl')\n", "learn_inf.dls.vocab # Reminds us of the categories\n", "categories = learn_inf.dls.vocab\n", "\n", "def classify_image(img):\n", " pred, idx, probs = learn_inf.predict(img)\n", " return dict(zip(categories, map(float,probs)))\n", "\n", "image = gr.inputs.Image(shape=(192,192)) \n", "label = gr.outputs.Label()\n", "examples = [\"ToastTest.jpeg\"]\n", "\n", "intf = gr.Interface(fn=classify_image, inputs=image, outputs=label, examples=examples)\n", "intf.launch(inline=False)" ] } ], "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.12" } }, "nbformat": 4, "nbformat_minor": 5 }