Python関数の複数回の実行
post
/api/py-scripts/v1/index-apply/{scriptName}
ユーザー所有のPython関数を"times"回実行します。
リクエスト
サポートされているメディア・タイプ
- application/json
パス・パラメータ
- scriptName: string
Pythonスクリプトの名前
リクエストの引数とスクリプトの追加引数を指定する(名前 - 値)ペアのJSON文字列
ルート・スキーマ: EmbedScriptComputeIdx
型:
ソースの表示
object
- asyncFlag(optional): boolean
ジョブを非同期で実行するかどうか。
- envName(optional): string
conda環境の名前。
- graphicsFlag(optional): boolean
スクリプトでレンダリングされたイメージを結果に取得するかどうか。
- parallel(optional): integer(int32)
並列度。
- parallelFlag(optional): boolean
ジョブをパラレルに実行するかどうか。
- parameters(optional): string
スクリプトに渡されるキーワード引数を指定する(名前 - 値)ペアのJSON文字列。
- service(optional): string
指定可能な値:
[ "LOW", "MEDIUM", "HIGH" ]
サービスのLEVEL。デフォルトはLOWです。 - timeout (オプション): integer(int32)
最小値:
1800
最大値:43200
非同期ジョブのタイムアウト制限(秒単位、デフォルトは1800秒)。`asyncFlag`=trueとともに使用する必要があります。 - times: integer(int32)
スクリプトを実行する回数。
リクエストの例(application/json)
{"times":3, "parallelFlag":true, "graphicsFlag":true, "service":"MEDIUM"}
レスポンス
サポートされているメディア・タイプ
- application/json
200レスポンス
デフォルトでは、ジョブの結果を返します。
201レスポンス
400レスポンス
無効なパラメータが指定され、出力がサイズ制限を超えているか、他のスクリプト実行エラーが発生しました。
500レスポンス
ブローカへの接続中、ジョブの実行中に問題が発生したか、または他の予期しないエラーが発生しました。
例
例1
次の例では、compute_random_meanというスクリプトを実行します。
curl -i -X POST --header "Authorization: Bearer ${token}" \
--header 'Content-Type: application/json' --header 'Accept: application/json' -d '{"times":10}' \
"<oml-cloud-service-location-url>/oml/api/py-scripts/v1/index-apply/compute_random_mean"
レスポンス・ヘッダー
レスポンス・ヘッダーは次のとおりです。
HTTP/1.1 200 OK
Date: Wed, 26 Aug 2020 21:07:35 GMT
Content-Type: application/json
Content-Length: 196
Connection: keep-alive
Cache-Control: no-cache, no-store, private
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1;mode=block
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
Set-Cookie: JSESSIONID=node0685gs5zc7ijac22t5ofbfcxo653.node0; Path=/oml; Secure; HttpOnly
Expires: Thu, 01 Jan 1970 00:00:00 GMT
レスポンス本文
JSON形式のレスポンス本文は次のとおりです。
{"result":
[7.203244934421581,0.25926231827891333,7.081478226181048,5.4723224917572235,
8.707323061773764,3.3197980530117723,7.7991879224011464,
9.68540662820932,5.018745921487388,0.207519493594015]}
例2
次の例では、test_seaborn_idx
というスクリプトを実行します。
curl -i -k -X POST --header "Authorization: Bearer ${token}" --header
'Content-Type: application/json' --header 'Accept: application/json' -d
'{"times": 2, "envName": "seaborn", "graphicsFlag": true}' "<oml-cloudservice-
location-url>/oml/api/py-scripts/v1/index-apply/test_seaborn_idx"
レスポンス本文
RESTエンドポイントの結果は、イメージおよびデータを含むPythonスクリプトから返される値のJSON表現です。イメージ・バイトはPNG形式で返されます。
{
"result": {
"0": {
"IMAGE": "iVBORw0KGgoAAAAN.....AAAAASUVORK5CYII=",
"DATA": "1",
"TIME": 1,
"TITLE": "Title 1",
"ID": 1
},
"1": {
"IMAGE": "iVBORw0KGgoAAAAN......AAABJRU5ErkJggg==",
"DATA": "2",
"TIME": 2,
"TITLE": "Title 2",
"ID": 1
}
}
}