Flowise 로컬 설정 가이드: Python 없이 AI 워크플로우 구축하기
요약
Flowise를 사용하여 Python 코드 없이 드래그 앤 드롭 방식으로 AI 워크플로우를 구축하는 로컬 설정 가이드입니다. Node.js와 Docker를 활용해 RAG 챗봇 및 멀티 에이전트 시스템을 신속하게 구현할 수 있습니다.
핵심 포인트
- 노드 기반 시각적 에디터로 LLM 파이프라인 구축 가능
- LangChain.js 기반의 강력한 통합 기능 제공
- Ollama와 연결하여 로컬 환경에서 데이터 보안 유지
- npm 또는 Docker를 통한 간편한 설치 지원
이 기사는 원래 aifoss.dev에 게시되었습니다.
---
title: 'Flowise 로컬 설정 가이드: Python 없이 AI 워크플로우 구축하기'
description: '단계별 Flowise 로컬 설정: npm 또는 Docker를 통한 설치, Ollama 연결, 그리고 20분 이내에 작동하는 RAG 챗봇 구축 — Python은 필요하지 않습니다.'
pubDate: '2026년 5월 23일'
tags: ["flowise", "ai", "nocode", "selfhosted", "llm"]
Flowise는 단 한 줄의 Python 코드도 작성하지 않고 LLM 파이프라인(RAG 챗봇, 다단계 에이전트, 문서 Q&A 등)을 구축할 수 있는 드래그 앤 드롭 인터페이스를 제공합니다. Node.js 기반으로 작동하며, 적당한 사양의 하드웨어에서도 로컬에서 실행할 수 있고, Ollama와 연결하여 데이터가 기기를 절대 떠나지 않도록 할 수 있습니다.
만약 LangChain이나 LlamaIndex를 보고 "내가 하려는 일에 비해 코드가 너무 많다"라고 생각했다면, Flowise가 정답입니다. n8n을 보고 더 AI 네이티브(AI-native)한 무언가를 원했다면, 역시 정답은 같습니다.
이 가이드를 통해 20분 이내에 localhost에서 작동하는 RAG 챗봇을 처음부터 구축할 수 있습니다.
Flowise의 실제 정체
Flowise는 노드 기반(node-based) 시각적 에디터를 사용하여 LLM 애플리케이션을 구축할 수 있는 오픈 소스(open-source) 기반의 셀프 호스팅(self-hostable) 가능한 UI입니다. 각 "노드(node)"는 모델, 리트리버(retriever), 메모리 저장소(memory store), 도구(tool)와 같은 LLM 구성 요소를 나타내며, 이를 캔버스 위에서 서로 연결합니다. 그 결과물은 iframe을 통해 임베드하거나, API를 통해 호출하거나, 혹은 내장된 채팅 인터페이스를 통해 바로 사용할 수 있는 채팅 플로우(chatflow) 또는 에이전트 플로우(agentflow)가 됩니다.
라이선스: Apache 2.0. 코드는 GitHub의 FlowiseAI/Flowise에 있습니다.
Flowise는 LangChain.js를 기반으로 구축되었습니다. 이는 직접 JavaScript를 작성하지 않고도 LangChain의 통합 기능(수십 개의 LLM 제공업체, 벡터 저장소(vector stores), 문서 로더(document loaders))을 사용할 수 있음을 의미합니다.
당신이 구축할 수 있는 것들:
- 사용자의 문서에 대해 질문에 답하는 RAG 챗봇 (RAG chatbots)
- 도구 사용(웹 검색, 코드 실행, API) 기능이 포함된 멀티 에이전트 시스템 (Multi-agent systems)
- 내부 도구 또는 웹사이트용 챗봇 임베드 (Chatbot embeds)
- 구조화된 데이터 추출 파이프라인 (Structured data extraction pipelines)
- 여러 번의 LLM 호출을 결합하는 API 체이닝 워크플로우 (API-chaining workflows)
필수 요구 사항 (Prerequisites)
| 요구 사항 | 최소 사양 | 비고 |
|---|---|---|
| Node.js | 18.x 또는 20.x | v22+도 작동함; 현재 지원 여부는 저장소(repo) 확인 |
| ... |
Flowise 자체는 가볍습니다. 하드웨어 부하는 Flowise를 통해 실행하는 모델에 따라 달라집니다. Llama 3.2 3B를 사용하는 Ollama의 경우: 4 GB RAM이면 충분합니다. 7B 이상의 모델의 경우: 최소 8 GB RAM이 필요하며, GPU는 선택 사항이지만 도움이 됩니다.
설치: npm
npm 방식이 시작하는 가장 빠른 방법입니다.
npm install -g flowise
npx flowise start
http://localhost:3000을 엽니다. 이것이 설치 프로세스의 전부입니다.
기본적으로 로그인이 필요하지 않습니다 — Flowise는 로컬 단일 사용자 모드(local single-user mode)를 가정합니다. 인증을 활성화하려면:
npx flowise start --FLOWISE_USERNAME=admin --FLOWISE_PASSWORD=yourpassword
나중에 업데이트하려면: npm update -g flowise를 사용하세요.
Node 버전 참고: 만약 npx flowise start 실행 시 지원되지 않는 Node 버전 관련 오류가 발생하면, nvm을 사용하여 Node 20 LTS로 전환하세요. 이는 첫 실행 시 가장 흔히 발생하는 문제입니다.
설치: Docker
지속적인 서비스 — 또는 여러 사람이 액세스해야 하는 공유 설정 — 를 위해서는 Docker가 npm보다 깔끔합니다:
docker run -d \
--name flowise \
-p 3000:3000 \
...
-v 플래그는 볼륨(volume)을 마운트하여 채팅 흐름(chatflows)과 벡터 데이터가 컨테이너 재시작 후에도 유지되도록 합니다. 이 플래그가 없으면 컨테이너가 중지될 때 모든 것이 초기화됩니다.
공식 저장소(repo)의 docker/ 디렉리 아래에 Docker Compose 예제가 포함되어 있습니다. 데이터베이스(PostgreSQL)를 추가하거나 다른 서비스와 함께 Flowise를 실행하려는 경우, 그곳이 적절한 시작점입니다.
호스트의 Ollama와 함께 Docker에서 Flowise 실행하기: Mac 또는 Windows에서는 Ollama Base URL을 http://host.docker.internal:11434로 지정하세요. Linux에서는 호스트의 실제 네트워크 IP를 사용하거나 --network=host를 설정하세요.
Ollama 연결하기
Flowise가 실행되면, 로컬 모델을 연결하는 데 약 30초 정도 소요됩니다:
- Ollama가 실행 중인지 확인합니다:
ollama serve(또는 Ollama 앱이 열려 있는지 확인) - 모델을 아직 받지 않았다면 Pull 합니다:
ollama pull llama3.2또는ollama pull mistral - Flowise에서 새로운 Chatflow를 엽니다.
- 캔버스에 ChatOllama 노드를 드래그합니다.
- Base URL을
http://localhost:11434로 설정하고, 드롭다운 메뉴에서 모델 이름을 선택합니다.
ChatOllama 노드를 Conversation Chain 노드에 연결하고, 채팅 패널(우측 하단)을 열어 테스트해 보세요. 응답이 온다면 연결에 성공한 것입니다. API 키도 필요 없고, 속도 제한(Rate limits)도 없으며, 완전히 오프라인으로 작동합니다.
첫 번째 RAG 챗봇 구축하기
이것은 Flowise가 가장 잘 알려진 워크플로우이며, 어떤 노드를 사용해야 하는지만 알면 설정이 정말 빠릅니다.
노드 체인(Node chain):
- PDF File (또는 Text File) 로더 — 문서를 업로드합니다.
- Recursive Character Text Splitter — Chunk size 1000, Overlap 200 (합리적인 기본값).
- Ollama Embeddings — 모델:
nomic-embed-text(먼저 Pull 하세요:ollama pull nomic-embed-text). - In-Memory Vector Store — 테스트용으로 적합합니다.
- Conversational Retrieval QA Chain — 이는 Retriever와 LLM을 하나로 묶어주며, 대화 기록(Conversation history)을 자동으로 처리합니다.
왼쪽에서 오른쪽으로 연결하세요: PDF Loader → Text Splitter가 Vector Store로 들어갑니다. Vector Store의 Retriever 출력이 QA Chain으로 들어갑니다. ChatOllama는 LLM으로서 QA Chain에 연결됩니다.
문서를 인덱싱하려면 Vector Store 노드에서 Upsert 버튼을 누르세요. 데이터베이스 아이콘 모양이며, 처음에는 놓치기 쉽습니다. Upsert가 완료되면 채팅을 열고 문서에 대해 질문해 보세요.
모델이 환각 (hallucination)을 일으키지 않고 실제 파일에서 추출한 콘텐츠로 질문에 처음 답변하는 순간은 매우 유용한 경험이 될 것입니다. 이제 작동하는 로컬 RAG 파이프라인을 갖추게 된 것입니다.
Chroma를 이용한 지속 가능한 벡터 저장소 (Persistent vector storage)
인메모리 (In-memory) 저장소는 Flowise가 재시작될 때마다 초기화됩니다. 일회성 데모 이상의 용도로 사용하려면 Chroma를 추가하세요:
docker run -d \
--name chromadb \
-p 8000:8000 \
...
Flowise에서 In-Memory Vector Store 노드를 Chroma로 교체하고, 주소를 http://localhost:8000으로 지정한 뒤 컬렉션 이름 (collection name)을 설정하세요. 이제 임베딩 (embeddings)이 세션 간에 유지됩니다. 한 번만 업서트 (upsert)하면 무기한으로 쿼리할 수 있습니다.
만약 Flowise와 Chroma를 모두 Docker에서 실행 중이라면, 두 컨테이너가 동일한 Docker 네트워크에 있는지 확인하거나 host.docker.internal을 사용하세요.
에이전트 구축 (RAG를 넘어선 도구 사용)
Flowise에는 멀티 도구 에이전트 (multi-tool agents)를 위한 별도의 Agentflow 캔버스가 있습니다. Chatflow와의 차이점은 에이전트가 단순히 정보를 검색하고 답변하는 것을 넘어, 어떤 도구를 호출할지 스스로 결정할 수 있다는 점입니다.
유용한 내장 도구들:
- Calculator (계산기) — LLM의 수학 능력은 신뢰하기 어려우므로, 계산을 외부로 위임하세요.
- Web Browser (웹 브라우저) — Puppeteer 기반의 실시간 브라우징을 지원합니다.
- Custom Tool (커스텀 도구) — 에이전트가 호출하기를 원하는 모든 HTTP API를 지정할 수 있습니다.
ChatOllama + 계산기 도구 + 웹 검색 도구를 조합한 Agentflow를 구성하면 로컬 ReAct 에이전트에 가까운 결과물을 얻을 수 있습니다. Mistral과 Llama 3는 도구 사용 (tool use)을 상당히 잘 처리하지만, 더 작은 모델 (7B 미만)은 멀티 도구 결정 과정에서 어려움을 겪는 경향이 있습니다.
Flowise vs. 대안 도구들
| 도구 | 인터페이스 | 언어 | 로컬 모델 지원 | 최적의 용도 |
|---|---|---|---|---|
| Flowise | 시각적 (노드 방식) | Node.js | 매우 우수 (Ollama 네이티브) | RAG + 에이전트 프로토타입 |
| ... |
연결 코드 (glue code) 없이 Ollama 통합을 원하고 빠르게 프로토타이핑을 하고 싶다면 Flowise가 승리합니다. Langflow는 가장 강력한 경쟁자로, 본질적으로 동일한 개념이지만 Python 네이티브이며 노드 모델이 약간 다릅니다. n8n은 비(非) AI 자동화에 더 적합하며, Flowise의 목적 지향적 설계와 비교했을 때 AI 노드는 부가적으로 붙여놓은 듯한 느낌을 줍니다.
실제 운영 워크플로우 (production workflow) 시나리오에서 세 가지를 더 깊이 있게 비교하려면, Flowise vs n8n vs LangGraph 2026을 참조하세요.
Flowise를 사용하지 말아야 할 때
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기