找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1070

积分

0

好友

138

主题
发表于 6 小时前 | 查看: 2| 回复: 0

LangFlow 是一个开源的、基于 Python 的、完全可定制的,用于构建多代理和 RAG 应用程序的可视化低代码框架。它让你可以通过拖拽组件的方式,快速搭建 AI 工作流。

如何安装与运行

LangFlow 提供了多种安装方式,你可以根据自己的环境选择最合适的一种。

方式一:Langflow Desktop(推荐新手)

对于 Windows 和 MacOS 用户,最省心的方式是直接下载桌面版。安装包已经包含了所有运行时环境,无需关心 Python 版本和复杂的依赖问题。
下载地址:https://www.langflow.org/desktop

方式二:使用 Docker 运行

如果你熟悉 Docker,这是最快捷的部署方式。只需一条命令即可启动服务:

docker run -p 7860:7860 langflowai/langflow:latest

容器启动后,在浏览器中访问 http://localhost:7860/ 即可。

方式三:本地 Python 环境安装

适合喜欢在本地深度定制的开发者。你需要准备 Python 3.10 到 3.13 的环境,并安装 uv 包管理器。

注意:安装时,国内的一些 pip 源可能会失败,可以多切换几个镜像源尝试。

  1. 安装依赖

    uv pip install langflow -U -i https://repo.huaweicloud.com/repository/pypi/simple/
  2. 运行服务

    uv run langflow run
  3. (可选)配置外部数据库
    默认使用 SQLite,如果需要连接外部数据库(如 PostgreSQL),可以创建 .env 文件,并添加环境变量:

    LANGFLOW_DATABASE_URL=postgresql://user:password@localhost:5432/langflow

    然后指定环境文件启动:

    uv run langflow run --env-file .env

无论用哪种方式,成功启动后,在浏览器中访问 http://localhost:7860/,你将会看到 LangFlow 的欢迎界面。

LangFlow 欢迎界面

实战示例:快速构建一个聊天机器人

让我们通过一个简单的例子,体验如何用 LangFlow 零代码创建一个智能聊天助手。

第一步:创建空白流程

进入界面后,点击 + Create first flow 创建一个空白流程。

点击创建空白流程

系统会提示你从模板开始或从零构建,这里我们选择 Start from scratch -> + Blank Flow

选择从零开始创建

第二步:认识工作区

一个新的空白流程工作区将被打开。左侧是丰富的组件库,中间是画布,右上角有运行和分享按钮。

LangFlow 主工作区

第三步:添加 “Chat Input” 组件

从左侧组件库的 Input & Output 分类中,找到并拖拽 Chat Input 组件到画布上。这个组件将接收来自用户的聊天输入。

添加 Chat Input 组件到画布

点击画布上的组件,右侧会弹出属性面板。你可以在这里配置输入提示、是否存储消息历史、发送者名称等。

配置 Chat Input 组件属性

第四步:添加 “Prompt Template” 组件

Models & Agents -> Language Model 分类下,拖拽一个 Prompt Template 组件到画布上。这个组件用于定义给 AI 模型的系统指令。

添加 Prompt Template 组件

在属性面板的 Template 字段中,输入系统提示词,例如:“你是Amy,一个有用的智能助手!”

设置 Prompt Template 系统提示词

第五步:连接组件并添加自定义 LLM

用鼠标从 Chat Input 组件的输出点拖出一条线,连接到 Prompt Template 组件的输入点。这表示将用户输入传递给提示词模板。

然后,我们需要一个大模型来处理请求。LangFlow 支持接入多种模型,这里我们以自定义一个智谱AI的组件为例。点击左侧的 New Custom Component,选择 Code 标签页。

新增并进入自定义组件代码编辑界面

将以下 Python 代码粘贴到代码编辑器中。这段代码定义了一个名为 ZhipuModelComponent 的组件类,它封装了调用智谱AI GLM 系列模型的逻辑。

