Ollama+LangFlow实现智能问答系统

Ollama+LangFlow实现智能问答系统

LangFlow 是一个开源的、基于 Web 的用户界面,旨在简化与大模型(LLMs)和其他自然语言处理(NLP)工具的交互。它提供了直观的图形化界面,让用户能够轻松构建和管理复杂的 NLP 流程,而无需编写大量代码。LangFlow 特别适用于需要快速原型设计、实验不同配置或与大模型进行互动的场景。

安装LangFlow

bash 复制代码
# Conda创建3.11版本的Python环境
conda create -n py_311 python=3.11 -y

# 进入py_311环境
conda activate py_311

# 安装uv(官方推荐),比pip性能更好
# 如果直接用pip安装会出现提示 pip is looking at multiple versions of <<library>> to determine which version is compatible with other requirements. This could take a while.
pip install uv

# 安装 LangFlow
uv pip install langflow

启动

bash 复制代码
# 启动
uv run langflow run

访问地址

http://127.0.0.1:7860

文档问答

用从本地内存加载的文档构建问答聊天机器人。将文档内容作为大模型提示词的上下文,基于此上下文寻找用户问题的答案并作出回答。

  1. 上传文档。 File 结点支持本地文档的上传;
  2. Parse Data 结点将文档内容转成 Data ,传给 Prompt 结点;
  3. Prompt 结点用作创建提示词模板,变量通过 {} 包裹,例如 {Document}
  4. Chat Input 结点用作用户输入问题,将问题内容传递给 Prompt 结点的 Question 变量;
  5. Prompt 结点的 Prompt Message 传递给 OpenAI 结点,Prompt Message 会将文档内容和用户问题结合成一个文本。如果没有 OpenAIAPI KEY ,可以将OpenAI 结点换成 Ollama 结点,并给 Ollama 配置本地部署的大模型基础 URL
  6. OpenAI 结点的处理结果 Text 变量传递给 Chat Output 结点,前端展示给用户。

总结

大模型的缺点是支持的上下文长度有限,如果想要某个问题毕其功于一役的给大模型一次新回答出来,超出了大模型的 Token 长度限制,大模型会回答不出来。 LangFlow 可以将问题拆解成多个小问题,分多次调用 OpenAI / Ollama 结点,最终得到问题的答案。

例如,想要对一段超长文章生成摘要,可以将文章拆解成10份,每一份文本片段都单独使用一个大模型结点生成摘要,然后将10份摘要汇聚在一起。

LangFlow 也支持多种类型的流程结点。除了前文中提到的 Chat Input 属于 InputsChat Output 属于 OutputsPrompt 属于 PromptsOpenAIOllama 属于 ModelsLangFlow 还有 SQL Query 结点、 if-Else 等常用功能结点。提供这些结点的目的就是为了让非开发人员也能够利用大模型实现自己的 AI Agents

参考

LangFlow官方文档

Python 依赖管理工具 uv

uv包管理器官方文档

相关推荐
Penge6666 分钟前
为什么 Go 中值类型有时无法实现接口?—— 从指针接收器说起
后端
用户90555842148057 分钟前
Milvus源码分析:向量查询(Search)
后端
bin91537 分钟前
当AI开始‘映射‘用户数据:初级Python开发者的创意‘高阶函数‘如何避免被‘化简‘?—— 老码农的函数式幽默
开发语言·人工智能·python·工具·ai工具
间彧9 分钟前
Java HashMap:链表工作原理与红黑树转换
后端
亚雷21 分钟前
深入浅出达梦共享存储集群数据同步
数据库·后端·程序员
作伴23 分钟前
多租户架构如何设计多数据源
后端
苏三说技术34 分钟前
SpringBoot开发使用Mybatis,还是Spring Data JPA?
后端
飞哥数智坊1 小时前
一文看懂 Claude Skills:让你的 AI 按规矩高效干活
人工智能·claude
canonical_entropy1 小时前
最小信息表达:软件框架设计的第一性原理
后端·架构·编译原理
自由的疯1 小时前
Java Docker部署RuoYi框架的jar包
java·后端·架构