AI総合研究所

SHARE

X(twiiter)にポストFacebookに投稿はてなブックマークに登録URLをコピー

Difyとは?できることや使い方・料金体系を解説!商用利用時の注意点も

この記事のポイント

  • Difyはプログラミング不要で直感的にAIアプリを作成できるプラットフォーム
  • 豊富なAIモデル、外部ツール連携、RAG機能など多彩な機能を搭載
  • 無料プランから本格開発向け有料プランまで幅広い料金体系を提供
  • 条件付きで商用利用可能、ただし制限事項にも注意が必要
  • チャットボット、テキスト生成、検索自動化など様々なアプリケーション開発が可能

監修者プロフィール

坂本 将磨

Microsoft AIパートナー、LinkX Japan代表。東京工業大学大学院で技術経営修士取得、研究領域:自然言語処理、金融工学。NHK放送技術研究所でAI、ブロックチェーン研究に従事。学会発表、国際ジャーナル投稿、経営情報学会全国研究発表大会にて優秀賞受賞。シンガポールでのIT、Web3事業の創業と経営を経て、LinkX Japan株式会社を創業。

Dify(Dify.AI)は、プログラミングスキルが不要で、誰でも直感的にAIアプリを作成できる革新的なプラットフォームです。
開発者だけでなく、非エンジニアやビジネスユーザーも、ノーコードでチャットボットやコンテンツ生成ツールなどの高度なアプリを構築できます。

この記事では、Difyの特長や利用方法、料金プランなどを詳しく解説します。また、Difyを使った様々なアプリケーション開発事例も紹介し、AIアプリ開発の可能性を探ります。

プログラミングの壁を越えて、誰もがAIの力を活用できる時代の到来を感じさせるDifyの世界をご覧ください。

「AIをマーケティングに活用したいけど、具体的な方法がわからない」とお悩みではありませんか?
AI Marketerなら、効率的なコンテンツ制作と多チャネル展開が簡単に実現できます。
AI Marketerの資料を見てみる

Difyとは

Difyは、AI開発の敷居を下げ、誰もが手軽に高度なAIアプリケーションを構築できる、オープンソースのLLMアプリ開発プラットフォームです。
生成AIを活用したチャットボット、コンテンツ生成ツール、データ分析ツールなど、様々なアプリケーションの開発をサポートします。

直感的なインターフェースと豊富な機能を備えているため、開発者だけでなく非エンジニアやビジネスユーザーも、コーディング不要で高性能なAIアプリを構築できます。

Difyとは
(参考:Dify)


Difyの特徴

Difyは直感的なUIとナレッジ機能、包括的なモデルサポートにより、プログラミング初心者でも手軽にAIアプリを開発できるプラットフォームとなっています。

組織のニーズに合わせて自由にカスタマイズが可能な点も魅力的です。

Difyの特徴

直感的なノーコードUI

Difyの最大の特徴は、直感的なユーザーインターフェース(UI)を備えていることです。プログラミングの知識がなくても、ドラッグ&ドロップ操作でアプリケーションを構築できます。

パラメーターの設定も簡単に行えるため、初心者でも手軽にAIアプリの開発が可能です。

Dify:チャットボット構築例
チャットボット構築例。ノーコードで作成可能


豊富なモデルサポート

Difyは、OpenAI、Anthropic、Azure OpenAI、Llama2、Hugging Face、Replicateなど、さまざまなAIモデルプロバイダーをサポートしています。

目的に応じて最適なモデルを選択でき、さらにモデル間の連携も可能です。 柔軟なモデル活用ができるのが大きな利点です。

Difyで利用可能なAIモデル(プロパイダー)
Didyで利用可能なAIモデルの一覧 (参考:Dify)


RAGパイプランによるナレッジ機能

Difyには、RAG(Retrieval-Augmented Generation)パイプラインが搭載されています。

この機能を活用することで、組織内に蓄積された独自のドキュメントやデータをもとに回答するチャットボットアプリなどを作成できます。

Difyのナレッジ機能
Difyのナレッジ機能


カスタムツールやAPIの統合

Difyには、Google検索Slackなどの外部ツールをはじめ、Dell-EStable Diffusionといった画像生成AIを組み込める機能があります。
さらに、APIの統合を通じて独自のカスタムツールも作成できます。

外部ツールやAPIと連携させることで、より高度な機能を持つAIアプリ開発が可能になるでしょう。

Difyの外部ツール組み込み
多様な外部サービスを組み込み可能


豊富なテンプレートとコンポーネント

Difyには、さまざまなアプリケーションのテンプレートとコンポーネントが用意されています。

チャットボット、タスクリスト、カレンダーなど、よく使われる機能をテンプレートとして提供しているため、ゼロからの開発は不要です。
必要に応じてカスタマイズを加えるだけで、短期間でアプリを構築できます。

Difyのテンプレート例
Difyのテンプレート例


このように、Difyはノーコード/ローコードによるAI開発を実現するだけでなく、豊富なテンプレート、包括的なAIモデル連携、外部ツール統合など、高い拡張性と生産性を備えた特徴を持っています。


Difyの使い方

DifyはGitHubからリポジトリをクローンしてローカルで利用する方法と、ブラウザからSaaSとして利用する方法があります。
用途に合わせて好みの方法を選べます。

内製開発研修