from langchain_openai import ChatOpenAI
from lfx.base.models import LCModelComponent
from lfx.field_typing import LanguageModel, RangeSpec
from lfx.inputs.inputs import BoolInput
from lfx.io import DropdownInput, MessageInput, MultilineInput, SecretStrInput, SliderInput

model_names = ["glm-4.7-flash", "glm-4.5-flash", "glm-4.6v-flash"]

class ZhipuModelComponent(LCModelComponent):
    display_name = "Zhipu Model"
    description = "运行智谱的模型。"
    documentation = "https://docs.langflow.org/components-models"
    icon = "brain-circuit"
    category = "models"
    priority = 0

    inputs = [
        DropdownInput(
            name="model_name",
            display_name="模型名称",
            options=model_names,
            value=model_names[0],
            info="选择模型",
            real_time_refresh=True,
            refresh_button=True,
        ),
        SecretStrInput(
            name="api_key",
            display_name="API Key",
            info="API key",
            required=False,
            show=True,
            real_time_refresh=True,
        ),
        MessageInput(
            name="input_value",
            display_name="输入",
            info="发送给大模型的文本内容",
        ),
        MultilineInput(
            name="system_message",
            display_name="系统提示词",
            info="系统提示词",
            advanced=False,
        ),
        BoolInput(
            name="stream",
            display_name="流式输出",
            info="是否流式输出",
            value=False,
            advanced=True,
        ),
        SliderInput(
            name="temperature",
            display_name="Temperature",
            value=0.1,
            info="控制输出的随机性,值越高越随机。",
            range_spec=RangeSpec(min=0, max=1, step=0.01),
            advanced=True,
        ),
    ]

    def build_model(self) -> LanguageModel:
        model_name = self.model_name
        temperature = self.temperature
        stream = self.stream
        return ChatOpenAI(
            model_name=model_name,
            temperature=temperature,
            streaming=stream,
            openai_api_key=self.api_key,
            openai_api_base="https://open.bigmodel.cn/api/paas/v4/",
        )

自定义组件代码编辑界面

保存后,你会在组件库的 Custom ComponentsModels & Agents 下看到新增的 Zhipu Model 组件。将其拖到画布上,并连接 Prompt Template 的输出到它的输入。

自定义的 Zhipu Model 组件出现在画布上

在右侧属性面板中,填入你的智谱AI API Key,并设置好其他参数(如 temperature)。

配置 Zhipu Model 组件参数

第六步:添加 “Chat Output” 并测试

最后,从 Input & Output 中拖拽一个 Chat Output 组件到画布,并将 Zhipu Model 的输出连接到它。至此,一个完整的聊天流程就构建好了。

完整的聊天机器人工作流包含 Chat Input, Prompt Template, Zhipu Model 和 Chat Output

点击右上角的 Playground 按钮,在打开的测试窗格中输入“你好”,你的智能助手 Amy 就会回应你了。

在 Playground 中测试聊天机器人

第七步:发布与分享

工作流测试无误后,就可以发布了。点击 Share 按钮,你可以选择多种发布方式,例如生成 API 接口、导出为 Docker 镜像、或者创建一个可分享的在线 Playground。

通过 Share 功能发布或导出你的应用

利用模板加速开发

除了从零开始,LangFlow 还内置了大量开箱即用的模板,覆盖了智能体、RAG、内容生成等常见场景。在创建流程时选择模板,能让你更快地上手和实现想法。

LangFlow 内置的丰富启动模板

通过这个简单的例子,你可以看到 LangFlow 如何将复杂的 AI 应用开发过程,简化为直观的拖拽和连线。无论是快速原型验证,还是构建生产级应用,它都是一个非常高效的低代码工具。在 云栈社区,你还可以找到更多关于 AI 应用开发和前沿技术的实战分享与讨论。




上一篇:实战体验Lovart设计Skills:AI辅助从零到一构建香蕉品牌全链路
下一篇:告别string黑板:现代C++中std::any、接口与信号系统的性能优化实践
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-2-7 20:31 , Processed in 0.407942 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表