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包管理器官方文档

相关推荐
rzl025 分钟前
SpringBoot总结
spring boot·后端·firefox
山烛15 分钟前
KNN 算法中的各种距离:从原理到应用
人工智能·python·算法·机器学习·knn·k近邻算法·距离公式
盲盒Q25 分钟前
《频率之光:归途之光》
人工智能·硬件架构·量子计算
墨染点香34 分钟前
第七章 Pytorch构建模型详解【构建CIFAR10模型结构】
人工智能·pytorch·python
go546315846534 分钟前
基于分组规则的Excel数据分组优化系统设计与实现
人工智能·学习·生成对抗网络·数学建模·语音识别
茫茫人海一粒沙40 分钟前
vLLM 的“投机取巧”:Speculative Decoding 如何加速大语言模型推理
人工智能·语言模型·自然语言处理
诗酒当趁年华42 分钟前
【NLP实践】二、自训练数据实现中文文本分类并提供RestfulAPI服务
人工智能·自然语言处理·分类
小鱼人爱编程1 小时前
Java基石--反射让你直捣黄龙
前端·spring boot·后端
hqxstudying1 小时前
J2EE模式---服务层模式
java·数据库·后端·spring·oracle·java-ee
GM_8281 小时前
【最新最完整】SpringAI-1.0.0开发MCP Server,搭建MCP Client 实战笔记(进阶+详细+完整代码)
java·后端·ai编程·springai·mcp