すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:Dify を使用して AI Q&A アシスタントを迅速に構築

最終更新日:Jan 14, 2026

Dify は、Backend-as-a-Service (BaaS) と LLMOps を組み合わせたオープンソースの大規模言語モデル (LLM) アプリケーション開発プラットフォームです。Alibaba Cloud Container Service for Kubernetes (ACK) 上に Dify をデプロイすることで、独自のナレッジベースと LLM を統合し、高度にカスタマイズされた AI ソリューションを作成できます。ACK は、ビジネスニーズの成長に合わせて拡張できるスケーラブルなインフラストラクチャを提供し、高可用性とシームレスな拡張を保証します。

ソリューション概要

Dify カスタマイズ AI アプリケーションの例

2024-08-21_16-01-26 (1)

Web 統合 AI アプリケーションの例

2024-08-23_14-14-02 (1)

AI アシスタントの構築には、主に 3 つのフェーズがあります。

  1. インフラストラクチャのデプロイ:ACK クラスターを作成し、ack-dify をインストールします。

  2. AI モデルの設定:API キーを使用して、Dify をモデルプロバイダー (Qwen など) に接続します。

  3. 検索拡張生成 (RAG) によるパーソナライズ:独自のドキュメントをアップロードしてナレッジベースを作成し、AI が専門的でドメイン固有の質問に回答できるようにします。

image

以下の図は、Dify サービスと ACK クラスター間のインタラクションの詳細を示しています。

image

Dify の概要

Dify は、LLM アプリケーションの開発を合理化するために設計された包括的な技術スタックを提供します。事前に構築されたインフラストラクチャと統合された LLMOps 機能を提供することで、Dify は開発者が「車輪の再発明」をする必要をなくし、コアとなるイノベーションと特定のビジネスロジックに集中できるようにします。

以下の図は、技術アーキテクチャを示しています。

image

Dify アーキテクチャの主要コンポーネント:

  • エンタープライズグレードのコアコンポーネント:Dify は、LLM アプリケーション開発に不可欠なビルディングブロックを統合しています。これには以下が含まれます。

    • マルチモデル互換性:幅広い主流の LLM とのシームレスな統合。

    • 直感的なプロンプトエンジニアリング:プロンプトの設計、テスト、最適化のためのユーザーフレンドリーなインターフェイス。

    • 高性能 RAG:LLM をプライベートナレッジベースに接続するための堅牢な RAG システム。

    • 拡張可能なエージェントフレームワーク:カスタマイズ可能なツールセットを備えた自律型エージェントの構築をサポート。

  • 視覚的なオーケストレーションと LLMOps:Dify は、以下を通じてアプリケーションのライフサイクルを簡素化します。

    • 視覚的なワークフロー:複雑な AI ロジックとプロンプトチェーンをオーケストレーションするためのローコードキャンバス。

    • 合理化された運用:アプリケーション監視、パフォーマンストラッキング、データセットメンテナンスのための一元管理。

    • 継続的な改善:本番環境での高品質なモデル出力を保証するための、反復的な最適化のための組み込みツール。

  • 事前に構築されたテンプレートとスケーラビリティ:市場投入までの時間を短縮するために、Dify は以下を提供します。

    • すぐに使えるテンプレート:一般的な AI ユースケース (カスタマーサービスのチャットボットやドキュメント分析など) のためのすぐに使えるフレームワーク。

    • 弾力的なスケーリング:増大するビジネス需要に対応するためのオンデマンドスケーリングをサポートするクラウドネイティブアーキテクチャ。

柔軟性と使いやすさを組み合わせることで、Dify は開発者が高度な生成 AI アプリケーションを迅速に構築、デプロイ、メンテナンスできるようにします。

以下の表は、Dify のコア機能をまとめたものです。個人または企業のニーズに基づいて使用できます。

特徴

説明

包括的な LLMOps

デプロイされた AI アプリケーションに対して、Dify は完全な運用保守 (O&M) サポートを提供します。これには、アプリケーションログとパフォーマンスメトリックのリアルタイムモニタリング、および本番データとユーザーフィードバックに基づくプロンプト、データセット、モデルの継続的な最適化が含まれます。

RAG エンジン

Dify は、ドキュメントの取り込みから情報検索までの全プロセスをサポートするエンドツーエンドの RAG パイプラインを提供します。PDF や PPT などの一般的なドキュメント形式を処理でき、データ準備を簡素化します。

エージェント

