一天一个开源项目(第215篇):Langflow - 可视化拖拽构建 AI 应用的低代码平台

引言

"Make AI building accessible to everyone."

这是"一天一个开源项目"系列的第 215 篇文章。今天带你了解的项目是 Langflow

如果你曾经看着 LangChain 的文档感到头皮发麻------各种 Chain、Memory、Retriever 类互相嵌套,代码跑起来不知道数据在哪个环节出了问题------Langflow 就是为了解决这个问题而生的。

它把 LLM 应用开发中的每一个组件(模型、向量库、Prompt 模板、工具、Agent)都变成一个可拖拽的节点,用连线表达数据流向,最终生成一个可直接部署为 API 的 AI 应用。可视化调试、实时测试、一键导出代码,这是目前开源社区里对"让 AI 开发变简单"这件事做得最系统的项目之一。

截至 2026 年,Langflow 在 GitHub 上已积累超过 50,000 Stars,是 AI 应用构建工具里当之无愧的头部开源项目。

你将学到什么

  • Langflow 的核心设计理念:用流程图替代代码描述 AI 数据流
  • 如何用拖拽方式搭建一个完整的 RAG(检索增强生成)管道
  • Langflow 的组件体系:LLM、向量库、Embedding、Agent、工具如何协作
  • Python SDK 与 REST API 的使用方式,将 Flow 嵌入现有系统
  • 与 n8n、Dify 等同类工具的对比分析

前置知识

  • 了解 LLM(大语言模型)的基本工作原理
  • 知道 RAG 的概念(检索增强生成)
  • Python 基础环境(本地部署需要)

项目背景

项目简介

Langflow 是一个低代码的 AI 应用构建平台,核心功能是提供一个可视化的流程编辑器,让用户通过拖放组件、连接节点的方式,构建 RAG 流水线、多 Agent 系统、对话机器人、数据处理管道等各类 AI 应用。

构建完成后,Langflow 会将整个流程自动暴露为一个 REST API 端点,也可以导出为 Python 代码,直接集成到生产环境。这意味着你在界面上拖出来的流程图,不是一个演示玩具,而是可以直接部署的后端服务。

Langflow 最初基于 LangChain 构建,后来逐步发展为一个独立的生态------它支持 LangChain 组件,也支持大量原生组件,覆盖几乎所有主流 LLM 提供商和向量数据库。

作者/团队介绍

  • 开发者:langflow-ai 团队
  • 重要背景:2024 年 DataStax(Cassandra 数据库背后的公司)收购了 Langflow,为其提供了商业化支撑和企业级部署能力
  • 定位转变:从 LangChain 的可视化 Playground 演进为独立的 AI 应用构建平台
  • 项目创建时间:2023 年初

项目数据

  • ⭐ GitHub Stars: 50,000+
  • 🍴 Forks: 6,000+
  • 📦 最新版本: 1.x(持续迭代中)
  • 📄 License: MIT
  • 🌐 官网: langflow.org
  • 🐍 语言:Python(后端)+ TypeScript/React(前端)

主要功能

核心作用

Langflow 解决的核心问题是:AI 应用的开发和调试成本太高

用纯代码构建一个 RAG 系统,你需要理解 LangChain 的 API 层级结构,手写 Prompt 模板,处理向量检索的参数,调试时只能靠打印语句猜测中间结果。Langflow 把这个过程可视化:

scss 复制代码
用户上传文档
    ↓ [文件解析器]
分块文本 (Chunk)
    ↓ [Embedding 模型]
向量表示
    ↓ [向量数据库存储]
              ↑
用户输入问题 → [Retriever] → 相关文本块
                                  ↓
                        [Prompt 模板] + [LLM]
                                  ↓
                             最终回答

每一个方块都是一个可以独立配置和测试的节点,每条连线都代表一份数据流。中间出了问题,点一下节点就能看到它的输入和输出。