ブラウザでの利用方法

  1. Difyの公式サイトにアクセスします。

  2. 右上の「始める」ボタンからアカウントを作成します。
    Googleアカウント、もしくはGithubでの登録が求められるので、好きな方を使ってサインアップしてください
    Googleアカウント、もしくはGithubでの登録が求められるので、好きな方を使ってサインアップしてください

  3. ホーム画面が開きます。「アプリを作成する」の欄に表示されている「最初から作成する」、「テンプレートから作成」のうち、好きな方を選択します。
    今回は「最初から作成する」を選択しました
    今回は「最初から作成する」を選択しました

  4. 作成したいアプリのタイプ、名前とアイコン、説明を追加します。
    今回はアプリタイプをチャットボット、アイコンは初期設定のまま、名前を「chatbot-demo」、説明は空欄にしてあります
    今回はアプリタイプをチャットボット、アイコンは初期設定のまま、名前を「chatbot-demo」、説明は空欄にしてあります

  5. 必要事項を記入します。今回はチャットボットなので手順の欄にプロンプトとして献立を考えるよう入力しました。
    今回は日本語で入力しましたが、英語でも入力可能です今回は日本語で入力しましたが、英語でも入力可能です

  6. 「デバックとプレビュー」の欄でテスト実行できます。右下に質問文を入力し、送信します。
    無事夕食の献立案が出力されました
    無事夕食の献立案が出力されました

  7. 右上の「公開する」ボタン内にある「更新」から保存、公開できます。
    「アプリを実行」や「サイトに埋め込む」をクリックすると別ページへ飛びます
    「アプリを実行」や「サイトに埋め込む」をクリックすると別ページへ飛びます


ローカルでの利用方法

Difyはオープンソースソフトウェアなので、ローカル環境にもインストール可能です。
こちらの公式ドキュメントを参考に進めていきます。

  1. GitHubからDifyのリポジトリをクローンします。
    Githubがインストールされている環境の場合は、ターミナルで以下のコマンドを実行することでクローンできます。
   git clone https://github.com/langgenius/dify.git


  1. 以下のコマンドを使ってdify内にあるdockerディレクトリに移動し、Dockerを起動します。この操作には若干時間がかかります。
    cd dify/docker
    docker compose up -d


正しく出力された場合は、以下のように表示されます。

    [+] Running 34/4
     ✔ worker Pulled                                                         269.0s 
     ✔ api Pulled                                                            269.0s 
     ✔ nginx Pulled                                                           72.9s 
     ✔ web Pulled                                                            123.5s 
    [+] Running 9/9
     ✔ Container docker-web-1         Started                                 12.5s 
     ✔ Container docker-db-1          Started                                 12.6s 
     ✔ Container docker-weaviate-1    Started                                 12.6s 
     ✔ Container docker-ssrf_proxy-1  Start...                                12.7s 
     ✔ Container docker-sandbox-1     Started                                 12.4s 
     ✔ Container docker-redis-1       Started                                 12.6s 
     ✔ Container docker-worker-1      Started                                 11.8s 
     ✔ Container docker-api-1         Started                                 11.9s 
     ✔ Container docker-nginx-1       Started



3. 正しく実行されているかの確認のため、以下のコマンドを実行します。

    docker compose ps


  1. Difyをアップグレードします。以下のコマンドを使ってdify内のdockerディレクトリに移動し、実行します。
    cd dify/docker
    git pull origin main
    docker compose down
    docker compose pull
    docker compose up -d

以下のような表示が出たら実行完了です!

    [+] Running 11/11
     ✔ Network docker_default             Created                              0.1s 
     ✔ Network docker_ssrf_proxy_network  Created                              0.0s 
     ✔ Container docker-db-1              Started                              0.9s 
     ✔ Container docker-web-1             Started                              0.8s 
     ✔ Container docker-ssrf_proxy-1      S...                                 1.0s 
     ✔ Container docker-weaviate-1        Sta...                               0.9s 
     ✔ Container docker-sandbox-1         Star...                              0.7s 
     ✔ Container docker-redis-1           Starte...                            0.9s 
     ✔ Container docker-api-1             Started                              1.3s 
     ✔ Container docker-worker-1          Start...                             1.3s 
     ✔ Container docker-nginx-1           Starte...                            1.7s 



5. 最後に、ローカル環境を立ち上げるためのリンクにアクセスし、メールアドレスを使ってサインアップを行います。


  1. ホーム画面が開きます。あとはweb版と同じようなフローで利用できます。なお、ローカル環境ではDockerコンテナ内でワークフローが実行されます。

ローカル利用ではDockerの知識が必要ですが、クラウド環境に依存せずにDifyを利用でき、オンプレミスでの運用も可能になります。利用シーンに合わせて、SaaSかローカルインストールを選択できます。


Difyのワークフローを使ったチャットボットの作成方法

web版を使って、RAGを活用したチャットボットを作ってみます。

テンプレートを使って作成する

先述のように、Difyには多くのテンプレートが用意されています。
まずは、そのうちの一つである「Email Assistant Worklflow」を使ってメール執筆の手助けをするチャットボットを作ってみました。

  1. 「テンプレートから選択」をクリックし、使いたいテンプレートを選択します。
    数多くのテンプレートが用意されています
    数多くのテンプレートが用意されています

  2. 使いたいものを選択し、名前や説明を追記します。
    デフォルトではテンプレートの名前が入力されているため、今回はEmail Assinstant Workflow-demoとしました
    デフォルトではテンプレートの名前が入力されているため、今回はEmail Assinstant Workflow-demoとしました



3. アプリ作成画面が開きます。ここから必要事項を入力していきます。
今回は変更を加えていませんが、内容を変えることで簡単にカスタマイズが可能です
今回は変更を加えていませんが、内容を変えることで簡単にカスタマイズが可能です

  1. 右上の「実行」ボタンをクリックし、テスト実行を行います。
    今回はメールの内容をさらに完了するように指示しました
    今回はメールの内容をさらに完了するように指示しました

  2. 結果が表示されます。
    無事丁寧な文章が出力されました
    無事丁寧な文章が出力されました


完成後は「公開する」ボタンから「更新」をクリックして保存しておきましょう。

また、「公開する」ボタンの中にある「アプリを実行する」ボタンをクリックすると、新しいタブが開き、作成したアプリを実行可能です。
そのタブのURLをコピーすることでご自身のウェブサイトなど任意の場所に埋め込むことも可能になります。

「詳細」や「トレース」からどのように実行されたかや、どの程度トークンを使用したか、処理にかかった秒数などを確認できます。
どんな仕組みで動いているかの確認にも便利です
どんな仕組みで動いているかの確認にも便利です


