# Visual Prediction for onnx
onnxフォーマットの重みファイルを実行するCLIアプリケーションです。
DockerコンテナのRedisサーバーを使用します。
Windowsの場合はWSL2上のLinuxの中にDockerがインストールされている必要があります。
Linuxの場合はホスト内にDockerがインストールされている必要があります。
サポートしているAIタスクは以下のとおりです。
- Image Classification
- Object Detection
## 動作確認OS
- `Windows 10 Pro`
- `Windows 11 Pro`
## インストール方法
``` cmd or bash
pip install vp4onnx
```
## vp4onnxの実行方法
``` cmd or bash
# Redisサーバーコンテナの起動(Windowsの場合)
vp4onnx -p <任意のPW> -m redis -c docker_run --wsl_name <WSLのディストリビューションの名前> --wsl_user <WSLのLinux内のDockerが使えるユーザー>
# Redisサーバーコンテナの起動(Linuxの場合)
vp4onnx -p <任意のPW> -m redis -c docker_run
# 推論処理を実行するサーバープロセスの起動
vp4onnx -p <PW> -m server -f
# 画像AIモデルのデプロイ
vp4onnx -p <PW> -m client -c deploy -n <任意のモデル名> --model_img_width <モデルの画像INPUTサイズ(横幅)> --model_img_width <モデルの画像INPUTサイズ(縦幅)> --model_onnx <モデルファイル> --predict_type <推論タイプ(後述)> --custom_predict_py <カスタム推論ファイル(後述)> -f
# predict_typeはモデルのAIタスクやアルゴリズムに合わせて指定する。指定可能なキーワードはヘルプ参照。
# デプロイされている画像AIモデルの一覧
vp4onnx -p <PW> -m client -c deploy_list -f
# 画像AIモデルを起動させて推論可能な状態に(セッションを確保)する
vp4onnx -p <PW> -m client -c start -n <モデル名> --model_provider <推論プロバイダー名(後述)> -f
# model_providerは推論で使用する実行環境を指定する。指定可能なキーワードはヘルプ参照。
# 推論を実行する
vp4onnx -p <PW> -m client -c predict -n <モデル名> -i <推論させる画像ファイル> -o <推論結果の画像ファイル> --output_preview -f
# 画像AIモデルを停止させてセッションを開放
vp4onnx -p <PW> -m client -c start -n <モデル名> -f
# 画像AIモデルのアンデプロイ
vp4onnx -p <PW> -m client -c undeploy -n <モデル名> -f
```
## ビデオキャプチャーによる推論
```
# カメラをキャプチャーしながら推論
vp4onnx -p <PW> -m client -c capture -n <モデル名> --output_preview -f
```
## その他便利なオプション
コマンドラインオプションが多いので、それを保存して再利用できるようにする(例:画像AIモデルの一覧)
``` cmd or bash
# 通常のコマンドに「-u」と「-s」オプションを追加する
vp4onnx -p <PW> -m client -c deploy_list -f -u <オプションを保存するファイル> -s
# 次から使用するときは「-u」を使用する
vp4onnx -u <オプションを保存するファイル>
```
コマンドの実行結果を見やすくする。(例:画像AIモデルの一覧)
``` cmd or bash
# 通常のコマンドに「-f」オプションを追加する
vp4onnx -p <任意PW> -m client -c deploy_list -f
# 「-f」オプションを外せば、結果はjson形式で取得できる
vp4onnx -p <任意PW> -m client -c deploy_list
```
コマンドラインオプションのヘルプ。
``` cmd or bash
vp4onnx -h
```
## vp4onnxコマンドについて
```python -m vp4onnx```の省略形です。
実体は```scripts```ディレクトリ内にあります。
### データの保存場所
```
pathlib.Path(HOME_DIR) / '.vp4onnx'
```
## 動作確認したモデル
|AI Task|base|Model|Memo|
|------|------|------|------|
|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-Nano|*1|
|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-Tiny|*1|
|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-s|*1|
|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-m|*1|
|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-l|*1|
|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-x|*1|
|Object Detection|[YOLOv3](https://github.com/onnx/models/tree/main/vision/object_detection_segmentation/yolov3)|YOLOv3-10|-|
|Object Detection|[YOLOv3](https://github.com/onnx/models/tree/main/vision/object_detection_segmentation/yolov3)|YOLOv3-12|-|
|Object Detection|[YOLOv3](https://github.com/onnx/models/tree/main/vision/object_detection_segmentation/yolov3)|YOLOv3-12-int8|-|
|Image Classification|[EfficientNet-Lite4](https://github.com/onnx/models/tree/main/vision/classification/efficientnet-lite4)|EfficientNet-Lite4-11|-|
|Image Classification|[EfficientNet-Lite4](https://github.com/onnx/models/tree/main/vision/classification/efficientnet-lite4)|EfficientNet-Lite4-11-int8|-|
|Image Classification|[EfficientNet-Lite4](https://github.com/onnx/models/tree/main/vision/classification/efficientnet-lite4)|EfficientNet-Lite4-11-qdq|-|
*1)[pth2onnx](https://github.com/hamacom2004jp/pth2onnx)を使用してONNX形式に変換して使用
## 開発環境構築
```
git clone https://github.com/hamacom2004jp/vp4onnx.git
cd vp4onnx
python -m venv .venv
.venv\Scripts\activate
python.exe -m pip install --upgrade pip
pip install -r requirements.txt
deactivate
```
#### WSL2上にredis-serverのdocker導入
```
# Ubuntuイメージインストール(cmdプロンプトで実行:ubuntuユーザーを作成する)
wsl --install -d Ubuntu-20.04
# Ubuntu初期設定(bash上で実行)
cd /etc/apt
sudo sed -i.bak -e "s/http:\/\/archive\.ubuntu\.com/http:\/\/jp\.archive\.ubuntu\.com/g" sources.list
sudo apt update
sudo apt install -y language-pack-ja manpages-ja manpages-ja-dev
sudo update-locale LANG=ja_JP.UTF-8
# Dockerインストール(bash上で実行)
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
cd ~/
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
sudo apt update
apt-cache policy docker-ce
sudo apt install -y docker-ce docker-compose
sudo usermod -aG docker ubuntu
exit
# Ubuntuイメージ再起動(cmdプロンプトで実行)
wsl --shutdown
wsl --export Ubuntu-20.04 Ubuntu_wsl2_docker-20.04.tar
wsl --unregister Ubuntu-20.04
mkdir Ubuntu_docker-20.04
wsl --import Ubuntu_docker-20.04 Ubuntu_docker-20.04 Ubuntu_wsl2_docker-20.04.tar --version 2
wsl -u ubuntu -d Ubuntu_docker-20.04
# redis-server起動
docker run -d --name redis-container --rm -e TZ=UTC -p 6379:6379 -e REDIS_PASSWORD=<password> ubuntu/redis:latest
```
## pyplにアップするための準備
``` cmd or bash
python setup.py sdist
python setup.py bdist_wheel
```
- pyplのユーザー登録【本番】
https://pypi.org/account/register/
- pyplのユーザー登録【テスト】
https://test.pypi.org/account/register/
- それぞれ2要素認証とAPIトークンを登録
- ホームディレクトリに```.pypirc```を作成
``` .pypirc
[distutils]
index-servers =
pypi
testpypi
[pypi]
repository: https://upload.pypi.org/legacy/
username: __token__
password: 本番環境のAPIトークン
[testpypi]
repository: https://test.pypi.org/legacy/
username: __token__
password: テスト環境のAPIトークン
```
- テスト環境にアップロード
```.pyplrc```を作っていない場合はコマンド実行時にusernameとpasswordを要求される
成功するとURLが返ってくる。
``` cmd or bash
twine upload --repository testpypi dist/*
```
- pipコマンドのテスト
``` cmd or bash
pip install -i https://test.pypi.org/simple/ vp4onnx
```
- 本番環境にアップロード
``` cmd or bash
twine upload --repository pypi dist/*
```
## Lisence
This project is licensed under the MIT License, see the LICENSE.txt file for details
Raw data
{
"_id": null,
"home_page": "https://github.com/hamacom2004jp/vp4onnx",
"name": "vp4onnx",
"maintainer": "hamacom2004jp",
"docs_url": null,
"requires_python": "",
"maintainer_email": "hamacom2004jp@gmail.com",
"keywords": "onnxruntime predict inference image ai model",
"author": "hamacom2004jp",
"author_email": "hamacom2004jp@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/2d/c6/4757b6ce0f9184f4bde8d285ef0b89d30d46dfd82b42be4ee9824ca3e48d/vp4onnx-0.1.1.tar.gz",
"platform": null,
"description": "# Visual Prediction for onnx\r\n\r\nonnx\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306e\u91cd\u307f\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u884c\u3059\u308bCLI\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u3059\u3002\r\nDocker\u30b3\u30f3\u30c6\u30ca\u306eRedis\u30b5\u30fc\u30d0\u30fc\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002\r\nWindows\u306e\u5834\u5408\u306fWSL2\u4e0a\u306eLinux\u306e\u4e2d\u306bDocker\u304c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\r\nLinux\u306e\u5834\u5408\u306f\u30db\u30b9\u30c8\u5185\u306bDocker\u304c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\r\n\r\n\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u308bAI\u30bf\u30b9\u30af\u306f\u4ee5\u4e0b\u306e\u3068\u304a\u308a\u3067\u3059\u3002\r\n- Image Classification\r\n- Object Detection\r\n\r\n\r\n## \u52d5\u4f5c\u78ba\u8a8dOS\r\n- `Windows 10 Pro`\r\n- `Windows 11 Pro`\r\n\r\n\r\n## \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u65b9\u6cd5\r\n\r\n``` cmd or bash\r\npip install vp4onnx\r\n```\r\n\r\n## vp4onnx\u306e\u5b9f\u884c\u65b9\u6cd5\r\n``` cmd or bash\r\n# Redis\u30b5\u30fc\u30d0\u30fc\u30b3\u30f3\u30c6\u30ca\u306e\u8d77\u52d5\uff08Windows\u306e\u5834\u5408\uff09\r\nvp4onnx -p <\u4efb\u610f\u306ePW> -m redis -c docker_run --wsl_name <WSL\u306e\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u306e\u540d\u524d> --wsl_user <WSL\u306eLinux\u5185\u306eDocker\u304c\u4f7f\u3048\u308b\u30e6\u30fc\u30b6\u30fc>\r\n\r\n# Redis\u30b5\u30fc\u30d0\u30fc\u30b3\u30f3\u30c6\u30ca\u306e\u8d77\u52d5\uff08Linux\u306e\u5834\u5408\uff09\r\nvp4onnx -p <\u4efb\u610f\u306ePW> -m redis -c docker_run\r\n\r\n# \u63a8\u8ad6\u51e6\u7406\u3092\u5b9f\u884c\u3059\u308b\u30b5\u30fc\u30d0\u30fc\u30d7\u30ed\u30bb\u30b9\u306e\u8d77\u52d5\r\nvp4onnx -p <PW> -m server -f\r\n\r\n# \u753b\u50cfAI\u30e2\u30c7\u30eb\u306e\u30c7\u30d7\u30ed\u30a4\r\nvp4onnx -p <PW> -m client -c deploy -n <\u4efb\u610f\u306e\u30e2\u30c7\u30eb\u540d> --model_img_width <\u30e2\u30c7\u30eb\u306e\u753b\u50cfINPUT\u30b5\u30a4\u30ba(\u6a2a\u5e45)> --model_img_width <\u30e2\u30c7\u30eb\u306e\u753b\u50cfINPUT\u30b5\u30a4\u30ba(\u7e26\u5e45)> --model_onnx <\u30e2\u30c7\u30eb\u30d5\u30a1\u30a4\u30eb> --predict_type <\u63a8\u8ad6\u30bf\u30a4\u30d7(\u5f8c\u8ff0)> --custom_predict_py <\u30ab\u30b9\u30bf\u30e0\u63a8\u8ad6\u30d5\u30a1\u30a4\u30eb(\u5f8c\u8ff0)> -f\r\n# predict_type\u306f\u30e2\u30c7\u30eb\u306eAI\u30bf\u30b9\u30af\u3084\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306b\u5408\u308f\u305b\u3066\u6307\u5b9a\u3059\u308b\u3002\u6307\u5b9a\u53ef\u80fd\u306a\u30ad\u30fc\u30ef\u30fc\u30c9\u306f\u30d8\u30eb\u30d7\u53c2\u7167\u3002\r\n\r\n# \u30c7\u30d7\u30ed\u30a4\u3055\u308c\u3066\u3044\u308b\u753b\u50cfAI\u30e2\u30c7\u30eb\u306e\u4e00\u89a7\r\nvp4onnx -p <PW> -m client -c deploy_list -f\r\n\r\n# \u753b\u50cfAI\u30e2\u30c7\u30eb\u3092\u8d77\u52d5\u3055\u305b\u3066\u63a8\u8ad6\u53ef\u80fd\u306a\u72b6\u614b\u306b(\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u78ba\u4fdd)\u3059\u308b\r\nvp4onnx -p <PW> -m client -c start -n <\u30e2\u30c7\u30eb\u540d> --model_provider <\u63a8\u8ad6\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u540d(\u5f8c\u8ff0)> -f\r\n# model_provider\u306f\u63a8\u8ad6\u3067\u4f7f\u7528\u3059\u308b\u5b9f\u884c\u74b0\u5883\u3092\u6307\u5b9a\u3059\u308b\u3002\u6307\u5b9a\u53ef\u80fd\u306a\u30ad\u30fc\u30ef\u30fc\u30c9\u306f\u30d8\u30eb\u30d7\u53c2\u7167\u3002\r\n\r\n# \u63a8\u8ad6\u3092\u5b9f\u884c\u3059\u308b\r\nvp4onnx -p <PW> -m client -c predict -n <\u30e2\u30c7\u30eb\u540d> -i <\u63a8\u8ad6\u3055\u305b\u308b\u753b\u50cf\u30d5\u30a1\u30a4\u30eb> -o <\u63a8\u8ad6\u7d50\u679c\u306e\u753b\u50cf\u30d5\u30a1\u30a4\u30eb> --output_preview -f\r\n\r\n# \u753b\u50cfAI\u30e2\u30c7\u30eb\u3092\u505c\u6b62\u3055\u305b\u3066\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u958b\u653e\r\nvp4onnx -p <PW> -m client -c start -n <\u30e2\u30c7\u30eb\u540d> -f\r\n\r\n# \u753b\u50cfAI\u30e2\u30c7\u30eb\u306e\u30a2\u30f3\u30c7\u30d7\u30ed\u30a4\r\nvp4onnx -p <PW> -m client -c undeploy -n <\u30e2\u30c7\u30eb\u540d> -f\r\n```\r\n\r\n## \u30d3\u30c7\u30aa\u30ad\u30e3\u30d7\u30c1\u30e3\u30fc\u306b\u3088\u308b\u63a8\u8ad6\r\n```\r\n# \u30ab\u30e1\u30e9\u3092\u30ad\u30e3\u30d7\u30c1\u30e3\u30fc\u3057\u306a\u304c\u3089\u63a8\u8ad6\r\nvp4onnx -p <PW> -m client -c capture -n <\u30e2\u30c7\u30eb\u540d> --output_preview -f \r\n```\r\n\r\n## \u305d\u306e\u4ed6\u4fbf\u5229\u306a\u30aa\u30d7\u30b7\u30e7\u30f3\r\n\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u591a\u3044\u306e\u3067\u3001\u305d\u308c\u3092\u4fdd\u5b58\u3057\u3066\u518d\u5229\u7528\u3067\u304d\u308b\u3088\u3046\u306b\u3059\u308b\uff08\u4f8b\uff1a\u753b\u50cfAI\u30e2\u30c7\u30eb\u306e\u4e00\u89a7\uff09\r\n``` cmd or bash\r\n# \u901a\u5e38\u306e\u30b3\u30de\u30f3\u30c9\u306b\u300c-u\u300d\u3068\u300c-s\u300d\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0\u3059\u308b\r\nvp4onnx -p <PW> -m client -c deploy_list -f -u <\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4fdd\u5b58\u3059\u308b\u30d5\u30a1\u30a4\u30eb> -s\r\n\r\n# \u6b21\u304b\u3089\u4f7f\u7528\u3059\u308b\u3068\u304d\u306f\u300c-u\u300d\u3092\u4f7f\u7528\u3059\u308b\r\nvp4onnx -u <\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u4fdd\u5b58\u3059\u308b\u30d5\u30a1\u30a4\u30eb>\r\n```\r\n\r\n\u30b3\u30de\u30f3\u30c9\u306e\u5b9f\u884c\u7d50\u679c\u3092\u898b\u3084\u3059\u304f\u3059\u308b\u3002\uff08\u4f8b\uff1a\u753b\u50cfAI\u30e2\u30c7\u30eb\u306e\u4e00\u89a7\uff09\r\n``` cmd or bash\r\n# \u901a\u5e38\u306e\u30b3\u30de\u30f3\u30c9\u306b\u300c-f\u300d\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u8ffd\u52a0\u3059\u308b\r\nvp4onnx -p <\u4efb\u610fPW> -m client -c deploy_list -f\r\n\r\n# \u300c-f\u300d\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u5916\u305b\u3070\u3001\u7d50\u679c\u306fjson\u5f62\u5f0f\u3067\u53d6\u5f97\u3067\u304d\u308b\r\nvp4onnx -p <\u4efb\u610fPW> -m client -c deploy_list\r\n```\r\n\r\n\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u30d8\u30eb\u30d7\u3002\r\n``` cmd or bash\r\nvp4onnx -h\r\n```\r\n\r\n## vp4onnx\u30b3\u30de\u30f3\u30c9\u306b\u3064\u3044\u3066\r\n```python -m vp4onnx```\u306e\u7701\u7565\u5f62\u3067\u3059\u3002\r\n\u5b9f\u4f53\u306f```scripts```\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u5185\u306b\u3042\u308a\u307e\u3059\u3002\r\n\r\n### \u30c7\u30fc\u30bf\u306e\u4fdd\u5b58\u5834\u6240\r\n```\r\npathlib.Path(HOME_DIR) / '.vp4onnx'\r\n```\r\n\r\n## \u52d5\u4f5c\u78ba\u8a8d\u3057\u305f\u30e2\u30c7\u30eb\r\n|AI Task|base|Model|Memo|\r\n|------|------|------|------|\r\n|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-Nano|*1|\r\n|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-Tiny|*1|\r\n|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-s|*1|\r\n|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-m|*1|\r\n|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-l|*1|\r\n|Object Detection|[YOLOX](https://github.com/Megvii-BaseDetection/YOLOX/#benchmark)|YOLOX-x|*1|\r\n|Object Detection|[YOLOv3](https://github.com/onnx/models/tree/main/vision/object_detection_segmentation/yolov3)|YOLOv3-10|-|\r\n|Object Detection|[YOLOv3](https://github.com/onnx/models/tree/main/vision/object_detection_segmentation/yolov3)|YOLOv3-12|-|\r\n|Object Detection|[YOLOv3](https://github.com/onnx/models/tree/main/vision/object_detection_segmentation/yolov3)|YOLOv3-12-int8|-|\r\n|Image Classification|[EfficientNet-Lite4](https://github.com/onnx/models/tree/main/vision/classification/efficientnet-lite4)|EfficientNet-Lite4-11|-|\r\n|Image Classification|[EfficientNet-Lite4](https://github.com/onnx/models/tree/main/vision/classification/efficientnet-lite4)|EfficientNet-Lite4-11-int8|-|\r\n|Image Classification|[EfficientNet-Lite4](https://github.com/onnx/models/tree/main/vision/classification/efficientnet-lite4)|EfficientNet-Lite4-11-qdq|-|\r\n *1\uff09[pth2onnx](https://github.com/hamacom2004jp/pth2onnx)\u3092\u4f7f\u7528\u3057\u3066ONNX\u5f62\u5f0f\u306b\u5909\u63db\u3057\u3066\u4f7f\u7528\r\n\r\n## \u958b\u767a\u74b0\u5883\u69cb\u7bc9\r\n```\r\ngit clone https://github.com/hamacom2004jp/vp4onnx.git\r\ncd vp4onnx\r\npython -m venv .venv\r\n.venv\\Scripts\\activate\r\npython.exe -m pip install --upgrade pip\r\npip install -r requirements.txt\r\ndeactivate\r\n```\r\n\r\n#### WSL2\u4e0a\u306bredis-server\u306edocker\u5c0e\u5165\r\n```\r\n# Ubuntu\u30a4\u30e1\u30fc\u30b8\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\uff08cmd\u30d7\u30ed\u30f3\u30d7\u30c8\u3067\u5b9f\u884c\uff1aubuntu\u30e6\u30fc\u30b6\u30fc\u3092\u4f5c\u6210\u3059\u308b\uff09\r\nwsl --install -d Ubuntu-20.04\r\n\r\n# Ubuntu\u521d\u671f\u8a2d\u5b9a\uff08bash\u4e0a\u3067\u5b9f\u884c\uff09\r\ncd /etc/apt\r\nsudo sed -i.bak -e \"s/http:\\/\\/archive\\.ubuntu\\.com/http:\\/\\/jp\\.archive\\.ubuntu\\.com/g\" sources.list\r\nsudo apt update\r\nsudo apt install -y language-pack-ja manpages-ja manpages-ja-dev\r\nsudo update-locale LANG=ja_JP.UTF-8\r\n\r\n# Docker\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\uff08bash\u4e0a\u3067\u5b9f\u884c\uff09\r\nsudo apt install -y apt-transport-https ca-certificates curl software-properties-common\r\ncd ~/\r\ncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -\r\nsudo add-apt-repository \"deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable\"\r\nsudo apt update\r\napt-cache policy docker-ce\r\nsudo apt install -y docker-ce docker-compose\r\nsudo usermod -aG docker ubuntu\r\nexit\r\n\r\n# Ubuntu\u30a4\u30e1\u30fc\u30b8\u518d\u8d77\u52d5\uff08cmd\u30d7\u30ed\u30f3\u30d7\u30c8\u3067\u5b9f\u884c\uff09\r\nwsl --shutdown\r\nwsl --export Ubuntu-20.04 Ubuntu_wsl2_docker-20.04.tar\r\nwsl --unregister Ubuntu-20.04\r\nmkdir Ubuntu_docker-20.04\r\nwsl --import Ubuntu_docker-20.04 Ubuntu_docker-20.04 Ubuntu_wsl2_docker-20.04.tar --version 2\r\nwsl -u ubuntu -d Ubuntu_docker-20.04\r\n\r\n# redis-server\u8d77\u52d5\r\ndocker run -d --name redis-container --rm -e TZ=UTC -p 6379:6379 -e REDIS_PASSWORD=<password> ubuntu/redis:latest\r\n\r\n```\r\n\r\n## pypl\u306b\u30a2\u30c3\u30d7\u3059\u308b\u305f\u3081\u306e\u6e96\u5099\r\n\r\n``` cmd or bash\r\npython setup.py sdist\r\npython setup.py bdist_wheel\r\n```\r\n\r\n- pypl\u306e\u30e6\u30fc\u30b6\u30fc\u767b\u9332\u3010\u672c\u756a\u3011\r\n https://pypi.org/account/register/\r\n\r\n- pypl\u306e\u30e6\u30fc\u30b6\u30fc\u767b\u9332\u3010\u30c6\u30b9\u30c8\u3011\r\n https://test.pypi.org/account/register/\r\n\r\n- \u305d\u308c\u305e\u308c2\u8981\u7d20\u8a8d\u8a3c\u3068API\u30c8\u30fc\u30af\u30f3\u3092\u767b\u9332\r\n\r\n- \u30db\u30fc\u30e0\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b```.pypirc```\u3092\u4f5c\u6210\r\n``` .pypirc\r\n[distutils]\r\nindex-servers =\r\n pypi\r\n testpypi\r\n\r\n[pypi]\r\nrepository: https://upload.pypi.org/legacy/\r\nusername: __token__\r\npassword: \u672c\u756a\u74b0\u5883\u306eAPI\u30c8\u30fc\u30af\u30f3\r\n\r\n[testpypi]\r\nrepository: https://test.pypi.org/legacy/\r\nusername: __token__\r\npassword: \u30c6\u30b9\u30c8\u74b0\u5883\u306eAPI\u30c8\u30fc\u30af\u30f3\r\n```\r\n\r\n- \u30c6\u30b9\u30c8\u74b0\u5883\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\r\n ```.pyplrc```\u3092\u4f5c\u3063\u3066\u3044\u306a\u3044\u5834\u5408\u306f\u30b3\u30de\u30f3\u30c9\u5b9f\u884c\u6642\u306busername\u3068password\u3092\u8981\u6c42\u3055\u308c\u308b\r\n \u6210\u529f\u3059\u308b\u3068URL\u304c\u8fd4\u3063\u3066\u304f\u308b\u3002\r\n``` cmd or bash\r\ntwine upload --repository testpypi dist/*\r\n```\r\n- pip\u30b3\u30de\u30f3\u30c9\u306e\u30c6\u30b9\u30c8\r\n``` cmd or bash\r\npip install -i https://test.pypi.org/simple/ vp4onnx\r\n```\r\n\r\n- \u672c\u756a\u74b0\u5883\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\r\n``` cmd or bash\r\ntwine upload --repository pypi dist/*\r\n```\r\n\r\n## Lisence\r\n\r\nThis project is licensed under the MIT License, see the LICENSE.txt file for details\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "vp4onnx: Perform inference using an image AI model in onnx format.",
"version": "0.1.1",
"project_urls": {
"Download": "https://github.com/hamacom2004jp/vp4onnx",
"Homepage": "https://github.com/hamacom2004jp/vp4onnx"
},
"split_keywords": [
"onnxruntime",
"predict",
"inference",
"image",
"ai",
"model"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7999022d28b4037662b7ac97f1caf944165c63aa186b53a3555f1442ffb9c831",
"md5": "253be3be2c4c979e9607b14d023fb74e",
"sha256": "c69f2a8a06c8107b8e609c6fff05a345d02f138a220ffb526bd77f34b54d80d2"
},
"downloads": -1,
"filename": "vp4onnx-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "253be3be2c4c979e9607b14d023fb74e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 26837,
"upload_time": "2023-11-19T15:52:15",
"upload_time_iso_8601": "2023-11-19T15:52:15.376070Z",
"url": "https://files.pythonhosted.org/packages/79/99/022d28b4037662b7ac97f1caf944165c63aa186b53a3555f1442ffb9c831/vp4onnx-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2dc64757b6ce0f9184f4bde8d285ef0b89d30d46dfd82b42be4ee9824ca3e48d",
"md5": "2a0323f7a63e54d3a6306f544160e60e",
"sha256": "337004edb2bbf0ca6b21ad8d94619e5920ca84efee151165d21eb72717cf3185"
},
"downloads": -1,
"filename": "vp4onnx-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "2a0323f7a63e54d3a6306f544160e60e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24595,
"upload_time": "2023-11-19T15:52:17",
"upload_time_iso_8601": "2023-11-19T15:52:17.196686Z",
"url": "https://files.pythonhosted.org/packages/2d/c6/4757b6ce0f9184f4bde8d285ef0b89d30d46dfd82b42be4ee9824ca3e48d/vp4onnx-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-19 15:52:17",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hamacom2004jp",
"github_project": "vp4onnx",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "vp4onnx"
}