見出し画像

【Dify v1解説 前編】 プラグインシステムがつくるDifyの未来

注意事項

この記事はbeta版の内容を含みます。以後情報が古くなる可能性があります。
また、既存のDifyと大きく内容が変わっておりますので、お試しの際は既存環境と分けて試されることを強く推奨します。

はじめに

長らくv0.xだったDifyですが、ついにDifyのv1.0.0-betaが公開されました。

Dify のv1で大きく変わるのは以下のとおりです。

  • プラグインシステムができること

  • エージェントノードができること

  • エンドポイント機能ができること

これらを、Dify プラグインシステムの開発者の方のインタビューをもとに、それぞれ解説していきます。


なぜプラグインシステムを作ったのか

ユーザーによるカスタマイズとコミュニティの発展

Difyは初期から、

  • 多種多様なツール

  • モデルの管理機能

  • AIアプリ構築(Chatflow / Agent / Workflow)

を備えてきました。ですが、利用シーンが増えるにつれ「もっと多様な外部APIを使いたい」「自社固有のモデルを差し込みたい」「特化した機能を簡単に追加したい」という声が多数寄せられるようになりました。

これまでのDifyでは「本体コードを改変する」「ツールやモデルを詰め込んだ巨大イメージをビルドし直す」など、大がかりな作業が必要でした。そこで、より多くの人がDifyの機能を自由に拡張できる仕組みとして誕生したのが、今回のプラグインシステムです。

さらにプラグインをオープンソースかつ標準的な形で公開すれば、

「10人が同じ問題を抱えているとき、そのうち2人のエンジニアがプラグインを作れば、残り8人も同じ解決策を活用できる」
というコミュニティの力が最大化されます。これはまさに初期のインターネットの精神を体現するものでもあります。

Dify Marketplace上で、さまざまな機能をプラグインとして追加できる

Dify本体の役割をシンプルに保つ

プラグインシステム導入のもうひとつの理由は、Dify自身を必要最小限のインフラとして保ちつつ、プラグインが必要な機能だけをピンポイントでインストールする形を実現することでした。

  • たとえば「PDFからテキストを抽出する機能」は、論文とビジネス文書で必要とされる処理が大きく異なるケースがあります。

  • ユースケースごとに最適化されたツールやモデルをプラグイン化し、必要なユーザーだけがインストールできるようにするほうが効率的です。

こうすることでDify本体が巨大化せず、ユーザーも自分の業務やサービスに本当に必要な機能だけを取り込むことができます。


プラグインは誰のためのものか

開発者にとって

プラグインを開発するエンジニアにとっては、Difyが提供する各種SDK・デバッグ機能・データストアなどが大きな助けになります。

  • プラグイン開発の際には、ローカル環境とDify本番環境を連携したリモートデバッグを活用できるため、手元でテストしながら素早く作り込めます。

  • パラメータ抽出、質問分類器などの機能も「ツール」として扱うことで、独自に拡張したプラグインを簡単に差し込むことが可能です。

さらにDify MarketplaceGitHub公開など、プラグイン配布の仕組みを整えたことで、エンジニアは自作のプラグインを世の中に広くシェアでき、コミュニティからフィードバックを得ることができます。

ビジネス担当 / 企画担当 / クリエイターなどにとって

プラグインを作る側だけでなく、使う側にとっても大きなメリットがあります。

  • 「コミュニティやMarketplaceから欲しい機能(プラグイン)を探して、Difyにインストールするだけ」で機能の追加が可能です。

  • コードを一切書かなくても、プラグインを組み合わせることでドラッグ&ドロップだけで高度なワークフローが構築できます。

  • 導入したプラグイン同士をワークフロー(Chatflow/Workflow/Agent)に組み込むだけで、高度なAIアプリのプロトタイプを素早く立ち上げられます。

現在はベータ版ではありますが、ファイル変換やOCRを使ったPDF処理、独自のTTS(Text-to-Speech)を連携してバーチャルキャラクターが発声するなど、開発者でなくともすぐに体験できる活用法が次々と生まれています。


プラグインシステムの特徴

豊富なプラグインタイプ

Difyのプラグインは大きく「Models」「Tools」「Agent Strategy」「Extensions」「Bundles」の5種類に分かれています。

5つのプラグインタイプ
  1. Models

    • LLMや画像生成モデルなど、AIモデルそのものをプラグインとして取り込み可能。

    • AnthropicやOpenAIなどの既存APIだけでなく、カスタムモデルも簡単に追加できる。

  2. Tools

    • PDFテキスト抽出やOCR、外部サービス連携など、実際に処理を実行するツールを担う。

    • Dify内のAgent/Workflowと組み合わせて柔軟にタスクを実行。

  3. Agent Strategy

    • Chain of ThoughtやReActなどの高度な推論戦略、ツール呼び出しの順序制御など、エージェントの思考ロジックを拡張。

    • 新しい論文を参考にカスタム戦略を実装し、そのままDifyにインストール可能。

  4. Extensions

    • シンプルなHTTPエンドポイント提供など、外部サービスへの連携を極力軽量に実装。

    • Webhookを受け取り、Difyの内部機能を呼び出すなど、多彩な使い方が可能。

  5. Bundles

    • 複数のプラグインをひとまとめにパッケージ化して配布。

    • ワンクリックで複合機能を一括導入できるため、エンタープライズ企業の導入や大規模セットアップに便利。