Dify を使用すると、開発者は LLM の関数呼び出しまたは ReAct パラダイムに基づいてエージェントを定義し、事前に構築されたツールやカスタムツールを追加できます。プラットフォームには 50 以上の組み込みツールがあります。

ワークフローオーケストレーション

Dify は、開発者が複雑なコード記述に深く立ち入ることなく、さまざまなコンポーネントをドラッグアンドドロップで接続することで、複雑な AI ワークフローを迅速に構築できる視覚的なキャンバスを提供します。これにより、開発のしきい値が大幅に下がります。

可観測性

LLM アプリケーションの品質とコストを追跡および評価する機能を提供します。その監視ダッシュボードを通じて、これらの機能を簡単に設定およびアクティブ化して、LLM アプリケーションの可観測性を向上させることができます。

エンタープライズ機能 (SSO/アクセス制御)

企業組織は、情報漏洩やデータ損傷のリスクを軽減し、情報セキュリティと事業継続性を確保できます。

フェーズ 1: ack-dify のインストール

ワンクリックデプロイ (初心者向け推奨)

ACK を初めて使用する場合は、Resource Orchestration Service (ROS) を使用して環境設定を自動化します。

重要

ACK サービスがアクティブ化され、承認されていることを確認してください。詳細については、「ACK マネージドクラスターのクイック作成」をご参照ください。

このソリューションには、以下のインフラストラクチャと Alibaba Cloud サービスが含まれます。

インフラストラクチャと Alibaba Cloud サービス

説明

1 つの Virtual Private Cloud (VPC)

Elastic Compute Service (ECS) インスタンスや ACK マネージドクラスターなどのクラウドリソースのために、クラウド上にプライベートネットワークを構築します。

2 つの vSwitch

ECS インスタンスや ACK クラスターなどのリソースを同じネットワークに接続して、それらの間の通信を可能にし、基本的なネットワークセグメンテーションと分離を提供します。

1 つのセキュリティグループ

VPC 内の ECS インスタンスのインバウンドおよびアウトバウンドのネットワークルールを制限するために使用されます。

1 つの Classic Load Balancer (CLB) インスタンス

パブリック IP アドレスを使用して Dify プラットフォームにアクセスするために使用されます。

1 つの NAS ファイルシステム

Dify プラットフォームの内部サービス (api および worker) がデータを保存するために使用します。

1 つの ACK マネージドクラスター

Dify プラットフォームをデプロイするために使用されます。Dify プラットフォームは多くのコンテナーを起動します。少なくとも 8 vCPU と 16 GiB の仕様のノードを 1 つ選択することをお勧めします (例:ecs.u1-c1m2.2xlarge)。そうしないと、リソース不足に直面する可能性があります。

手順

  1. ROS コンソールでワンクリックテンプレートを使用します。まず、リージョンを選択します。たとえば、中国 (杭州) です。次に、ROS テンプレートに従って、プライマリおよびセカンダリの vSwitch アベイラビリティゾーン ID、ACK ノードインスタンスタイプ、ACK インスタンスのパスワード、セキュリティ確認などの重要な情報を設定します。他の設定はデフォルト値のままにします。設定後、[次へ:確認] をクリックします。

  2. クラスターが作成されるまで約 10 分 待ちます。作成が完了したら、ACK コンソールにログインします。左側のナビゲーションウィンドウで [クラスター] をクリックし、作成したクラスター名をクリックして詳細ページに移動します。左側のナビゲーションウィンドウで、[ワークロード] > [Pod] を選択します。名前空間を dify-system に設定して、ack-dify リソースがクラスターに作成されたことを確認します。

ack-dify がインストールされたら、次のステップに進みます。

説明

ROS の ワンクリックデプロイメント を使用して ack-dify をインストールした場合、ack-dify のパブリックアクセスは有効になっているため、ack-dify サービスのパブリックアクセスを有効にする の手順は省略してください。

手動デプロイ (経験者向け)

前提条件

  1. Kubernetes バージョン 1.22 以降を実行している ACK Pro クラスターがあり、少なくとも 2 vCPU と 4 GiB の利用可能なメモリがあること。手順については、「ACK マネージドクラスターの作成」および「クラスターのアップグレード」をご参照ください。

  2. Container Storage Interface (CSI) ストレージプラグインが NAS 動的プロビジョニングで設定されていることを確認してください。

    CSI ストレージプラグインの設定

    クラスターを作成する際に、以下のオプションを選択します。

    image

  3. クラスターに接続するために kubectl が設定されていること。手順については、「クラスターの kubeconfig を取得し、kubectl を使用してクラスターに接続する」をご参照ください。

