Skip to content

3_福利厚生の申請一次審査&申請作成ワークフロー

このドキュメントは、Dify でワークフローを作成するための演習手順書です。

1. 説明

福利厚生関連の「一次審査」を自動化するAIワークフローです。 社員からの相談内容を入力すると、AIが社内規定(ナレッジ)を参照して「判定:【OK】」または「判定:【不備あり】」を自動で判定します。 OKの場合は申請メール文章を作成し、不備がある場合はその理由を回答することで、人事部門の一次対応を効率化します。

Tips:モデルによる設定の違い

GPTモデルとGeminiモデルでは設定内容に違いがあります。 特にワークフローやチャットフローのLLMノードでは、GPTモデルはSYSTEMプロンプトのみ必須ですが、GeminiモデルではUSERプロンプトが必須です。この演習手順ではGeminiモデルをデフォルトにしているため、USERプロンプトを設定する手順となっています。

2. 使用するノード

  1. 知識検索ノード: 相談内容に基づき、関連する社内規定をナレッジから取得。
  2. LLMノード①(内容分析): 規定に基づき、合否判定(OK/不備あり)を行う。
  3. 質問分類器ノード: 判定結果に応じて、その後の処理を分岐させる。
  4. LLMノード②(申請メッセージ作成): 審査通過時に、申請用メール文面を作成する。

3. Dify設定手順

手順①:ナレッジの構築

演習環境では事前に登録済みなのでこの作業は不要です。

  1. Dify上部メニューの「ナレッジ」をクリック ⇒ 「ナレッジベースを作成」をクリック 。
  2. ファイルまたはフォルダをドラッグアンドドロップ」の部分に「benefits_regulations.md」をアップロードして「次へ」 。
  3. チャンク設定:デフォルトのまま「チャンクをプレビュー」をクリック。画面右に表示されるプレビューで、規定情報が並ぶのを確認する。
  4. インデックス方法:デフォルトのまま「高品質」を選択。
  5. 埋め込みモデル: デフォルトのまま「text-embedding-3-small」を選択。
  6. 検索設定: 「ハイブリッド検索」を選択。詳細の設定はデフォルトのまま。
  7. 保存して処理をクリック。
  8. 埋め込みが完了しましたと表示されたら先に進みます。

手順②:ワークフローアプリの作成

  1. 上部メニューから「スタジオ」を選択。
  2. 最初から作成」→「ワークフロー」を選択。
  3. アプリ名:ワークフロー:申請一次審査&申請作成ワークフロー
  4. 説明:福利厚生関連の「一次審査」を自動化するAIワークフロー。OKの場合は申請メール文章を作成します。
  5. 作成する」をクリック 。

手順③:ワークフローの設定

開始ノードとして「ユーザー入力」を選択してワークフローの構築を開始します。
ワークフローのキャンバス上には、ユーザー入力ノードだけが配置されている状況です。 以下の作業を行い、ノードを順に配置・設定していきます。

1. ユーザー入力ノード

  1. ワークフローの編集画面でユーザー入力ノードを選択します。以下の操作は、画面の右に出る設定画面で行います。
  2. 入力フィールド」の「+」をクリックして、入力フィールドを設定します。
    1. タイプ:段落
    2. 変数名request_text
    3. ラベル名:相談内容
    4. 最大長:5000
    5. デフォルト値
      入力例:先月、応用情報技術者に合格したので、お祝い金の申請をしたいです。
      
    6. 必須をチェック
    7. 保存をクリック

2. 知識検索ノード

  1. ユーザー入力ノードの右にある「+」をクリックして、表示される一覧から「知識検索」を選んでノードを追加します。
  2. 設定画面上部のノード名を「知識検索」に変更します。
  3. クエリテキスト:クリックしてrequest_text を選択。
  4. ナレッジベース:手順①で作成した「benefits_regulations.md」を選択して追加をクリック。

