IT

Dify Cloudで始める:初めてのAIワークスペース

はじめに

生成AI(ジェネレーティブAI)が大きな注目を集める中、「自分だけのAIアプリを作ってみたい!」と思う初心者の方も増えています。しかし、ゼロからAIチャットボットや文章生成ツールを作ろうとすると、機械学習モデルの扱いやプロンプト設計、API連携、インフラ管理など、乗り越えるべきハードルがたくさんあります。そこで登場したのが Dify Cloud(Difyクラウド) です。Dify Cloudは初心者向けに用意されたAIワークスペースで、プログラミングの知識がなくてもブラウザ上でAIアプリの開発・テスト・公開ができるオールインワンのプラットフォームです。

本記事では、Dify Cloudとは何か、その基本理念や機能をわかりやすく解説し、実際にDify Cloud上で初めてのAIアプリケーションを作成する手順をステップバイステップで紹介します(初心者向けに理論説明・図解説明・ハンズオンを交えて進めます)。読み終える頃には、ご自身のAIチャットボットを動かし始め、Dify Cloudのワークスペースでさらなるプロジェクトに挑戦できるようになるでしょう。それでは、Dify CloudでのAI開発の第一歩を踏み出してみましょう!

Dify Cloudとは何か?

Dify(ディファイ) は、大規模言語モデル(LLM)を活用したAIアプリケーションを構築するためのオープンソース・プラットフォームです。そのクラウド版サービスが Dify Cloud です。DifyはバックエンドBaaS(Backend as a Service)とLLMOpsのコンセプトを融合し、AIアプリ開発に必要な要素(モデルの管理、プロンプト設計インターフェース、データ管理、配備など)をワンパッケージで提供します。要するに、複雑なコードを書かなくてもノーコードまたはローコードで高度なAIアプリを作れるようにしてくれるのがDifyです。「Dify」という名前は “Define + Modify”(定義して改善する)に由来し、一度作ったAIアプリを継続的に改善していけるという思想が込められています。

Dify Cloudの特徴: ブラウザから利用できるクラウドサービスで、面倒なサーバー設定は一切不要です。公式サイトでサインアップするだけで、すぐにDifyの開発環境(Studio)にアクセスできます。現在ベータ版ですが、初心者が試せるよう サンドボックス(無料枠)プラン が用意されており、200回分のモデル呼び出し(メッセージ) を無料で試すことができます(クレジットカード登録不要)。この無料枠で、OpenAIのGPT-4等のモデルを一定回数呼び出して、Difyの機能をひととおり体験できます。

Dify Cloud上では、チーム単位で作業する概念があります。ワークスペース と呼ばれる開発スペースが基本単位で、ワークスペース内に複数のAIアプリや知識ベース(後述)を持ち、チームメンバーと共有・編集できます(無料プランではワークスペース1つ・メンバー1人まで)。要は、自分用のプロジェクト部屋のようなものです。

なお、Difyはオープンソースなので、クラウド版を使わず自分でサーバーにインストールして使うこともできます(セルフホスティング版、Dify Community Edition)。さらに企業向けにはAWSマーケットプレイス経由で導入できる Dify Premium(エンタープライズ版) もあります。本記事では主に初心者に適したDify Cloud(クラウド版)にフォーカスしますが、必要に応じて違いにも触れていきます。

Dify Cloudの主な機能とメリット