手順

  1. ACK コンソールにログインします。左側のナビゲーションウィンドウで [クラスター] をクリックし、対象のクラスター名をクリックして詳細ページに移動します。以下の図に示すように、番号付きの項目を順番にクリックして、対象のクラスターに ack-dify をインストールします。

    デフォルトの [アプリケーション名][名前空間] を使用できます。⑥ [次へ] をクリックすると、確認ダイアログボックスが表示されます。[はい] をクリックして、デフォルトのアプリケーション名 ack-dify と名前空間 dify-system を使用します。次に、最新の [Chart バージョン] を選択し、[OK] をクリックしてインストールを完了します。

    image

  2. 約 1 分待ってから、ローカルで次のコマンドを実行します。dify-system 名前空間のすべての Pod が Running 状態であれば、ack-dify はインストールされています。

    kubectl get pod -n dify-system

フェーズ 2:AI アシスタントのセットアップ

Dify サービスへのアクセス

  1. ack-dify サービスのパブリックアクセスを有効にします。

    説明

    パブリックアクセスはデモンストレーション目的には便利です。本番環境にサービスをデプロイする場合は、データセキュリティのために [アクセス制御] を有効にすることを推奨します。

    image

  2. 左側のナビゲーションウィンドウから [ネットワーク] > [サービス] を選択します。[サービス] ページで、名前空間を dify-system に設定し、ack-dify を見つけます。次に、サービスの [外部 IP] を取得します。

    image

  3. アカウントを登録します。

    ブラウザに外部 IP を入力し、プロンプトに従って管理者アカウントを作成します。

    image

AI モデルの設定

必要な AI モデルを追加して設定します (例として Qwen を使用)。

  1. API キーの取得Alibaba Cloud Model Studio にログインして、Qwen の API キーを取得します。

  2. Dify との統合:Dify プラットフォームにログインします。[設定] > [モデルプロバイダー] に移動し、[Tongyi] プラグインをインストールして設定し、API キーを貼り付けて保存します。

    以下の図は、そのプロセスを示しています。

    説明

    Qwen の無料クォータを使い切った後は、トークンごとに課金されます。この方法は、独自の大規模モデルをデプロイするよりも初期投資コストが大幅に低くなります。

    image

  3. アプリの作成[Studio] > [空白から作成] に移動し、アシスタントの [名前][説明] を入力し、他のパラメーターはデフォルト値のままにします。

    image

2.3. AI アシスタントの検証

ページに質問を入力して、AI Q&A アシスタントの設定の効果を確認します。この例のモデルは汎用チャットボットであるため、簡単な会話しかできず、まだ Dify に関連する専門的な質問には答えられません。

image

フェーズ 3:ナレッジベースのカスタマイズ (RAG)

ナレッジベースの作成

標準の LLM は、特定のビジネスデータを知らない場合があります。この問題を解決するために RAG 機能を使用します。

  1. データの準備:ドキュメントをサポートされている形式 (PDF、TXT、Markdown) にまとめます。手順を簡略化するために、この例ではコーパスファイル dify_doc.md を提供します。以下の手順に従って、専用のナレッジベースを作成し、アップロードするだけです。

  2. アップロード:Dify で、[ナレッジ] > [ナレッジを作成] > [ファイルからインポート] に移動し、ファイルをアップロードして [次へ] をクリックします。

    image

  3. 処理:デフォルトの自動クリーニングとセグメンテーション設定を使用します。Dify は、ベクトル検索のためにコンテンツをインデックス化します。

上記のコーパスファイルがどのように .md ファイルに整理されているかを理解するには、展開して詳細を表示してください。

Dify コーパスナレッジベースの準備方法

Dify は、TXT、HTML、Markdown、PDF などのサポートされている形式の単一ファイルのアップロードをサポートしています。