使用场景

  1. RAG 问答系统

    • 上传 PDF、网页、Notion 文档,构建基于私有知识库的问答机器人,接入企业内部知识管理。
  2. 多 Agent 协作系统

    • 将多个 Agent(搜索 Agent、代码 Agent、总结 Agent)用流程图串联,实现分工协作的复杂推理任务。
  3. LLM 应用原型快速验证

    • 在 Langflow 里拖几分钟先跑通逻辑,验证可行性后再落地为代码,节省早期探索成本。
  4. API 服务快速上线

    • 构建好 Flow 后,Langflow 自动生成带鉴权的 REST API,不需要自己写 FastAPI 服务。
  5. AI 流水线可视化调试

    • 在生产问题排查时,用可视化界面复现问题,逐节点追踪数据,比 debug 代码直观得多。

快速开始

方法 1:pip 安装(推荐本地体验)

bash 复制代码
# 安装
pip install langflow

# 启动(默认 http://localhost:7860)
langflow run

浏览器打开后,从左侧组件库拖出你需要的模块,连线,点右上角 Playground 按钮,直接测试对话。

方法 2:Docker 部署

bash 复制代码
docker run -p 7860:7860 langflowai/langflow:latest

方法 3:uv(推荐生产部署)

bash 复制代码
uv pip install langflow
uv run langflow run

用 Python SDK 调用已构建的 Flow

python 复制代码
from langflow.load import run_flow_from_json

# 导出的 Flow JSON 文件
result = run_flow_from_json(
    flow="my_rag_flow.json",
    input_value="公司的退款政策是什么?",
    tweaks={
        "OpenAI-xxxx": {"model_name": "gpt-4o"},
        "ChromaDB-yyyy": {"collection_name": "company_docs"}
    }
)
print(result)

用 REST API 调用

bash 复制代码
curl -X POST \
  "http://localhost:7860/api/v1/run/{flow_id}" \
  -H "Content-Type: application/json" \
  -H "x-api-key: your-api-key" \
  -d '{"input_value": "公司的退款政策是什么?", "stream": false}'

核心特性

  1. 拖拽式流程编辑器

    • 所见即所得的节点画布,组件之间的数据流向通过连线表达,支持撤销/重做和流程版本管理。
  2. 覆盖主流提供商的组件库

    • LLM:OpenAI、Anthropic、Google Gemini、Groq、Ollama、Mistral、Cohere 等
    • 向量库:Chroma、Pinecone、Weaviate、Qdrant、PGVector、Milvus 等
    • Embedding:OpenAI、Hugging Face、Cohere、Ollama 等
    • 工具:Google Search、DuckDuckGo、Wikipedia、计算器、自定义 Python 函数等
  3. 内置 Playground 测试

    • 流程构建完成后,直接在界面内进行多轮对话测试,无需切换到其他工具。
  4. 一键暴露 REST API

    • 每个 Flow 自动获得一个带版本管理的 API 端点,支持流式输出(SSE),可直接对接前端或其他服务。
  5. 自定义 Python 组件

    • 当内置组件不满足需求时,可以在界面内直接写 Python 代码,封装为自定义节点,和其他组件无缝协作。
  6. 多 Agent 与 Agent 工具链

    • 支持 ReAct、Plan-and-Execute 等 Agent 模式,Agent 节点可以挂载工具列表,构建复杂推理链。
  7. Flow 版本与团队协作

    • 支持 Flow 的导入/导出(JSON 格式),可以版本化存储,在团队间共享和复用。
  8. 企业级部署支持

    • DataStax 提供商业版(Langflow Cloud),支持 SSO、权限管理、托管部署,开源版本也支持 Docker / Kubernetes 自托管。

项目优势

对比项 Langflow Dify n8n
定位 AI 应用流程构建 AI 应用构建平台(含运营后台) 通用自动化工作流
技术深度 深,覆盖 Embedding/向量检索/Agent 细节 中,封装程度更高,配置更少 浅,AI 能力是插件之一
自定义能力 Python 代码组件,灵活度高 较有限 JavaScript 代码节点
LLM 支持广度 极广(20+ 提供商) 广(主流均支持) 通过 HTTP 调用,间接支持
开源协议 MIT MIT Fair-code(商用受限)
学习曲线 需要理解 LLM/RAG 概念 更平缓 较平缓
Stars 50,000+ 60,000+ 50,000+

为什么选择 Langflow?

  • 需要深度控制 RAG 流水线每个环节的参数(Chunk size、Retrieval Top-K、Reranker 等)
  • 团队里有 Python 工程师,需要在可视化和代码之间灵活切换
  • 想把构建好的 AI 能力快速暴露为标准 API,集成到现有系统

