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

Container Service for Kubernetes:Flowise を使用して汎用 Web チャットボットを構築する

最終更新日:Nov 09, 2025

Flowise を使用すると、パーソナライズされた会話フローを簡単にオーケストレーションできます。その直感的なグラフィカルインターフェイスと柔軟なワークフロー設計により、開発者と非技術者スタッフの両方が、複雑でインタラクティブなチャットアプリケーションを作成できます。これらのアプリケーションをビジネスシナリオに統合して、日常の開発および管理効率を向上させることができます。さらに、ACK クラスターにサービスをデプロイすると、ビジネスニーズの変化に応じてリアルタイムでスムーズにスケールでき、継続的なビジネスの成長をサポートします。

概要

2024-10-23_10-02-54 (1)

汎用チャットボットは 3 つのステップで構成できます:

  1. Flowise コンポーネントのインストール: Container Service for Kubernetes を使用して ACK クラスターを作成し、Flowise コンポーネントをインストールします。

  2. 汎用チャットボットワークフローの構築: Flowise サービスにアクセスして、汎用チャットボットを作成します。

  3. パーソナライズされた会話フローのオーケストレーション: 質問応答 (Q&A) モデルとプロンプトテンプレートを設定し、チェーンモデルを使用してそれらを接続します。

flowise

1. flowise コンポーネントのインストール

Flowise は、開発者が大規模言語モデル (LLM) アプリケーションを迅速かつ柔軟に構築するのに役立つ、オープンソースで使いやすいフレームワークです。アプリケーションを構築するためのローコードまたはノーコードのメソッドを提供することで、LangChain の使用を簡素化します。Flowise は、ビジュアルコンポーネントをドラッグアンドドロップしてワークフローを構築できる直感的なユーザーインターフェイスを提供します。これにより、LLM アプリケーションの構成が容易になり、開発者がテストから本番環境への移行をより迅速に行うのに役立ちます。

1.1 前提条件

  1. バージョン 1.22 以降の ACK Pro マネージドクラスターが作成されていること。詳細については、「ACK マネージドクラスターの作成」および「クラスターのアップグレード」をご参照ください。

  2. kubectl ツールを使用して Kubernetes クラスターに接続していること。詳細については、「クラスターの kubeconfig ファイルを取得し、kubectl を使用してクラスターに接続する」をご参照ください。

1.2 コンポーネントのデプロイ

  1. Flowise コンポーネントをインストールしてデプロイします。

    1. ACK コンソールにログインします。左側のナビゲーションウィンドウで、[クラスター] をクリックします。

    2. ターゲットクラスターをクリックして詳細ページに移動します。図の番号付きのステップに従って、ターゲットクラスターの Flowise コンポーネントを構成します。

      コンポーネントの [アプリケーション名] または [名前空間] を構成する必要はありません。[⑤ 次へ] をクリックすると、[確認] ダイアログボックスが表示されます。[はい] をクリックして、デフォルトのアプリケーション名 (flowise) と名前空間 (flowise-system) を使用します。

      image

    3. [Chart Version] を最新バージョンに設定し、[OK] をクリックして Flowise コンポーネントのインストールを完了します。

      [パラメーター] タブで、カスタムの [ユーザー名][パスワード] を構成できます。

  2. Flowise コンポーネントが正常に実行されていることを確認します。

    次のコマンドを実行して、flowise-system 名前空間の Pod が実行状態であるかどうかを確認します。

    kubectl get pod -n flowise-system

    次の出力は、Flowise コンポーネントが正常にインストールされたことを示します。

    NAME                       READY   STATUS    RESTARTS   AGE
    flowise-596fb8bf88-7zdlr   1/1     Running   0          3h
    flowise-postgresql-0       1/1     Running   0          3h

2. ワークフローオーケストレーションテンプレートの作成

