Langflow 是一个开源的可视化工具,帮助开发者通过拖拽组件快速搭建基于大语言模型(LLM)的智能应用和多代理系统。它基于 Python,支持主流大语言模型和向量数据库,集成了丰富的AI工具,既方便新手入门,也满足专业开发需求。
1. Langflow是什么?
- 可视化构建AI流程:用图形界面拖拽和连接不同功能模块(如语言模型、搜索工具、记忆模块等),无需写复杂代码即可设计智能应用。
- 支持多种大语言模型和数据库:兼容OpenAI、Hugging Face等主流模型,支持向量数据库用于语义搜索。
- 内置API服务器:每个构建好的智能代理都能直接作为API端点,方便集成到各种应用和系统。
- 多代理和会话管理:支持复杂的多代理协作和对话管理,适合构建智能客服、信息检索等场景。
- 开放源码,支持本地和云端部署。
2. Langflow的核心功能
功能 | 说明 |
---|---|
可视化编辑器 | 拖拽组件,快速设计AI工作流,支持实时测试和调试。 |
代码访问 | 支持Python代码调试和自定义,方便开发者深度定制。 |
多代理协作 | 多个智能代理协同工作,支持复杂任务分解和执行。 |
导出与部署 | 支持导出JSON格式流程,或直接部署为API接口。 |
集成监控 | 结合LangSmith、LangFuse等工具,实现流程监控和性能分析。 |
安全与扩展 | 企业级安全设计,支持大规模部署。 |
3. 安装与运行
环境要求
- Python 版本:3.10 至 3.13
- 推荐安装工具:pip 或 uv(更快)
安装命令
bash
bash
# 推荐使用uv安装
uv pip install langflow
# 或者使用pip安装
pip install langflow
运行Langflow
arduino
bash
langflow run
运行后,打开浏览器访问 http://127.0.0.1:7860
即可进入Langflow的可视化界面。
4. Langflow界面介绍
- 左侧组件栏:包含各种功能模块,如代理(Agent)、链(Chain)、加载器(Loader)、嵌入模型(Embedding)、语言模型(LLM)、记忆(Memory)、提示模板(Prompt)等。
- 画布区域:拖拽组件,连接输入输出端口,构建工作流。
- 右侧属性面板:配置选中模块的参数,如API密钥、模型参数等。
- 下方测试区:实时运行和调试流程,查看模型输出和执行步骤。
5. 简单示例:构建一个带网页搜索功能的聊天代理
目标
创建一个基于OpenAI GPT-3模型的智能代理,它可以回答用户问题,并通过Bing搜索API获取最新信息(适合查询2021年后发生的事件)。
组件说明
- Prompt(ZeroShotPrompt) :定义模型的初始指令。
- LLM(OpenAI text-davinci-003) :核心语言模型。
- LLMChain:协调Prompt和LLM的执行。
- BingSearchAPIWrapper:封装Bing搜索API,需填入Bing API密钥。
- BingSearchRun:调用搜索服务。
- ZeroShotAgent:整合LLM和搜索工具,执行智能决策。
关键代码示例(Python)
ini
python
from langflow import load_flow_from_json
# 假设已经通过Langflow界面设计好流程,导出为JSON文件
flow = load_flow_from_json("my_agent_flow.json")
# 运行流程,传入用户问题
response = flow.run({"input": "2023年有哪些重大科技新闻?"})
print(response)
运行效果
- 代理先用GPT模型理解问题。
- 如果需要最新信息,调用Bing搜索API获取网页内容。
- 综合回答用户问题,并展示思考过程。
6. 进阶使用与部署
部署方式
- 本地部署:使用Docker快速启动
bash
bash
docker run -it --rm -p 7860:7860 langflowai/langflow:latest
- 云端部署:支持Google Cloud、Railway、Render等主流云平台,官方提供详细部署指南。
命令行参数示例
css
bash
langflow run --host 0.0.0.0 --port 8080 --workers 4 --timeout 120
--host
:绑定IP地址(默认127.0.0.1)--port
:监听端口(默认7860)--workers
:工作进程数,提升并发能力--timeout
:请求超时时间(秒)
7. 结合AstraDB实现智能数据管理
- AstraDB 是一个支持向量搜索的分布式数据库,适合存储和检索文本向量。
- 结合Langflow,可以实现基于RAG(检索增强生成)技术的智能助手,提升数据查询和知识管理能力。
AstraDB快速配置示例
bash
bash
# 在AstraDB官网注册账号,创建数据库和集合
# 在Langflow中配置AstraDB连接参数
8. 总结
Langflow 是一个适合中国开发者快速上手的AI流程可视化开发平台,降低了使用大语言模型的门槛。通过拖拽组件和简单配置,即可构建复杂的智能代理和多任务AI系统。无论是学习、原型开发还是生产部署,Langflow都提供了丰富的功能和灵活的扩展方式。
参考资源
- 官方GitHub仓库
- OpenAI API密钥申请:platform.openai.com/account/api...
- Bing搜索API申请(Azure)
- AstraDB官网及文档
欢迎大家动手试用Langflow,结合丰富的示例和代码,快速打造属于自己的智能AI应用!