トレーニングを開始する前に、コーパスを準備する必要があります。この例では、Markdown 形式で Git リポジトリで管理されている Dify のドキュメントを使用します。ドキュメントをローカルにプルし、リポジトリ内の一連の .md ファイルを単一のファイルにマージするだけです。以下に一般的な例を示します。

  1. コードリポジトリのクローン。Git コマンドを実行して、対応する Dify コードリポジトリをクローンします。

    git clone https://github.com/langgenius/dify-docs.git
  2. コーパスの整理。後続のコーパスのベクトル化を容易にするために、次の Python スクリプトを使用して、取得した Dify コードリポジトリ内の .md ファイルをマージして整理します。

    from langchain_text_splitters import MarkdownHeaderTextSplitter, RecursiveCharacterTextSplitter
    import os
    
    
    def merge_markdown_files_from_directory(root_dir, output_file):
        """
        merge_markdown_files_from_directory 関数
          1. 機能:指定されたディレクトリ内のすべての .md ファイルの内容を出力ファイルにマージします。
          2. パラメーター:
            root_dir:指定されたルートディレクトリへのパス。
            output_file:出力ファイルへのパス。
          3. 実装:
            os.walk を使用して root_dir ディレクトリとそのサブディレクトリを走査します。
            各ファイルが .md で終わるかどうかを確認します。もしそうなら、そのパスを markdown_files リストに追加します。
            output_file を開き、markdown_files からの各ファイルの内容を書き込みます。
        """
        markdown_files = []
        for root, dirs, files in os.walk(root_dir):
            for file in files:
                if file.endswith('.md'):
                    markdown_files.append(os.path.join(root, file))
    
        with open(output_file, 'w', encoding='utf-8') as outfile:
            for file_path in markdown_files:
                with open(file_path, 'r', encoding='utf-8') as infile:
                    outfile.write(infile.read())
                    # outfile.write('\n\n')
    
                   
    def process_and_write_markdown(file_path: str, headers_to_split_on: list, chunk_size: int, chunk_overlap: int, output_file: str):
        """
        process_and_write_markdown 関数
          1. 機能:
            単一の Markdown ファイルの内容を処理し、指定されたヘッダーとチャンキングルールに基づいてテキストを分割し、その結果を新しいファイルに書き込みます。
          2. パラメーター:
            file_path:入力 Markdown ファイルのパス。
            headers_to_split_on:ヘッダーレベルのタプルを含むリスト。例:[("#", "Header 1"), ("##", "Header 2")]。
            chunk_size:各テキストチャンクの最大長。
            chunk_overlap:テキストチャンク間の重複長。
            output_file:出力ファイルのパス。
          3. 実装手順:
            file_path から Markdown ファイルの内容を読み取ります。
            MarkdownHeaderTextSplitter オブジェクトを作成して、headers_to_split_on に基づいて Markdown の内容を分割します。
            RecursiveCharacterTextSplitter オブジェクトを作成して、chunk_size と chunk_overlap に基づいてテキストをさらに分割します。
            output_file を開き、各分割テキストチャンクのメタデータと内容をファイルに書き込みます。
        """
        try:
            # file_path から Markdown ファイルの内容を読み取ります。
            with open(file_path, "r", encoding="utf-8") as doc:
                markdown_content = doc.read()
    
            # headers_to_split_on に基づいて Markdown の内容を分割するために MarkdownHeaderTextSplitter オブジェクトを作成します。
            splitter = MarkdownHeaderTextSplitter(headers_to_split_on=headers_to_split_on, strip_headers=True)
            md_splits = splitter.split_text(markdown_content)
    
            # chunk_size と chunk_overlap に基づいてテキストをさらに分割するために RecursiveCharacterTextSplitter オブジェクトを作成します。
            text_splitter = RecursiveCharacterTextSplitter(chunk_size=chunk_size, chunk_overlap=chunk_overlap)
            splits = text_splitter.split_documents(md_splits)
    
            # output_file を開き、各分割テキストチャンクのメタデータと内容をファイルに書き込みます。
            with open(output_file, "w") as f:
                for line in splits:
                    f.write(str(line.metadata))
                    f.write("\n")
                    f.write(line.page_content)
                    f.write("\n\n\n\n")
    
        except FileNotFoundError:
            raise FileNotFoundError(f"ファイル {file_path} は存在しません。")
    
    
    # 例
    if __name__ == "__main__":
        """
         1. パラメーターの設定:
          root_directory:指定されたルートディレクトリへのパス。
          merged_file_path:マージされた Markdown ファイルのパス。
          output_file:最終的に処理された出力ファイルのパス。
          headers_to_split_on:ヘッダーレベルのリスト。
          chunk_size と chunk_overlap:テキストチャンクのサイズと重複長。
        2. 実行手順:
          merge_markdown_files_from_directory を呼び出して、すべての .md ファイルを merged_file_path にマージします。
          process_and_write_markdown を呼び出して、マージされたファイルを処理し、結果を output_file に書き込みます。
          これらの手順により、複数の Markdown ファイルのマージから最終的な処理と出力までのスクリプトのプロセスが完了します。
        """
        
        # 処理するフォルダへのパス
        root_directory = 'path/to/dify-docs/en'
        # マージされたファイルのパス
        merged_file_path = './merged_markdown.md'
        # クリーニングされたファイルのパス
        output_file = './dify_doc.md'
        
        merge_markdown_files_from_directory(root_directory, merged_file_path)
        headers_to_split_on = [
            ("#", "Header 1"),
            ("##", "Header 2"),
            ("###", "Header 3"),
        ]
        chunk_size = 500
        chunk_overlap = 50
        process_and_write_markdown(merged_file_path, headers_to_split_on, chunk_size, chunk_overlap, output_file)
    
  3. 準備したコーパスファイル dify_doc.md をナレッジベースにアップロードします。

