2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Difyで就業規則RAGのチャットボットを作ってみた

Posted at

はじめに

Difyを初めて使ったメモです。スクショ多め。

Difyを使って社内用チャットボットを作る想定で試してみました。
最近G検定やAIプラクティショナーを取ったので実際にやってみようということです。

Difyとは?

Difyは、誰でも簡単にAIアプリケーションを開発・展開できるオープンソースプラットフォームです。直感的なインターフェースを通じて、RAGパイプライン、エージェント機能、モデル管理などを統合し、技術者でなくても生成AIソリューションを構築できます。プロトタイプから本格運用まで対応しており、企業レベルでの拡張性と安全性を重視した設計になっています。

Difyには主に以下の3つの利用形態があります:

1. Dify Cloud(クラウド版)

Dify公式が提供するクラウドサービスで、セットアップ不要ですぐに使い始めることができます。無料プランでは200回のGPT-4呼び出しが含まれています。管理やメンテナンスが不要で、個人や小規模チームでの利用に適しています。

2. セルフホスト版(オンプレミス)

Docker ComposeやKubernetesを使って自社サーバーやローカル環境に構築する方法です。データの完全管理、カスタマイズの自由度、セキュリティ要件の厳しい企業での利用に適しています。PostgreSQLとpgvectorを組み合わせた構成も可能です。

3. クラウドインフラ構築版

AWS EC2、GCP、Azureなどのクラウドプラットフォーム上に自分でDifyを構築する方法です。クラウドの拡張性とセルフホストの制御性を両立でき、中規模以上の企業やスケーラビリティが重要なプロジェクトに適しています。AWSには専用の構築ガイドも提供されています。

↑ Claudeに書いてもらった説明です。

作るもの

架空の就業規則を用意。
それを読み込んで答えてくれるチャットボット。
つまり自社就業規則のチャットボットです。

事前に準備したもの

Claudeで架空の就業規則を20項目で作成してもらいました。
(実際にはなさそうなへんな就業規則で依頼)
それをWordに貼り付けてWordファイル化しました。

ファイル名:へんな株式会社_就業規則.docx
へんな株式会社 就業規則

第1条(猫の日の勤務態度)
毎月22日(にゃんにゃんの日)は、全従業員は猫の鳴き声で挨拶をすること。「おはようございます」は「にゃーん」に置き換える。

第2条(金曜日のダンスタイム)
毎週金曜日の午後3時から10分間は強制ダンスタイムとし、全員でマカレナを踊ること。踊らない者は月曜日に追加でソーラン節を踊る義務を負う。

第3条(エレベーター内での沈黙禁止)
エレベーター内では必ず天気の話をすること。同じ天気の話を3回以上繰り返した場合は、次回から階段利用を義務とする。

第4条(ペットの役職任命)
飼っているペットに架空の役職を与え、名刺を作成すること。ペットが複数いる場合は組織図も作成する。

第5条(ランチタイムの変装義務)
昼食時間中は全員が異なるキャラクターに変装すること。同じキャラクターが重複した場合は、じゃんけんで決着をつける。

第6条(会議での語尾統一)
会議中は全発言の語尾を「〜でござる」で統一すること。忘れた者は会議後に忍者の格好で1時間勤務する。

第7条(植物への挨拶義務)
オフィス内の観葉植物に毎朝「おはよう」と声をかけること。植物が枯れた場合は弔辞を読み上げる。

第8条(靴下の色規制)
火曜日は必ずピンクの靴下を着用すること。持っていない場合は会社から貸し出すが、洗濯して返却すること。

第9条(コピー機への謝罪)
コピー機が紙詰まりを起こした場合、「ごめんなさい」と3回謝罪してから修理に取りかかること。

第10条(ハッピーバースデー歌唱義務)
誰かの誕生日の際は、通常の「ハッピーバースデー」に加えて、オペラ調でもう一度歌うこと。

第11条(月曜日のポジティブワード縛り)
月曜日は「疲れた」「だるい」「眠い」の使用を禁止し、代わりに「フレッシュ」「エネルギッシュ」「やる気満々」を使うこと。

第12条(お茶汲みロボット化)
お茶を淹れる際は、必ずロボットの動きを真似して「ピピピ、お茶ヲイレマス」と言いながら作業すること。

第13条(雨の日の傘ダンス)
雨の日の出社時は、傘を使って3秒間のダンスパフォーマンスを披露してから入室すること。

第14条(プレゼン時の効果音担当)
プレゼンテーション中は、発表者以外の1名が効果音担当となり、適切なタイミングで「ジャジャーン」「ドドーン」等を口で表現すること。

第15条(昼寝タイムの寝言検査)
午後1時から10分間の昼寝タイムを設け、寝言を言った者は翌日のおやつ当番に任命される。