Dify Cloudには、AIアプリ開発を簡単・高速にするための便利な機能が多く備わっています。主要なポイントをいくつか挙げましょう。

  • ノーコードでAIアプリ開発: コーディング不要で、グラフィカルな操作だけでAIアプリを構築できます。Difyが提供する「Studio(スタジオ)」という開発画面で、AIの挙動(プロンプトやフローなど)を設定すれば、裏側のAPI呼び出しやサーバー処理はDifyが自動で行ってくれます。プログラミング経験のない方でも取り組みやすく、チャットボット文章生成ツールなどを直感的に作成可能です。
  • 多数のLLMモデルに対応: Difyは様々なAIモデルと連携できます。OpenAIのGPT-3.5/GPT-4はもちろん、AnthropicやAzure OpenAIといった商用モデル、さらにはMistralやLlama2などのオープンソースモデルにも対応予定/対応済みです。モデルプロバイダー(後で設定方法を説明)のAPIキーを登録すれば、そのモデルをDify経由で使えます。これにより、「最初は精度よりコスト重視でGPT-3.5を使い、必要に応じてGPT-4に切り替える」といった柔軟な運用ができます。
  • ビジュアルなプロンプト設計ツール: AIに望む動作をさせるにはプロンプト(指示文)の設計が重要です。Difyにはわかりやすいプロンプト編集インターフェースがあります。システムメッセージ(AIの役割や口調を決める指示)を自由に書けるほか、変数を埋め込んでユーザーの入力内容をプロンプト内に差し込むことも可能。また、「プロンプトジェネレーター」という機能があり、やりたいことを記述するとAIがプロンプト文の雛形を提案してくれるので、初心者でも適切な指示文を作成しやすくなっています。Difyにはシンプルモードエキスパートモードがあり、まずは簡単なフォーム形式で設定し、必要に応じて高度なフロー編集(後述のChatflow)に移行できる二段構えになっています。
  • ナレッジベース連携(RAG機能): 自社のドキュメントや特定の資料をAIに参照させたい場合、Difyのナレッジベース機能が役立ちます。PDFやテキストファイルなどをアップロードしてナレッジベースを作成し、それをアプリに関連付けることで、AIが回答時にその内部データを検索・利用することができます。これは検索強化型のテキスト生成(RAG: Retrieval-Augmented Generation)と呼ばれる手法で、社内FAQボットや商品データベースに基づくチャットボットなどを作る際に不可欠な機能です。Difyでは、数十件〜数百万件のドキュメントに対してベクトル検索&リランキングする仕組みが内蔵されており、大量のテキストから関連情報を引っ張って回答に含めることが可能です。
  • エージェント機能とツール統合: Difyでは、単にQA応答するだけでなく、エージェント型のAIアシスタントを構築できます。エージェントとは、大きな目標を与えると自律的にタスクを細分化し、必要に応じて外部のツール(外部サービスAPIや計算モジュール等)を使いながら目的達成を図るAIです。例えば、旅行プラン作成エージェントなら、「ユーザーから行き先と日程を聞く→フライト検索ツールを使う→ホテル検索ツールを使う→プラン提案」など段階を踏んで動きます。Difyには50種以上の標準ツール(ウェブ検索、計算機、画像生成(DALL-E/Stable Diffusion)、ニュース検索、天気情報など)が用意され、OpenAIプラグイン規格の独自ツールも追加可能です。エージェントの推論モードとしては、GPT-4などの関数呼び出し(Function Calling)を使った安定実行や、非対応モデル向けにReAct方式による思考連鎖を採用できます。ツールを組み合わせることで、チャットボットの枠を超えた強力なAIアシスタントを作れる点はDifyの大きな魅力です。
  • チーム開発とコラボレーション: Difyはマルチユーザー・マルチワークスペースを前提としています。1つのワークスペースに複数メンバーを招待し、アプリやナレッジベースを共同編集することができます(無料プランでは1人制限ですが、有料にするとメンバー追加が可能)。これにより、プロジェクトチームでAI開発を進めたり、他の人が作ったアプリを自分のワークスペースに追加したりできます。権限管理もあり、「オーナー/管理者/編集者/閲覧者」などロールを設定できます。教育機関向けに学生と教師で共同利用するケースや、ハッカソンでチーム開発するケースなど、複数人でのAIアプリ構築も視野に入れられています。
  • モニタリングとログ分析: AIアプリを公開運用する際、ユーザーがどんな質問をしてどんな回答が返っているか、きちんと把握することが大切です。Difyにはログや解析の機能(LLMOps的な機能)が備わっており、各アプリの利用回数、レスポンスタイム、エラーログなどを確認できます。さらに詳細な会話ログを見て、不要な応答や誤答があれば、プロンプトやデータを修正して改善するといったPDCAサイクルを回せます。これにより、運用中のAIをどんどん賢くチューニングしていけます。
  • ワンクリックデプロイと外部連携: Difyで作成したアプリは、ワンクリックで公開できます。公開すると、そのアプリ専用のWeb UI(チャット画面)へのURLが発行され、誰でもブラウザからアクセスしてAIと対話できるようになります。また、開発者向けにはAPIエンドポイントも提供され、自分のアプリケーション(例えば自社のWebサイトやLINEボット)からHTTPリクエストでDifyのAIアプリを呼び出すことも可能です。要は、DifyがあなたのAIアプリのサーバー兼バックエンドになってくれるイメージです。さらに、iframeなどで自サイトにチャットボットを埋め込む機能や、Slackなど他サービスと接続する拡張も用意されています。煩雑なサーバーデプロイ作業なしに、「作ってすぐ人に使ってもらえる」段階まで持っていけるのは、Dify Cloudならではの手軽さと言えます。

以上のように、Dify Cloudは「思いついたAIアプリのアイデアをすぐ形にできる」環境を提供します。特に初心者にとっては、環境構築やプログラミングでつまずくことなく、本質的なアイデア検証に集中できる点が大きなメリットです。次章からは実際にその手順を体験してみましょう。

(想定される検索キーワード: Dify Cloudとは, AIワークスペース, ノーコードAI開発, LLMアプリ作成, チャットボット構築, エージェントAI, プロンプト設計)

アカウント登録とワークスペースのセットアップ

まずはDify Cloudを使い始めるための初期設定を行います。幸い、セットアップはとても簡単です。

1. Dify Cloudにサインアップする: 公式サイトにアクセスし、新規登録を行います。Difyは認証にGitHubアカウントまたはGoogleアカウントを使用しており、どちらかを使ってワンクリックでログイン可能です(独自ユーザー名/パスワードの登録は現時点では不要)。お好きな方法で認証し、Dify Cloudへのアクセスを許可してください。すると、数秒でDify CloudのStudio画面(開発ダッシュボード)が表示されます。

  • 初回ログイン時にワークスペースの作成を求められる場合があります。ワークスペースとは先述の通りプロジェクト部屋のようなものです。適当な名前(例:「My First Workspace」等)を付けて作成しましょう。無料プランではワークスペースは1つだけ作成可能です(有料プランでは複数作成も可)。なお、最初からデフォルトのワークスペースが用意されている場合もあります。

2. OpenAI APIキーを取得する: Dify CloudでAIモデルを利用するには、そのモデル提供元のAPIキーが必要です。もっとも一般的なのはOpenAIのAPIキーでしょう(GPT-3, GPT-4を使う場合)。まだOpenAI APIキーを持っていない方は、OpenAIの公式サイトでアカウント登録し、API Key(秘密鍵)を発行してください。OpenAIのダッシュボードで「Create new secret key」をクリックするとキー文字列が表示されるのでコピーしておきます。※GPT-4を使うにはOpenAIでの申請や有料契約が必要な場合がありますが、GPT-3.5なら無料枠も存在します。