このように直感的な操作でアプリの作成が可能なため、コーディングの経験や知識に自信がない方でも、web版を使うことで簡単に操作、実行することができます。


テンプレートを使わずにカスタマイズする

Difyではこれらのテンプレートを使わず、好きなように機能を組み合わせてアプリを作ることも可能です。
今回はデモとしてメールをよりフォーマルに、もしくはラフにするものを作成してみます。

  1. 全体像はこのようなものになりました。
    各ノードの解説は後述しますt
    各ノードの解説は後述します
    今回はほとんどノーコードで作成しています。

  2. ホーム画面から「最初から作成」を選択し、「ワークフロー」を選択し、名前をつけます。必要に応じて説明も追加します。
    今回はdemo-playとしました
    今回はdemo-playとしました

  3. 機能の追加をします
     ホーム画面が開き、さまざまな機能を追加できるようになります。
    今回は最初の「開始」ノードで以下の機能を追加します。

  • 開始のところでユーザーにどういったものを作りたいのか選択してもらう
  • 校正したいテキストを入力してもらう
  • メールの最後に入力するユーザーの名前を入れる


まずは開始を選択し、入力フィールドの+をクリック、機能を入力します。

Alt text
今回は選択式のため、「段落」を選択しました


また、テキストを入力する部分も作るため、さらに+をクリックし、追加していきます。
こちらはテキストのため「ショートテキスト」を選択しています
こちらはテキストのため「ショートテキスト」を選択しています


さらに、最後の署名用の名前欄を作りたいので「ショートテキスト」を使って名前記入欄を作ります。
こちらは最低文字数も記入してあります
こちらは最低文字数も記入してあります


  1. 「次のステップ」の中にある+をクリックし、次の機能を追加します。今回は二種類の選択肢を用意しているので、それらの判別のために「質問分類機」を使用しています。
    クラスにそれぞれの選択肢から分岐するように作成しています
    クラスにそれぞれの選択肢から分岐するように作成しています


  1. 以下、2と3の繰り返しで機能を足してアプリを作っていきます。今回は入力に対してLLM(大規模言語モデル)で出力を作成したいので、LLMを選択しています。

「System」欄にプロンプトを入力します。
今回はDifyのテンプレートの中にあったものを変数のみ入れ替えて使用しました
今回はDifyのテンプレートの中にあったものを変数のみ入れ替えて使用しました

  1. テンプレートを追加します。この機能を挟むことで、出力結果をまとめることができるようになります。
    今回は、LLMによるメールの生成結果と、署名用の名前を足したいので以下のように記入しました。
    エディタ欄に入力すると自動的に入力変数も補完してくれる場合もあります
    エディタ欄に入力すると自動的に入力変数も補完してくれる場合もあります


  1. 最後に必ず「終了」ブロックを組み込みます。テンプレート機能でまとめたものを出力するために、変数はoutputを入力しています。
    ここまでできたら完成です
    ここまでできたら完成です

これで完成です!

完成したものの動作テストを行う

実際に「実行」ボタンからテストランしてみました。

選択したスタイルは「formal」、入力内容は以下の通りです。
なお、名前は「Demo-name」としています。

Dear, Demo-player,

I hope this message finds you well.

I am writing to inquire about your availability for a meeting to discuss [briefly mention the purpose of the meeting]. I believe that a discussion on this topic would be beneficial and help us to [mention the expected outcome or benefit of the meeting].

Could you please let me know your availability over the next week? I am flexible and can adjust my schedule to accommodate your convenience. Specifically, I am available on the following dates and times:

[Date and Time Option 1]
[Date and Time Option 2]
[Date and Time Option 3]
If none of these times work for you, please suggest a few alternatives that fit your schedule.

Thank you very much for your time and consideration. I look forward to your response and hope we can find a mutually convenient time to meet.

Best regards,


このように出力されました。実際に機能していることがわかります!

Dear Demo-player,

I hope this message finds you well.

I am writing to inquire about your availability for a meeting to discuss [briefly mention the purpose of the meeting]. I believe that a discussion on this topic would be beneficial and help us to [mention the expected outcome or benefit of the meeting].

Could you please let me know your availability over the next week? I am flexible and can adjust my schedule to accommodate your convenience. Specifically, I am available on the following dates and times:

- [Date and Time Option 1]
- [Date and Time Option 2]
- [Date and Time Option 3]

If none of these times work for you, please suggest a few alternatives that fit your schedule.

Thank you very much for your time and consideration. I look forward to your response and hope we can find a mutually convenient time to meet.

Best regards,
Demo-name

「informal」で実行すると、以下のようになりました。概ねこちらの要望を正確に汲み取っていることがわかります。
かなりラフなメールが出力されました
かなりラフなメールが出力されました


このように、自分好みにカスタマイズして使いやすいアプリを作ることができます。
OpenAIにて提供されているGPTsに似ていますが、カスタマイズの容易さ拡張性の点ではDifyが優秀かもしれません。


Difyの料金体系

Difyの料金体系は、手軽に始められる無料プランから、本格的な開発に対応する有料プランまで、幅広く用意されています。

支払い方法は月払いと年払いの2種類が用意されており、年間プランの場合は2ヶ月分の割引が適用されます。

プラン サンドボックス (無料プラン) プロフェッショナル チームプラン エンタープライズプラン
料金 無料 月額59ドル (年額590ドル) 月額159ドル (年額1,590ドル) 要相談
クレジット GPTの無料トライアル200回まで 5,000回/月 10,000回/月 無制限の機能が用意されている
アプリの生成回数 10回 50回 無制限 無制限
チームメンバー 1人 3人 無制限 無制限
容量 5MB 200MB 1GB カスタム
ログの履歴 30日間 無制限 無制限 無制限
カスタムツール 利用不可 10種類 無制限 無制限
サポート コミュニティフォーラム メールサポート 優先メール&チャットサポート 専用のSlackチャンネル、電話、メールによるサポート

Difyの料金体系(月額)
Difyの料金体系表(月額)

Dify開発


Difyの商用利用について

Difyは商用利用が可能なオープンソースソフトウェア(OSS)ですが、一部条件があります。

商用利用が制限されるケース

  • マルチテナントSaaSサービスの提供
    Difyのソースコードを使って、複数の企業や組織が共有して利用するクラウドサービスを運営する場合。

    例えば、「Difyを使ったチャットボットプラットフォームを運営し、複数の企業に提供する場合」がこれにあたります。

  • ロゴや著作権情報の削除・変更
    Difyを使用する際に、Difyコンソールに表示されるロゴや著作権情報を削除したり、変更したりする場合。


上記に当てはまるサービスを提供する場合は、Difyのビジネスチーム([email protected])に問い合わせをし、商用ライセンスを取得する必要があります。

商用利用が可能なケース

  • Difyを社内のシステムやアプリケーションに組み込んで使用する。
  • Difyを利用して開発したアプリケーションを販売する。
  • Difyをカスタマイズして、特定の顧客向けにサービスを提供する。


これらの場合、Difyの商用利用は基本的に許可されています。
例えば、「受託開発企業A」が「クライアントB」のためにDifyを使って特定のアプリケーションを開発する場合です。

この場合、特別な許可は不要だと考えられます。
ただし、Difyのロゴや著作権情報を適切に表示する必要があります。

Difyの商用利用(オープンソースライセンス)
Dify オープンソースライセンス規約 (引用:Dify)


Difyの活用事例

Difyで作成できるアプリケーションは、チャットボットやテキストジェネレーター(物語やスピーチなど)、検索やキュレーションを自動化するエージェントなど、さまざまです。

AIの出力を活用したアプリケーションであれば、Difyで手軽に作れるでしょう。

ここでは、Xで話題のDifyを活用して作成されたアプリを紹介していきます。

最新ニュースを取り入れたチャットボットの作成

論文検索システム

ブラウジング中にWebページを要約できるアプリ

写真から料理名とカロリー計算するアプリ

AI研修


Difyのアップデート情報・最新ニュース【✅随時更新】

DifyはLLMアプリケーション開発プラットフォームとして急速な進化を遂げています。
頻繁なバージョンアップデート、新機能の追加、モデル対応の拡充など、多岐にわたる機能強化により、AIアプリケーション開発の可能性を大きく広げています。

Dify v0.6.10:エンタープライズ機能とAPI管理の強化 (2024/6/5)

エンタープライズ向け機能の強化と開発者向けツールの拡充に焦点を当てた大規模アップデートを実施。

APIレート制限の課題解決とデータ処理機能の拡張により、大規模運用時の安定性が大幅に向上しました。

インフラ強化
ロードバランシング:複数API認証情報の追加によりレート制限を回避
NVIDIA NIM対応:オンプレミスモデルの利用でデータセキュリティを確保

機能拡張
ノード更新:Variable Aggregatorでのグループ機能による変数セット統合
SearchApi:Google、YouTube等からのリアルタイムデータ抽出機能
VannaAI:LLMベースの自然言語データベースクエリ機能を追加

Dify v0.6.11:チーム開発環境の改善とデータベース連携の拡充 (2024/6/15)

チーム開発環境の改善を中心とした機能拡充を実施。ワークフロー管理の効率化とデータベース連携の強化により、より柔軟なアプリケーション開発環境を実現しました。

機能追加
Webサイト同期:Firecrawlとの統合でRAGアプリケーションを強化
コメント機能:ワークフローへの注釈付けとDSLファイル共有時の保持

統合拡張
新規モデル:3社の新規プロバイダーとJina-CLIP-v1を含む4モデルを追加
データベース:TiDB、Chroma、Tencentのベクターデータベースに対応

システム改善
依存関係:Poetryによる高速な並列ダウンロードと競合解決
権限管理:Editorロールの追加でワークスペース管理を改善

Dify v0.6.12:LangSmithとLangfuse統合による監視機能の強化 (2024/6/28)

LLMアプリケーションの監視機能を大幅に強化し、新たなモデルとツールの統合を実現。特にLangSmithとLangfuseの統合により、アプリケーションの品質とコストの追跡評価が可能になりました。

監視機能
LangSmith連携:LLMアプリケーションの品質とコスト追跡を実現
Langfuse統合:クラウドサービスとローカルホスティングオプションを提供

モデル/ツール追加
新規モデル:Claude 3.5 Sonnet、Command R+、OpenRouter対応
Serply.io:複数の検索エンジンからの構造化データ取得API
Novita AI:SDモデルによる拡張可能なパターン生成ツール

機能強化
操作性改善:ワークフローノードの変更をundo/redo可能に
プライバシー強化:公開後のワークフローステップ非表示オプション
環境管理:Poetryへの移行とDocker Compose環境変数設定の柔軟化

インフラ拡張
ベクターDB:AWS OpenSearchとOracle 23aiを追加、k-NN検索対応
ストレージ:Tencent COS Storageの設定オプション追加
出力強化:LaTeXサポートとJSONツール出力の実装

Dify v0.6.13:アプリ管理とツール統合機能の改善 (2024/7/9)

アプリケーション管理機能の改善と新たなツール統合を実施。特にユーザビリティの向上とツールの機能拡張に重点を置いたアップデートとなりました。

機能改善
アプリ削除の最適化:Celeryワーカーによるバックグラウンド処理で即時レスポンスを実現
パスワード管理:パスワードリセット機能を実装

ツール拡充
Nominatim追加:OpenStreetMapの検索エンジンによる地図データ活用が可能に
DuckDuckGo強化:Llama 3とMixtralモデルを統合したプライバシー重視の検索機能
Fircrawl機能拡張:URLスクレイピングとMarkdown検索出力に対応

モデル更新
AWS Bedrock Claude 3:ツール使用とパラメータ抽出のための関数呼び出しをサポート

DifySandboxがオープンソースに:実行環境の公開と拡張 (2024/7/11)

Difyのエージェンティックワークフローの中核を担うDifySandboxをオープンソース化。コミュニティ主導のエコシステム構築への取り組みの一環として、実行環境のセキュリティと拡張性を両立したシステムを公開しました。

主要機能
マルチ言語対応:PythonとNode.jsを統合し、さらなる言語拡張も可能
高パフォーマンス:シングルコンテナでのマルチタスク実行による処理速度の向上
セキュリティ:悪意のあるコードをブロックしながらユーザーコードを安全に実行

オープンソースの利点
自由な利用:独立したオープンソースプロジェクトとしての展開
コミュニティ参加:開発への貢献機会を提供
技術公開:実装の詳細な技術情報を公開

Dify v0.6.14:音声合成とワークフロー制御機能の追加 (2024/7/15)

音声合成機能の追加とワークフロー機能の大幅な強化を実施。より複雑な条件分岐と効率的なワークフロー共有が可能になりました。

新機能追加
音声合成機能:リアルタイムでのテキストから音声への自動変換を実現
URL統合:ワークフローのDSLをURLから直接インポート可能に

ワークフロー強化
IF/ELSE改善:ELIFの統合による効率的な条件分岐
変数評価拡張:条件値に変数使用が可能に、より複雑な操作をサポート

統合拡張
生成AI:CogViewによるテキストから画像生成機能を追加
新規モデル:PerfXCloud、Qwenシリーズ、ERNIE 4.0 Turboに対応
ベクターDB:MyScaleとAnalyticDBを追加

Dify v0.6.15:環境変数管理とプロンプト生成機能の実装 (2024/7/24)

セキュリティ強化とプロンプト生成機能の導入を中心としたアップデートを実施。API鍵などの機密データ保護とAIアプリケーションのパフォーマンス向上を実現しました。

セキュリティ強化
環境変数管理:読み取り専用変数とsecretタイプの追加でAPI鍵を保護
DSL分離機能:機密情報をDSLファイルから分離してエクスポート可能に

開発支援機能
プロンプト生成:チャットボット/エージェントとLLMノード用の高品質プロンプトを自動生成

モデル追加
OpenAI:より高速で低コストのGPT-4o miniを導入
その他:Amazon Sagemakeのカスタムモデル、Tencent Cloud音声認識、Stepfunシリーズ

ツール拡充
Google Translate:Googleの翻訳機能を統合
Spider:ウェブサイトからLLM対応データを取得
getimg.ai:テキストから画像生成機能を追加

MyScaleDB統合:ベクターデータベースオプションの拡充 (2024/7/24)

AIアプリケーション向けオープンソースSQLベクターデータベースMyScaleDBを新たに統合。フルテキスト検索とハイブリッド検索機能により、高性能で費用対効果の高いRAGアプリケーションの構築が可能になりました。

主な特徴
検索機能:フルテキストとハイブリッド検索に対応
コスト効率:効率的なリソース利用による運用コストの最適化
パフォーマンス:高速な検索処理と柔軟なスケーリング

マルチパス知識検索:検索システムの大規模アップグレード発表 (2024/8/1)

9月1日からN-to-1検索戦略を段階的に廃止し、より柔軟なマルチパス検索戦略への移行を発表。検索効率の大幅な向上と、より正確な結果の提供を実現します。

現行システムの課題
単一知識ベース制限:N-to-1戦略による検索範囲の制限
精度の限界:LLMの知識ベース解釈への過度な依存
不完全な結果:検索品質の低下リスク

新機能の特徴
再ランキング:オプションの再ランキング戦略とモデル(Cohere、Jina等)の統合
重み付け検索:セマンティックとキーワードの柔軟な重み付け
カスタマイズ:ビジネスニーズに合わせた検索設定の最適化

移行スケジュール
クラウドユーザー:9月1日までに手動での切り替えを推奨
コミュニティ/エンタープライズ:v0.6.16以降で新機能利用可能
自動移行:9月1日以降、すべてのユーザーを自動的に新システムへ移行

https://dify.ai/blog/dify-ai-blog-n-to-1-knowledge-retrieval-legacyhttps://dify.ai/blog/dify-ai-blog-n-to-1-knowledge-retrieval-legacy

Dify v0.6.16:マルチパス検索への移行開始とモデル拡充 (2024/8/6)

知識検索システムの大規模なアップグレードを中心とした重要なアップデートを実施。より正確で柔軟な検索機能の実現に向けて、新たな検索戦略を導入しました。

検索機能の刷新
マルチパス検索:より柔軟な検索戦略への移行を開始
重み付けスコア:セマンティックとキーワード検索のバランスを最適化
N-to-1廃止:9月1日での旧検索戦略の段階的廃止を発表

モデル統合
Llama3.1シリーズ:OpenRouterAIとGroqでの実行に対応
その他:新規モデルの追加による機能拡充

Dify v0.7.0:会話変数導入によるメモリ管理の革新 (2024/8/14)

LLMのメモリ制限に対処する画期的な機能を導入。会話フロー全体での文脈情報の正確な管理を実現し、複雑なシナリオへの対応力を大幅に向上させました。

メモリ管理機能
会話変数:文脈情報の精密な保存と取得が可能に
Variable Assignerノード:構造化データタイプに対応した変数割り当て
フロー制御:チャットフロー全体での正確なメモリ管理を実現

システム強化
ワークフロー改善:AIアプリケーションの機能を拡張
新規統合:新たなモデルとツールの追加

Dify v0.7.1:構造化出力とアプリカスタマイズ機能の追加 (2024/8/19)

OpenAIの構造化出力対応とアプリケーションのカスタマイズ機能を強化。さらにDifysandboxのアップデートにより、より柔軟な開発環境を実現しました。

構造化出力機能
OpenAI対応:gpt-4o-miniとgpt-4o-2024-08-06モデルでJSON Schema出力が可能に
データ処理:事前定義フォーマットでの出力により下流ノードでの処理を効率化

