Langflow 项目介绍
项目定位
Langflow 是一个可视化 AI 工作流构建平台,让用户通过拖拽组件在画布上连接 LLM、工具、向量数据库和数据处理节点,构建可运行的 AI Agent 和流程。它将每个工作流同时暴露为 REST API、MCP Server 和 Python SDK 调用目标。
核心能力
- 可视化画布构建:基于
@xyflow/react的交互式画布,拖拽组件、连线、实时调试 - 组件即工具(Component-as-Tool):任意组件可被标记为
tool_mode=True,自动成为 Agent 可调用的 StructuredTool - 多模型路由:内置 80+ 供应商组件(OpenAI、Anthropic、Ollama、vLLM 等),支持运行时动态切换
- MCP 服务器部署:一键将工作流发布为 MCP Server,供任何 MCP Client 调用为工具
- 多 Agent 编排:通过子工作流(Sub-Flow)和条件路由实现多 Agent 协作
- RAG 全链路支持:从文档加载、分块、嵌入到向量检索、重排序的完整可视化管线
- 三种部署形态:REST API 端点、MCP Server、Python 导出(
flow.dump()→ JSON → 代码运行) - 可观测性集成:原生支持 LangSmith、LangFuse 等追踪平台
技术栈
| 层级 | 技术选型 |
|---|---|
| 后端运行时(lfx) | Python 3.10–3.13,LangChain Core,Pydantic,uv 包管理 |
| 平台层(langflow-base) | FastAPI,SQLModel + Alembic,Redis/Memcached 缓存 |
| 前端 | React 19 + TypeScript + Vite + Zustand + @xyflow/react |
| MCP | MCP SDK(FastMCP),支持 stdio/SSE 传输 |
| 部署 | Docker,Cloudflare Pages(文档),任意支持 Python 的云平台 |
架构概览
依赖流向严格单向:frontend → langflow → langflow-base → lfx → langchain-core
快速体验
# 最简安装(推荐)uv pip install langflow -Uuv run langflow run
# 从源码运行make init && make run_cli
# Dockerdocker run -p 7860:7860 langflowai/langflow:latest启动后访问 http://127.0.0.1:7860 进入可视化画布。
教程导读
本教程分两条路径:
AI 应用路径(/tutorials/langflow/ai/)
聚焦如何用 Langflow 构建 AI 应用:
- 组件即工具:如何将任意节点变为 Agent 可调用的 Tool
- 多模型路由:在画布上实现运行时模型切换与故障转移
- MCP 工作流:将 Flow 发布为 MCP Server 的完整流程
- RAG 可视化管线:从文档到检索的全链路组件编排
- 多 Agent 编排:子工作流与条件路由的协作模式
开发核心路径(/tutorials/langflow/dev/)
聚焦 Langflow 自身的工程架构:
- 三层包架构:lfx(执行引擎)→ langflow-base(平台)→ langflow(发行版)的依赖边界
- Graph 执行引擎:有向图的拓扑排序、循环处理与增量构建
- 组件系统设计:Component 基类、输入/输出契约、向后兼容机制
- 前端画布架构:React Flow + Zustand 的状态管理与实时协作
- Flow JSON 契约:持久化用户产物的序列化与反序列化协议
引用的通用知识
本教程涉及以下通用知识点,已在 Common 知识库中独立成篇: