> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dify.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# エラーの処理

> このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、[英語版](/en/cloud/use-dify/build/predefined-error-handling-logic) を参照してください。

<Frame>
  ![](https://assets-docs.dify.ai/2024/12/6e2655949889d4d162945d840d698649.png)
</Frame>

[大規模言語モデル](/ja/cloud/use-dify/nodes/llm)、[HTTP](/ja/cloud/use-dify/nodes/http-request)、[コード](/ja/cloud/use-dify/nodes/code)、および[ツール](/ja/cloud/use-dify/nodes/tools)
ノードは標準でエラー処理をサポートしています。ノードが失敗した場合、以下の 3 つの動作のいずれかを取ることができます：

<AccordionGroup>
  <Accordion title="なし">
    デフォルトの動作です。ノードが失敗すると、ワークフロー全体が停止します。元のエラーメッセージが表示されます。

    以下の場合に使用します：

    * テスト中で何が壊れたかを確認したい場合
    * このステップなしではワークフローが続行できない場合
  </Accordion>

  <Accordion title="デフォルト値">
    ノードが失敗した場合、代わりにバックアップ値を使用します。ワークフローは実行を継続します。

    <Frame>
      ![](https://assets-docs.dify.ai/2024/12/e9e5e757090679243e0c9976093c7e6c.png)
    </Frame>

    **要件**

    * デフォルト値はノードの出力タイプと一致する必要があります。たとえば文字列を出力するノードでは、デフォルト値も文字列でなければなりません。

    **例**

    大規模言語モデルノードは通常分析を返しますが、レート制限により失敗することがあります。以下のようなデフォルト値を設定します：

    ```
    "申し訳ございませんが、一時的にご利用いただけません。数分後に再度お試しください。"
    ```

    これで、ユーザーは壊れたワークフローの代わりに役立つメッセージを受け取ります。
  </Accordion>

  <Accordion title="失敗分岐">
    ノードが失敗した場合、エラーを処理するための別のフローをトリガーします。

    <Frame>
      ![](https://assets-docs.dify.ai/2024/12/e5ea1af947818bd9e27cab3042c1c4f3.png)
    </Frame>

    失敗分岐はオレンジ色で強調表示されます。以下のことができます：

    * エラー通知の送信
    * 異なるアプローチの試行
    * デバッグ用のエラーログ記録
    * バックアップサービスの使用
      **例**

    メイン API が失敗した場合、失敗分岐が代わりにバックアップ API を呼び出します。ユーザーは問題があったことを知ることはありません。
  </Accordion>
</AccordionGroup>

## ループ/反復ノードでのエラー

ループや反復内で子ノードが失敗した場合、これらの制御フローノードには独自のエラー動作があります。

**ループノード** は、子ノードが失敗すると常に即座に停止します。ループ全体が終了してエラーを返し、それ以降の反復の実行を防ぎます。

**反復ノード** では、エラー処理モードの設定により、子ノードの失敗をどのように処理するかを選択できます：

* `terminated` - 任意のアイテムが失敗すると即座に処理を停止（デフォルト）
* `continue-on-error` - 失敗したアイテムをスキップして次のアイテムに続行
* `remove-abnormal-output` - 処理を継続します

反復を`continue-on-error`に設定すると、失敗したアイテムは出力配列で`null`を返します。`remove-abnormal-output`を使用すると、出力配列には成功した結果のみが含まれ、入力配列より短くなります。

## エラー変数

デフォルト値または失敗分岐を使用する場合、2 つの特別な変数が得られます：

* `error_type` - 発生したエラーの種類（[エラータイプ](/ja/cloud/use-dify/debug/error-type)を参照）
* `error_message` - 実際のエラーの詳細

これらを以下の目的で使用します：

* ユーザーに役立つメッセージを表示
* チームにアラートを送信
* 異なる回復戦略の選択
* デバッグ用のエラーログ記録

**例**

```
{% if error_type == "rate_limit" %}
リクエストが多すぎます。しばらくお待ちいただき、再度お試しください。
{% else %}
問題が発生しました。当チームに通知されています。
{% endif %}
```