カスタマイズ機能
アプリアイコン:独自画像のアップロードによるアプリの個性化が可能に
Difysandbox:v0.2.6へのアップデートでPythonパッケージのインストール制限を緩和

新規統合
新モデル:チャット最適化モデルchatgpt-4o-latestを追加
ツール拡充:Jina Tokenizerによるテキスト分割、GitLabとの直接連携を実現

Dify v0.7.2:対話管理システムと構造化出力の拡張 (2024/8/26)

システム変数の追加と機能強化を実施。対話の進行状況に基づいた動的な会話ロジックの実装が可能になりました。

システム機能強化
対話カウント変数:読み取り専用のsys.dialogue_countで対話ターン数を追跡
動的制御:if-elseノードでの対話進行に基づいた分岐処理が可能に
JSON対応:MoonshotモデルでJSON Mode出力をサポート

UX改善
セッション管理:最終更新時刻によるアプリケーションセッションの並び替えを実装

新規統合
埋め込みモデル:Qwen text-embedding-v3を追加
画像生成:Stable DiffusionとFluxを活用したsiliconflowツールを統合

Dify v0.7.3:モニタリング機能とAzure AI連携の強化 (2024/9/3)

アプリケーションのモニタリング機能を強化し、カスタマイズ性の向上とツール統合の拡充を実現しました。

モニタリング強化
改善された統計:日次会話数と応答メッセージ数の可視化
アイコンカスタマイズ:WebApp URL共有時の会話アイコンをカスタマイズ可能に
コード実行管理:サンドボックス環境でのコード実行リクエスト設定を改善

システム改善
質問分類:システムプロンプトの最適化による精度向上
Azure対応:Azure AI StudioでのLLMとRerankモデルのプライベートデプロイ

ツール拡充
Perplexity検索:3サイズのオンライン検索モデルをJSON出力形式で提供
AlphaVantage

Difyのロードマップ公開:コミュニティ参加型の開発方針を発表 (2024/9/4)

製品開発の方向性を示すロードマップを公開。コミュニティメンバーが今後の機能について投票やフィードバックを行える参加型の開発プロセスを開始しました。

主な特徴
機能投票:今後追加予定の機能への投票システム
フィードバック:コミュニティからの直接的な意見収集
透明性:製品開発の方向性を明確に提示

Dify v0.8.0:ワークフロー並列処理による高速化を実現 (2024/9/10)

ワークフローエンジンを大幅に刷新し、並列処理による高速化を実現。従来の逐次実行から複数タスクの同時実行が可能になり、処理効率が劇的に向上しました。

ワークフロー革新
並列処理:複数ブランチの同時実行によるタスク処理の高速化
柔軟な対応:シンプル構成、ネストタスク、反復処理、条件分岐での並列実行
既存ワークフロー:更新による性能改善が可能

重要なお知らせ
N-to-1検索廃止:v0.8.0でN-to-1検索戦略を非推奨化
推奨移行:マルチパス検索戦略への移行を推奨

新規統合
音声合成:Fish Audio TTSの追加
新規モデル:Oracleモデルの統合

Dify v0.8.1:OpenAI最新モデル導入と並列処理の改善 (2024/9/13)

OpenAIの最新モデルを導入し、より高度な推論タスクへの対応を実現。また、ワークフローの並列処理に関する不具合を修正し、より安定した操作性を提供します。

モデル追加
o1-preview:複雑な推論タスク向けの高性能モデル
o1-mini:効率的な問題解決能力を備えたモデル

システム改善
バグ修正:ワークフロー並列処理の安定性向上
動作最適化:全体的なパフォーマンスの改善

【関連記事】
OpenAI o1(ChatGPT o1)とは?その特徴や使い方、料金体系を徹底解説!

Dify v0.8.2:Agent ApplicationでのO1シリーズ対応強化 (2024/9/13)

Agent ApplicationでO1シリーズモデルのサポートを開始。最先端のLLMを活用したアプリケーション開発が可能になりました。

機能拡張
O1シリーズ対応:Agent ApplicationでのO1モデル利用が可能に
開発環境強化:高度なLLMを用いたアプリケーション構築をサポート

Dify v0.8.3:Qwen 2.5対応と実行時間制御機能の追加 (2024/9/20)

長文処理能力と多言語対応を強化したQwen 2.5モデルを導入。また、タスク実行時間の細かな制御を可能にするタイムアウト設定機能も追加されました。

モデル強化
コンテキスト拡大:最大128Kトークンまでの文脈理解が可能に
出力制御:8Kトークンまでの生成に対応
特化機能:数学とプログラミングタスクの性能が向上
多言語対応:複数言語での処理能力を実装

システム制御
タイムアウト設定:テキスト生成とワークフローの実行時間を柔軟に設定可能
環境変数:TEXT_GENERATION_TIMEOUT_MSによる詳細な時間管理

Dify v0.9.0:外部知識ベース連携と情報検索の強化 (2024/9/30)

知識ベースシステムを内部・外部の両面から大幅にアップグレード。外部知識ベースとの連携を簡素化し、より正確で柔軟な情報検索を実現しました。

知識ベース強化
外部連携:APIエンドポイントを通じた外部知識ベースとの簡単な接続
情報検索:ユーザークエリに基づく外部ソースからの関連情報取得
設定簡略化:APIキーと外部知識IDによる簡単セットアップ

新規統合
Jina Reader:ウェブサイト全体を構造化データに変換するクローラー機能
Llama 3.2:FireworksとGroqによる画像理解と推論機能の強化

機能拡充
データ構造化:LLMアプリに最適化されたクリーンデータの生成
モデル追加:新規モデルと機能強化によるパフォーマンス向上

Dify v0.9.1-fix1:会話履歴の安定性向上アップデート (2024/10/11)

AIアプリケーションのAPI呼び出し時における会話履歴の損失問題を修正。マルチターン会話の安定性が向上しました。

