Skip to main content

aiopcli

Project description

aiopcli

Installation

pip install aiopcli

Examples

# 単体コンテナイメージを登録
# デフォルトapi serverポートが8080
docker save my-image | gzip > my-image.tgz
aiopcli add server --name=my-image --api-server=my-image.tgz \
  --api-port=80 --liveness-endpoint=/health --readiness-endpoint=/health
# "servableId"が出力されます。例えば、 `s-z15uerp3mehdxg33`

aiopcli create --tag=test --servable=s-z15uerp3mehdxg33 --server-plan=basic
# env id 321が返却されれば、
aiopcli status test
aiopcli status 321
# が同じ結果を返却

# default endpointがmultipart/form-dataを受け取る場合
aiopcli predict test -Fimage=@invoice.png
# servableがapplication/jsonを受け取る場合
aiopcli predict 321 -d'{"inputs": {"array": [0, 4, 8]}}'
# 別のendpointを叩く
aiopcli predict 321 --endpoint=receipt/read -Fimage=@receipt.jpg

# この端末で登録されたenvを全て確認
aiopcli status

# envを削除
aiopcli delete test

# 推論サーバ(tritonserver, TF Servingなど)こみのコンテナイメージ登録
docker save api-server | gzip > api-server.tgz
docker save inference-server | gzip > inference-server.tgz
aiopcli add server --name=my-image \
  --api-server=api-server.tgz \
  --inference-server=inference-server.tgz \
  --api-port=8000 \
  --metrics-port=8002 \  # tritonの場合のみ
  --liveness-endpoint=/health \
  --readiness-endpoint=/health/ready

Usage guide

基本設定で作成

aiopcli create --servable=<servable-id> --server-plan=<basic,standard,gpu_basic>

tagを付けて作成

aiopcli create --tag=<tag> --servable=<servable-id> --server-plan=<basic,standard,gpu_basic>

環境を削除

aiopcli delete <tagまたはenv_id>

単体envのステータスを確認

aiopcli status <tagまたはenv_id>

cliで作成したenvのステータスを確認

aiopcli status

プロフィール(ホスト・APIキー)を設定してコマンドを実行

aiopcli --profile=<profile> <command> <arg> ...
# または
aiopcli -p<profile> <command> <arg> ...

host・apikeyをoverrideして実行

aiopcli --host=<host> --apikey=<apikey> <command> <arg> ...
# または
aiopcli --host=<host> -k<apikey> <command> <arg> ...

custom docker imageを登録

# apiserver
aiopcli add server \
    --name=single-custom \
    --api-server=container.tgz \
    --api-port=8000 \
    --liveness-endpoint=/health \
    --readiness-endpoint=/health

# apiserver & inferenceserver
aiopcli add server --name=double-custom --api-server=apiserver.tgz --inference-server=tritonserver.tgz

Configuration

利用可能な環境変数

AIOP_CONFIG=~/.aiop
AIOP_LOG_LEVEL=INFO
AIOP_PROFILE=stg
AIOP_HOST=https://aiops.inside.ai
AIOP_APIKEY=ICMxJ0Z4PTtvbHE/ITd8Njk4RCgjcy5TL0E3b0YwRj83R2hXKTl8WFAiaGdpSU55fH0kd0IsOCJSZ1AwaUJuPVhWdFJvO1B0O09OQDtsOkVtPydKOnRaIUcqIm8ibFghWitiKTlxUVsqQWkkPG9lJFNbNyNrJzRoNTZzaTF7P2djMy9zKTg4JHZNMVEpQlBIayYkQTtRR2luOEIsXj1iO0JzRyJAdzBaVn1HbWNcc0k5X0JUO0tLeC1vdnRnNTVxLEJfbEEmR1lZNl97ZSZALl9FNnxDYSh+Q09WYHxDPEBqeWYhM1BUbDR5YEw0aCh3UlM6TnAxPmMhXzNnZ3YoYQ==

設定ファイルフォーマットはtoml。 デフォルト保存先: ~/.aiopAIOP_CONFIG環境変数で設定可。

# プロフィールのデフォルト
default = "stg"

# apikeyのデフォルト
apikey = "ICMxJ0Z4PTtvbHE/ITd8Njk4RCgjcy5TL0E3b0YwRj83R2hXKTl8WFAiaGdpSU55fH0kd0IsOCJSZ1AwaUJuPVhWdFJvO1B0O09OQDtsOkVtPydKOnRaIUcqIm8ibFghWitiKTlxUVsqQWkkPG9lJFNbNyNrJzRoNTZzaTF7P2djMy9zKTg4JHZNMVEpQlBIayYkQTtRR2luOEIsXj1iO0JzRyJAdzBaVn1HbWNcc0k5X0JUO0tLeC1vdnRnNTVxLEJfbEEmR1lZNl97ZSZALl9FNnxDYSh+Q09WYHxDPEBqeWYhM1BUbDR5YEw0aCh3UlM6TnAxPmMhXzNnZ3YoYQ=="

# profiles
[profiles.stg]
log_level = "INFO"

[profiles.prod]
apikey = "QDd+VC55cy1tLV4rQXo2bSZ1OXsgOnx0UzUwbDpEUEQ/UXc3cihvPmtBWHBTWj1LT1w+RXY/aCksbCthVUZGdFUzd2d6e1IrRi5zUycxKlp9YFxEdjE0PXNAXEtGVyZhOC14WWtcXXcoWls6OScxJmlkTSwrTDttc0ouIzhFLEZGJ3xFJWhpI3lpeV1iJ24nSjsyICcgRzxEIi95cGF0eU96TmheaWcobEk+RVxGX01ZYz9jfk9cbThIRyUpaXpLdDklJCR5eTVjYzwyb3F6J2pqJEZbckViNG16PHQkK3xqdUtBSjpRY1UoYiQ1MHBHLitYazUzKD52aVddXzYsbA=="

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiopcli-1.2.1.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

aiopcli-1.2.1-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file aiopcli-1.2.1.tar.gz.

File metadata

  • Download URL: aiopcli-1.2.1.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for aiopcli-1.2.1.tar.gz
Algorithm Hash digest
SHA256 f44a557f802d559a951bd1b92c774da3001fcb79beb80c02072fb9c1f2a5cc31
MD5 d9ca7d92f3542db3a818076e65c0f12e
BLAKE2b-256 bd7ebf766f5f203de10bfbece49a6bb8e03598095b24dbdc3e8dcdbb7b608958

See more details on using hashes here.

File details

Details for the file aiopcli-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: aiopcli-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 17.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for aiopcli-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0f180d007cc8d7070d0eacc00077c567d2e9a11ede612ddfdb0039fa21c88d6c
MD5 317dc96db9270217c55972690417f704
BLAKE2b-256 2e6f85d30e90a02f5c44d51be7d1fedc48363fa05754ea00ad1b977b077cd129

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page