Skip to content

アプリケーション内で をクリックすると、お使いのDataRobotバージョンに関する全プラットフォームドキュメントにアクセスできます。

トラブルシューティング

一般的な問題およびその解決方法を以下に示します。

ジョブがINITIALIZINGでスタック

ローカルファイル入力を使用する場合は、ジョブのスコアリングデータでPUTリクエストを最初のPOSTリクエストの後にしていることを確認します。

DataRobotでは、予測インスタンスあたり一度に1つのジョブしか処理されないので、現在のジョブが他のジョブの後にキューに配置されることがあります。 詳細については、以下のジョブログを確認します。

curl -X GET https://app.datarobot.com/api/v2/batchPredictions/:id/ \
    -H 'Authorization: Bearer <YOUR_KEY>' 

ジョブがRUNNINGでスタック

ジョブは低速で実行される場合があります、これは、低速モデルまたはスコアリングデータにAPIが特定しようとしているエラーが含まれるといういずれかの理由によるものです。 ジョブの進捗はジョブステータスをリクエストすることでフォローできます。

curl -X GET https://app.datarobot.com/api/v2/batchPredictions/:id/ \
    -H 'Authorization: Bearer <YOUR_KEY>'  

ジョブがABORTEDの状態である

ジョブが中断されると、DataRobotは理由をジョブステータスに記録します。 ジョブステータスは、個々のジョブURLから確認できます。

curl -X GET https://app.datarobot.com/api/v2/batchPredictions/:id/ \
    -H 'Authorization: Bearer <YOUR_KEY>'   

または、すべてのジョブのリストビューから確認できます。

curl -X GET https://app.datarobot.com/api/v2/batchPredictions/ \
    -H 'Authorization: Bearer <YOUR_KEY>' 

ローカルファイル入力にCSVファイルをアップロードする際にHTTP 406が返された

Content-Type: text/csvヘッダーがありません。

ローカルファイル入力にCSVファイルをアップロードする際にHTTP 422が返された

次のいずれかの原因が考えられます。

  • このジョブにCSVデータが既にプッシュされている。 新しいデータを送信するには、新しいジョブを作成する。
  • データをプッシュする必要のないジョブ(S3入力など)にCSVデータをプッシュしようとした。
  • CSVデータをUTF-8文字セットでエンコードせず、csvSettingsでカスタムエンコーディングを指定しなかった。
  • 適切なCSV形式でCSVデータをエンコードせず、csvSettingsでカスタム形式を指定しなかった。
  • 空のファイルをプッシュしようとした。

上記のいずれの場合も、応答およびジョブログには説明が含まれます。

Oracle JDBスコアリングデータでの日付形式の不一致によるIntakeストリームエラー

Oracleの日付タイプには、スコア時系列データスコアリングの問題が発生する可能性がある時コンポーネントが含まれています。

日付形式yyyy-mm-ddを使用してトレーニングされたモデルでは、Oracleの日付形式によって、Oracle JDBスコアリングデータがエラーになる可能性があります。

DataRobotがOracleから日付を読み取ると、デフォルトでは形式yyyy-mm-dd hh:mm:ssで日付が返されます。 これは形式が異なることを想定してモデルに渡されるとエラーが発生する可能性があります。

この問題を回避するために、次の回避策のいずれかを使用します。

  • Oracleからのスコアリング時の形式が同じになるように、データソースとしてOracleを使用してモデルをトレーニングします。
  • SQL関数の使用を許可するため、tableschemaの代わりにqueryオプションを使用します。 OracleのTO_CHAR関数は、データがスコアリングされる前に時刻列を解析するために使用できます。

ローカルファイル入力でデータセットをアップロードするときにネットワーク接続の問題が生じた。

新しいジョブを作成して、データセットを再度アップロードします。 失敗したアップロードは再開されず、最終的にタイムアウトします。

ローカルファイル出力でスコアリングデータをダウンロード中にネットワーク接続が使用できなくなった。

ジョブを再度ダウンロードします。 スコアリングされたデータは、マネージドAIプラットフォーム(SaaS)で48時間、セルフマネージドAIプラットフォーム(VPCまたはオンプレミス)で48時間(ただし変更可能)利用できます。

スコアリングデータをダウンロードしようとしているときにHTTP 404が返された。

次のいずれかの原因が考えられます。

  • スコアリングされたデータをダウンロードできないジョブ(S3出力など)でスコアリングデータをダウンロードしようとした。
  • ジョブでスコアリングが開始する前にダウンロードを開始した。 その場合、ジョブリンクでdownloadリンクが有効になるまで待ってから再試行してください。

スコアリングデータをダウンロードしようとしているときにHTTP 406が返された。

クライアントからAcceptヘッダーが送信されたが、ヘッダーにtext/csvが含まれていなかった。 Acceptヘッダーを送信しない、またはヘッダーにtext/csvを含めないのいずれか。

サポートされていない出力列名の形式が原因でCREATE_TABLEのスコアリングに失敗する

DataRobotで生成される出力形式の列名をサポートしない出力アダプターとしてターゲットデータベースが使用されている可能性があります。 時系列モデルをスコアリングするときのname (actual)_PREDICTIONなどの列名は、すべてのデータベースでサポートされているとは限りません。

この問題を回避するには、列名の再マッピング機能を利用して、出力列名をターゲットデータベースがサポートする形式に書き換えます。

たとえば、列名からスペースを削除する場合は、次のようにcolumnNamesRemappingを追加して追加のリクエストを行うことができます。

{
   "deploymentId":"<id>",
   "passthroughColumnsSet":"all",
   "includePredictionStatus":true,
   "intakeSettings":{
      "type":"localFile"
   },
   "outputSettings":{
      "type":"jdbc",
      "dataStoreId":"<id>",
      "credentialId":"<id>",
      "table":"table_name_of_database",
      "schema":"dbo",
      "catalog":"test",
      "statementType":"create_table"
   },
   "columnNamesRemapping":{
      "name (actual)_PREDICTION":"name_actual_PREDICTION"
   }
} 

ジョブ作成時のHTTP 422で考えられる理由

以下は、新規バッチ予測ジョブ作成時のHTTP 422返答に対して考えられる理由です。

  • 不明のジョブパラメーターを送信しました
  • 予期しないタイプまたは値のジョブパラメーターを指定しました
  • 入力または出力設定で、不明の認証情報IDを指定しました
  • 同じS3/Azure/GCP URL(サポートされていません)間でスコアリンングしようとしている
  • AIカタログからデータを取り込もうとしてるが、アカウントにはAIカタログへのアクセス権がない
  • AIカタログからデータを取り込もうとしてるが、AIカタログデータセットがスナップショット(予測に必要)されていない、または正常に取り込まれていない
  • 時系列カスタムモデル(現在、サポートされていない)を使用しようとしている
  • 従来の時系列(ARIMA)モデル(現在、サポートされていない)を使用しようとしている
  • 多クラスまたは時系列プロジェクトに予測の説明をリクエストした(現在、サポートされていない)
  • 連続値プロジェクト以外のプロジェクトに予測注意をリクエストした(現在は、サポートされていない)
  • 予測境界が適切に設定されていないプロジェクトに予測注意をリクエストしました

更新しました July 18, 2023