中級 12 分No-code

Flowise : drag-and-drop で AI エージェントを構築する Ollama

Flowiseを使うと、LLMエージェントの構築をキャンバス上でブロックを組み立てる作業に変えられます。LangChainのコードを書く代わりに、ノードをドラッグし、接続線でつなぎ、内蔵チャットでその場でテストできます。FlowiseとOllamaを組み合わせれば、チャットフロー、ツールを使うエージェント、RAGパイプラインをすべてローカルで実行でき、リクエストがマシンの外に出ることもありません。このガイドでは、インストールから始め、最初のチャットフローを構築し、文書を使ったRAGを追加した後、サイトに埋め込めるチャットボットを公開します。

著者 Marie L.·更新 2026-09-17·Windows・macOS・Linuxでテスト済み

#なぜFlowiseか

Flowiseは、LangChainとLangGraphをベースに構築されたオープンソースのビジュアル構築ツール(Apache 2.0ライセンス)です。モデル、メモリ、リトリーバー、ツールという同じ構成要素を、接続するノードとして提供します。これにより、Pythonで数百行を要するエージェントのプロトタイプを、ひと目で把握できるグラフとして表現できます。

本サイトで紹介しているもう一つのノーコードプラットフォーム、Difyと比べると、Flowiseはより細かなオーケストレーションを重視しています。Difyがアプリ、プロンプトセット、チーム管理など、整った製品体験を提供するのに対し、FlowiseではLangChainの内部の仕組みが見えるため、エージェントの各段階を理解して調整したい場合に、より適しています。どちらも同じ方法でOllamaに接続できます。

100 % ローカル
Ollama と組み合わせると、トークンもドキュメントもクラウドAPIへ送られません。センシティブなデータやオフライン使用に最適です。
迅速なイテレーション
テストチャットはキャンバスに統合されています。ノードを変更すると、即座に効果を確認でき、再デプロイは不要です。
API およびウィジェットの公開
各チャットフローは自動的にRESTエンドポイントおよび埋め込み可能なウェブウィジェットになります。バックエンドを書く必要はありません。
拡張可能
テンプレートマーケットプレイス、JavaScriptでカスタマイズされたノード、ツールの統合(ウェブ検索、計算機、HTTP呼び出し)。

#前提条件

ローカルコパイロットキット

このガイドでモデルの導入まで、キットでエディタ内でコードを書くコパイロットの導入まで進められます。

  • 永久に利用できるオンラインスペース
  • PDF + ファイル
  • 生涯アップデート

Flowiseは軽量です:Ollama と読み込まれたモデルがメモリを消費します。対象のLLMを快適に動作させるためのマシンを用意してください。

Ollama インストール済み
デーモンが動作し、http://localhost:11434(デフォルト)で接続を待ち受けている必要があります。「ollama list」で確認してください。
チャットモデル
エージェント向けのツール呼び出しをサポートするモデル:Qwen 3.5 8B、Granite 4.2 8BまたはMistral Small 24B(VRAMに応じて選択)(7B ≈ 5 GB、14B ≈ 9 GB、24B ≈ 16 GB、Q4_K_M)。
埋め込みモデル
RAG 用には「nomic-embed-text」または「mxbai-embed-large」が推奨され、軽量で Ollama から利用可能です。
Node.js 18.15以降またはDocker
Flowiseはnpmまたはコンテナでインストールできます。整理された構成で、データを永続化できるデプロイにはDockerが推奨されます。
i
エージェント向けのモデルはどれが適していますか
Flowiseのエージェントはツール呼び出しに依存しています:モデルはツールを呼び出すタイミングを決定する必要があります。3Bクラスのモデルは通常、信頼性を持ってその判断を下せません。少なくとも7〜8Bの最新モデル、理想的にはfunction callingに明示的にトレーニングされたモデルを推奨します。

#Flowise をインストールする

2つの方法があります。テストにはnpxが最も速く、データが永続化する長期的な使用にはDockerが推奨されます。

npm経由でのクイックインストール
# Lancement direct, sans installation permanente
npx flowise start

# Ou installation globale puis démarrage
npm install -g flowise
flowise start
Dockerを用いたインストール(推奨)
docker run -d \
  --name flowise \
  -p 3000:3000 \
  --add-host=host.docker.internal:host-gateway \
  -v ~/.flowise:/root/.flowise \
  flowiseai/flowise

次に、ブラウザで http://localhost:3000 を開いてください。キャンバスの画面が表示されます。マウントされたボリューム(~/.flowise)にはチャットフローとキーが保存され、コンテナを再起動しても保持されます。

→
アクセスのセキュリティを初期段階から確保
デフォルトでは、インターフェースに認証なしでアクセスできます。特にマシンにネットワーク経由でアクセスできる場合は、Dockerコマンドに「-e FLOWISE_USERNAME=admin -e FLOWISE_PASSWORD=motdepasse」を追加し、ログイン認証でアクセスを保護してください。