オーケストレーションと公開

作成した AI アシスタントのプロンプトを設定し、コンテキストナレッジベースを追加します。

  1. プロンプトエンジニアリング[オーケストレーション] ページで、[指示] を追加して AI のペルソナを定義し、応答のパフォーマンスと精度を向上させるための指示と制約を AI に与えます。
    例:

    あなたは Dify の AI アシスタントとして、Dify 製品とその機能に関する顧客の質問に答えることに専念します。応答は、正確性を確保するために既存のナレッジベースに基づいている必要があります。質問が知識の範囲外である場合は、情報の完全性を維持するために、答えがわからないことを正直に伝えてください。フレンドリーで温かい口調でコミュニケーションをとり、インタラクティブな体験を向上させるために絵文字を適切に使用してください。
  2. コンテキストの追加[コンテキスト] エリアで [追加] をクリックし、画面のプロンプトに従って AI Q&A アシスタント専用のナレッジベースを設定します。これにより、アシスタントは正確で専門的な回答を提供できるようになります。

  3. 公開:ページの右上隅で、[公開] > [更新] をクリックして設定を保存し、変更を Dify サービスに適用します。

以下の図は、手順を示しています。

image

結果の検証

汎用チャットボットと比較して、専用のナレッジベースで設定された AI アシスタントは、関連分野の知識を使用して、より専門的で正確な情報を提供できます。image

(オプション) フェーズ 4:本番環境への統合

AI アシスタントの準備ができたら、次のいずれかの方法でビジネス環境にデプロイできます。

例:AI アプリケーションを Web サイトに埋め込む