3. モデルプロバイダーの設定(APIキー登録): Dify Studio画面で、モデルプロバイダーを設定しましょう。画面内のメニューに「モデル設定」や「Model Provider」といった項目があるはずです(もしくは、初回利用時にセットアップウィザードがポップアップする場合もあります)。そこでOpenAIを選択し、先ほどコピーしたAPIキーを貼り付けます。保存すると、DifyからOpenAIへの接続が確立されます。うまく設定できると、「接続済み」や緑色のチェックマークなどステータス表示が出るはずです。また、このタイミングでデフォルトモデルを選ぶ画面が出ることもあります(例えば「GPT-3.5-Turboを既定モデルにしますか?」等)。特にこだわりが無ければGPT-3.5をデフォルトにしておくと良いでしょう(後から各アプリごとに変更可能です)。

補足: Dify Cloudの無料サンドボックスプランでは、OpenAI APIキーを自分で用意しなくても200回分のGPT-4呼び出しを試すことができます。ただしこの無料枠はすぐに消費してしまう可能性が高いので、継続利用するにはご自身のOpenAI APIキーを設定しておくことをおすすめします。OpenAI以外にもAnthropicのClaudeや、Azure版OpenAI、また自前ホストしたモデル(例: Ollama経由のLlama2等)を繋ぐことも可能ですが、初心者のうちはOpenAIが手軽でしょう。

4. インターフェースを確認する: APIキーの設定が済んだら、一度Dify Studioの画面構成を見回してみましょう。左側にメニューがあり、主に以下のようなセクションがあります。

  • Studio(スタジオ): ここでAIアプリを作成・管理します。新規アプリの作成ボタンや、既存のアプリ一覧が表示されます。
  • Knowledge(ナレッジ): ナレッジベース(後述)を作成・管理するセクションです。自分の持っている文章データをアップロードして検索可能にする機能がここにあります。
  • Model / Provider(モデル設定): 先ほど設定したAPIキーの管理や、利用可能なモデル一覧の確認ができます。システム全体でのデフォルトモデルを選んだり、他のプロバイダを追加する場合もこちらです。
  • Monitoring / Logs(モニタリング): アプリの利用状況やログを見るメニューもあります(初心者段階ではあまり使いませんが、公開後に役立ちます)。
  • Marketplace / Plugins(マーケットプレイス/プラグイン): Difyの拡張機能やプラグインを追加できるコーナーです。サードパーティ連携など高度なことをする際に利用します。

無料プランでは機能に一部制限がありますが、基本的な開発に必要なものは全て使えます。初めての画面で戸惑うかもしれませんが、次章で順を追って操作していくので安心してください。

では、実際にAIアプリを作ってみましょう!

テンプレートアプリの活用(クイックスタートの方法)

自分でゼロからアプリを組み立てる前に、テンプレートを使ってDifyの成果物をすぐ体験することもできます。Dify Cloudにはあらかじめ用意されたサンプルアプリ(テンプレート集)があり、ボタン一つで自分のワークスペースに取り込んで試すことができます。

テンプレートは、Dify Studio内の「Discover(発見)」または「Explore」といった名前のページに一覧表示されています。例えば:

  • FAQボット(よくある質問に答えるチャットボット)
  • 翻訳ツール(文章を自動翻訳するAI)
  • コーディングアシスタント(プログラミングの質問に答えるAI)
  • 文書要約ツール など

気になるテンプレートがあれば、各カードに表示された 「Add to Workspace」(ワークスペースに追加) ボタンをクリックするだけです。それだけで自分のワークスペースにそのアプリがコピーされ、すぐに利用可能になります。アプリ一覧に追加されたテンプレートをクリックし、「Run」(実行)すれば、チャット画面が開いてAIと対話できます。

テンプレートは学習用の素材としても役立ちます。「Customize」(カスタマイズ)ボタンを押せば、そのテンプレートの内部設定(プロンプト内容やワークフロー、ナレッジベースの有無など)を見ることができます。「こういうプロンプトを書けばこんな動きをするのか」といった具合に、作り方のコツを盗むことができるでしょう。

もちろんテンプレートをそのまま実運用しても構いませんが、本記事ではDifyの使い方を習得するためにも、一から自分でアプリを作る手順を解説していきます。テンプレートの存在は念頭に置きつつ、次のセクションから実践を始めましょう。

ハンズオン: 最初のAIアプリケーションを作ってみよう

それでは、Dify Cloud上でシンプルなAIチャットボットを作成してみます。今回の例題として、「面接コーチAI」というチャットボットを作りましょう。これは模擬面接の面接官になってくれるAIで、ユーザー(面接を受ける練習をしたい人)の回答に対して次々と質問を投げかけ、フィードバックもしてくれる、という想定です。題材は何でも構いませんので、ご自身の作りたいものがあればそれに置き換えてもOKです(例えば「料理レシピ相談ボット」や「英会話練習ボット」など)。

ステップ1: 新規アプリケーションの作成

まずはDify Studioで新しいアプリ枠を作ります。Studio画面の「Create Application」「Create from Blank」といったボタンをクリックしましょう。プラス(+)アイコンになっている場合もあります。それを押すと、新規アプリ作成のためのダイアログが表示されます。

(スクリーンショット例:DifyのStudioで「Create from Blank」をクリックし、新規アプリ作成ダイアログを開いている画面)

入力項目は以下の通りです。

  • アプリ名: 好きな名前を付けてください(例:「面接コーチBot」)。この名前はワークスペース内での表示名や、公開時のタイトルになります。
  • アイコン(任意): アイコンを選択できる場合は、適当な絵文字や画像を選んでください。設定しなくても構いません。
  • アプリ種別(Application Type): Difyでは4種類のアプリタイプを提供しています。
    • Chat Assistant(チャットボット型): Q&A形式でユーザーと対話する一般的なチャットボット。
    • Text Generation(テキスト生成型): 対話ではなく、与えられた入力に対して1度きりのテキスト生成を行うアプリ(文章の要約・翻訳・分類など1回完結のタスク向け)。
    • Agent(エージェント型): ツール使用や推論ステップを踏む自律エージェント(上級者向け、タスク達成型AI)。
    • Workflow(ワークフロー型): プロセスの流れを自由に構築できるチャットフロー(現在ベータ版、高度なシナリオ向け)。
    今回はシンプルにChat Assistant(チャットボット)を選択します。一問一答を重ねて会話を続ける形式に適しています。
  • (モード選択): アプリ種別を選ぶと、さらに「Basic(基本モード)」か「Chatflow(チャットフロー/エキスパートモード)」かを尋ねられる場合があります。Basicはフォームに沿って簡単に設定できるモード、Chatflowはノードベースで自由度高くフローを組めるモードです。最初は Basicモード を選択しましょう(デフォルトでそちらになっているはずです)。後からでもExpertモードに切り替えることは可能です。

入力が終わったら「Create」(作成)ボタンを押します。新しいアプリがワークスペースに生成され、編集画面(オーケストレーション画面)に移動します。

ステップ2: AIの挙動を定義する(プロンプトの設計)

アプリのひな形ができたら、次はこのAIの振る舞いを決めていきます。具体的には、AIモデルに与えるプロンプト(指示文)や、ユーザーからどんな入力を受け取るか(変数設定)、最初に挨拶するかなど、細かな設定を行います。Difyではこれらの設定を行う画面を「Orchestrate」(オーケストレーション)と呼びます。先ほどアプリ作成後に自動でその画面に移ったかと思いますが、もし別画面にいる場合は左メニューから対象アプリを選び、「Orchestrate」タブを開いてください。

(スクリーンショット例:チャットボットのオーケストレーション編集画面。左側にプロンプト編集フィールドやオプション設定があり、右側にテスト実行用のペインが見える)

オーケストレーション画面では、主に以下の項目を設定します。

  • プロンプト(指示文): まず、AIモデルに与える指示文(システムメッセージ)を入力します。これはチャットボットの性格や役割、回答方針を決める重要な文章です。今回の面接コーチBotなら、例えば:
    • 「あなたはプロの面接官です。応募者(ユーザー)に対して{{position}}の職種の模擬面接を行ってください。質問は一度に一つずつ行い、ユーザーの回答を待ってください。各回答に対して建設的なフィードバックを短く提供してください。」
    といった具合です。{{position}} と書いている箇所がありますが、これは変数を埋め込んでいます(次項目参照)。このように記述すると、後でユーザーが指定した職種名(例:「エンジニア」)がその部分に差し込まれます。プロンプトは丁寧な日本語で書いても、英語で書いてもOKです(モデルの特性上、英語の方が挙動が安定することもありますが、最近は日本語でも十分機能します)。
  • 変数(Variables): ユーザーに事前に入力してもらいたい値がある場合、変数を定義します。画面上で「+ Add Variable」や「変数を追加」といったボタンがあるはずなのでクリックしましょう。項目名と説明、デフォルト値などを設定できます。今回の例だと「position」(職種)という変数を作り、「応募職種」のようなラベルを付けておきます。こうすると、ユーザーがチャット開始時に「応募職種: [テキストボックス]」と入力できるフォームが表示されます。この値がプロンプト内の{{position}}に差し込まれます。
  • 会話オープナー(最初の発話): チャットボットが最初に話しかけるメッセージを設定することもできます。ユーザーから最初の質問を待つのではなく、AIから先に挨拶や質問を投げかけたい場合に便利です。Difyでは「Conversation Opening」や「オープニングメッセージ」というオプションを有効化すると使えます。今回の面接コーチでは、面接官から「それでは模擬面接を始めます。よろしくお願いします。まず最初の質問です:~~~」のように最初の問いかけをしてもらうと自然ですね。オーケストレーション画面下部の「Add Feature」ボタンを押し、Conversation Opener(会話の開始)をオンにして、テキストを入力します。例えば:
    • 「こんにちは。{{position}}のポジションを想定して、模擬面接を行います。準備はよろしいですか?第一問: あなたの自己紹介をお願いします。」
      といった内容を設定できます。初回の質問まで含めてしまうとユーザーが戸惑うかもしれませんので、必要に応じて工夫してください。
  • 次の質問候補: チャットボットがユーザーの発言に対して、関連する「次の質問」を3つほど提案してくれる機能です。ユーザーが質問を思いつかないときのガイダンスになります。ただしこれは主にユーザーから質問するタイプのボット(FAQボットなど)で有用な機能です。今回のようにボット主導の場合はオフのままでOKです。この設定項目がある場合は「Next Questions Suggestions」などと表示されています。
  • モデルとパラメータ設定: 画面右上を見て、現在選択されているAIモデルを確認しましょう。おそらく「gpt-3.5-turbo(Default)」のようになっているはずです。もしGPT-4が使える環境ならここで切り替えることもできますが、テスト段階では3.5で十分でしょう。また、モデル名の横に「パラメータ」や「設定」アイコンがあり、Temperature(創造性)などを調整できます。Temperature値を上げるとより多様で創造的な応答に、下げると決まった感じの応答に寄ります(通常0.7前後が無難です)。他にもMax Tokens(最大トークン長)などの設定がありますが、基本はいじらなくて大丈夫です。

以上の項目を設定したら、内容を保存します(多くの場合、自動保存されますが、念のため保存ボタンやPublishボタンを押さない限り、まだ外部公開はされません)。

プロンプト作成のヒント: もし適切な指示文を書くのに悩んだら、Difyの「Prompt Generator(プロンプト自動生成)」機能を試してみてください。これは、簡単な要件を入力すると、AIがサンプルのプロンプト文を作ってくれるものです。オーケストレーション画面で電球アイコンや「Generate」ボタンがある場合、それがプロンプトジェネレーターです。例えば「面接 質問 作成 AI」のようなキーワードを入れて提案を得てみても良いでしょう。出てきた文例をベースに、自分のケースに合わせて修正すると効率的です。

ステップ3: (任意)ナレッジベースを追加して文脈を強化

こちらは少し発展的な内容なので、必要な方だけ設定してください。アプリにナレッジベースを紐付けることで、AIがプライベートなドキュメントを参照しながら回答できるようになります。例えば、自社の製品に関するチャットボットなら、製品マニュアルPDFをナレッジベースに登録しておけば、その内容に基づいて回答させることができます。

ナレッジベースを使うには:

  1. まず画面左のKnowledgeセクションで、新しいナレッジベースを作成します。「Create Knowledge」ボタン(+アイコン)を押し、ドキュメントをアップロードします。PDF、TXT、Markdown、Excelなど様々な形式に対応しています。ファイルを放り込むと、自動的にテキストが抽出・ベクトル化され検索用データベースに格納されます。
  2. 次に、先ほどのアプリのOrchestrate画面に戻り、ContextまたはKnowledgeと書かれた項目を探します。そこに「Add Knowledge」ボタンがあるのでクリックし、先ほど作ったナレッジベースを選択します。これでアプリと知識データが連携しました。
  3. ナレッジベースを追加した状態でAIを実行すると、ユーザーからの質問に対してまず関連する文書スニペットを検索し、それを踏まえた回答を生成するようになります。Difyには検索結果を回答に引用させる(出典をリンク付きで表示する)オプションもありますので、必要なら有効化すると良いでしょう。

今回の「面接コーチ」例では特定の社内データなどはない想定なので、ナレッジベースは使用しません。ただ、この機能は非常に強力なので、必要に応じて活用してください。例えば「社内規定チャットボット」や「カスタマーサポートFAQボット」を作るときに重宝します。

ステップ4: アプリをテストする(デバッグモード)

設定が一通り完了したら、実際にAIが期待通り動作するかテストします。Dify Studio内には、アプリをプレビュー実行できるデバッグ用のチャット画面があります。Orchestrate画面の右側もしくは下部に、チャット形式のUIが表示されているはずです。ここでユーザーとしてやり取りを試せます。

テストの手順:

  • まず、変数を設定した場合はその値を入力します(例えば応募職種 “position” を「ソフトウェアエンジニア」などと指定)。
  • 次に、RunStart Chatといったボタンがあればクリックします。これで模擬対話が始まります。
  • 会話オープナーを設定していれば、AIが最初のメッセージを送ってくるはずです。「エンジニアの模擬面接を始めます。よろしくお願いします。第一問: あなたの自己紹介をお願いします。」のような感じで表示されたら成功です。
  • 続いて、ユーザー役として返答を入力します。例えば:「はい、よろしくお願いします。私は◯年の開発経験があり…(自己紹介)」と送信します。
  • 送信すると、AIが次の質問やフィードバックを返してくるでしょう。「ありがとうございます。それでは次の質問です: …」といった具合に進行します。

このように、対話を何ターンか繰り返してみて、想定通りの受け答えができているか確認します。AIが意図した役割から逸れていないか、質問内容やフィードバックが適切かをチェックしましょう。

テスト中に調整したい点が出てきたら、左側の設定をその場で修正して再テストできます。例えば:

  • 質問が浅すぎると感じたら、プロンプトに「より専門的で深掘りする質問をすること」と一文追加する。
  • 返答が長過ぎるなら、プロンプトで「簡潔に答えて」と指示するか、モデルのTemperatureを下げてみる。
  • GPT-3.5では物足りなければ、モデルをGPT-4に切り替えて実力を比較する(右上から変更可能。ただしAPI費用に注意)。
  • 逐次、エラーが出ていないかログを見る。APIキーの問題などがあるとエラーメッセージが表示されます。

Difyにはマルチモデルテスト機能もあり、一度の入力に対して最大4つのモデルで同時に回答を比較することもできます。例えばGPT-3.5 vs GPT-4 vs 他モデルの出力を横並びで見て、どれが最適か検討できます。オーケストレーション画面の上部に「Debug as Multiple Models」等のボタンが表示されていたら試してみると面白いでしょう。

調整→テストを繰り返し、満足のいく対話が実現できたらデバッグ完了です。

ステップ5: アプリの公開と共有