3. LLM①ノード(LLM_内容分析)

  1. 知識検索ノードの右にある「+」をクリックして、表示される一覧から「LLM」を選んでノードを追加します。
  2. 設定画面の上部のノード名を「LLM_内容分析」に変更します。
  3. モデルgemini-3-flash-preview
  4. システムプロンプト(SYSTEM)

    あなたは親切な人事の一時審査ボットです。
    【社内規定】を読み、社員からの【相談内容】について以下の手順で回答を作成してください。
    
    1. どの制度についての相談かを特定する。
    2. 規定(金額や期限、対象者など)に合っているかを確認する。
    3. 最後に必ず「判定:【OK】」または「判定:【不備あり】」のどちらかを明記して回答を締めくくってください。
    
    【社内規定】: {{#context#}}
    

  5. ユーザープロンプト(USER)
    +メッセージ追加をクリックし、USERに以下を入力します。

    【相談内容】: {{request_text}}
    

↑{{変数}}の設定部分は手入力の必要があります

上記の{{request_text}}の部分は、ユーザー入力ノードで作成した変数を指定するものです。手入力で「{」または「/」を入力して表示される変数候補の中から選んでください。

4. 質問分類器ノード

  1. LLM_内容分析ノードの右にある「+」をクリックして、表示される一覧から「質問分類器」を選んでノードを追加します。
  2. 入力変数:クリックしてLLM_内容分析の text を選択。
  3. モデルgemini-2.5-flash-lite
  4. 分類(クラス)設定
  5. クラス1合格: 「判定:【OK】」という言葉が含まれている場合
  6. クラス2不備あり: 「判定:【不備あり】」という言葉が含まれている場合

5. LLM②ノード(LLM_申請メッセージ作成)

  1. 質問分類器のクラス1(合格)の右にある「+」をクリックし、「LLM」を追加します。
  2. 設定画面上部のノード名を「LLM_申請メッセージ作成」に変更します。
  3. モデルgemini-3-flash-preview
  4. システムプロンプト(SYSTEM)

    一次審査を通過しました。内容分析から、「申請用メールメッセージ」をコードブロック形式で作成してください。丁寧なメール文面ではなく申請に必要な淡泊な内容にしてください。
    ユーザーの入力が必要な欄には「★書き換えてください」と記入してください。
    

  5. ユーザープロンプト(USER)
    +メッセージ追加をクリックし、USERに以下を入力します。

    【内容分析】: {{LLM_内容分析の text}}
    

↑{{変数}}の設定部分は手入力の必要があります

上記の{{変数名}}の部分は、これ以前のノードで設定した変数を指定するものです。 コピーペーストするだけでは認識されないので、手入力で「{」または「/」を入力して表示される変数候補の中から選んでください。

6. 終了ノード(2箇所)

  1. LLM②(合格ルート)の次に「出力」ノードを追加します。
  2. ノード名出力_OK
  3. LLM1_resultLLM_内容分析の text(LLM_内容分析の出力)
  4. LLM2_resultLLM_申請メッセージ作成の text(LLM_申請メッセージ作成の出力)

  5. 質問分類器のクラス2(不備ありルート)の次に「出力」ノードを直接追加します。

  6. ノード名出力_NG
  7. LLM1_resultLLM_内容分析の text(LLM_内容分析の出力)

手順④:保存する

画面右上の「公開する」→「更新を公開」をクリックします。変更が保存されます。

Warning

Dify では、上記の保存作業を行うと、保存とともに公開設定がされ、
環境によっては Dify にログインしていないユーザーでもアプリにアクセス可能 になります。

限定したい場合は、左上のアプリ名をクリックし、Web App とバックエンドサービス APIをオフにしてください。
※ 公開可否や利用範囲については、事前に管理者へ確認してください。


4. 動作確認

画面右上のテスト実行をクリックし、作成したワークフローのプレビュー画面を開き、以下のケースを入力して、意図した通りの判定と分岐が行われるか確認してください。


ケース①:【OK】資格取得(ITパスポート)

入力

先月ITパスポートに合格しました。受験料とお祝い金を申請したいです。

期待される出力ポイント

  • 判定結果:資格取得支援制度の対象である旨と、報奨金10,000円が支給される旨が表示され、「判定:【OK】」が出力される。
  • 申請メッセージ:ITパスポート合格に伴う報奨金および受験料の精算申請メール文章が作成される。

ケース②:【OK】特別休暇(配偶者の出産)

入力

昨日、妻が出産したので明日から3日間休みをいただけますか?

期待される出力ポイント

  • 判定結果:慶弔休暇の規定(3日間の有給休暇)に合致する旨が表示され、「判定:【OK】」が出力される。
  • 申請メッセージ:慶弔休暇の申請用メール文章が作成される。

ケース③:【不備あり】家賃補助(年齢制限)

入力

35歳で世帯主です。会社のすぐ隣に住んでいるので家賃補助の3万円を申請します。

期待される出力ポイント

  • 判定結果:家賃補助の対象が「30歳未満の社員」であるため、規定外である旨が表示され、「判定:【不備あり】」で締めくくられる。
  • 挙動:質問分類器によって不備ありルートに進み、申請用メール文章は作成されない。