主な修正
履歴保持:API呼び出し時の会話履歴維持を改善
会話安定性:マルチターン会話の信頼性を向上

注意事項
アップグレード時間:大量の履歴データを持つ場合、移行に時間が必要
データ移行:既存の会話履歴の安全な移行をサポート

Dify v0.9.2:新モデル統合とシステム変数の拡張 (2024/10/14)

新しい統合機能とシステム変数の追加により、より柔軟なAIアプリケーションの構築が可能になりました。

モデル統合
新規モデル:OpenRouterでQwen2.5-72bとLlama3.2を追加
Azure対応:O1-mini、O1-preview、LlamaGuardを統合

プラットフォーム連携
Discord連携:AIアプリからDiscordへの自動メッセージ送信が可能に
VikingDB:Volcengineの大規模ベクトル管理データベースを追加

システム強化
新規変数:sys.app_id、sys.workflow_id、sys.workflow_run_idを追加
監視機能:AIワークフローの監視とデータ分析機能を強化

Dify v0.10.0:マルチメディアファイル対応とログイン機能の拡充 (2024/10/21)

ファイルアップロード機能の導入により、マルチモーダルAIアプリケーションの開発が可能に。また、ログイン方法の拡充など、利便性の向上を実現しました。

ファイル処理機能
対応形式拡大:ドキュメント、音声、動画など多様なフォーマットに対応
新規ノード:Doc ExtractorとList Operation機能でファイル処理を強化
活用例:NotebookLM風のAIポッドキャストアプリ開発が可能に

アクセス改善
メールログイン:一般メールアドレスでのサインアップとログインに対応
認証拡充:GitHub、Gmailに加えて選択肢を拡大

重要なお知らせ
機能廃止:画像アップロード機能とsys.fileの廃止を予定
移行推奨:新機能への移行を推奨

Dify v0.10.1:Claude 3.5 Sonnet対応とコード生成機能の実装 (2024/10/23)

最新のClaude 3.5 Sonnetへの即日対応を実現し、高度なコーディングと推論機能を提供。さらにワークフローでのコード生成機能も追加されました。

モデル対応
Claude 3.5 Sonnet:Anthropic、AWS Bedrock、GCP Vertex AIで利用可能
性能強化:トップレベルのコーディングと推論性能を実現

開発支援機能
コード生成:ワークフローCode Nodeでの高品質なコード自動生成
データ変換:シンプルなデータ変換タスクの効率化

システム改善
バグ修正:安定性と信頼性の向上

Dify v0.10.2:インタラクティブメッセージとドキュメント処理の強化 (2024/10/28)

インタラクティブな要素の追加とドキュメント処理の改善を実施。さらにワークフローの安定性を高めるバグ修正も行いました。

新機能追加
メッセージボタン:HTMLを使用した対話型ボタンの作成が可能に
JSON対応:Doc ExtractorでJSONフォーマットをサポート

バグ修正
変数処理:ワークフロー間での数値変数処理の問題を解決
フロー制御:If-Else後のLLMノードの出力問題を修正

更新手順
ツール再追加:更新版でのツール再設定により修正を適用

Dify v0.11.0:並列処理と知識ベースAPIの大規模アップデート (2024/11/5)

反復処理の並列化、知識ベースAPIの独立、対話型フォームの実装など、大規模な機能拡張を実施。開発効率と使用体験を大幅に向上させました。

処理性能強化
並列反復処理:Iteration Nodeでの並列処理とエラー処理を改善
ワークフロー:GPT-Researcherの機能を活用した高度な反復処理

API機能拡充
知識ベースAPI:独立したサービスとして知識ベースへのアクセスが可能に
データ取得:チャンク単位での柔軟な情報検索を実現

対話機能強化
インタラクティブフォーム:Template Nodeを使用した直感的な情報入力
ユーザビリティ:対話内での円滑なデータ収集を実現

新規統合
新規モデル

  • Grok Beta:128Kコンテキストと関数呼び出しに対応
  • Claude 3.5 Haiku:高速応答と最先端コーディング機能
  • GPUStackモデルのサポート
    ベクターDB:Couchbase、OceanBase、Lindormを追加

Dify v0.11.1:Pythonバージョン更新と新機能の追加 (2024/11/11)

Dify v0.11.1では、重要な更新と新機能が追加されました。PythonのバージョンアップやマルチモーダルAIアプリケーションの強化など、多岐にわたる改善が含まれています。

Python 3.12へのアップグレード
次のリリースではPython 3.12をデフォルトで使用します。SaaSとDockerの両方が3.12で動作し、3.11との互換性も維持されます。Python 3.10のサポートは終了します。ソースコードのデプロイやカスタム開発の場合は、3.11または3.12へのアップグレードを推奨します。

新機能

  • 多モーダルモデルの拡張:同義千聞(Tongyi Qianwen)と智谱(Zhipu)のマルチモーダルモデルが動画コンテンツをサポート。ファイルアップロードを有効にし、新しいCogVideoツールを使用してテキストや画像から動画を生成することで、マルチモーダルAIアプリの作成が可能になります。
  • GitLab統合ツール:マージリクエストクエリの追加により、GitLabとの連携が強化されました。
  • OpenRouterサポート拡充:Claude 3.5 Haikuモデルのサポートを追加しました。
  • アプリアイコンの拡張:GIF、PNG、WebP形式のアイコンをサポートするようになりました。

Read the full changelog

Dify v0.11.2:新モデル統合とツール機能の大幅拡充 (2024/11/18)

最新のAIモデルと実用的なツールの統合により機能を拡充。特にGoogleの最新モデル統合とマルチメディア処理機能が強化され、より多様なアプリケーション開発が可能になりました。

新規モデル統合
Gemini-exp-1114:lmarena.aiリーダーボードで総合性能1位を獲得したGoogleの最新モデル

Vision-Language Models

  • qwen2-vl-72b:SiliconFlowの大規模ビジョン言語モデル
  • qwen2-vl-7b:軽量版ビジョン言語モデル