アプリが完成したら、いよいよ公開(Publish)しましょう。公開すると、他の人が使える形でアプリがデプロイされます。Dify Cloudの場合、公開操作もワンクリックです。

  • 画面右上付近にある 「Publish」 ボタンをクリックします。初めて公開する際は確認ダイアログが出るので、内容を確認して確定します(無料プランでは公開アプリは外部に一般公開される仕様だったかと思います。公開範囲の選択がある場合は「Public(公開)」または「Private(非公開、自分のみ)」を選択できます)。
  • 公開が完了すると、そのアプリ専用のURLが発行されます。Studio画面のどこかに「Running URL」や「Access URL」としてリンクが表示されますのでコピーしましょう。形式としては https://cloud.dify.ai/apps/~ のようなアドレスになっているはずです。
  • ブラウザでそのURLを開いてみると、シンプルなチャット画面が立ち上がります。タイトルやアイコンは設定したとおりに表示され、下部に入力ボックスがあるはずです。試しに先ほどと同じように会話してみてください。今度はデバッグではなく本番稼働として対話が行われます。無事に動けば、他の人も同じようにそのURLから利用可能です。

他者に使ってもらう場合、そのURLを共有するだけでOKです。社内ツールとして使うなら同僚に知らせたり、個人プロジェクトとして公開するならSNS等でシェアしてみるのも良いでしょう。

  • Webサイト等への埋め込み: Dify Cloudで公開したアプリは、iframe等で自分のWebページに埋め込むことが可能です。Dify側で埋め込み用コード(HTMLのsnippet)が提供されている場合がありますので(Publish後の画面やDocsを参照)、それをコピーして自サイトに貼り付ければ、ページ内にチャットボットウィジェットが出現します。これにより、ユーザーはDifyのリンク先に飛ばなくても自サイト上でAIと対話できます。
  • APIによる呼び出し: より高度な連携として、DifyアプリにはREST APIエンドポイントが用意されています。Publish後に「API Access」や「APIキー」が表示されるので、開発者はそれを使って外部アプリケーションからAIに問い合わせできます。例えば、Slackボットを自作し、その裏側でDify APIに質問を投げて回答を取得するといったことも可能です。API利用時には認証が必要ですが、DifyがアプリごとのAPIキーを発行してくれるので、それを使います。なお、API利用も回数はDify Cloudのプラン制限内でカウントされますので、外部から大量アクセスする場合はプラン検討が必要です。

以上で、あなたの初めてのAIアプリが完成し公開されました!🎉 Dify Cloudを使えば、ここまでの流れがGUI上の操作だけで完結し、プログラムコードを書く場面は一切ありませんでした。初心者にとってこれは大きな達成です。ぜひこの体験を踏み台に、さらなるAIアプリ作りにチャレンジしてください。

発展編: エージェントやワークフローなど高度な機能も試してみよう

今回作ったのは基本的な対話型アプリでしたが、Difyには他にも様々な高度機能が用意されています。簡単に紹介します。

  • 自律エージェントの構築: Difyのエージェント機能を使えば、ツールを駆使してタスクをこなす自律AIが作れます(前述のAgentタイプのアプリです)。例えば、「旅行プラン作成エージェント」を作り、ユーザーの希望に合わせてWeb検索ツールで交通機関を調べ、地図APIで距離を測定し、プランを提案する…というように、複数のAPIを組み合わせて段階的に処理できます。DifyにはAgent Assistantのテンプレートもあるので、一度試してみると良いでしょう。エージェントを一から構築する場合、Orchestrate画面にて、エージェント用の「Instructions(方針)」や「Tools(使用ツールの選択)」項目が現れ、利用するツールや繰り返し回数の上限などを細かく設定できます。高度な分野ですが、使いこなせばAIの可能性が飛躍的に広がります。
  • Chatflow(チャットフロー)による視覚的なフロー設計: Basicモードでは1段のやりとりしか定義できませんでしたが、Chatflow(ワークフロー)モードに切り替えると、フロー図を描くように複雑な処理を構築できます。Chatflowエディタでは、「開始(START)」「LLM呼び出し」「回答生成(ANSWER)」「知識検索(KNOWLEDGE RETRIEVAL)」「条件分岐」などのノードを配置し線で繋いでいきます。例えば、ユーザーの入力を一旦データベース検索に回し、その結果とユーザー質問をまとめてLLMに渡して回答する、という処理もノード組みで視覚的に実装できます。Codecademyのチュートリアルでは、このChatflowを使ってQ&Aボットにナレッジ検索ノードを組み込む例が紹介されていました。Chatflowは少々上級者向けですが、より細かな会話ロジックを実装したいときには非常に便利です。Dify Cloudでは、アプリ作成時にExpert(Chatflow)モードを選ぶか、Basicモードから後で切り替えることで使用できます。
  • プラグインとマーケットプレイス: Difyには公式・非公式のプラグインが提供されています。マーケットプレイス画面には、追加できる機能モジュールや連携ツールが並んでいることがあります。例えば、Slack連携プラグインや、Weather APIプラグインなどがあれば、インストールすることで自分のエージェントがそれら外部サービスにアクセスできるようになります。2025年現在、OpenAIプラグイン互換の仕組みも取り入れられており、Swagger/OpenAPI仕様のAPIを簡単にツールとして導入可能になっています。プラグインを活用することで、一からコードを書かずとも様々な外部サービスとの橋渡しができるので、ニーズに応じてチェックしてみてください。
  • コンテンツフィルタと安全性: AIを公開する際には、不適切な発言や有害な内容をどう扱うかも重要です。Difyにはセンシティブ内容の検出/除去の機能が含まれており、「Sensitive Content Moderation(コンテンツモデレーション)」を有効にすると、AIの応答から暴言や個人情報など望ましくない内容を自動でフィルタリングできます。また、利用規約に反する使われ方を防ぐため、ユーザー入力に対しても制限をかけることが可能です。これらの設定は各アプリの設定画面で調整できます。公開ボットの運用ではぜひ検討してください。
  • チームコラボレーション: 有料プランで複数メンバーが使えるようになったら、共同編集のメリットを享受しましょう。Difyではリアルタイムで誰かが編集している箇所がロックされたり、更新が他人に反映されたりと、基本的なコラボ機能があります。チーム内で「プロンプト担当」「データ準備担当」など役割分担しながら、一つのAIアプリを改善していくこともできます。エンタープライズ版では、SSO対応や、ユーザー権限の細かな設定、監査ログの出力など、企業利用に耐えうる機能も提供されます。