2.1 Flowise サービスへのアクセス

  1. Flowise コンポーネントのインターネットアクセスを有効にします。

    本番環境を使用している場合は、[アクセス制御] 機能を有効にして、アプリケーションデータが安全であることを確認してください。image

  2. 構成が完了したら、Flowise コンポーネントの [外部 IP] を表示できます。この外部 IP アドレスをブラウザのアドレスバーに入力して、Flowise サービスにアクセスします。

    image

  3. Flowise サービスにアクセスします。

    [外部 IP] アドレスに移動し、プロンプトに従ってカスタムの [ユーザー名][パスワード] を入力してサービスを使用します。

    image

    Flowise コンポーネントのインストール時にカスタムの [ユーザー名][パスワード] を指定しなかった場合は、デフォルト値を使用してサービスにアクセスします: Username=flowiseuser および Password=flowisepassword

2.2 Chatflows の作成

Flowise の強力な機能の 1 つは、フローをツールに変えることができることです。たとえば、必要なツールをいつ使用するかを調整するメインフローを持つことができ、各ツールは特定のタスクを実行するように設計されています。

各子フローツールは独立して実行され、より明確な出力を提供するために個別のメモリを持っています。各子フローからの詳細な出力は最終的なエージェントに要約され、通常はより高品質の出力を生成します。

Chatflow を作成するには、次の手順を実行します。

  1. ユーザー名とパスワードを入力して、Flowise サービスプラットフォームにログインします。

  2. 新しい Chatflow を作成します。

    Flowise サービスプラットフォームページで、[Chatflows] > [Add New] をクリックして新しい Chatflow を作成します。

    image

3. パーソナライズされた会話フローのオーケストレーション

3.1 チャットモデルの構成

Flowise サービスでは、ノードを作成し、それらの間に接続を構築することで、LLM アプリケーションをオーケストレーションできます。ビルディングブロックと同様に、Flowise サービスで利用可能なすべてのノードを使用して、LLM オーケストレーションフロー、チャットボット、またはインテリジェントエージェントなどのカスタム LLM アプリケーションを構築できます。Flowise サービスは現在、LangChain や LlamaIndex などのフレームワークの概念をサポートしており、そこからエージェント、チェーン、チャットモデルなど、さまざまな種類のノードを抽象化できます。

  1. [Chat Models Panel] をクリックして入力し、ドラッグして [ChatOpenAI Custom Node] を作成します。次に、[Connect Credential] ドロップダウンリスト > [Create New] をクリックし、Tongyi Qianwen の API キーを入力して新しい Connect Credential を作成します。

    image

  2. [Model Name][qwen-turbo] に設定します。次に、[Additional Parameters] ページで、[BasePath]https://dashscope.aliyuncs.com/compatible-mode/v1 に設定します。

    image

3.2 プロンプトテンプレートの設定

[Prompts] パネルに移動し、ドラッグして [Prompt Template] ノードを作成し、[Template] 情報を次のように構成します。

質問: {question}
回答: 一歩ずつ考えましょう。

image

3.3 LLM チェーンの設定

  1. [Chains] パネルに移動し、ドラッグして [LLM Chain] ノードを作成します。

    image

  2. 作成したテンプレートのノードを接続して、汎用チャットボットのオーケストレーションを完了します。

    image

3.3 結果の確認

Chatflow をオーケストレーションした後、ページの右上隅にある [Save] ボタンをクリックします。次に、右上隅の [Message] ボタンを使用してチャットボットをデバッグできます。結果を次の図に示します。

image

まとめ

本番環境への適用

開発した AI Q&A アシスタントを企業または個人の本番環境に導入する場合は、次の 2 つの方法のいずれかで導入できます。

  1. 会話フローを API として使用し、フロントエンドアプリケーションにリンクできます。

    Flowise は、Backend as a Service (BaaS) の概念に基づいて、すべてのアプリケーションに API を提供します。これにより、開発者は複雑なバックエンドアーキテクチャやデプロイメントプロセスを気にすることなく、フロントエンドアプリケーションで LLM の強力な機能に直接アクセスできます。詳細については、「API を使用した開発」をご参照ください。

  2. 汎用チャットボットを個人またはビジネスの Web サイトに埋め込むこともできます。

    提供された埋め込みコードをコピーして、HTML ファイルのタグに貼り付けるだけです。

    Flowise サービスを使用して、独自の汎用チャットボットを数分で作成し、Flowise がサポートする機能を使用して AI アプリケーションをビジネス Web サイトに埋め込むことができます。詳細については、「Web サイトへの埋め込み」をご参照ください。

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

