【LLM】Langflow 的简单使用

(PS:爆肝整理,请不要吝啬你的点赞和收藏。)

什么是 Langflow ?Langflow 是一种用于构建多智能体和RAG应用的可视化框架。它提供了个无需编码的 AI 生态系统,能够无缝集成各种常用工具和技术栈。Langflow 以 Python 为基础,非常灵活,支持多种大型语言模型(LLM)和向量存储。

Langflow 凭借其用户友好的界面和强大的功能,使开发人员能够快速构建原型和构建 AI 应用程序。无论您是经验丰富的 AI 开发人员还是新手,Langflow 都能提供将 AI 创意变为现实所需的工具。

通过这篇文章,你将学会如何快速安装和启动 Langflow,并尽量少的避免安装和启动的坑。这篇文章会通过两个例子(智能聊天机器人和构建文档问答系统)带你初步上手 Langflow。

前提条件

  • Python 版本为 3.10-3.12
  • 已安装 uv,pip或pipx
  • 已申请 HuggingFace 或 OpenAI 或 Google Generative AI 或 百度千帆的ApiKey。

我使用的是 Google Generative AI。

参考:我的系统为Win11、Python 版本为 3.11、pip 版本为 24.3.1、uv 版本为 0.5.11。

如果你不想本地安装,可以直接体验 HuggingFace的Langflow

安装

官方提供了三种本地安装方式,uv、pip 和 pipx(建议使用 uv,其它两种方式安装特别慢,最后还会失败,使用 uv 安装用时在几分钟内)。

创建虚拟环境

创建一个虚拟环境以隔离 LangFlow 的依赖:

bash 复制代码
# 创建虚拟环境
python -m venv langflow_env
# 进入虚拟环境
langflow_env\Scripts\activate
# 拓展(不要执行):离开虚拟环境
deactivate

注:以下操作将在虚拟环境中进行

uv 安装

使用清华镜像源,这样安装比较快。

bash 复制代码
# 安装uv,uv 是一个用于创建和管理 Python 虚拟环境的工具,可以通过 pip 安装
pip install uv
# 使用清华镜像源
uv pip install langflow -i https://pypi.tuna.tsinghua.edu.cn/simple

pip 安装

此安装方式会比较慢,如果一定要使用该安装方式并且一直安装不成功,可参考这里

bash 复制代码
python -m pip install langflow

启动

uv 方式

bash 复制代码
uv run langflow run

pip 方式

bash 复制代码
python -m langflow run

出现下图表示启动成功,如果失败可参考文章最后的'问题与解决'。

浏览器访问 http://127.0.0.1:7860 你将进入 Langflow 工作流配置界面。

简单上手

创建工作流

进入默认项目-创建流(New Flow)

在弹出的页面中可以根据自己需求选择模板进行编辑

下图为部分模板截图(已翻译)。

配置界面:左边为组件区,包含输入(Inputs)、输出(Outputs)、提示词(Prompts)、使用的模型(Model)、词嵌入(Embedding)、向量数据库(Vector Stores)等等,右边为工作台区域,拖动相应组件到工作台即可开始你的工作流配置。

使用 Langflow 商店中的模板

入口:首页 - store

进入 Langflow store 界面,需要先配置 Langflow Api-key(地址: 申请Langflow Api-key)。

点击'+'号选择自己想要的模板,下载的模板将在'项目配置界面'展示。

案例

1、智能聊天机器人

需要的组件

a. Helpers 中的 Message History:存储和检索最多100条以前的消息;维护对话上下文;跟踪单独的聊天会话;保留发件人信息和消息顺序。

b. Inputs 中的 Chat Input,输入组件。

c. Prompts 中的 Prompt,创建动态提示模板;将内存集成到对话流中。

复制代码
You are a helpful assistant that answer questions.

Use markdown to format your answer, properly embedding images and urls.

History: 

{memory}

e. Models 中的 Google Generative AI,使用谷歌的语言模型,根据文档上下文生成对查询响应。

d. Outputs 中的 Chat Output,输出组件。

测试

聊天界面:点击工作台右上方的 'Playground' 按钮

2、构建文档问答系统

需要的组件

a. Data 中的 File,以支持的格式加载和处理文档。

b. Process 中的 Parse Data,使用指定的模板将加载的文档转换为文本,以实现一致的处理。

c. Inputs 中的 Chat Input,输入组件。

d. Prompts 中的 Prompt,通过将解析的文档内容与用户问题相结合来形成结构化查询,下面是内容。

复制代码
Answer user's questions based on the document below:

---

{Document}

---

Question:

e. Models 中的 Google Generative AI,使用谷歌的语言模型,根据文档上下文生成对查询响应。

d. Outputs 中的 Chat Output,输出组件。

测试

我上传的文件是'中华人民共和国民法典.pdf'。

问题与解决

1、第二次启动 Langflow 出现的问题

第二次启动 Langflow 出现如下问题:

原因:secret_key 文件权限不足。

解决方案:找到该文件并赋予当前用户该文件的所有权限。

2、使用 Google Generative AI 存在网络问题(待解决)

目前发现调用谷歌API,如果使用rpc、grpc方式调用会存在网络问题,使用rest风格方式没有问题,可以尝试使用api代理,或者改动 Langflow 调用谷歌API的代码。

参考文档

Langflow文档Langflow github

部分平台ApiKey申请地址

a. openAI:openai.com

b. 谷歌Gemini:google.com

c. HuggingFace:huggingface.co

相关推荐
BIOS菜鸟工程师2 分钟前
UEFI Spec 学习笔记---12 - Protocols —CONSOLE SUPPORT(一)
人工智能·笔记·学习
王会举41 分钟前
让SQL飞起来:搭建企业AI应用的SQL性能优化实战
数据库·人工智能·ai·性能优化
大海里的番茄42 分钟前
告别昂贵语音合成服务!用GPT-SoVITS生成你的个性化AI语音
人工智能·gpt
LitchiCheng1 小时前
Qwen2.5-VL视觉大语言模型复现过程,没碰到什么坑
人工智能·语言模型·自然语言处理
白熊1881 小时前
【计算机视觉】OpenCV实战项目-AdvancedLaneDetection 车道检测
人工智能·opencv·计算机视觉
Tanecious.1 小时前
机器视觉--Python补充知识
android·开发语言·python
Ac157ol1 小时前
《基于神经网络实现手写数字分类》
人工智能·深度学习·神经网络·机器学习·cnn
好看资源平台1 小时前
神经隐写术与量子加密:AI生成图像的隐蔽传输——突破数字水印新维度
人工智能
Hongs_Cai1 小时前
机器学习简介
人工智能·机器学习
机器之心1 小时前
Jeff Dean演讲回顾LLM发展史,Transformer、蒸馏、MoE、思维链等技术都来自谷歌
人工智能