ここに挙げた機能は、Difyの持つ広範な可能性の一部です。初心者のうちは全てを一度に使いこなす必要はありませんが、「こんなこともできるんだ」と知っておくと、アイデア次第で色々な応用が思い浮かぶでしょう。Difyは日々アップデートされているので、新機能の追加情報にもアンテナを張ってみてください。

Dify Cloudとセルフホスト版の比較、他の選択肢について

最後に、Difyの利用形態や他のサービスとの比較について触れておきます。現在Difyを使っていて、将来的に運用を拡大する場合など、以下のような選択肢があります。

  • Dify Cloud(クラウド版): 本記事で扱ったように、手間なく利用開始できるホスティングサービスです。公式が運営しているため、インフラ管理やソフトウェアアップデートを気にする必要はありません。無料プランがあり、商用利用向けにプロフェッショナル/ビジネスプランがあります。料金プランによって利用できるメンバー数やナレッジベース容量、API呼び出し回数上限などが異なります。初学者~小規模プロジェクトには最適です。データはクラウド上(米国東部のAWSサーバー)に保存されますので、機密性の高いデータを扱う場合はポリシー上の確認が必要かもしれません。
  • セルフホスト(自己ホスト)版Dify: オープンソースで提供されているDify Community Editionを自前のサーバーにインストールして使う方法です。Docker Composeで簡単に起動でき、PostgreSQLやWeaviate(ベクトルDB)など必要コンポーネントはすべてDocker内で構築されます。自分でホストするメリットは、データを自社内に留められること、Dify Cloudのプラン制限なく自由に使えること、そして外部に情報を出せない環境(閉じたネットワークなど)でも動かせることです。また、OSS版なので無料です(ただしOpenAI等のAPI利用料は別途かかります)。デメリットとしては、サーバー費用や運用の手間が生じる点です。例えばAWS EC2やオンプレミスサーバーでDockerを動かし続けるための知識とコストが必要です。ただ、DigitalOceanなどのVPSサービスではワンクリックでDocker環境を用意できたり、新規ユーザー向けにクレジットがもらえたりするので、意外に低コストで始められる場合もあります。ある程度技術に慣れたら、セルフホスト版に挑戦してみるのも良いでしょう。
  • Dify Premium(AWS上の有料ソリューション): 企業規模での導入を想定したプレミアム版です。AWS Marketplaceから導入する形式で、料金は年額または利用量に応じて設定されるようです。機能的にはセルフホスト版+アルファで、SSO統合(会社の認証システムと連携して社員がログイン可能に)、組織向け管理機能カスタムブランディング(作成したアプリに自社ロゴを表示するなど)などが含まれます。自社でホストするけれど公式サポートも受けたい、というケースにフィットします。日本国内企業の導入事例なども徐々に増えているようなので、本格利用の際は検討すると良いでしょう。
  • 他サービスとの比較: Dify以外にも、ノーコードでChatGPTベースのボットを作れるサービスはいくつか登場しています。例えば、FlowiseやLangChainのUIを提供するツール、Hugging FaceのInference Endpoint/Studio、MicrosoftのPower Virtual Agents、さらにはChatGPT Enterpriseのカスタムボット機能など。しかしDifyの強みは、オープンソースであること包括的な機能です。一つのプラットフォームでプロンプト開発からデプロイ、運用まで完結でき、かつ将来自社運用に切り替えられる自由度があります。したがって、学習用途からプロダクト開発まで幅広く使える点で優れています。迷ったら、まずはDify Cloudで試し、必要に応じて他サービスも比較してみると良いでしょう。

成功するためのポイントと今後の学習アドバイス

