予測APIリファレンス¶
このリファレンスでは、APIの使用に役立つ予測APIの追加ドキュメントを提供します。 以下のページでは、メソッド、入力および出力パラメーター、およびAPIによって返される可能性のあるエラーの一覧を示します。 このリファレンスには、ユーザーガイドの予測APIページの情報を補足する情報が記載されています。 設定済みの予測URLを取得するための方法、ベストプラクティス、および手順についても説明します。
これらの例を使用する際は、専用の予測インスタンスの名前でhttps://your-company.orm.datarobot.com
を置き換えてください。 専用の予測インスタンスがあるかどうかわからない場合、またはそのアドレスがわからない場合は、DataRobot担当者にお問い合わせください。
予測APIの一般的なエラー¶
以下のエラーが予測API呼び出しで返されることがあります。エラーは問題に応じて異なります。 ここに示すエラーはすべてのエンドポイントに共通です。
Authorization¶
HTTPコード | サンプルエラーメッセージ | リーズン |
---|---|---|
401 UNAUTHORIZED | {"message": "Invalid API token"} |
|
401 UNAUTHORIZED | {"message": "Invalid Authorization header. No credentials provided."} |
APIトークンキーが提供されませんでした(ベアラートークン認証)。 |
401 UNAUTHORIZED | {"message": "The datarobot-key header is missing"} |
|
パラメーター¶
HTTPコード | サンプルエラーメッセージ | リーズン |
---|---|---|
400 BAD REQUEST | {"message": "passthroughColumns do not match columns, columns expected but not found: [u'Name']"} |
存在しない列の名前が提供されました。 |
422 UNPROCESSABLE ENTITY | {"message": "'wd': wd is not allowed key"} |
サポートされないパラメーター(wd など)が提供されました。 |
422 UNPROCESSABLE ENTITY | {"message": "'passthroughColumns': blank value is not allowed"} |
passthroughColumns パラメーターに空の値が提供されました。 |
422 UNPROCESSABLE ENTITY | {"message": "'passthroughColumnsSet': value is not exactly 'all'"} |
passthroughColumnsSet パラメーターにall 値を提供する必要がありますが、別の値(または空の値)が提供されました。 |
422 UNPROCESSABLE ENTITY | {"message": "'passthroughColumns' and 'passthroughColumnsSet' cannot be used together"} |
passthroughColumns およびpassthroughColumnsSet パラメーターの両方が同じリクエストで渡されました。 パラメーターは個別のリクエストで渡す必要があります。 |
422 UNPROCESSABLE ENTITY | {"message": "'predictionWarningEnabled': value can't be converted to Bool"} |
predictionWarningEnabledパラメーターに無効な(非ブール型)値が提供されました。 |
Payload¶
HTTPコード | サンプルエラーメッセージ | リーズン |
---|---|---|
400 BAD REQUEST | {"message": "Submitted file '10k\_diabetes.xlsx' has unsupported extension"} |
このインスタンスで、サポートされない拡張子.xlsxのファイルが提供されました。 |
400 BAD REQUEST | {"message": "Bad JSON format"} |
コンテンツタイプapplication/JSON を含む生のテキストを提供。 |
400 BAD REQUEST | {"message": "Mimetype '' not supported"} |
Text mimetypeで空の本文が提供されました。 |
400 BAD REQUEST | {"message": "No data was received"} |
application/JSON コンテンツタイプの空の本文が提供されました。 |
400 BAD REQUEST | {"message": "Mimetype 'application/xml' not supported"} |
サポートされていないmimetypeのリクエストが提供されました。 |
400 BAD REQUEST | {"message": "Requires non-empty JSON input"} |
空のJSON、{}が提供されました。 |
400 BAD REQUEST | {"message": "JSON uploads must be formatted as an array of objects"} |
提供されたJSONの書式が正しくありません:{"0": {"PassengerId": 892, "Pclass": 3}} |
400 BAD REQUEST | {"message": "Malformed CSV, please check schema and encoding.\nError tokenizing data. C error: Expected 11 fields in line 5, saw 12\n"} |
提供されたCSVに問題があります。 |
413 Entity Too Large | {"message": "Request is too large. The request size is $content\_length bytes and the maximum message size allowed by the server is 50MB"} |
提供されたファイルが大きすぎます。 DataRobotで受け入れられるファイルサイズは最大50MBです。制限を超えるファイルサイズには、バッチスコアリングツールを使用してください。 同じ制限がアーカイブ済みデータセットに適用されます。 |
422 UNPROCESSABLE ENTITY | {"message": "No data to predict on"} |
空のリクエストペイロードが提供されました。 |
422 UNPROCESSABLE ENTITY | {"message": "Missing column(s): Age, Cabin, Embarked, Fare, Name, Parch, PassengerId, Pclass, Sex & SibSp"} |
データセットに必須フィールドがありません。 予測しようとするプロジェクトのデータセット(予期されたフィールドを含む)を使用します。 |
予測APIの無限大の動作¶
浮動小数点演算の標準規格であるIEEE-754では、有限数、無限数、そして特別なNaN(not-a-number)値が定義されています。 RFC-8259によると、JSONでは無限数やNaNは使用できません。 DataRobotは、APIで返される前に、以下のルールを使用してこれらの値を置き換えようとします。
-
Inf
は(倍精度浮動小数点の最大値)1.7976931348623157e+308
に置き換えられます。 -
-Inf
は(倍精度浮動小数点の最小値)-1.7976931348623157e+308
に置き換えられます。 -
NaN
は0.0
に置き換えられます。
予測APIでは、浮動小数点数を小数第10位までに丸めます。 ただし、浮動小数点数の最小値と最大値をそれぞれ制限値より小さい数と制限値より大きい数に丸める場合は、丸め方のロジックが変わります。
-
1.7976931348623157e+308
(倍精度浮動小数点の最大値)は、1.797693135e+308
(上限値よりも大きい数)として返されます。 -
-1.7976931348623157e+308
(倍精度浮動小数点の最小値)は、-1.797693135e+308
(下限値よりも小さい数)として返されます。 -
CPythonの内蔵JSONパーサーは、それぞれ
inf
や-inf
などの値を解析しますが、他の一部の言語はクラッシュする可能性があることに注意してください。