{ "cells": [ { "cell_type": "markdown", "metadata": { "id": "GJBs_flRovLc" }, "source": [ "***Devision789***\n", "\n", "**https://github.com/Devision789**\n", "\n", "***ĐỌC SỐ THÙNG TRÊN CONTAINER ***\n", "\n", "lưu ý nếu các bạn chạy local thì xem xét trang github inference\n", "yêu cầu bản python và cài đúng nếu bản python không phù hợp thì hệ thống sẽ báo lỗi no module name distubils ( có thể package khác mình quên tên nó rồi )\n", "Mọi người cần hỗ trợ về vấn đề gì có thể liên hệ mình.\n" ] }, { "cell_type": "code", "source": [ "pip install inference" ], "metadata": { "id": "bN9p2OeRT6aP", "outputId": "217e8e8e-8598-4142-af3f-edbdedeeeeb5", "colab": { "base_uri": "https://localhost:8080/" } }, "execution_count": null, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Collecting inference\n", " Downloading inference-0.13.0-py3-none-any.whl (471 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m471.7/471.7 kB\u001b[0m \u001b[31m3.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting APScheduler<=3.10.1 (from inference)\n", " Downloading APScheduler-3.10.1-py3-none-any.whl (59 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m59.2/59.2 kB\u001b[0m \u001b[31m3.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting cython<=3.0.0 (from inference)\n", " Downloading Cython-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.6/3.6 MB\u001b[0m \u001b[31m11.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting python-dotenv<=2.0.0 (from inference)\n", " Downloading python_dotenv-1.0.1-py3-none-any.whl (19 kB)\n", "Collecting fastapi<0.111,>=0.100 (from inference)\n", " Downloading fastapi-0.110.3-py3-none-any.whl (91 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m91.8/91.8 kB\u001b[0m \u001b[31m10.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: numpy<=1.26.4 in /usr/local/lib/python3.10/dist-packages (from inference) (1.25.2)\n", "Requirement already satisfied: opencv-python<=4.8.0.76 in /usr/local/lib/python3.10/dist-packages (from inference) (4.8.0.76)\n", "Collecting piexif<=1.1.3 (from inference)\n", " Downloading piexif-1.1.3-py2.py3-none-any.whl (20 kB)\n", "Requirement already satisfied: pillow<11.0 in /usr/local/lib/python3.10/dist-packages (from inference) (9.4.0)\n", "Collecting prometheus-fastapi-instrumentator<=6.0.0 (from inference)\n", " Downloading prometheus_fastapi_instrumentator-6.0.0-py3-none-any.whl (18 kB)\n", "Collecting redis<6.0.0 (from inference)\n", " Downloading redis-5.0.7-py3-none-any.whl (252 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m252.1/252.1 kB\u001b[0m \u001b[31m19.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: requests>=2.26.0 in /usr/local/lib/python3.10/dist-packages (from inference) (2.31.0)\n", "Collecting rich<=13.5.2 (from inference)\n", " Downloading rich-13.5.2-py3-none-any.whl (239 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m239.7/239.7 kB\u001b[0m \u001b[31m22.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting supervision<1.0.0,>=0.20.0 (from inference)\n", " Downloading supervision-0.21.0-py3-none-any.whl (123 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m124.0/124.0 kB\u001b[0m \u001b[31m13.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting pybase64<2.0.0 (from inference)\n", " Downloading pybase64-1.3.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (65 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m66.0/66.0 kB\u001b[0m \u001b[31m5.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: scikit-image>=0.19.0 in /usr/local/lib/python3.10/dist-packages (from inference) (0.19.3)\n", "Collecting requests-toolbelt>=1.0.0 (from inference)\n", " Downloading requests_toolbelt-1.0.0-py2.py3-none-any.whl (54 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m54.5/54.5 kB\u001b[0m \u001b[31m7.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: wheel>=0.38.1 in /usr/local/lib/python3.10/dist-packages (from inference) (0.43.0)\n", "Requirement already satisfied: setuptools<70.0.0,>=65.5.1 in /usr/local/lib/python3.10/dist-packages (from inference) (67.7.2)\n", "Collecting pytest-asyncio<=0.21.1 (from inference)\n", " Downloading pytest_asyncio-0.21.1-py3-none-any.whl (13 kB)\n", "Requirement already satisfied: networkx>=3.1 in /usr/local/lib/python3.10/dist-packages (from inference) (3.3)\n", "Requirement already satisfied: pydantic~=2.6 in /usr/local/lib/python3.10/dist-packages (from inference) (2.8.0)\n", "Collecting openai>=1.12.0 (from inference)\n", " Downloading openai-1.35.12-py3-none-any.whl (328 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m328.4/328.4 kB\u001b[0m \u001b[31m20.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting structlog>=24.1.0 (from inference)\n", " Downloading structlog-24.2.0-py3-none-any.whl (65 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m65.8/65.8 kB\u001b[0m \u001b[31m9.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting zxing-cpp>=2.2.0 (from inference)\n", " Downloading zxing_cpp-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (940 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m940.0/940.0 kB\u001b[0m \u001b[31m20.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting boto3<=1.34.123 (from inference)\n", " Downloading boto3-1.34.123-py3-none-any.whl (139 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m139.3/139.3 kB\u001b[0m \u001b[31m19.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from inference) (4.12.2)\n", "Collecting pydot>=2.0.0 (from inference)\n", " Downloading pydot-2.0.0-py3-none-any.whl (22 kB)\n", "Requirement already satisfied: shapely<2.1.0,>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from inference) (2.0.4)\n", "Collecting onnxruntime<=1.15.1 (from inference)\n", " Downloading onnxruntime-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.9 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.9/5.9 MB\u001b[0m \u001b[31m28.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting GPUtil==1.4.0 (from inference)\n", " Downloading GPUtil-1.4.0.tar.gz (5.5 kB)\n", " Preparing metadata (setup.py) ... \u001b[?25l\u001b[?25hdone\n", "Collecting docker==6.1.3 (from inference)\n", " Downloading docker-6.1.3-py3-none-any.whl (148 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m148.1/148.1 kB\u001b[0m \u001b[31m21.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting typer==0.9.0 (from inference)\n", " Downloading typer-0.9.0-py3-none-any.whl (45 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m45.9/45.9 kB\u001b[0m \u001b[31m5.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting skypilot[aws,gcp]==0.5.0 (from inference)\n", " Downloading skypilot-0.5.0-py3-none-any.whl (905 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m906.0/906.0 kB\u001b[0m \u001b[31m38.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: PyYAML>=6.0.0 in /usr/local/lib/python3.10/dist-packages (from inference) (6.0.1)\n", "Requirement already satisfied: tqdm>=4.0.0 in /usr/local/lib/python3.10/dist-packages (from inference) (4.66.4)\n", "Requirement already satisfied: py-cpuinfo>=9.0.0 in /usr/local/lib/python3.10/dist-packages (from inference) (9.0.0)\n", "Requirement already satisfied: aiohttp>=3.9.0 in /usr/local/lib/python3.10/dist-packages (from inference) (3.9.5)\n", "Collecting backoff>=2.2.0 (from inference)\n", " Downloading backoff-2.2.1-py3-none-any.whl (15 kB)\n", "Collecting dataclasses-json>=0.6.0 (from inference)\n", " Downloading dataclasses_json-0.6.7-py3-none-any.whl (28 kB)\n", "Collecting aioresponses>=0.7.6 (from inference)\n", " Downloading aioresponses-0.7.6-py2.py3-none-any.whl (11 kB)\n", "Requirement already satisfied: packaging>=14.0 in /usr/local/lib/python3.10/dist-packages (from docker==6.1.3->inference) (24.1)\n", "Requirement already satisfied: urllib3>=1.26.0 in /usr/local/lib/python3.10/dist-packages (from docker==6.1.3->inference) (2.0.7)\n", "Requirement already satisfied: websocket-client>=0.32.0 in /usr/local/lib/python3.10/dist-packages (from docker==6.1.3->inference) (1.8.0)\n", "Requirement already satisfied: cachetools in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (5.3.3)\n", "Requirement already satisfied: click>=7.0 in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (8.1.7)\n", "Collecting colorama (from skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB)\n", "Requirement already satisfied: cryptography in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (42.0.8)\n", "Requirement already satisfied: jinja2>=3.0 in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (3.1.4)\n", "Requirement already satisfied: jsonschema in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (4.19.2)\n", "Requirement already satisfied: pandas>=1.3.0 in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (2.0.3)\n", "Collecting pendulum (from skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading pendulum-3.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (384 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m384.9/384.9 kB\u001b[0m \u001b[31m37.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: PrettyTable>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (3.10.0)\n", "Requirement already satisfied: tabulate in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (0.9.0)\n", "Requirement already satisfied: filelock>=3.6.0 in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (3.15.4)\n", "Requirement already satisfied: psutil in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (5.9.5)\n", "Collecting pulp (from skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading PuLP-2.8.0-py3-none-any.whl (17.7 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m17.7/17.7 MB\u001b[0m \u001b[31m51.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting urllib3>=1.26.0 (from docker==6.1.3->inference)\n", " Downloading urllib3-1.26.19-py2.py3-none-any.whl (143 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m143.9/143.9 kB\u001b[0m \u001b[31m18.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting awscli>=1.27.10 (from skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading awscli-1.33.24-py3-none-any.whl (4.5 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m4.5/4.5 MB\u001b[0m \u001b[31m75.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting botocore>=1.29.10 (from skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading botocore-1.34.142-py3-none-any.whl (12.4 MB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m12.4/12.4 MB\u001b[0m \u001b[31m57.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting colorama (from skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading colorama-0.4.4-py2.py3-none-any.whl (16 kB)\n", "Requirement already satisfied: google-api-python-client>=2.69.0 in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (2.84.0)\n", "Requirement already satisfied: google-cloud-storage in /usr/local/lib/python3.10/dist-packages (from skypilot[aws,gcp]==0.5.0->inference) (2.8.0)\n", "Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.9.0->inference) (1.3.1)\n", "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.9.0->inference) (23.2.0)\n", "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.9.0->inference) (1.4.1)\n", "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.9.0->inference) (6.0.5)\n", "Requirement already satisfied: yarl<2.0,>=1.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.9.0->inference) (1.9.4)\n", "Requirement already satisfied: async-timeout<5.0,>=4.0 in /usr/local/lib/python3.10/dist-packages (from aiohttp>=3.9.0->inference) (4.0.3)\n", "Requirement already satisfied: six>=1.4.0 in /usr/local/lib/python3.10/dist-packages (from APScheduler<=3.10.1->inference) (1.16.0)\n", "Requirement already satisfied: pytz in /usr/local/lib/python3.10/dist-packages (from APScheduler<=3.10.1->inference) (2023.4)\n", "Requirement already satisfied: tzlocal!=3.*,>=2.0 in /usr/local/lib/python3.10/dist-packages (from APScheduler<=3.10.1->inference) (5.2)\n", "Collecting jmespath<2.0.0,>=0.7.1 (from boto3<=1.34.123->inference)\n", " Downloading jmespath-1.0.1-py3-none-any.whl (20 kB)\n", "Collecting s3transfer<0.11.0,>=0.10.0 (from boto3<=1.34.123->inference)\n", " Downloading s3transfer-0.10.2-py3-none-any.whl (82 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m82.7/82.7 kB\u001b[0m \u001b[31m12.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting marshmallow<4.0.0,>=3.18.0 (from dataclasses-json>=0.6.0->inference)\n", " Downloading marshmallow-3.21.3-py3-none-any.whl (49 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m49.2/49.2 kB\u001b[0m \u001b[31m7.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting typing-inspect<1,>=0.4.0 (from dataclasses-json>=0.6.0->inference)\n", " Downloading typing_inspect-0.9.0-py3-none-any.whl (8.8 kB)\n", "Collecting starlette<0.38.0,>=0.37.2 (from fastapi<0.111,>=0.100->inference)\n", " Downloading starlette-0.37.2-py3-none-any.whl (71 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m71.9/71.9 kB\u001b[0m \u001b[31m9.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting coloredlogs (from onnxruntime<=1.15.1->inference)\n", " Downloading coloredlogs-15.0.1-py2.py3-none-any.whl (46 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m46.0/46.0 kB\u001b[0m \u001b[31m5.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: flatbuffers in /usr/local/lib/python3.10/dist-packages (from onnxruntime<=1.15.1->inference) (24.3.25)\n", "Requirement already satisfied: protobuf in /usr/local/lib/python3.10/dist-packages (from onnxruntime<=1.15.1->inference) (3.20.3)\n", "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from onnxruntime<=1.15.1->inference) (1.12.1)\n", "Requirement already satisfied: anyio<5,>=3.5.0 in /usr/local/lib/python3.10/dist-packages (from openai>=1.12.0->inference) (3.7.1)\n", "Requirement already satisfied: distro<2,>=1.7.0 in /usr/lib/python3/dist-packages (from openai>=1.12.0->inference) (1.7.0)\n", "Collecting httpx<1,>=0.23.0 (from openai>=1.12.0->inference)\n", " Downloading httpx-0.27.0-py3-none-any.whl (75 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m75.6/75.6 kB\u001b[0m \u001b[31m10.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: sniffio in /usr/local/lib/python3.10/dist-packages (from openai>=1.12.0->inference) (1.3.1)\n", "Requirement already satisfied: prometheus-client<1.0.0,>=0.8.0 in /usr/local/lib/python3.10/dist-packages (from prometheus-fastapi-instrumentator<=6.0.0->inference) (0.20.0)\n", "Requirement already satisfied: annotated-types>=0.4.0 in /usr/local/lib/python3.10/dist-packages (from pydantic~=2.6->inference) (0.7.0)\n", "Requirement already satisfied: pydantic-core==2.20.0 in /usr/local/lib/python3.10/dist-packages (from pydantic~=2.6->inference) (2.20.0)\n", "Requirement already satisfied: pyparsing>=3 in /usr/local/lib/python3.10/dist-packages (from pydot>=2.0.0->inference) (3.1.2)\n", "Requirement already satisfied: pytest>=7.0.0 in /usr/local/lib/python3.10/dist-packages (from pytest-asyncio<=0.21.1->inference) (7.4.4)\n", "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->inference) (3.3.2)\n", "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->inference) (3.7)\n", "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->inference) (2024.6.2)\n", "Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.10/dist-packages (from rich<=13.5.2->inference) (3.0.0)\n", "Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/local/lib/python3.10/dist-packages (from rich<=13.5.2->inference) (2.16.1)\n", "Requirement already satisfied: scipy>=1.4.1 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.19.0->inference) (1.11.4)\n", "Requirement already satisfied: imageio>=2.4.1 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.19.0->inference) (2.31.6)\n", "Requirement already satisfied: tifffile>=2019.7.26 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.19.0->inference) (2024.6.18)\n", "Requirement already satisfied: PyWavelets>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from scikit-image>=0.19.0->inference) (1.6.0)\n", "Requirement already satisfied: defusedxml<0.8.0,>=0.7.1 in /usr/local/lib/python3.10/dist-packages (from supervision<1.0.0,>=0.20.0->inference) (0.7.1)\n", "Requirement already satisfied: matplotlib>=3.6.0 in /usr/local/lib/python3.10/dist-packages (from supervision<1.0.0,>=0.20.0->inference) (3.7.1)\n", "Requirement already satisfied: opencv-python-headless>=4.5.5.64 in /usr/local/lib/python3.10/dist-packages (from supervision<1.0.0,>=0.20.0->inference) (4.10.0.84)\n", "Requirement already satisfied: exceptiongroup in /usr/local/lib/python3.10/dist-packages (from anyio<5,>=3.5.0->openai>=1.12.0->inference) (1.2.1)\n", "Collecting docutils<0.17,>=0.10 (from awscli>=1.27.10->skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading docutils-0.16-py2.py3-none-any.whl (548 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m548.2/548.2 kB\u001b[0m \u001b[31m47.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting rsa<4.8,>=3.1.2 (from awscli>=1.27.10->skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading rsa-4.7.2-py3-none-any.whl (34 kB)\n", "Requirement already satisfied: python-dateutil<3.0.0,>=2.1 in /usr/local/lib/python3.10/dist-packages (from botocore>=1.29.10->skypilot[aws,gcp]==0.5.0->inference) (2.8.2)\n", "Requirement already satisfied: httplib2<1dev,>=0.15.0 in /usr/local/lib/python3.10/dist-packages (from google-api-python-client>=2.69.0->skypilot[aws,gcp]==0.5.0->inference) (0.22.0)\n", "Requirement already satisfied: google-auth<3.0.0dev,>=1.19.0 in /usr/local/lib/python3.10/dist-packages (from google-api-python-client>=2.69.0->skypilot[aws,gcp]==0.5.0->inference) (2.27.0)\n", "Requirement already satisfied: google-auth-httplib2>=0.1.0 in /usr/local/lib/python3.10/dist-packages (from google-api-python-client>=2.69.0->skypilot[aws,gcp]==0.5.0->inference) (0.1.1)\n", "Requirement already satisfied: google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5 in /usr/local/lib/python3.10/dist-packages (from google-api-python-client>=2.69.0->skypilot[aws,gcp]==0.5.0->inference) (2.16.2)\n", "Requirement already satisfied: uritemplate<5,>=3.0.1 in /usr/local/lib/python3.10/dist-packages (from google-api-python-client>=2.69.0->skypilot[aws,gcp]==0.5.0->inference) (4.1.1)\n", "Collecting httpcore==1.* (from httpx<1,>=0.23.0->openai>=1.12.0->inference)\n", " Downloading httpcore-1.0.5-py3-none-any.whl (77 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m77.9/77.9 kB\u001b[0m \u001b[31m10.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hCollecting h11<0.15,>=0.13 (from httpcore==1.*->httpx<1,>=0.23.0->openai>=1.12.0->inference)\n", " Downloading h11-0.14.0-py3-none-any.whl (58 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m58.3/58.3 kB\u001b[0m \u001b[31m6.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2>=3.0->skypilot[aws,gcp]==0.5.0->inference) (2.1.5)\n", "Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.10/dist-packages (from markdown-it-py>=2.2.0->rich<=13.5.2->inference) (0.1.2)\n", "Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.6.0->supervision<1.0.0,>=0.20.0->inference) (1.2.1)\n", "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.6.0->supervision<1.0.0,>=0.20.0->inference) (0.12.1)\n", "Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.6.0->supervision<1.0.0,>=0.20.0->inference) (4.53.0)\n", "Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.10/dist-packages (from matplotlib>=3.6.0->supervision<1.0.0,>=0.20.0->inference) (1.4.5)\n", "Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas>=1.3.0->skypilot[aws,gcp]==0.5.0->inference) (2024.1)\n", "Requirement already satisfied: wcwidth in /usr/local/lib/python3.10/dist-packages (from PrettyTable>=2.0.0->skypilot[aws,gcp]==0.5.0->inference) (0.2.13)\n", "Requirement already satisfied: iniconfig in /usr/local/lib/python3.10/dist-packages (from pytest>=7.0.0->pytest-asyncio<=0.21.1->inference) (2.0.0)\n", "Requirement already satisfied: pluggy<2.0,>=0.12 in /usr/local/lib/python3.10/dist-packages (from pytest>=7.0.0->pytest-asyncio<=0.21.1->inference) (1.5.0)\n", "Requirement already satisfied: tomli>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from pytest>=7.0.0->pytest-asyncio<=0.21.1->inference) (2.0.1)\n", "Collecting mypy-extensions>=0.3.0 (from typing-inspect<1,>=0.4.0->dataclasses-json>=0.6.0->inference)\n", " Downloading mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)\n", "Collecting humanfriendly>=9.1 (from coloredlogs->onnxruntime<=1.15.1->inference)\n", " Downloading humanfriendly-10.0-py2.py3-none-any.whl (86 kB)\n", "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m86.8/86.8 kB\u001b[0m \u001b[31m9.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n", "\u001b[?25hRequirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.10/dist-packages (from cryptography->skypilot[aws,gcp]==0.5.0->inference) (1.16.0)\n", "Requirement already satisfied: google-cloud-core<3.0dev,>=2.3.0 in /usr/local/lib/python3.10/dist-packages (from google-cloud-storage->skypilot[aws,gcp]==0.5.0->inference) (2.3.3)\n", "Requirement already satisfied: google-resumable-media>=2.3.2 in /usr/local/lib/python3.10/dist-packages (from google-cloud-storage->skypilot[aws,gcp]==0.5.0->inference) (2.7.1)\n", "Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.10/dist-packages (from jsonschema->skypilot[aws,gcp]==0.5.0->inference) (2023.12.1)\n", "Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.10/dist-packages (from jsonschema->skypilot[aws,gcp]==0.5.0->inference) (0.35.1)\n", "Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.10/dist-packages (from jsonschema->skypilot[aws,gcp]==0.5.0->inference) (0.18.1)\n", "Collecting time-machine>=2.6.0 (from pendulum->skypilot[aws,gcp]==0.5.0->inference)\n", " Downloading time_machine-2.14.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (34 kB)\n", "Requirement already satisfied: mpmath<1.4.0,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->onnxruntime<=1.15.1->inference) (1.3.0)\n", "Requirement already satisfied: pycparser in /usr/local/lib/python3.10/dist-packages (from cffi>=1.12->cryptography->skypilot[aws,gcp]==0.5.0->inference) (2.22)\n", "Requirement already satisfied: googleapis-common-protos<2.0.dev0,>=1.56.2 in /usr/local/lib/python3.10/dist-packages (from google-api-core!=2.0.*,!=2.1.*,!=2.2.*,!=2.3.0,<3.0.0dev,>=1.31.5->google-api-python-client>=2.69.0->skypilot[aws,gcp]==0.5.0->inference) (1.63.2)\n", "Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.10/dist-packages (from google-auth<3.0.0dev,>=1.19.0->google-api-python-client>=2.69.0->skypilot[aws,gcp]==0.5.0->inference) (0.4.0)\n", "Requirement already satisfied: google-crc32c<2.0dev,>=1.0 in /usr/local/lib/python3.10/dist-packages (from google-resumable-media>=2.3.2->google-cloud-storage->skypilot[aws,gcp]==0.5.0->inference) (1.5.0)\n", "Requirement already satisfied: pyasn1>=0.1.3 in /usr/local/lib/python3.10/dist-packages (from rsa<4.8,>=3.1.2->awscli>=1.27.10->skypilot[aws,gcp]==0.5.0->inference) (0.6.0)\n", "Building wheels for collected packages: GPUtil\n", " Building wheel for GPUtil (setup.py) ... \u001b[?25l\u001b[?25hdone\n", " Created wheel for GPUtil: filename=GPUtil-1.4.0-py3-none-any.whl size=7394 sha256=999149d9d1f1a378f755be99b8701b03f362a0a5e2840b1559c3644a67f55dbb\n", " Stored in directory: /root/.cache/pip/wheels/a9/8a/bd/81082387151853ab8b6b3ef33426e98f5cbfebc3c397a9d4d0\n", "Successfully built GPUtil\n", "Installing collected packages: GPUtil, zxing-cpp, urllib3, typer, structlog, rsa, redis, python-dotenv, pydot, pybase64, pulp, piexif, mypy-extensions, marshmallow, jmespath, humanfriendly, h11, docutils, cython, colorama, backoff, APScheduler, typing-inspect, time-machine, starlette, rich, pytest-asyncio, httpcore, coloredlogs, botocore, supervision, s3transfer, requests-toolbelt, pendulum, onnxruntime, httpx, fastapi, docker, dataclasses-json, aioresponses, skypilot, prometheus-fastapi-instrumentator, openai, boto3, awscli, inference\n", " Attempting uninstall: urllib3\n", " Found existing installation: urllib3 2.0.7\n", " Uninstalling urllib3-2.0.7:\n", " Successfully uninstalled urllib3-2.0.7\n", " Attempting uninstall: typer\n", " Found existing installation: typer 0.12.3\n", " Uninstalling typer-0.12.3:\n", " Successfully uninstalled typer-0.12.3\n", " Attempting uninstall: rsa\n", " Found existing installation: rsa 4.9\n", " Uninstalling rsa-4.9:\n", " Successfully uninstalled rsa-4.9\n", " Attempting uninstall: pydot\n", " Found existing installation: pydot 1.4.2\n", " Uninstalling pydot-1.4.2:\n", " Successfully uninstalled pydot-1.4.2\n", " Attempting uninstall: docutils\n", " Found existing installation: docutils 0.18.1\n", " Uninstalling docutils-0.18.1:\n", " Successfully uninstalled docutils-0.18.1\n", " Attempting uninstall: cython\n", " Found existing installation: Cython 3.0.10\n", " Uninstalling Cython-3.0.10:\n", " Successfully uninstalled Cython-3.0.10\n", " Attempting uninstall: rich\n", " Found existing installation: rich 13.7.1\n", " Uninstalling rich-13.7.1:\n", " Successfully uninstalled rich-13.7.1\n", "Successfully installed APScheduler-3.10.1 GPUtil-1.4.0 aioresponses-0.7.6 awscli-1.33.24 backoff-2.2.1 boto3-1.34.123 botocore-1.34.142 colorama-0.4.4 coloredlogs-15.0.1 cython-3.0.0 dataclasses-json-0.6.7 docker-6.1.3 docutils-0.16 fastapi-0.110.3 h11-0.14.0 httpcore-1.0.5 httpx-0.27.0 humanfriendly-10.0 inference-0.13.0 jmespath-1.0.1 marshmallow-3.21.3 mypy-extensions-1.0.0 onnxruntime-1.15.1 openai-1.35.12 pendulum-3.0.0 piexif-1.1.3 prometheus-fastapi-instrumentator-6.0.0 pulp-2.8.0 pybase64-1.3.2 pydot-2.0.0 pytest-asyncio-0.21.1 python-dotenv-1.0.1 redis-5.0.7 requests-toolbelt-1.0.0 rich-13.5.2 rsa-4.7.2 s3transfer-0.10.2 skypilot-0.5.0 starlette-0.37.2 structlog-24.2.0 supervision-0.21.0 time-machine-2.14.2 typer-0.9.0 typing-inspect-0.9.0 urllib3-1.26.19 zxing-cpp-2.2.0\n" ] } ] }, { "cell_type": "code", "source": [ "pip install pandas" ], "metadata": { "id": "2hniGep2Wx_S", "outputId": "565f27fd-68f0-4a8a-9ec0-e97ee682e4d4", "colab": { "base_uri": "https://localhost:8080/" } }, "execution_count": null, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Requirement already satisfied: pandas in /usr/local/lib/python3.10/dist-packages (2.0.3)\n", "Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas) (2.8.2)\n", "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas) (2023.4)\n", "Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas) (2024.1)\n", "Requirement already satisfied: numpy>=1.21.0 in /usr/local/lib/python3.10/dist-packages (from pandas) (1.25.2)\n", "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.2->pandas) (1.16.0)\n" ] } ] }, { "cell_type": "code", "source": [ "import os\n", "import pandas as pd\n", "from inference_sdk import InferenceHTTPClient\n", "\n", "# Khởi tạo khách hàng inference\n", "CLIENT = InferenceHTTPClient(\n", " api_url=\"https://infer.roboflow.com\",\n", " api_key=\"............\" # thay bằng api của bạn\n", ")\n", "\n", "# Danh sách các ảnh cần xử lý\n", "image_files = [\n", " \"/content/tim-hieu-ve-ky-hieu-cac-loai-container-4.jpg\",\n", " \"/content/vi-tri-seal-niem-phong-tren-container.jpg\",\n", " \"/content/59ae0d3728579_1504578871.jpg\",\n", " \"/content/60b9d63a33954_1622791738.jpeg\",\n", " \"/content/cửa-container.jpg\"\n", "\n", " # Thêm đường dẫn đến các ảnh khác ở đây\n", "]\n", "\n", "# Đường dẫn tới file Excel\n", "excel_file_path = \"/content/container_data3.xlsx\"\n", "\n", "# Hàm để phân tích kết quả OCR\n", "def parse_ocr_result(result, image_name):\n", " return {\n", " \"Image Name\": image_name,\n", " \"Result\": result.get(\"result\", \"\"),\n", " \"Time\": result.get(\"time\", \"\"),\n", " \"Parent ID\": result.get(\"parent_id\", \"\")\n", " }\n", "\n", "# Hàm để thêm dữ liệu vào file Excel\n", "def append_to_excel(df, file_path):\n", " if os.path.exists(file_path):\n", " # Nếu file tồn tại, thêm dữ liệu vào file hiện có\n", " existing_df = pd.read_excel(file_path)\n", " updated_df = pd.concat([existing_df, df], ignore_index=True)\n", " else:\n", " # Nếu file không tồn tại, tạo một DataFrame mới\n", " updated_df = df\n", "\n", " # Lưu DataFrame đã cập nhật vào file Excel\n", " updated_df.to_excel(file_path, index=False)\n", "\n", "# Danh sách để lưu các kết quả đã phân tích\n", "all_data = []\n", "\n", "# Lặp qua các ảnh và thực hiện OCR\n", "for image_file in image_files:\n", " # Thực hiện OCR trên ảnh\n", " result = CLIENT.ocr_image(inference_input=image_file)\n", "\n", " # In kết quả\n", " print(result)\n", "\n", " # Phân tích kết quả OCR\n", " parsed_data = parse_ocr_result(result, os.path.basename(image_file))\n", " all_data.append(parsed_data)\n", "\n", "# Tạo DataFrame từ tất cả các kết quả đã phân tích\n", "df = pd.DataFrame(all_data)\n", "\n", "# Thêm dữ liệu đã phân tích vào file Excel\n", "append_to_excel(df, excel_file_path)\n", "\n", "print(f\"Dữ liệu đã được lưu vào {excel_file_path}\")\n" ], "metadata": { "id": "mP56tRFJZRGW", "outputId": "87fd63e7-2151-47ab-d49d-063995e34940", "colab": { "base_uri": "https://localhost:8080/" } }, "execution_count": null, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "{'result': 'BRINNBOX a OMAS - w BNDOX - 606071 6 2261 MAX.GROSS TARE 30.480 KGS 67.200 LBS 2.185 KGS 4.820 LBS 62.380 LBS 33.2 CU.M. 1.173 CU.FT MAX.CARGO 28.295 KGS : CU.CAP.', 'time': 1.513302848999956, 'parent_id': None}\n", "{'result': 'TWCU 216664 6 2261 30 480 kg 67 200 Ib 2100 kg 4630 Ib 28 380 kg S 62570 Ib JJ MAX GROSS TARE WWW. jjsh pping.cn PAYLOAD B9 CU. CAP. - 33.2 cu.m. 1172 cu.ft. SINGAMAS', 'time': 1.5103129280000758, 'parent_id': None}\n", "{'result': 'GLDU 053631 3 45G1 MGW. TARE NET CU.CAP 30.480 KGS 61.200 LES 3.929 8.640 E KES 3A5B LOS 76.2 CUM 2,690 CUFT 516161 7 42G1 32508 K5S 71650 LBS 3708 AES 8168 LBS 28M S 63482 LBS 878 CM 2394 CUFI. GOLD CNTNERODAF - 2 UTION HIGH TRAILER - -u', 'time': 1.6298546919997534, 'parent_id': None}\n", "{'result': 'KFS www.flo ens.com 32500 71.650 LB 3.720 5 8.200 22780 M 63.450 LB 67.7 CUM 2390 CUFT. MAX GROSS TARE - MAX CARGO a CAP. -', 'time': 1.4038100689999737, 'parent_id': None}\n", "{'result': 'NZLU 218146 2 22G1 30,480 KGS 67.200 LBS 2,120 KGS 4.670 LBS 28.360 KGS C. 62.530 LBS MAX.GROSS TARE cao EL-NET 33.2 CU.M. 1.170 CU.FT. CU CAP. INTE RNATIONAL LUXURY CONTAINER CIMC a', 'time': 1.4752892129999964, 'parent_id': None}\n", "Dữ liệu đã được lưu vào /content/container_data3.xlsx\n" ] } ] } ], "metadata": { "colab": { "provenance": [] }, "kernelspec": { "display_name": "Python 3", "name": "python3" } }, "nbformat": 4, "nbformat_minor": 0 }