カスタムエンドポイントと双方向通信

  • カスタムエンドポイント
    プラグインはDifyと外部サービスを繋ぐだけでなく、Dify内部のアプリ(WorkflowやChatflowなど)を外部APIとして公開する役割も担います。
    たとえば、OpenAI API互換エンドポイントをプラグインで提供し、自分のAnthropicモデルや独自モデルを「OpenAIと同じAPI仕様」で外部に公開するといった応用が可能です。

  • 双方向通信
    プラグイン側からDifyのコア機能(AIモデル呼び出し、他ツール利用、Knowledge Base参照など)を能動的に呼び出すことができます。これにより、外部サービスがDifyのAIやワークフロー機能を活用できる仕組みが実現します。

永続化ストレージとデバッグサポート

  • 永続化ストレージ
    プラグインごとにデータを保管・共有する仕組みがあり、ビジネスロジックやユーザー固有情報を安全に保存できます。

  • 充実したデバッグサポート
    ローカル環境での開発を効率化するためにDify本番環境と連携したリモートデバッグ機能を提供。人気のIDEやツールとあわせて容易に動作確認ができ、開発フローがスムーズです。


具体的なプラグインの活用事例

ベータ版のテスト中にいくつか興味深いプラグインの活用事例が生まれています。

回数制限のフロー管理プラグイン
たとえば「1ユーザーあたり1日10回まで無料試用できる」というアクセス制限。従来のDifyではやや複雑でしたが、プラグインを使ってワークフロー先頭でリクエスト数をカウントし、制限を超えたら例外を返す仕組みをコミュニティが開発。Difyのストレージ機能と組み合わせて手軽に実現しています。

画像+テキストの組み合わせ生成プラグイン

有名人の写真にキャプションを合成して、面白いスピーチ風画像を作るといったエンタメ的なプラグイン。もともとDify本体が想定していないニッチ機能も、プラグインなら好きに開発・共有できます。

特定領域のPDF解析やExcel変換

画像入りPDFからOCRでテキストとグラフを抽出し、Excelに変換するような高度な処理も、必要なユーザーがプラグインを組み合わせて利用しています。

TTS(Text-to-Speech)連携の独自UIページ

エンドポイントを使い、Difyアプリを通じて発話をリアルタイムに音声合成してくれるバーチャルキャラのデモページを作成。HTMLで作られたフロントエンドをプラグインとしてホスティングすることで、Difyのモデル呼び出しやワークフローが裏側で機能しつつ、独自UIを実装できます。


Difyプラグインシステムが拓く未来

エコシステムの成長

プラグイン開発をオープンにすることで、Dify自身がカバーしきれない多種多様な垂直領域をコミュニティが補えるようになります。

  • 新しいLLM技術が出ればプラグイン化してすぐに試せる

  • 自社のビジネスロジックを閉じた環境で安全に運用できる

  • コミュニティの知見が集まり、プラグインの質が高まる

これらの循環により、DifyはAIインフラとして必要な核を担いつつ、周辺機能はコミュニティが最適化していく、健全なオープンソース・エコシステムを形成していくでしょう。

AIアプリケーションの「民主化」

ノーコード/ローコードの思想をさらに推し進め、ビジネス担当者やクリエイターがプラグインを組み合わせるだけで機能を拡張できる世界が実現します。

  • たとえば翻訳業務に特化したプラグインを取り込み、特定の用語リストを自動置換するような仕組みを作る

  • BtoC向けのサービスを短期間でPoC(概念実証)し、ユーザーの反応を確認する

  • 企業内に閉じたモデルと連携し、セキュアな環境で最先端のAI機能を試す

Difyのビジョンである「誰でもAIで課題を解決できる」社会に、一歩近づくきっかけとなります。


6. おわりに

今回ご紹介したプラグインシステムは、Difyが目指す開かれたAI基盤の実現に向けた重要な一歩です。Dify本体をシンプルな核とし、必要に応じてプラグインをインストールし、コミュニティで自由に機能を拡張できるのは、まさに最初のインターネット精神である自由と共有を体現するものと言えるでしょう。

  • 「自分はプログラミングできないが、ツールが欲しい…」というユーザーは、Dify Marketplaceなどで最適なプラグインを探してインストールするだけ。

  • 「こんな機能があれば、もっと面白い使い方ができるのに…」と思ったエンジニアは、プラグインを開発して公開することでコミュニティ全体に貢献できる。

プラグインシステムは、単なる機能拡張の枠を超えて、新しいAIエコシステムを共創していくための道具です。今後のDifyコミュニティでは、さまざまなプラグインが続々と生まれ、より革新的なAIアプリケーションが爆発的に広がっていくことでしょう。


参考


いいなと思ったら応援しよう!