このセクションでは、開発した LLM アプリケーションを企業または個人の Web サイトに埋め込む方法について説明します。例の手順に従うことができます。

この例はデモンストレーションを目的としています。アプリケーションデータが安全であることを確認するには、本番環境で [アクセス制御] 機能を有効にします。

  1. Flowise コンポーネントのインターネットアクセスを有効にします。ブラウザのアドレスバーに外部 IP アドレスを入力して、Flowise サービスにアクセスします。詳細については、「Flowise サービスへのアクセス」をご参照ください。

    image

  2. ACK クラスターでシンプルな Web アプリケーションを構築して、汎用チャットボットをデバッグします。

    次の例は、ACK クラスターに Web アプリケーションをデプロイする方法を示しています。ACK クラスター上で実行され、Flowise サービスで開発された LLM アプリケーションを埋め込むことができます。

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

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

      image

    2. ACK クラスターで、デプロイメントを作成して Web アプリケーションを実行し、サービスを作成してアプリケーションを公開します。

      以下は、静的 HTML を含む Nginx サーバーをデプロイする方法を示す簡単な YAML の例です。

      1. ACK コンソールにログインします。[構成管理] > [ConfigMap] ページで、[default] 名前空間を選択し、[YAML から作成] をクリックします。次の YAML コンテンツをテンプレートにコピーし、window.difyChatbotConfigscr、および id を取得した Flowise サービスコードに置き換えます。

        コードの詳細については、次の例をご参照ください。

        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>最もシンプルな Web サイトサービス</title>
              
            </head>
            <body>
                <h1>私の Web サイトへようこそ!</h1>
            
            
                <script type="module">
            import Chatbot from "https://cdn.jsdelivr.net/npm/flowise-embed/dist/web.js"
            Chatbot.init({
                chatflowid: "86c03xxx-de3a-4xx3-9xx2-f5d56xxxx0a4",
                apiHost: "http://127.xx.xx.1:8080",
            })
                </script>
        
        
        
            </body>
            </html>
      2. デプロイが成功すると、次の図のようになります:

        image

      3. デプロイされたサービスのインターネットアクセスを有効にします。

        アプリケーションデータが安全であることを確認するには、本番環境で [アクセス制御] 機能を有効にします。

        image

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

        image

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

        • 潜在的なクロスサイトスクリプティング (XSS) や悪意のあるコードの挿入を防ぐために、コードとサードパーティのコードが安全であることを確認してください。このドキュメントは、デモンストレーションのための基本的な例を提供します。必要に応じて拡張および変更できます。

      4. 結果を表示します。

        2024-10-23_10-02-54 (1)

継続的な改善

カスタマイズされた LLM アプリケーションを統合する方法の詳細については、「Dify を使用して Web サイト用のカスタマイズされた AI Q&A アシスタントを構築する」をご参照ください。

Dify サービスを使用すると、企業または個人のナレッジベースを大規模モデルアプリケーションに統合できます。これにより、高度にカスタマイズされた AI Q&A ソリューションを作成し、それらをビジネスシナリオに統合して、日常の開発および管理効率を向上させることができます

課金

この機能では、ACK Pro マネージドクラスターの管理手数料と、使用される Alibaba Cloud リソースの料金が課金されます。この機能に関係する Alibaba Cloud プロダクトには、Elastic Compute Service (ECS)、Server Load Balancer (SLB)、Elastic IP アドレス (EIP)、Apsara File Storage NAS (NAS) が含まれます。使用したリソースに対しては、各プロダクトの課金ルールに基づいて課金されます。クラスター管理手数料とリソース料金の詳細については、「課金の概要」をご参照ください。