サマリ
Difyで簡単なチャットアプリを作成しました。
以下のHPの、「Difyで始める最短AI開発チュートリアル」部分を参考にさせていただきました。
ありがとうございました…!
背景
どんどんAIが発展し、様々なツールが生まれている中で、
時代に取り残されないようにまずは触ってみよう!というのがきっかけです。
ゴール
Difyで簡単なチャットアプリを作成
対象読者
- Difyを使ってみたい方
前提
必須:インターネット環境、メールアドレス
推奨:生成AIサービス(OpenAI、Google AI Studio、等)のアカウント
環境
- OS:Window11 Home 24H2
そもそも
プログラムの知識・スキルがなくてもAIアプリを開発できる
オープンソースの開発プラットフォームです。
公式ページには以下のような説明もありました、こういうの知るのも地味に面白いですよね。
「Dify」という名前には2つの意味があります。「Define(定義する)+ Modify(改良する)」の組み合わせで、AIアプリを作って改善し続けることを表しています。そして「Do it for you(あなたのためにやる)」という意味も込められています。
実際にやってみた
改めて、以下のHPを参考にさせていただき、
その手順に則って実施しました。
アカウント作成・ログイン
公式ページにアクセス
今すぐ始めるをクリックします。
GitHubまたはGoogleまたはメールアドレスにてログインします。
ログインすると以下のような画面が出ます。
新しいアプリケーションの作成
最初から作成をクリック
アプリタイプで「初心者向けの基本的なアプリタイプ」を選択し、
「チャットボット」を選択
アプリ名と説明を入れます。
モデルの設定
画面の右の方に生成AIのモデルを設定できるところがあります。(わかりにくい・・)
「モデルプロバイダー設定」をクリック
参考にしたサイトに従い、OpenAIをインストールします。
(ここはなんでもいいので、アカウント持っているものや課金済みのサービスがあればそちらを選択してもOKです)
自分はほかにも試しで、GeminiやANTHROPICをインストールしてみました。
モデルの部分にOpenAIが入りました。
画面の通り注意喚起されています。
セットアップとしてAPIキーの入力が必要なようです。
よくわかりませんが(わかっとけ)、APIキーを作成します。
OpenAIについては、APIキーの作成の仕方は以下のページにありますが、
他のサービスにおいても検索したらすぐ出てくると思います。
設定はそのままにしています。
プロンプト設定をし、テストチャットします。
おぉ~こんな一瞬でできるんですね。。
(当たり前ですが、現時点ではリアルタイム情報などは問いかけても欲しい回答はもらえません)
ナレッジベースの追加(断念)
ドキュメント等をインポートすることで、
そのナレッジ(ドキュメントの情報)から応答してもらうこともできるようです。
見出しにある通り、今回の結末としては自分の準備不足により断念しました。(おい
やったところまでの備忘録です。
上のナレッジタブに移動します。
ドキュメントはDify公式のサポート形式であれば何でもOKです。
文書であれば以下
TXT, MARKDOWN, PDF, HTML, XLSX, XLS, DOCX, CSV, EML, MSG, PPTX, PPT, XML, EPUB.
詳細は公式ページにあるので気になる場合は参照下さい。
今回は
e-statのサイトから適当なオープンデータをとってきて、貼り付けます。
設定はいろいろありますが、今回はお試しなので特に触りません。
保存して処理をクリックします。
コンテキストで今回追加したナレッジ(知識)を選択してあげる必要があります。
その後、テストチャットしましたが、残念ながら応答してくれず…
ここのステータスがエラーになっており、正しく埋め込み完了となっていないため反映できていないものと想像します。
試したこと
ファイルサイズが問題のケースもあるようで、1MBに満たないファイルでも試しましたが改善せず・・
また、全然別のcsvファイルをインポートしましたが同様に応答してくれず・・
OpenAIからGeminiに変え、GeminiのEmbedding-001を設定しましたが、
以下のエラーが発生
[models] Connection Error, 429 RESOURCE_EXHAUSTED. {'error': {'code': 429, 'message': 'You exceeded your current quota, please check your plan and billing details. For more information on this error, head to: https://ai.google.dev/gemini-api/docs/rate-limits. To monitor your current usage, head to: https://ai.dev/usage?tab=rate-limit.\n* Quota exceeded for metric: generativelanguage.googleapis.com/embed_content_free_tier_requests, limit: 0\n* Quota exceeded for metric: generativelanguage.googleapis.com/embed_content_free_tier_requests, limit: 0\n* Quota exceeded for metric: generativelanguage.googleapis.com/embed_content_free_tier_requests, limit: 0\n* Quota exceeded for metric: generativelanguage.googleapis.com/embed_content_free_tier_requests, limit: 0', 'status': 'RESOURCE_EXHAUSTED', 'details': [{'@type': 'type.googleapis.com/google.rpc.QuotaFailure', 'violations': [{'quotaMetric': 'generativelanguage.googleapis.com/embed_content_free_tier_requests', 'quotaId': 'EmbedContentRequestsPerDayPerProjectPerModel-FreeTier'}, {'quotaMetric': 'generativelanguage.googleapis.com/embed_content_free_tier_requests', 'quotaId': 'EmbedContentRequestsPerMinutePerProjectPerModel-FreeTier'}, {'quotaMetric': 'generativelanguage.googleapis.com/embed_content_free_tier_requests', 'quotaId': 'EmbedContentRequestsPerMinutePerUserPerProjectPerModel-FreeTier'}, {'quotaMetric': 'generativelanguage.googleapis.com/embed_content_free_tier_requests', 'quotaId': 'EmbedContentRequestsPerDayPerUserPerProjectPerModel-FreeTier'}]}, {'@type': 'type.googleapis.com/google.rpc.Help', 'links': [{'description': 'Learn more about Gemini API quotas', 'url': 'https://ai.google.dev/gemini-api/docs/rate-limits'}]}]}}
正確なところは違っているかもしれませんが、どうやら利用上限を超過したっぽく見えます・・
生成AIサービスには一切課金していないので、無料枠では限界があったのか?
まだ全然切り分けしきれておりませんが、今回は一旦断念…(無念
アプリ実行
気を取り直して、「公開する」をクリックし、「更新を公開」をクリック後、「アプリ実行」をクリック
(先ほどの設定のままのためGeminiになっております)
無事、チャットできました…!
結果
結果としては、ナレッジを使ったチャットまではできませんでしたが、
本当にシンプルなチャットボットは作成できました。
まとめ
まずは上述の切り分けをしっかりしたいです。。
また、表面しかなぞっていないので、他のアプリ作成も含めてもっと触っていきたいと思います。
不完全な記事にもかかわらずここまで読んでくださった方、ありがとうございました。

























