Flowise本地大模型接入指南:Qwen2/Llama3/vicuna-vllm全流程
1. 为什么你需要Flowise——一个真正“开箱即用”的AI工作流平台
你有没有过这样的经历:想快速把公司内部文档变成可问答的知识库,但一打开LangChain文档就看到满屏的Chain,Retriever,Embeddings,LLMChain……头都大了?或者刚写完一个RAG流程,发现换模型就得重写十几行代码?又或者,你只是想试试Qwen2或Llama3在自己数据上的效果,却卡在vLLM部署、模型加载、API封装这一连串步骤里?
Flowise就是为解决这些问题而生的。
它不是另一个需要你从零写Python脚本的框架,而是一个可视化、零代码、本地优先的AI工作流构建平台。2023年开源以来,它用极简的设计哲学打动了全球45.6k开发者——MIT协议、周更活跃、插件生态成熟,更重要的是:你不需要懂LangChain,也能在5分钟内搭出一个带向量检索、上下文记忆、工具调用的完整RAG聊天机器人。
它的核心价值,一句话就能说清:
“拖拽节点 → 连线定义逻辑 → 选个本地模型 → 点击部署 → 得到可用API。”
整个过程,不写一行链式调用,不配一个环境变量(除了模型路径),不改一行源码。
更关键的是,Flowise天生支持“本地模型优先”——它不像很多平台只认OpenAI API,而是把Ollama、HuggingFace、LocalAI、vLLM等后端抽象成统一接口。这意味着,当你决定用Qwen2-7B跑在自家显卡上,或用Llama3-8B做私有知识问答时,Flowise不是障碍,而是加速器。
下面我们就以vLLM为推理后端,接入Qwen2、Llama3、vicuna三大主流开源模型为例,手把手带你走完从环境准备、模型部署、节点配置到工作流上线的全流程。全程不依赖云端API,所有计算都在你自己的机器上完成。
2. 准备工作:让vLLM稳稳跑起来
Flowise本身不直接运行大模型,它需要一个高性能推理服务作为后端。vLLM是目前本地部署中最成熟、吞吐最高、显存最省的选择之一——尤其适合Qwen2、Llama3这类Decoder-only架构模型。我们不追求“一键安装”,而是确保每一步都可控、可复现、可调试。
2.1 系统与依赖安装
vLLM对编译环境有一定要求。以下命令适用于Ubuntu/Debian系系统(如WSL2、物理服务器、Docker基础镜像):
apt update apt install -y cmake libopenblas-dev python3-dev python3-pip注意:
libopenblas-dev是vLLM编译必需的数学库,漏掉会导致后续安装失败;python3-dev提供C扩展编译头文件,同样不可省略。
2.2 安装vLLM(推荐pip方式)
我们不使用conda(避免环境冲突),也不用源码编译(除非你有特殊CUDA版本需求)。直接用pip安装官方预编译wheel:
pip3 install vllm安装完成后,验证是否可用:
python3 -c "from vllm import LLM; print('vLLM ready')"如果输出vLLM ready,说明基础环境已通。
2.3 下载并启动模型服务
我们以Qwen2-7B-Instruct为例(其他模型同理,只需替换模型ID):
# 创建模型存放目录 mkdir -p /models/qwen2-7b-instruct # 使用huggingface-cli下载(需提前登录:huggingface-cli login) huggingface-cli download --resume-download Qwen/Qwen2-7B-Instruct --local-dir /models/qwen2-7b-instruct # 启动vLLM API服务(监听本地8080端口,使用A10/A100显卡) python3 -m vllm.entrypoints.openai.api_server \ --model /models/qwen2-7b-instruct \ --tensor-parallel-size 1 \ --dtype bfloat16 \ --port 8080 \ --host 0.0.0.0成功标志:终端输出类似INFO: Uvicorn running on http://0.0.0.0:8080,且无ERROR报错。
小贴士:
--tensor-parallel-size根据你的GPU数量设置(单卡填1);--dtype bfloat16在A100/H100上比float16更稳,显存占用相近;- 想同时跑Llama3-8B?新开一个终端,改端口为8081,模型路径换成
meta-llama/Meta-Llama-3-8B-Instruct即可;- vicuna-v1.5-7B?用
lmsys/vicuna-7b-v1.5,注意它默认是chat模板,Flowise会自动适配。
此时,你的本地大模型已作为一个标准OpenAI兼容API运行在http://localhost:8080/v1。接下来,Flowise只需要“告诉它地址”,就能无缝对接。
3. Flowise部署:从源码启动,拒绝黑盒镜像
虽然Docker一行命令就能拉起Flowise,但本地模型接入必须从源码启动——因为Docker镜像默认不包含vLLM依赖,也无法灵活挂载你本地的模型路径。我们采用官方推荐的pnpm方式,全程可控。
3.1 克隆与初始化
cd /app git clone https://github.com/FlowiseAI/Flowise.git cd Flowise3.2 配置环境变量(关键!)
Flowise通过.env文件读取后端模型配置。编辑packages/server/.env:
nano packages/server/.env添加以下内容(根据你实际部署的vLLM服务修改):
# 启用本地模型支持 FLOWISE_BASE_API_URL=http://localhost:3000 # 配置vLLM后端(这才是重点!) VLLM_BASE_PATH=http://localhost:8080/v1 VLLM_MODEL_NAME=Qwen2-7B-Instruct # 可选:启用多模型切换(需在UI中手动添加) VLLM_MODELS='[{"id":"qwen2","name":"Qwen2-7B-Instruct","basePath":"http://localhost:8080/v1"},{"id":"llama3","name":"Llama3-8B-Instruct","basePath":"http://localhost:8081/v1"}]' # 关闭OpenAI强制校验(否则会报key错误) OPENAI_API_KEY=dummy_key说明:
VLLM_BASE_PATH必须指向你vLLM服务的/v1接口;VLLM_MODEL_NAME是你在Flowise节点下拉框里看到的模型名;VLLM_MODELS是JSON数组,支持多个vLLM实例注册,Flowise UI会自动生成切换菜单。
3.3 安装与启动
pnpm install pnpm build pnpm start等待终端输出Server is running on http://localhost:3000,即表示Flowise主服务已就绪。
访问
http://localhost:3000,用你设定的账号(kakajiang@kakajiang.com / KKJiang123)登录。首次加载可能稍慢(前端资源较大),请耐心等待。
4. 模型接入实战:三步完成Qwen2/Llama3/vicuna配置
Flowise的“本地模型”节点叫Large Language Model (vLLM)。它和OpenAI节点长得几乎一样,但背后完全走你自己的vLLM服务。我们以Qwen2为例,演示完整配置链路。
4.1 添加vLLM节点
- 进入Flowise画布,点击左侧面板「LLM」→ 找到
Large Language Model (vLLM)节点,拖入画布; - 双击该节点,弹出配置面板;
- 填写:
- Base Path:
http://localhost:8080/v1(必须和.env中一致) - Model Name:
Qwen2-7B-Instruct(必须和vLLM启动时的--model参数一致) - Temperature:
0.7(控制生成随机性,Qwen2建议0.5~0.8) - Max Tokens:
2048(Qwen2上下文最长32K,但首次测试建议保守设)
- Base Path:
- 点击「Save」保存。
此时节点右上角应显示绿色小圆点,表示连接测试成功。
4.2 验证模型响应(不写代码)
Flowise提供内置测试功能:
- 在节点右上角点击「⋯」→ 选择「Test Node」;
- 输入提示词,例如:
请用中文简洁回答:太阳系有几颗行星? - 点击「Run Test」,几秒后右侧将显示Qwen2的实时回复:
太阳系有8颗行星。
如果报错
Connection refused:检查vLLM是否在运行、端口是否被占用、防火墙是否拦截;
如果报错Model not found:确认vLLM启动时的--model路径是否和Flowise中填写的Model Name完全一致(包括大小写、连字符)。
4.3 切换Llama3或vicuna(仅改两个字段)
要换用Llama3-8B?只需:
- 在同一节点中,将
Base Path改为http://localhost:8081/v1; - 将
Model Name改为Meta-Llama-3-8B-Instruct; - 保存 → 测试 → 完事。
Flowise会自动识别不同模型的tokenizer和chat template。Qwen2用
<|im_start|>,Llama3用<|begin_of_text|>,vicuna用USER:/ASSISTANT:,它都处理好了——你完全不用碰任何prompt engineering。
5. 构建真实工作流:RAG知识库+多模型路由
光能调用模型还不够。真正的价值在于组合。下面我们用Qwen2做主模型,接入公司PDF文档库,并加入Llama3做“事实核查员”,构建一个带双模型校验的智能问答工作流。
5.1 数据准备:上传你的知识库
- 左侧菜单 → 「Knowledge Base」→ 「Add Knowledge Base」;
- 命名如
company_policy_2024; - 上传PDF/Markdown/Text文件(支持批量);
- 选择文本分割器:
RecursiveCharacterTextSplitter(默认,适合通用文档); - 选择向量数据库:
InMemoryVectorStore(开发测试用,无需额外服务); - 点击「Create」,等待索引完成(进度条走完即OK)。
5.2 拖拽搭建RAG流程
画布上依次添加并连线:
Document Loader(加载知识库)RecursiveCharacterTextSplitter(分块)InMemoryVectorStore(向量化+存储)Vector Store Retriever(检索)Large Language Model (vLLM)(Qwen2节点,已配置好)Prompt Template(输入:你是一个专业HR,请基于以下公司政策回答问题:{context} \n 问题:{question})
连线顺序:Document Loader→RecursiveCharacterTextSplitter→InMemoryVectorStore;Vector Store Retriever和Prompt Template并联输入到Large Language Model (vLLM)。
5.3 加入Llama3做“第二意见”
现在,我们让同一个问题,同时被Qwen2和Llama3回答,再由一个简单规则判断一致性:
- 复制一份
Large Language Model (vLLM)节点,配置为Llama3(Base Path:http://localhost:8081/v1, Model Name:Meta-Llama-3-8B-Instruct); - 添加
Switch节点(在「Logic」分类下),设置条件:{{ $input.qwen_answer }} != {{ $input.llama3_answer }}; - 连线:Qwen2输出 →
Switch的qwen_answer字段;Llama3输出 →Switch的llama3_answer字段; Switch的True分支接Notification节点(发告警:“两模型答案不一致,请人工复核”);False分支接最终输出。
这就是一个具备自我校验能力的企业级问答Agent。没有一行Python,全靠拖拽完成。
6. 生产就绪:导出API、持久化、权限管理
Flowise不只是玩具。它提供了完整的生产级能力,让你的本地模型工作流真正融入业务系统。
6.1 一键导出REST API
- 画布右上角 → 「Export」→ 「Export as API」;
- 填写API名称(如
hr-policy-qa)、描述; - 点击「Export」,得到一个标准OpenAPI 3.0 JSON文件;
- 用
curl或Postman测试:curl -X POST "http://localhost:3000/api/v1/prediction/hr-policy-qa" \ -H "Content-Type: application/json" \ -d '{"question":"试用期可以延长吗?"}'
返回即为Qwen2结合知识库生成的答案。这个API可直接嵌入企业微信、钉钉、内部OA系统。
6.2 启用用户权限与持久化
默认Flowise使用内存存储用户和流程,重启即丢。生产环境需启用PostgreSQL:
- 安装PostgreSQL(
apt install postgresql)并创建数据库flowise; - 修改
.env文件:DATABASE_TYPE=postgres DATABASE_HOST=localhost DATABASE_PORT=5432 DATABASE_NAME=flowise DATABASE_USER=flowise DATABASE_PASSWORD=your_secure_password - 重启Flowise,所有用户、流程、知识库将自动持久化。
启用后,你可以在「Settings」→ 「User Management」中创建多角色账号(Admin/Editor/Viewer),分配不同工作流访问权限。
6.3 性能与监控建议
- vLLM调优:在启动命令中加入
--gpu-memory-utilization 0.95(显存利用率95%),避免OOM; - Flowise缓存:在
.env中设置CACHE_ENABLED=true,对重复提问自动返回缓存结果; - 日志查看:Flowise日志默认输出到终端,也可重定向到文件
pnpm start > flowise.log 2>&1; - 健康检查:Flowise提供
/health端点,返回{"status":"UP"},可用于K8s探针。
7. 总结:你真正掌握了什么
回看这篇指南,你已经完成了三件关键事情:
- 打通了vLLM本地推理链路:从环境安装、模型下载、服务启动,到API验证,全程可控;
- 实现了Flowise与任意HuggingFace模型的无缝对接:Qwen2、Llama3、vicuna,只需改两个字段,无需改代码;
- 构建了可落地的AI工作流:RAG知识库 + 双模型校验 + 权限管理 + REST API导出,全部零代码。
这不仅仅是“跑通一个Demo”。这是你拥有了一个属于自己的、可定制、可扩展、可交付的AI应用工厂。下次市场部要一个产品FAQ机器人,你打开Flowise,10分钟搭好;技术中心要一个代码规范检查助手,你换一个模型、换一套提示词,5分钟上线。
Flowise的价值,从来不在它多炫酷,而在于它足够“朴素”——不包装概念,不堆砌术语,不制造门槛。它相信:AI应用的下一阶段,不是比谁模型更大,而是比谁把能力用得更准、更快、更稳。
而你现在,已经站在了这个起点上。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。