项目详细剖析

1. 架构设计:前后端分离的流程执行引擎

Langflow 的整体架构分为三层:

css 复制代码
┌─────────────────────────────────────────────┐
│           前端:React + TypeScript           │
│   节点编辑器 / Playground / API 管理界面     │
└─────────────────────────────────────────────┘
                      ↕ REST API / WebSocket
┌─────────────────────────────────────────────┐
│           后端:Python FastAPI               │
│  流程解析引擎 / 组件注册表 / 执行调度器     │
│  Flow JSON → 执行图 → 逐节点运行            │
└─────────────────────────────────────────────┘
                      ↕
┌─────────────────────────────────────────────┐
│         组件层:LangChain + 原生组件         │
│  LLM / Embeddings / VectorStore / Tools      │
│  每个组件是一个独立的 Python 类              │
└─────────────────────────────────────────────┘

前端用 React Flow 实现节点画布,每个节点的配置通过 JSON 序列化,发送给后端执行引擎。后端解析 Flow JSON,构建有向无环图(DAG),按拓扑顺序执行每个节点,将输出传给下游节点。

2. 组件体系:一切皆 Component

Langflow 最聪明的设计是它的组件抽象层 。每一个功能单元------不管是 OpenAI 的 GPT-4o 还是你自己写的 Python 函数------都继承自同一个 Component 基类:

python 复制代码
from langflow.custom import Component
from langflow.io import MessageTextInput, Output
from langflow.schema import Data

class MyCustomComponent(Component):
    # 显示名称(在界面左侧组件库展示)
    display_name = "我的自定义组件"
    description = "一个示例自定义组件"

    # 定义输入端口
    inputs = [
        MessageTextInput(
            name="input_text",
            display_name="输入文本",
            info="待处理的文本内容"
        ),
    ]

    # 定义输出端口
    outputs = [
        Output(
            display_name="处理结果",
            name="output",
            method="process_text"
        ),
    ]

    def process_text(self) -> Data:
        # 组件的核心逻辑写在这里
        result = self.input_text.upper()  # 示例:转大写
        return Data(data={"text": result})

这个设计的好处:

  • 任何 Python 逻辑都能封装为组件,无需适配复杂接口
  • 类型系统自动推断连线兼容性:输出类型和输入类型不匹配时,界面会给出提示
  • 组件配置自动生成 UI :在类里声明 inputs,界面上的配置面板自动生成,不需要单独写前端代码

3. RAG 流水线的典型构建方式

以"基于 PDF 文档的问答系统"为例,在 Langflow 中一个完整的 RAG 流程由以下节点组成:

ini 复制代码
[PDF 文件输入]
      ↓
[文档解析器 (PyPDF / Unstructured)]
      ↓
[文本分割器 (RecursiveCharacterTextSplitter)]
  chunk_size=1000, overlap=200
      ↓
[Embedding 模型 (OpenAI text-embedding-3-small)]
      ↓
[向量数据库 (Chroma / Pinecone)]
      ↑
[用户输入 (Chat Input)] → [Retriever]
                               ↓
                     [相关文档块(Top-K=4)]
                               ↓
                     [Prompt 模板]
                     "根据以下上下文回答问题:
                      {context}
                      问题:{question}"
                               ↓
                     [LLM (GPT-4o / Claude Sonnet)]
                               ↓
                     [Chat Output(流式输出)]

每个节点的参数(chunk_size、Top-K、模型名称、Prompt 模板内容)都可以直接在节点的配置面板里修改,改完直接在 Playground 里重新测试,调参效率比改代码高很多。

4. Flow 的导出与代码化

Langflow 不是一个黑盒------构建好的 Flow 可以导出为两种格式:

1. JSON 格式(用于部署或版本管理)

json 复制代码
{
  "name": "RAG 问答系统",
  "description": "基于公司文档的问答机器人",
  "nodes": [
    {"id": "openai-1", "type": "OpenAIModel", "data": {"model_name": "gpt-4o"}},
    {"id": "chroma-1", "type": "Chroma", "data": {"collection_name": "docs"}},
    ...
  ],
  "edges": [
    {"source": "chroma-1", "target": "openai-1", "sourceHandle": "documents", "targetHandle": "context"}
  ]
}