出力フォーマット:JSON形式での出力に新たに対応

新規ツール追加
DuckDuckGo Video Search

  • YouTube等の動画をワークフロー内で直接検索
  • 動画の字幕情報へのアクセスが可能

FAL

  • Whisperモデルによるオーディオファイル文字起こし
  • 音声データの効率的な処理を実現

Email:アプリケーションからの直接メール送信機能を実装

Dify v0.11.2:日本語テンプレートのリリース (2024/11/20)

これまで英語表記のみだったテンプレートに、待望の日本語版が登場。日本のユーザーがより直感的にAIアプリケーションを開発できる環境を実現しました。

Dify v0.12.0:新機能と開発者向け更新 (2024/11/25)

Dify v0.12.0では、重要な新機能の追加と開発者向けの更新が行われました。ファイル変数のサポートやドキュメント処理機能の拡充など、さまざまな改善が含まれています。

新機能

  • LLMノードでのファイル変数
    ワークフロー内のLLMプロンプトエディタでファイルおよび配列ファイル変数を直接使用できるようになり、ドキュメント、画像、音声ファイルをシームレスに扱うことが可能になりました(現在、gpt-4o-audio-previewをサポート)。
    注意
    ネイティブなファイル処理機能を持たないLLMの場合、ファイルをテキスト形式に変換するためにドキュメントエクストラクターノードを使用する必要があります。

  • ChatBotおよびAgent向けドキュメント処理
    ChatBotおよびAgentアプリケーション向けにドキュメントトグルを導入しました。
    モデルがドキュメント処理(txt、markdown、pdf、html、xlsxなど)をサポートする場合、この機能を有効にしてユーザーがアップロードしたファイルに基づいたタスクをアプリケーションが処理できるようになります。

開発者向け

  • Python環境の更新
    デフォルトのPythonバージョンを3.12にアップグレードし、パフォーマンスの向上と依存関係の更新(Geventを含む)を実施しました。
    現在、Python 3.11-3.12をサポートしています。CIパイプラインの高速化のため、Python 3.10のテストを削除しました。

  • App DSLインポートAPIの変更

    • 廃止:DSLファイル/URLインポートおよびワークフローオーバーライドルートのレガシールート
    • 追加:新しい /imports エンドポイント(広範な二次開発を行っているユーザーに影響)

Dify v0.13.0:変数割り当てノードのアップグレード (2024/12/3)

Dify v0.13.0では、変数割り当てノードに重要なアップグレードを導入し、より柔軟で効率的な運用を可能にしました。

機能改善

  • 配列変数の操作拡張:対象の配列に全体の配列を一度に追加できるようになり、複雑なデータ処理を簡素化します。
  • 数値、文字列、オブジェクト型の固定値設定:これらの変数に動的な入力なしで固定値を割り当てることができ、初期化やデフォルト設定に最適です。
  • 数値操作の拡張:加算、減算、乗算、除算を直接行うことができ、計算をシームレスにします。
  • 単一ノードでの複数変数サポート:一つのノードで複数の変数を管理できるようになり、ワークフローの効率化と冗長性の削減を実現します。

Dify v0.13.2:新モデルと機能強化 (2024/12/9)

Dify v0.13.2では、新しいモデルの追加と既存機能の強化を行いました。マルチモーダルタスクの性能向上や推論速度の改善など、エンタープライズ向けの機能が充実しています。

新モデル

  • Gemini-exp-1206:最大2.1Mトークンの文脈長を持つマルチモーダルタスクに優れた性能を発揮します。
  • Zhipu AIのGLM-4-Flash:優れた推論速度(72.14トークン/s)とパフォーマンスを提供し、128Kの文脈長および多言語対応を特徴とします。
  • CohereのRerank 3.5:推論と多言語機能を強化し、より正確な複雑なエンタープライズデータ検索を実現します。

機能強化

  • Ollamaの構造化出力サポート:ツールやLLMノードが構造化出力を利用しやすくなりました。
  • Amazon Nova LiteおよびProモデルのビジョン機能:画像分析や質問応答が可能になり、視覚的タスクの処理能力が向上しました。
  • Workflow Resultsでの直接ファイルダウンロード:ワークフロー結果から直接ファイルをダウンロードできるようになり、利便性が向上しました。

AI駆動開発


まとめ

本記事では、オープンソースのLLMアプリ開発プラットフォームである「Dify」の概要と特徴について解説しました。

Difyは、直感的なノーコードUIや豊富なモデルサポート、ナレッジ機能、外部ツールとの統合など、多彩な機能を備えており、プログラミング初心者でも手軽にAIアプリを開発できるプラットフォームです。

無料プランから本格的な開発に対応する有料プランまで、幅広い料金体系が用意されており、用途に合わせて選択できます。また、商用利用も一定の条件の下で許可されています。

Difyは、AIアプリ開発の敷居を下げ、より多くの人々がAIの恩恵を享受できる世界の実現を目指しています。今後も、さらなる機能拡充と利便性の向上が期待されるプラットフォームです。

AI活用のノウハウ集「AI総合研究所」サービスご紹介資料

「AI総合研究所 サービス紹介資料」は、AI導入のノウハウがないというお客様にも使いやすい最先端のAI導入ノウハウを知れる資料です。

資料ダウンロード
監修者

坂本 将磨

Microsoft AIパートナー、LinkX Japan代表。東京工業大学大学院で技術経営修士取得、研究領域:自然言語処理、金融工学。NHK放送技術研究所でAI、ブロックチェーン研究に従事。学会発表、国際ジャーナル投稿、経営情報学会全国研究発表大会にて優秀賞受賞。シンガポールでのIT、Web3事業の創業と経営を経て、LinkX Japan株式会社を創業。

関連記事

AI導入の最初の窓口。

お悩み・課題に合わせて活用方法をご案内いたします。
お気軽にお問合せください。

AI総合研究所 Bottom banner

ご相談
お問い合わせは
こちら!