#OllamaをFlowiseに接続する

「ChatOllama」ノードはFlowiseとローカルデーモンの間の橋渡しです。重要なのはベースURLです。これはFlowiseが起動される方法によって異なります。

  1. 01
    ChatOllamaノードを追加する
    キャンバスで、ノードパネルを開き、「Chat Models」カテゴリから「ChatOllama」をワークスペースにドラッグしてください。
  2. 02
    ベースURLを入力
    Flowiseをネイティブ環境(npx/npm)で実行している場合は、http://localhost:11434 を使用してください。Dockerで実行している場合は、http://host.docker.internal:11434 を使用してください。コンテナからは、ホストの「localhost」にはアクセスできません。
  3. 03
    モデルの選択
    「Model Name」フィールドに、Ollamaにロードされたモデルの正確な名前を入力してください。たとえば「qwen3.5:8b」または「mistral-small」など。
  4. 04
    パラメータの設定
    Temperatureを調整し(チャットでは0.7、事実に基づくRAGでは0.1〜0.3)、必要に応じて詳細オプションのnum_ctxでコンテキストサイズも調整してください。
!
Dockerでの「fetch failed」エラー
chatflowが「fetch failed」または「ECONNREFUSED」を返す場合、十中八九、コンテナ内でlocalhostのURLを使っていることが原因です。host.docker.internal:11434 に置き換え、LinuxではDockerコマンドに --add-host=host.docker.internal:host-gateway が含まれていることを確認してください。

#チャットフローの重要なノード

チャットフローは左から右へ読んでいきます。供給側のノード(モデル、メモリ、ツール)が「チェーン」または「エージェント」ノードに入力を渡し、そのノードが応答を生成します。ほぼすべてのフローに登場する少数の基本ブロックを以下に紹介します。

Chat Model(ChatOllama)
脳:応答を生成するLLM。常に存在します。
Memory (Buffer Memory)
会話履歴を保持し、エージェントがやり取りのたびに会話の流れを維持できるようにします。
Prompt Template
システムの指示や質問のフォーマットを定義します。ここではモデルに役割と枠組みを付与します。
Chain / Agent
終端ノード。単純なチャットには「Conversation Chain」、モデルがツールを呼び出すかどうかを判断する必要がある場合には「Tool Agent」を使用します。
Tools
外部機能:電卓、ウェブ検索、HTTPリクエスト、ファイルの読み込み。エージェントと連携することで、エージェントが行える範囲を拡張します。
ドキュメントローダーとベクトルストア
RAGを構成する機能:文書を読み込み、分割し、インデックス化して、文書の内容について質問できるようにします(後述)。

#最初のチャットフローを構築する

最も簡単なものから始めましょう。Ollamaに接続した、記憶機能を備える対話型アシスタントです。これが、この後のすべての土台になります。

  1. 01
    新しいChatflowを作成
    ホーム画面のChatflowsタブで「Add New」をクリックしてください。空のキャンバスが開きます。
  2. 02
    3つの基本ノードを配置する
    キャンバスに「ChatOllama」、「Buffer Memory」、「Conversation Chain」をドラッグしてください。
  3. 03
    ノード同士を接続する
    ChatOllamaの出力をConversation Chainの「Chat Model」入力に、Buffer Memoryの出力を同じチェーンの「Memory」入力に接続してください。
  4. 04
    システムプロンプトをカスタマイズ
    Conversation ChainでSystem Message欄を開き、「あなたはフランス語で簡潔に回答する技術アシスタントです」という役割を設定してください。
  5. 05
    内蔵チャットでテストする
    右上のチャットアイコンをクリックし、質問を入力してから、最初の質問に依存する2番目の質問を入力して、メモリが正常に動作することを確認してください。
→
テストする前に保存してください
Flowise は、保存済みのチャットフローだけを実行します。チャットを開く前に、チャットフローに名前を付けて保存アイコン(フロッピーディスク)をクリックしてください。そうしないと、最新の変更が反映されません。

#ドラッグアンドドロップで完全なRAGを実現

RAG(Retrieval-Augmented Generation、検索拡張生成)を使うと、モデルは手元のドキュメントに基づいて回答できます。Flowiseでは、すべての操作をキャンバス上で行います。ファイルを読み込み、ベクトル化し、リトリーバーを質問応答チェーンに接続します。

  1. 01
    ドキュメントの読み込み
    データソースに合った「Document Loader」ノード(PDF File、Text File、Folder)を追加してください。このノードは元のコンテンツを読み込みます。
  2. 02
    チャンク分割
    「Recursive Character Text Splitter」をローダーに接続してください。チャンク間の文脈を保つため、チャンクのサイズを約1000文字、重複部分を100文字に設定してください。
  3. 03
    埋め込みベクトルの生成
    「Ollama Embeddings」ノードを追加し、「nomic-embed-text」モデルと、ChatOllamaと同じベースURLを設定してください。
  4. 04
    ベクトルストアへのインデックス作成
    「In-Memory Vector Store」(手軽に始められます)、またはデータを永続化したい場合は「Chroma」をドラッグして配置してください。そこにsplitterとembeddingsを接続してください。
  5. 05
    Retrieval QA Chainを接続する
    ベクトルストア(リトリーバーとして)とChatOllamaを「Retrieval QA Chain」または「Conversational Retrieval QA Chain」ノードに接続することで、会話の記憶を維持できます。
  6. 06
    自分のドキュメントについて質問する
    保存してチャットを開き、ファイル内に答えがある質問をしてください。これでモデルがあなたのコンテンツを引用するようになります。