2. Python 代码(用于完全脱离 Langflow 运行)

导出的 Python 代码直接调用 LangChain 或底层 SDK,可以在任何 Python 环境中运行,不再依赖 Langflow 服务。这意味着 Langflow 可以只作为开发和调试工具,生产环境跑的是纯粹的 Python 代码。

5. 与 MCP 的集成

Langflow 1.x 开始支持将 Flow 暴露为 MCP 工具,让 Claude Code、Cursor 等 AI 开发工具直接调用你在 Langflow 里构建的 AI 流程:

json 复制代码
// Claude Code 的 MCP 配置
{
  "mcpServers": {
    "my-rag-flow": {
      "url": "http://localhost:7860/api/v1/mcp/flows",
      "apiKey": "your-langflow-api-key"
    }
  }
}

配置完成后,在 Claude Code 对话里就可以说:"查一下我们公司的退款政策"------Claude 会通过 MCP 调用你在 Langflow 里搭好的 RAG 系统,返回基于真实文档的答案。


项目地址与资源

官方资源

相关资源


总结与展望

核心要点回顾

  1. 可视化流程编辑器:用节点和连线描述 AI 数据流,替代嵌套的 LangChain 代码,大幅降低 RAG/Agent 应用的开发和调试成本
  2. 覆盖 20+ LLM 提供商:从 OpenAI、Anthropic 到 Ollama 本地模型,一个平台统一接入
  3. 自定义 Python 组件:内置组件不够用时,直接在界面里写 Python 扩展,灵活性不打折
  4. 一键 API 部署:Flow 构建完成即可得到标准 REST API,无需额外开发后端服务
  5. 可导出为 Python 代码:不锁定平台,随时脱离 Langflow 在纯 Python 环境运行

适用人群

  • AI 应用开发者:想快速原型验证 RAG 方案,或者需要可视化调试复杂 Agent 流程
  • 产品经理/数据科学家:不擅长后端开发,但需要构建基于私有文档的问答系统
  • 企业技术团队:需要一个标准化的 AI 应用构建平台,让团队成员共享和复用 Flow
  • AI 教育/研究:用可视化界面理解 RAG 和 Agent 的工作原理,比看代码直观得多

一句话评价

Langflow 是目前开源社区里把"AI 应用构建"这件事做得最系统的工具------它让 RAG 和 Agent 的开发门槛从"会写 LangChain 代码"降低到了"会连线",同时又没有牺牲深度控制能力。


欢迎访问 PrimeSkills ------ 一个精心策划的 AI Agent 与技能市场,所有内容均经过真实企业级工作流验证。没有噱头,只有真正有效的东西。

更多实用知识和有趣产品,欢迎访问我的个人主页

相关推荐
loser.with.m2 小时前
【AgentScope 2.0】05-从数据库配置到可运行 Agent:十个 Builder 开关怎么把一行 JSON 变成 HarnessAgent
人工智能·spring boot·ai
GitCode官方2 小时前
本周 G-Star 开源项目推荐
开源·g-star·atomgit
2601_949499942 小时前
DT‑1414PTZ如何百分百兼容(安华高)HFBR‑1414PTZ
运维·网络·人工智能·科技·光模块
百胜软件@百胜软件2 小时前
胜券AI的Skills可插拔技能包,让零售AI从“泛”到“专”
大数据·人工智能·零售
瓶 盖2 小时前
AI 味为什么改词改不掉?把 61,608 篇小说拆开之后
人工智能
行走的领路人2 小时前
FlyEnv 本地开发环境与 AI 协同能力深度评测
人工智能
汇智信科2 小时前
基于 Jmis 框架的制度与流程管控系统设计与应用|项目全生命周期管理
大数据·人工智能·微服务·云原生·汇智信科
ChampaignWolf2 小时前
YAAI 生态一周年:把 ABAP 变成 Agent 工具栈的开源组合拳
开源·abap·mcp·开源ai·yaai
王红臣同学2 小时前
在 Windows 上复现 Microduck 机器鸭仿真
人工智能·ai