最後に、Dify Cloudを使いこなす上でのポイントや、初心者から次のステップに進むためのヒントをまとめます。

  • シンプルなところから始める: 最初から凝ったものを作ろうとすると挫折しがちです。今回のような簡単なチャットボットで十分練習になります。まずはいくつかシンプルなアプリを作って、Difyの基本操作やAIの挙動に慣れましょう。成功体験を積むことで自信が付き、徐々に複雑なアプリにも挑戦しやすくなります。
  • プロンプト作りのコツを磨く: Difyの操作自体はシンプルでも、AIの応答品質はプロンプト次第という部分があります。「どう指示すれば思った回答が得られるか」は試行錯誤で学んでいくものです。世の中にはプロンプトエンジニアリングに関するノウハウも多数出回っています。ブログ記事や解説動画、本などから情報を仕入れ、自分のプロンプトに取り入れてみましょう。また、Udemyなどのオンライン講座で「ChatGPT活用術」「生成AI開発入門」などのコースを受講すると、体系立てて学べるのでおすすめです。実践+理論でスキルアップを図りましょう。
  • API利用量と費用に注意: Dify Cloudは無料枠こそありますが、それを超えるとOpenAI等の料金がかかります。デバッグ中はできるだけGPT-3.5など安価なモデルで済ませ、本番で必要なところだけGPT-4にするなど工夫しましょう。モニタリング機能でAPI使用回数をチェックし、無駄打ちがないか確認してください。例えば、無駄に長いプロンプトを送ってトークンを消費しすぎていないか、ユーザーが暴走入力して大量リクエスト出していないか、など。上限を決めておき、超えそうならセルフホスト版検討という判断基準を持つと安心です。
  • テンプレートとコミュニティを活用: わからないことが出てきたら、一人で抱え込まずコミュニティに頼りましょう。Difyの公式DiscordやGitHub Discussionsではユーザー同士のQ&Aが盛んです。同じ問題で悩んだ人が質問して解決しているかもしれません。また、テンプレートアプリを眺めるのも良い勉強になります。「なぜこのプロンプトではうまくいっているのか?」を考えることで、自分のプロジェクトにも応用できる知見が得られます。
  • ユーザーフィードバックを取り入れる: 自分やチーム内でテストするだけでなく、実際のユーザー(社内の同僚や友人など)のフィードバックをもらうと新しい発見があります。「こういう質問をしたら期待外れの答えが返ってきた」など率直な意見をもらったら、ログを分析して改良しましょう。Difyではアノテーション(注釈)機能もあり、過去の会話ログに対して「この回答は適切/不適切」「より良い回答例はこれ」というラベル付けができます。それを学習データとして改善に役立てるアプローチもあります(半教師あり学習的な運用)。最初は難しいかもしれませんが、将来的にはこうしたフィードバックループを回せるようになると、あなたのAIはどんどん賢くなります。
  • 常にアップデートをチェック: AI業界は日進月歩です。新しいモデルやサービスが次々登場しますし、Dify自体も頻繁にバージョンアップしています。例えば、「より安価で高性能なオープンソースモデルが出たのでDifyに統合された」「ChatGPTの新機能にDifyが対応した」といったニュースがあるかもしれません。Difyの公式ブログやTwitter(X)アカウント、リリースノートなどをフォローし、興味のあるアップデートは試してみてください。最先端の機能をいち早く取り入れられるのも、開発者としての楽しみの一つです。
  • さらなる学習: Difyを使いこなせるようになってきたら、ぜひAI/ML全般の知識も深めてみてください。生成AIの裏で何が起きているのか、大規模言語モデルの仕組み、ベクトルデータベースの動作原理など、理解が進むとプロンプトやデータ設計の際に理にかなった判断ができるようになります。これもオンライン講座や専門書が充実していますので、興味が出た分野から勉強してみると良いでしょう。単なるツールのユーザーから一歩進んで、原理も語れるAI開発者になれば、キャリアの幅も広がります。

まとめ

以上、Dify Cloudを使った初めてのAIワークスペース構築とアプリ開発の流れを解説しました。初心者でも取り組みやすいノーコード環境であること、そして一連の開発~公開~運用がスムーズに行えることを、実際に体験いただけたかと思います。

わずかな時間で、自分専用のAIチャットボットを世に送り出せるなんて、少し前には考えられなかったことです。Dify Cloudのようなプラットフォームを活用すれば、アイデアさえあれば誰でもAIアプリ開発者になれる時代です。今回作った面接コーチBotはシンプルな例ですが、これを足がかりに、ぜひ様々なアイデアを形にしてみてください。例えば、

  • 趣味の知識を教えてくれる先生ボット
  • 家計簿を分析してアドバイスしてくれる家計コーチ
  • 小説や物語を一緒に考えてくれるストーリーテラーAI
    など、可能性は無限大です。

最後になりますが、「継続は力なり」です。最初の一歩を踏み出したあとも、学びと実践を繰り返し続けてください。Difyという強力な武器を手に入れたあなたは、もうAI開発の門外漢ではありません。小さな成功体験を積み重ねるうちに、自信と実力が付いていくでしょう。そしていつの日か、初心者だったあなたが他の初心者に教える側になっているかもしれません。その頃には、Dify Cloud上で動くあなたのAIアプリが多くの人に使われ、喜ばれていることでしょう。

それでは、これからのAI開発の旅路が実り多いものとなることを願っています。Dify Cloudとともに、楽しいAIライフを!

  • この記事を書いた人
  • 最新記事

morishy

職業:外資系ITサービス企業での技術職 趣味:スポーツ観戦、ゲーム、読書、アニメ/ドラマ/映画鑑賞、プラモなど 自己紹介: IT企業で技術職で働いており、新しいものについて比較的興味を持ちやすい体質です。最近は手芸や美術・芸術などにも興味を持ち始めており、少し勉強したらブログ記事にできたらと思ってます。 趣味は非常に多いのですが、逆に言うと全てについて厚みがないなあと思い始めてきたので、自分の経験や知識をアウトプットするブログ執筆などの活動を通じて、自分の趣味の領域に厚みを持たせて人生を楽しんでいきたいと思ってます。 サイト名「山溜穿石」(さんりゅうせんせき)は少し聞きなれない言葉かもしれませんが、小さな努力を重ねていけば、どんなことも成し遂げることができることのたとえです。ブログを執筆する活動や、上に書いたような自分がやっていきたいことにぴったりの言葉だと思ってます。 よろしくお願いします。

-IT
-,