Lang-Agent 可视化 Agent 配置平台
基于 LangGraph 的可有限编程 Agent 配置平台,通过自定义状态变量实现比传统 Workflow 更精准的节点与流程控制。
按维度查看评分与理由
README仅描述功能:MCP工具可被ReactAgent自主调用,模型与向量库凭据在页面配置,文档建议用环境变量(PGVECTOR_PASSWORD等)传递密码是唯一加分点。无最小权限声明、无执行前用户确认机制、无审计/数据流说明、无回滚或撤销机制说明;依赖锁定文件未提供,依赖安全性无从验证;LICENSE附录版权人字段为空,来源归属薄弱。扣分点:上述均缺失。
README内部逻辑一致,安装路径(Poetry/Yarn)完整可循,但仅有一份文档且示例链接为空(如 examples/loop_chat. 无目标),错误处理与失败提示完全未提及。扣分点:示例链接损坏、无故障信息说明。
明确面向希望可视化编排Agent的用户,场景覆盖聊天、RAG、多Agent(Supervisor),对能力边界有诚实说明(自定义状态变量不支持列表类型、仅支持OpenAI兼容渠道)。但未指明Python/Node版本,条件表达式语法仅有简略规则,触发精度描述单薄。扣分点:无版本矩阵、条件语法细节不足。
文档结构清晰(安装、配置、节点、自定义扩展),命名一致;安装说明可操作;明示已知限制;Apache-2.0许可证文件完整,给满分。但多处示例链接为空、无CHANGELOG或版本号、无维护者/贡献指南/更新路径说明。扣分点:链接损坏、无版本与变更记录、维护责任不明。
相对传统线性工作流平台,自定义状态变量+可视化画布+可复用Agent构成明确差异化价值;导出/导入JSON、聊天面板输出可查看,输出可用性尚可。但价值主张仅有文档声明,无测试或基准佐证,成本收益评估依赖用户自行验证。扣分点:效益主张缺乏可执行证据。
所有断言('limited programmability'、节点行为、扩展机制)均只来自README单源,无代码、测试或独立材料可交叉印证;事实(功能列表)与推断(易用性、价值)基本未混写,文档本身区分尚可。扣分点:单源、不可追溯。
- README中多个示例JSON链接为空,无法核验宣称的示例场景
- MCP工具由LLM自主调用,文档未提供任何执行确认、权限范围或审计机制,部署时需自行隔离
- 向量库凭据虽建议用环境变量,但UI中仍可直接填入密码,注意存储与传输安全
- 未提供依赖锁定文件与语言版本要求,复现安装环境存在不确定性
- 无CHANGELOG、无维护者信息,更新与安全响应路径不明,属未经验证发布者,生产使用需额外评估
这个 Agent 能做什么,适合哪些场景?
Lang-Agent(GitHub: cqzyys/lang-agent)是一个基于 LangGraph 构建的开源 AI Agent 可视化配置平台,采用 Apache-2.0 协议。后端使用 FastAPI 与 Poetry 管理,前端基于 React 技术栈(HeroUI、ReactFlow、Tailwind CSS),通过 yarn 启动。平台允许自定义状态变量,供节点与条件边读写,从而突破传统 Workflow 项目仅将上一节点输出作为下一节点输入的局限。用户在画布中拖拽节点(开始、LLM、VLM、计数器、转换器、文档/图片加载与保存、代码执行器、命令执行、向量召回等)、预制 Agent(ReactAgent、SupervisorAgent)和边来组合 Agent,并支持保存、运行、导入导出 JSON。设计理念接近 comfyUI 而非 dify 和 coze,鼓励开发者按前端 XXXNode.tsx 与后端 XXX_node.py 的约定开发自定义节点,无需改动其它代码。
平台提供模型配置(目前支持兼容 OpenAI 的渠道,可配置 llm、vlm、embedding 类型)、MCP 配置(基于 langchain-mcp-adapters)和向量库配置(支持 postgres 与 milvus,含文档管理与向量化)。Agent 配置页面左侧为资源树,右侧为画布:拖入开始/结束/输入/LLM/VLM/计数器/转换器/文档加载/图片加载/文档保存/代码执行器/命令执行/向量召回等节点,可拖入 ReactAgent(自主调用 MCP 工具)与 SupervisorAgent(调度可复用 Agent),并连接默认边或条件边。状态变量(默认含 messages)通过 {{messages['x']}} 或 {{y}} 语法在提示词和条件边表达式中引用,节点执行后更新状态。配置完成后可保存到数据库、在画布右下方 chatbot 中运行查看结果,或导出/导入 JSON(examples 目录提供 loop_chat.、poet1.、react_agent_demo.、supervisor_demo. 等用例)。
- 需要可视化编排多步骤 LLM 流程的 Python/React 开发者,用拖拽方式替代手写 LangGraph 代码
- 需要图片识别的场景:用图片加载节点输出 base64,交给 VLM 节点按提示词识别或描述图片
- 需要知识检索的场景:将 txt/pdf/docx/md 文档向量化存入 postgres 或 milvus,通过向量召回节点检索
- 需要工具调用的场景:预先配置 MCP 连接,用 ReactAgent 让大模型自主调用外部工具
- 多 Agent 协作场景:将已配置的 Agent 打开可复用开关,由 SupervisorAgent 自主调度
- 循环与条件控制场景:用计数器节点、转换器节点和条件边表达式实现自定义循环逻辑
这个 Agent 有哪些优点和局限?
- 自定义状态变量机制允许节点和条件边读写全局状态,比仅传递上一节点输出的传统 Workflow 控制更精准
- 提供开箱即用的丰富节点集:代码执行器、命令执行、VLM、向量召回、计数器、转换器等,覆盖文件、多模态与检索场景
- 自定义节点开发成本低:前端只需在 custom 目录添加 XXXNode.tsx,后端只需添加 XXX_node.py,无需改动其它代码
- Agent 支持导入导出 JSON,配置可复用(可复用 Agent)与跨环境迁移
- MCP 渠道目前只支持兼容 OpenAI 的模型渠道,其他渠道的支持尚未实现
- 向量库仅支持 postgres 和 milvus 两种类型,且自定义状态变量不支持 list 类型
- 需要自行部署前后端两套子项目(poetry + yarn),没有文档提到 Docker 等一键部署方式
- 命令执行节点和 Python 代码执行器节点会真实执行本机命令与代码,采用时需自行评估安全边界
如何安装或部署这个 Agent?
- 克隆仓库:git clone https://github.com/cqzyys/lang-agent.git
- 后端(需先安装 poetry):cd lang-agent-backend && poetry env use python && poetry shell && poetry install
- 前端(需先安装 yarn):cd lang-agent-frontend && yarn install
- 如需向量功能,准备 postgres 或 milvus 向量库。
如何使用这个 Agent?
- 启动后端:python -m lang_agent.main
- 启动前端:yarn dev,访问 http://localhost:8820
- 在【模型配置】页创建模型连接(名称唯一、类型选 llm/vlm/embedding,填写兼容 OpenAI 的 ChatOpenAI 连接参数)
- 如需工具调用,在【MCP配置】中按 langchain-mcp-adapters 参数配置 MCP 连接;如需检索,在【向量库配置】中配置向量库并上传文档向量化
- 在【Agent配置】中新增 Agent,从资源树拖拽节点和 Agent 到画布,配置名称、提示词、状态变量,连接边后保存并运行,在右下方 chatbot 中查看结果。
这个 Agent 与同类方案有什么区别?
README 明确将本项目与 dify、coze 对比:Lang-Agent 的设计理念更接近 comfyUI,鼓励使用者开发适应自身业务的节点,而非提供封闭的平台化编排体验。