第16条(コーヒーメーカーへの愛の告白)
コーヒーメーカーを使用する前に「愛しています」と囁いてからボタンを押すこと。恥ずかしがる者は紅茶で我慢する。

第17条(退社時の決めポーズ)
退社時は必ず決めポーズをして「お疲れ様でした!」と言うこと。同じポーズを3日連続で使用してはならない。

第18条(電話応対での動物鳴き声規制)
電話応対中に動物の鳴き声を真似してはならない。ただし、相手が先に動物の鳴き声を使った場合はこの限りではない。

第19条(パソコンのデスクトップ画像義務)
パソコンのデスクトップ画像は必ず自分の幼少期の写真または飼っているペットの写真に設定すること。どちらもない場合は好きな野菜の写真でも可。

第20条(遅刻時のペナルティ)
遅刻した者は、全員の前で即興コントを3分間披露すること。面白くなかった場合は翌日も同じペナルティが科される。

附則
本規則は○○年○月○日より施行する。ただし、真面目に適用すると労働基準法に抵触する恐れがあるため、実際の職場では使用しないこと。

見たい方だけ展開して見てください。
このファイルをRAGとしてLLMに自社就業規則という外部知識を加えて検索できるようにするのが目的です。

注意点

今回、環境準備の手間がないDifyのクラウド版で試しています。
クラウド版ではアップロードしてもよいファイルで試しましょう。
自社の就業規則をアップするのはマズいことがほとんどだと思います。
そのため架空の就業規則を作ってアップロードしています。

Difyの登録

2025-09-08 095438.png
このスクショの右上の「始める」か左下の「今すぐ始める」をクリックします。

2025-09-08 095522.png

GoogleかGithubかメールアドレスでログインするようです。
私はメールアドレスを入力しました。

2025-09-08 095634.png
すると、認証コードを送ったという画面になるのでメールを確認します。

2025-09-08 095653.png
メールが来てましたのでこの6桁の数字を先ほどの画面に入力します。

2025-09-08 101108.png
ログインできるとこんな画面になります。
真ん中の黒いのは、私がすでに1つ試しに作ったものがあるので隠しているだけです。
初めての場合は虚無です。

GeminiのAPIキー登録

DifyではOpenAIとかAnthoropicとかGeminiとか、いろんなモデルが選択できます。
今回はGeminiを使います。
スクリーンショット 2025-09-08 153353.png
画面右上の自分のアイコンをクリックすると、メニューが出てきますので、「設定」をクリックします。

スクリーンショット 2025-09-08 153415.png
次に設定のメニューが左側に出ますので、一番上の「モデルプロバイダー」をクリックします。

スクリーンショット 2025-09-08 153530.png
このスクショではGeminiを追加操作したあとの状態になってしまっていますが、
「モデルプロバイダーをインストールする」で使いたいモデルプロバイダーを選択します。
マウスをオンにすると「インストール」ボタンが出てくるのでクリックするだけです。
するとこのスクショのように上に出てきます。

ここからさらにAPI KEYをセットしないと使えません。
Geminiなので、ブラウザの別タブでGoogle AI Studioのサイトに行きます。

スクリーンショット 2025-09-08 155235.png
左側のメニューの下の方に「Get API key」がありますのでクリックします。

スクリーンショット 2025-09-08 155256.png
APIキーの画面に来たら、右上の「+APIキーを作成」を押します。

スクリーンショット 2025-09-08 155310.png
マスクしていますが、こんな感じでAPIキーが表示されますので、コピーします。

スクリーンショット 2025-09-08 155542.png
Difyの画面に戻ってGeminiの枠にあるAPI Keyを押してAPIキー認証設定画面でAPI Key欄に貼り付けて保存します。

チャットボットの作成

2025-09-08 101108.png
左側の「最初から作成」を押します。

2025-09-08 101211.png
こんな作成画面になりました。
「アプリのアイコンと名前」には「就業規則チャット」と入れました。横のアイコンはそのままです。
「説明」は任意なので入れなくてもいいのですが、「就業規則のチャットをテスト作成」と入れました。
「作成する」ボタンをクリックします。

2025-09-08 101248.png
なんかMatrixFlowで見たことあるような画面になりました。
「開始」、「LLM」、「回答」という箱が最初からできています。

プレビュー

スクリーンショット 2025-09-08 101356.png
右上にプレビューというボタンがあるので押してみると、チャットのお試しができるみたいです。
「日本の首都は?」と入れたらちゃんと返してくれました。
この辺りはAPIキー設定したGeminiで動いているんですね。

公開

一番右には「公開する」もありますね。
スクリーンショット 2025-09-08 101424.png
「更新を公開」を押します。
スクリーンショット 2025-09-08 101443.png
ボタンが「公開済み」に変わりました。
その下の「アプリを実行」を押します。
スクリーンショット 2025-09-08 101538.png
別タブでChatGPTっぽいチャット画面が開きました。
同じ質問を入れてちゃんと応答がくることが確認できました。

ナレッジのアップロード

さて、では実際に作っていくのですが、フローはちょっと置いといて、
最初に事前に作っておいた「へんな株式会社_就業規則.docx」をアップロードする必要があるので、画面ヘッダー部にある「ナレッジ」をクリックします。
スクリーンショット 2025-09-08 102143.png
このスクショでは既にひとつお試しで登録してあるwordがあるのですが、これは別物です。
左側の「ナレッジベースを作成」をクリックします。

スクリーンショット 2025-09-08 102233.png
ドラッグアンドドロップでアップロードできるようです。拡張子docxも大丈夫ですね。

スクリーンショット 2025-09-08 102310.png
ドラッグアンドドロップするとこんな具合で表示されますので「次へ」をクリック。

スクリーンショット 2025-09-08 102344.png

チャンクとか処理ルールとか設定できるようですが、難しいことは考えずそのままでいきます。
まだ設定項目が下にもあるので下スクロールします。
スクリーンショット 2025-09-08 102426.png
一番下の検索設定が
ベクトル検索/全文検索/ハイブリッド検索
とあり、ハイブリッド検索に推奨がついているのでここだけ変更してハイブリッド検索にします。
スクリーンショット 2025-09-08 102506.png

「保存して処理」をクリック。

スクリーンショット 2025-09-08 102526.png
「ナレッジベースが作成されました」と出たらOKです。

フロー設定

ここからはフローの部分にいきます。
先ほどアップロードした就業規則のWORD(ナレッジ)を読み込ませます。
スクリーンショット 2025-09-08 102014.png
「開始」と「LLM」を結んでいる線の真ん中にマウスを持っていくとプラスが出てくるのでクリックするといろんな選択肢が出てきます。
上から2つ目の「知識検索」を選択します。
右側に「知識検索」の入力画面が出てきます。

スクリーンショット 2025-09-08 102051.png
ナレッジベースの右にある「+」をクリックします。
スクリーンショット 2025-09-08 102635.png
登録してあるファイル(ナレッジ)が選択できるので、先ほど追加したものを選びます。

スクリーンショット 2025-09-08 103355.png
次に、「知識検索」の右にある「LLM」の箱をクリックします。

image.png
コンテキストのエリアにカーソルを持っていくと、こんな感じの選択肢が出てきます。
一番上の「知識検索」の「{x} result」を選択します。

image.png

コンテキスト利用時はプロンプトに変数を明記してください

とメッセージが表示されました。

スクリーンショット 2025-09-08 104039.png
SYSTEMという欄にプロンプトを入力しました。

紫になってる「コンテキスト」は
image.png
SYSTEM欄上部の{x}をクリックするとこんな選択肢が出てきます。
選択肢の一番下のコンテキストを選択します。

これで登録したナレッジ:へんな株式会社_就業規則.docxを使って検索するようにセットできました。

プレビュー

画面右上のプレビューから確認してみます。
元の「へんな株式会社_就業規則.docx」に書いてあることで質問してみます。

第1条(猫の日の勤務態度)
毎月22日(にゃんにゃんの日)は、全従業員は猫の鳴き声で挨拶をすること。「おはようございます」は「にゃーん」に置き換える。

この第1条にあたりそうな質問で

毎月22日はどうしたらいい?

と聞いてみました。

スクリーンショット 2025-09-08 104225.png
ちゃんと「へんな株式会社_就業規則.docx」の内容から回答してくれています。

スクリーンショット 2025-09-08 104238.png
下にスクロールして一番下には、このナレッジを引用して回答していることが明示されています。
よさそうです。
できたっぽい。

公開

最初に試したのと同じように「公開する」から公開してみてみます。

スクリーンショット 2025-09-08 104527.png

第8条(靴下の色規制)
火曜日は必ずピンクの靴下を着用すること。持っていない場合は会社から貸し出すが、洗濯して返却すること。

次は就業規則の第8条、靴下の色について聞いてみました。

靴下の色規制について教えて

これに対して「毎週火曜日は全従業員がピンクの靴下を着用」と答えてくれました。
画面ショットには含めていませんが、この画面のURLをコピーして別ブラウザで開くとアクセスできました。
社内に展開する場合はこのURLを使えばいいということになります。

おわり

完全にノーコードで驚くほど簡単にできちゃいました。
「知識検索」の追加の時にめちゃくちゃ選択肢があって、いろいろできそうという感触もあります。
IF/ELSEとかイテレーションとかループとか。
コード実行ってのもあったので、Pythonとかも書けるのかな?

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?