以下の例はデモンストレーション目的です。アプリケーションのデータセキュリティのために、本番環境では [アクセス制御] も有効にすることを推奨します。

  1. ack-dify サービスのパブリックアクセスを有効にします。ブラウザのアドレスバーに外部 IP アドレスを入力して Dify サービスにアクセスします。手順については、「Dify サービスへのアクセス」をご参照ください。

    image

  2. ACK クラスターに簡単な Web アプリケーションを迅速に構築して、AI Q&A アシスタントをテストします。

    以下の例は、ACK クラスターにサンプル Web アプリケーションをデプロイする方法を示しています。これに Dify の LLM アプリケーションを埋め込むことができます。

    1. Dify サービスコードを取得します。

      以下の図に示すように、チャットアプリケーションに対応するコードを Web サイトに埋め込む方法を選択します。image

    2. クラスターで、Web アプリケーションを実行するための Deployment を作成し、アプリケーションを公開するための Service を作成します。

      以下の YAML マニフェストは、静的 HTML を持つ NGINX サーバーをデプロイします。

      1. ACK コンソールにログインします。左側のナビゲーションウィンドウで、[設定] > [ConfigMap] を選択し、名前空間を default に設定し、[YAML から作成] をクリックします。以下の YAML コンテンツをテンプレートにコピーし、取得した Dify サービスコードで window.difyChatbotConfigsrcid を更新します。

        YAML コンテンツを表示するには展開してください

        apiVersion: apps/v1
        kind: Deployment
        metadata:
          name: web-deployment
        spec:
          replicas: 2
          selector:
            matchLabels:
              app: web
          template:
            metadata:
              labels:
                app: web
            spec:
              containers:
              - name: web
                image: registry.openanolis.cn/openanolis/nginx:1.14.1-8.6
                ports:
                - containerPort: 80
                volumeMounts:
                - name: web-content
                  mountPath: /usr/share/nginx/html
              volumes:
              - name: web-content
                configMap:
                  name: web-config
          
        
        ---
        apiVersion: v1
        kind: Service
        metadata:
          name: web-service
        spec:
          selector:
            app: web
          ports:
            - protocol: TCP
              port: 80
              targetPort: 80
          type: LoadBalancer
        
        
        ---
        apiVersion: v1
        kind: ConfigMap
        metadata:
          name: web-config
        data:
          index.html: |
            <!DOCTYPE html>
            <html lang="en">
            <head>
                <meta charset="UTF-8">
                <meta name="viewport" content="width=device-width, initial-scale=1.0">
                <title>The simplest website service</title>
                <style>
                    #dify-chatbot-bubble-button {
                        background-color: #1C64F2 !important;
                    }
                </style>
            </head>
            <body>
                <h1>Welcome to my website!</h1>
            
            
                <script>
                 window.difyChatbotConfig = {
                  token: 'W1b8mRL******yiD6',
                  baseUrl: 'http://8.154.XX.XX'
                 }
                </script>
                <script
                 src="http://8.154.XX.XX/embed.min.js"
                 id="W1b8mRL******yiD6"
                 defer>
                </script>
                <style>
                  #dify-chatbot-bubble-button {
                    background-color: #1C64F2 !important;
                  }
                </style>
        
        
        
            </body>
            </html>
      2. 以下の図は、成功したデプロイメントを示しています。

        image

      3. デプロイされたサービスのパブリックアクセスを有効にします。

        アプリケーションのデータセキュリティのために、本番環境では [アクセス制御] も有効にすることを推奨します。

        image

        完了すると、web-service サービスの [外部 IP] を表示できます。この外部 IP をブラウザのアドレスバーに入力して、Web サービスにアクセスします。

        image

        重要
        • 他のデバイスがこのサービスにアクセスできるようにするには、クラスターのファイアウォールまたはセキュリティグループがポート 80 を通るトラフィックを許可するように設定されていることを確認してください。手順については、「セキュリティグループルールの追加」をご参照ください。

        • 潜在的なクロスサイトスクリプティング (XSS) や悪意のあるコードの埋め込みを避けるために、ご自身のコードおよびサードパーティのコードが安全であることを確認してください。このトピックでは、デモンストレーションのための基本的な例を提供しています。ニーズに応じて拡張および変更できます。

      4. 結果のデモンストレーション。

        2024-08-23_14-14-02 (1)

トラブルシューティング

  • 問題:Pod が Pending 状態です。

    解決策:通常、ストレージクラスの欠落またはリソース不足が原因です。クラスターに ack-dify の Persistent Volume Claim (PVC) 依存関係が欠けていないか確認してください。クラスターにデフォルトの Container Network File System (CNFS) と対応する NAS StorageClass を作成します。具体的な手順については、「CNFS を使用した NAS ファイルシステムの管理 (推奨)」をご参照ください。Pod の例外のトラブルシューティングについては、「Pod の例外のトラブルシューティング」をご参照ください。

  • 問題:DNS 解決に失敗しました。

    解決策:特にカスタムの hostNetwork 設定を使用している場合、Pod がクラスター内の CoreDNS にアクセスできることを確認してください。

  • 問題:AI アシスタントの応答が不正確です。

    解決策:システムプロンプトを改良するか、ナレッジベースのセグメント (チャンキング) の品質を向上させてください。

コストとメンテナンス

  • 課金:ACK 管理費および ECS、NAS、CLB、Elastic IP アドレス (EIP) などの基盤となるリソースに対して課金されます。モデルの使用量は、モデルプロバイダーによってトークンに基づいて課金されます。クラスター管理費とリソース料金については、「課金の概要」をご参照ください。

  • セキュリティ:Dify の管理者パスワードと API キーを定期的にローテーションしてください。Alibaba Cloud でのきめ細かなアクセス制御には RAM ロールを使用してください。

免責事項

Dify on ACK は、オープンソースの Dify プロジェクトを Alibaba Cloud ACK 環境に適応させ、迅速なデプロイを可能にする Helm デプロイソリューションです。ACK は、Dify アプリケーションのパフォーマンスや、プラグインやデータベースなどの他のエコシステムコンポーネントとの互換性を保証するものではありません。ACK は、Dify またはそのエコシステムコンポーネントの欠陥によって生じたいかなるビジネス上の損失に対しても、補償や賠償などの商用サービスを提供しません。Dify の安定性とセキュリティを確保するために、オープンソースコミュニティからの更新をフォローし、オープンソースソフトウェアの問題を積極的に修正することを推奨します。