RAGに必要なモデルを取得する
ollama pull qwen3.5:8b
ollama pull nomic-embed-text
i
インメモリ対 Chroma
インメモリのベクトルストアは、すぐに組み込めるため、プロトタイプ作成に最適です。ただし、再起動のたびにデータが消え、その都度ドキュメントを再インデックスします。コーパスが大きくなるか、データを永続化する必要が出てきたら、ChromaまたはQdrantに切り替え、再インデックスを一度で済ませるようにしてください。

#チャットボットの公開および統合

チャットフローが満足できるものになったら、Flowiseはバックエンドのコードを1行も書かずに2つの方法で公開します:REST APIと、サイトに貼り付けられるWebウィジェットです。

キャンバスの右上にある「API Endpoint」または</>アイコンをクリックしてください。Flowiseは予測URLおよびコピー可能な例を生成します。エンドポイントは常に同じ構造を持ち、チャットフローのユニークな識別子を含みます。

cURLを用いてチャットフローを呼び出す
curl http://localhost:3000/api/v1/prediction/<CHATFLOW_ID> \
  -H "Content-Type: application/json" \
  -d '{"question": "Résume la politique de retour en une phrase."}'

ウェブページに組み込むには、「Embed」タブで提供されるスクリプトのコード片を、各ページの終了タグ </body> の直前に配置します。ウィジェットには、色、挨拶メッセージ、アバターを自由に設定できるフローティング型のチャットバブルが表示されます。

ページに貼り付ける埋め込み用ウィジェット
<script type="module">
  import Chatbot from 'https://cdn.jsdelivr.net/npm/flowise-embed/dist/web.js'
  Chatbot.init({
    chatflowid: '<CHATFLOW_ID>',
    apiHost: 'http://localhost:3000',
  })
</script>
!
本番環境でlocalhostを公開しないこと
apiHostを http://localhost:3000 に設定すると、自分のマシンでしか動作しません。公開サイトで使う場合は、HTTPSリバースプロキシの背後にあるアクセス可能なサーバーでFlowiseを動かし、apiHostがそのドメインを指すように設定する必要があります。また、誰でもモデルを呼び出せる状態を防ぐため、chatflowのAPIキーも有効にしてください。

#よくある落とし穴と対処法

ChatOllamaでの「fetch failed」
ベースURLが正しくありません。Dockerではlocalhostではなく、host.docker.internal:11434を使ってください。Ollamaが実際に起動していることも確認してください(ollama list)。
モデルが一度もツールを呼び出さない
LLMがツール呼び出しに対応していないか、十分に対応していません。ツール呼び出し用に学習された最近のモデル(Qwen 3.5、Mistral Small)に切り替え、単純なチェーンではなく「Tool Agent」を使っていることを確認してください。
応答が遅い、または途中で途切れる
コンテキストがVRAM容量に対して大きすぎるため、モデルの一部がCPU側にオフロードされます。num_ctxやRAGのチャンクサイズを小さくするか、より小さなモデルを選んでください。
RAGで関連性のある情報が見つからない
チャンクのサイズが不適切または埋め込みモデルが誤っている場合があります。チャンクのサイズを調整し、検索されるドキュメントの数(top-k)を増やすとともに、インデックスが正しく作成されたかを確認してください。
データは再起動時に消えます
Dockerでボリュームをマウントしていない場合、すべてが失われます。必ず「-v ~/.flowise:/root/.flowise」を設定し、メモリ上ではなく永続的なベクトルストアを使用してください。

#さらに詳しく

Flowiseは単なるビジュアルレイヤーに過ぎません。エージェントの品質は、主にその下層にあるモデルとスタックに依存します。サイトの三つのガイドがこの内容を補完しています。Flowiseを接続する前にOllamaを適切にインストールする方法、DifyのノーコードアプローチとFlowiseのアプローチを比較する方法、そしてキャンバスが自動化する内容を微調整するためにPythonでのRAGの仕組みを理解する方法です。


このガイドは役に立ちましたか?

ご意見、誤りのご指摘、補足はありますか?ぜひお知らせください。皆さんにとってより良いガイドにするために役立ちます。