使用RAG-GPT快速搭建LangChain官网智能客服

【Ollama】AI大模型本地部署 Ollama轻量级、可扩展的框架,用于在本地机器上构建和运行大型语言模型(LLM)。提供了一个简单的API来创建、运行和管理模型,以及一个预构建模型库,可以轻松用于各种应用程序。明显优势:易于使用、轻量级、可扩展、预构建模块库。应用场景:文本生成、翻译、问答、代码生成。人群价值:研究人员、开发人员、爱好者。项目优点:易用性、性能、功能、社区。 阅读详情

引言

随着GPT等大型语言模型(LLM)能力越来越强大,如何将这些模型精准地应用于特定垂直领域,让各行业开发者快速利用LLM赋能也成为热点和痛点。众所周知,LLM在处理超出其训练数据或涉及最新实事时,常会产生“幻觉”现象,简单理解就是会出现一本正经的胡说八道,回答不准确。针对此问题,RAG通过从外部知识库检索相关文档作为上下文输入到LLM有效地减少了生成内容不符合实际的情况。

RAG技术原理介绍

在介绍RAG-GPT项目之前,我们首先要理解RAG的基本原理,RAG在问答系统中的一个典型应用主要包括三个模块,分别是:

  • Indexing(索引):将文档分割成chunk,编码成向量,并存储在向量数据库中。
  • Retrieval(检索):根据用户输入query和向量数据库中chunks语义相似度检索与问题最相关的前k个chunk,形成本次问答的上下文。
  • Generation(生成):将原始问题和检索到的chunks整合形成合适的prompt一起输入到LLM中,让LLM输出与上下文有关的回答。

智能文档的在线检索流程可以用一张图说明,上图中展示了一个完整的问答流程:

  • 用户发起query
  • 结合Bot实际应用场景,评估是否对query进行rewrite
  • Retieval模块根据query检索出Indexing中的相关的文档
  • 将召回的文档进行Reranking
  • 并且根据relevance score进行过滤,过滤掉低质的文档
  • 形成合适的Prompt后输入到LLM大模型中,最后生成答案

如何快速实现RAG的智能问答系统?

从RAG的原理介绍中可以看到要实现RAG整套架构还是存在一定工作量,需要构建索引、检索、集成LLM、Prompt优化等一系列模块,具有一定的难度。

基于此,RAG-GPT提供了一整套开源解决方案,旨在利用LLM和RAG技术快速搭建一个全功能的客服解决方案。该项目基于Flask框架,包括前端用户界面、后端服务和管理员控制台,为企业利用LLM搭建智能客服等对话场景提供了一个完整的自动化解决方案,可以帮助开发者快速搭建一个智能问答系统,且代码完全开源。
项目地址:github.com/open-kf/rag…

RAG-GPT的基本架构

RAG-GPT关键特性:

  • 内置LLM支持:支持云端LLM和本地LLM。
  • 快速设置:只需五分钟即可部署生产级对话服务机器人。
  • 多样化知识库集成:支持多种类型的知识库,包括网站、独立URL和本地文件。
  • 灵活配置:提供用户友好的后台,配备可定制的设置以简化管理。
  • 美观的用户界面:具有可定制且视觉上吸引人的用户界面。

从特性可以知道,RAG相比一些商业收费的基于知识库的问答系统优势在于:

  • 易用、快速搭建。
  • 能自主管理知识库,避免商业秘密和知识产权泄漏。
  • 可以自主选择LLM模型和甚至扩展部署本地模型。

RAG-GPT 快速搭建智能问答系统

RAG-GPT的基本组成分为三部分:
- 智能问答后端服务
- 管理后台系统
- 用户使用的ChatBot UI。

下面,将介绍如何启动RAG-GPT项目和使用这三个模块,将RAG-GPT集成到你的网站只需要5个步骤:

1. 下载源代码,通过Git克隆RAG-GPT的GitHub仓库:
git clone https://github.com/open-kf/RAG-GPT.git && cd RAG-GPT

2.配置环境变量

在启动RAG-GPT服务之前,需要修改相关配置,以便程序正确初始化。

这里使用 OpenAI 作为 LLM 底座

cp env_of_openai .env

.env 文件中的变量

LLM_NAME="OpenAI"
OPENAI_API_KEY="xxxx"
GPT_MODEL_NAME="gpt-3.5-turbo"
MIN_RELEVANCE_SCORE=0.3
BOT_TOPIC="xxxx"
URL_PREFIX="http://127.0.0.1:7000/"
USE_PREPROCESS_QUERY=0
USE_RERANKING=1
USE_DEBUG=0

对 .env 中的变量做以下调整:

  • 不要修改 LLM_NAME。
  • 将 OPENAI_API_KEY 替换为你自己的密钥。请登录 (OpenAI 网站)[platform.openai.com/api-keys ] 查看你的 API 密钥。
  • 更新 GPT_MODEL_NAME 设置,将 gpt-3.5-turbo 替换为 gpt-4-turbo 或 gpt-4o,如果你想使用 GPT-4。
  • 将 BOT_TOPIC 更改为你的机器人的名称。这非常重要,因为它将在构造Prompt中使用。我在这里要搭建LangChain网站的智能客服,所以改写为LangChain。
  • 调整 URL_PREFIX 以匹配你的网站的域名。
  • 有关常量的含义和用法的更多信息,可以查看 server/constant 目录下的文件。
3.执行启动命令

分别执行以下命令,即可启动。

[!NOTE]
请使用 Python 3.10.x 或以上版本。

先安装python依赖项

python3 -m venv myenv

source myenv/bin/activate

pip install -r requirements.txt

启动项目即可:

python create_sqlite_db.py
python rag_gpt_app.py

或者执行

sh start.sh

4.快速体验聊天效果
  • 启动服务后先打开管理后台。

首先要登录到管理后台,浏览器输入:http://127.0.0.1:7000/open-kf-admin/
登录账号为:admin 密码 :open_kf_AIGC@2024 .

  • 导入知识库,这里输入LangChain的网站。

在管理后台切换到source tab,输入LangChain官网地址:https://python.langchain.com/v0.1/docs/get_started/introduction/,
点击 Fetch more links 即可一键爬取网站内容作为知识库。

在后台可以看到爬取网页URL的日志。

获取网站的所有网页URL后,此时网页URL展示的状态是 Stored。在管理后台,点击 Confirm 提交想要抓取的网页URL(默认抓取获取的所有URL)。

等所有网页URL的文本都被抓取,并且存入向量数据库后,在管理后台上所有网页URL展示的状态都是 Trained 。

浏览器打开http://127.0.0.1:7000/open-kf-chatbot/,就可以访问Bot了。

5.一键嵌入到网站

RAG-GPT提供了将聊天机器人嵌入到网站的方法,使得用户可以直接在网站上使用智能问答服务。
打开管理后台菜单切换到embed,复制两个代码即可实现一键嵌入,这两个代码片效果分别如下:一个是iframe嵌入一个聊天窗口,一个是在页面右下角点击弹出聊天窗口。
可以新建一个文本文件,将代码复制进去,用浏览器打开就可以看到嵌入效果了。

6.管理后台其他功能
  • 管理员可以通过仪表板查看用户的历史请求记录,以便进行分析和优化。

可以按照时间、用户查询聊天记录和修改问答对的答案以更符合自身需求。

  • 配置聊天对话的UI

用户可以定制化聊天对话框的风格,使其更符合自身网站的风格特性。

结语

RAG-GPT项目具备开源免费、易于部署集成、开箱即用和功能丰富的特点,为LLM大模型在特定领域的应用落地提供了一套企业级的解决方案。RAG-GPT已经支持本地文件知识库,集成国内LLM大模型等特性,使得RAG-GPT满足更多样化的需求。

关于我们

OpenIM是领先的开源即时通讯(IM)平台,目前在GitHub上的星标已超过13k。随着数据和隐私安全的重视以及信息技术的快速发展,政府和企业对于私有部署的IM需求急剧增长。OpenIM凭借“安全可控”的特点,在协同办公软件市场中占据了一席之地。在后AIGC时代,IM作为人机交互的首要接口,其价值愈发重要,OpenIM期待在此时代扮演更关键的角色。

基于这样的视角,我们最近开源了RAG-GPT项目,已被部分企业采用并持续完善中。
如果您对RAG-GPT感兴趣,可以访问以下链接了解更多信息:

项目地址: github.com/open-kf/rag…

在线Demo: demo.rentsoft.cn/

我们的目标是改进文件管理功能,更有效地管理数据,并整合企业级知识库。欢迎大家在GitHub上Star并关注,支持我们的开源旅程。

开源说明:RAG-GPT采用Apache 2.0许可,支持免费使用和二次开发。遇到问题时,请在GitHub提Issue或加入我们的OpenKF开源社区群讨论。如果您需要更智能的客服系统,请与我们联系。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案
  • …

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】
如何使用 Langchain、Ollama 和 Streamlit 构建 RAG 在本博客完成中,我们将指导您创建可在本地运行的 RAG 的过程。这个过程不仅会加深您对尖端语言如何计算机工作的理解,还将使您能够在自己的项目中实施它们无论您是希望将 RAG 集成到现有应用程序中,还是只是探索 NLP 的前沿领域,本教程都是您的入门之选。 阅读详情

相关推荐

从零搭建AI智能客服:基于RAG与LangChain的实战指南

在人工智能技术快速发展的今天,自然语言处理与知识库检索的结合已成为构建智能应用的核心范式。其基本原理是通过嵌入模型将非结构化文本转换为向量表示,再利用向量数据库进行高效的语义相似性搜索,从而实现精准的信息匹配。这种技术架构的价值在于能够将大语言模型的强大生成能力与特定领域的专业知识相结合,有效缓解模型“幻觉”问题,提升回答的准确性与可靠性。在工程实践中,该模式被广泛应用于智能客服、企业知识库问答、个性化推荐等场景。本文聚焦于如何利用开源工具链,如LangChain框架与ChromaDB向量数据库,结合RAG

weixin_33971977的博客 422

RAG-GPT实践过程中遇到的挑战

本文介绍了RAG-GPT系统在构建智能客服时遇到的挑战及解决方案。通过结合检索机制和LLM生成能力,RAG系统可以生成上下文相关、准确且最新的信息,减少开发时间和数据清洗需求。文章探讨了RAG系统的核心流程、优势及挑战,并提出了Chunking和Embedding策略、RAG与微调的选择、以及系统测试和监控等优化方向。总结了RAG系统的潜在故障点和解决方法,为从事RAG系统开发的工程师提供了有价值的参考。

alysblmd 2120

Microsoft Azure 推出 GPT-RAG:企业 AI 集成的游戏规则改变者

在人工智能快速发展的时代,像 GPT 这样的大型语言模型 (LLM) 已经改变了企业与数据和信息交互的方式。然而,将这些技术集成到企业环境中带来了重大挑战。这包括维护高可用性、稳健的治理和安全性。为了满足这些需求,Microsoft Azure 推出了 GPT-RAG,这是一种突破性的企业 RAG 解决方案加速器,专为在业务环境中有效部署法学硕士而量身定制。

iCloudEnd的博客 592

【快速搭建】使用RAG-GPT构建LangChain官网智能客服系统

Indexing(索引):将文档分割成chunk,编码成向量,并存储在向量数据库中。Retrieval(检索):根据用户输入query和向量数据库中chunks语义相似度检索与问题最相关的前k个chunk,形成本次问答的上下文。Generation(生成):将原始问题和检索到的chunks整合形成合适的prompt一起输入到LLM中,让LLM输出与上下文有关的回答。用户发起query结合Bot实际应用场景,评估是否对query进行rewrite。

m0_63171455的博客 2061

AFSim编译一:windows

AFSim在windows上的编译

Meepo的博客 4736

VisionMaster位置修正功能深度解析:如何让找圆工具自动跟随移动目标?

本文深度解析海康威视VisionMaster平台的位置修正功能,重点介绍如何通过模板匹配与找圆工具的智能联动实现移动目标的动态追踪。文章详细阐述了工业视觉检测中的坐标系同步原理、模板匹配配置技巧及异常处理策略,为工程师提供了一套完整的工业级解决方案。

uu89012的博客 281

大模型RAG实战:使用RAG-GPT和Ollama搭建智能客服,大模型入门到精通,收藏这篇就足够了!

前面介绍了使用RAG-GPT和OpenAI快速搭建LangChain官网智能客服。有些场景,用户可能无法通过往外网访问OpenAI等云端LLM服务,或者由于数据隐私等安全问题,需要本地部署大模型。

2301_81888214的博客 857

vscode使用continue插件连接LM studio的模型

本文详细介绍了如何使用VSCode的Continue插件连接LM Studio模型。主要步骤包括:在LM Studio中加载模型并设置相关参数,启动API服务,修改Continue配置文件以集成LM Studio模型,并进行测试以验证连接是否成功。通过这些步骤,用户可以将LM Studio中的预训练模型与VSCode的Continue插件无缝对接,实现高效的自然语言处理和编程辅助功能。

weixin_43590837的博客 8629

基于RAG-GPT与本地大模型构建LangChain智能客服实践指南

检索增强生成(RAG)技术通过将外部知识库与大型语言模型(LLM)相结合,有效解决了通用大模型在专业领域知识上的幻觉与时效性问题。其核心原理是将文档向量化存储,在用户提问时先进行语义检索,再将相关上下文注入提示词中,引导模型生成基于事实的精准回答。这一技术价值在于显著提升了AI应用在垂直领域的可靠性与实用性,尤其适用于技术文档问答、企业知识库等场景。本文以构建LangChain官方文档智能客服为例,详细演示了如何利用RAG-GPT框架与Ollama本地大模型,实现从环境配置、知识库构建、提示词工程到效果优化

weixin_34414196的博客 552

【UE5】【蓝图】 LevelSequence 动画播放与暂停

最近有些工作,在研究UE5 蓝图的LevelSequence,来制作一些简单动画。做个笔记,记录一下动画更换绑定actor的操作,以及动画播放后如何暂停和继续。

UE5开发备忘录 1万+

LangGraph教程8:LangGraph流式处理

流式处理可显著提升基于LLM应用的响应性。LangGraph支持两种流式模式:values模式返回每一步的完整结果,适合需要完整上下文处理的场景;updates模式仅返回增量变化,适用于实时更新需求。示例代码展示了如何用create_react_agent实现这两种模式,其中values模式完整记录处理流程,updates模式逐步输出结果。通过异步迭代输出流,开发者可以灵活选择适合应用场景的流式处理方式。

Cachel Wood的博客 620

RAG:Langchain中使用自己的LLM大模型

在使用Langchain做RAG和Agent项目中,智能核心是LLM大语言模型;配置好模型是整个流程跑起来的关键。然而很多人初学者在为没有OpenAI的api-key而苦恼,在寻找代理或者替代品中花费了很多的时间。本篇文章将为大家介绍在langchain中使用自己大模型的方法,帮助大家扫清障碍快速搭建RAG和Agent流程。我们选择选择Qwen最新发布的Qwen2-0.5B-Instruct模型,模型可以提前下载好,也可以加载的时候下载。

python1234567_的博客 1310

LLM Wiki 的完整输入体系:LLM Wiki极简实战

LLM Wiki 的输入分为**四大类**,覆盖从"原始知识注入"到"系统行为控制"的全流程,所有输入都遵循"**原始资料不可变,规则可迭代,人类反馈闭环**"的核心原则。

ZhangJiqun&191cm&85kg 320

什么是 RAG? 如何为自己的企业快速搭建一套 RAG 系统

直到 RAG 技术出现,才真正解决了大模型 “不懂自家事” 的痛点!今天就用大白话讲清什么是 RAG,再手把手教你快速搭建企业级 RAG 系统,新手也能轻松上手~

Y525698136的博客 1013

极智AI | 谈谈为什么卷积加速更喜欢 NHWC Layout

本文主要讨论一下为什么卷积加速更加喜欢 NHWC 的数据排布。

极智视界 2971

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Langchain 快速入门

【摘要】LangChain是哈佛大学Harrison Chase于2022年推出的开源框架,旨在简化基于大语言模型的AI应用开发。本文系统介绍了其核心架构和实战应用: 框架解析 六大核心组件:模型I/O、数据连接、记忆系统、架构封装(Chain/Agent)、回调机制 特色功能:模型集成、工具连接、记忆存储、模块化设计 配套工具:LangServe(API部署)、LangSmith(调试监控) 关键技术 文档处理:支持PDF等格式加载,提供文本分割/嵌入/检索全流程工具 智能代理:支持7种Agent类型,实

AI全栈 和 IT 编程相关分享 2250

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

LangChain实战快速入门笔记(一)--LangChain使用概述

LangChain 是2022 年 10 月,由哈佛大学的(哈里森・蔡斯)发起研发的一个开源框架,用于开发由大语言模型(LLMs)驱动的应用程序。比如,搭建 “智能体”(Agent)、问答系统(QA)、对话机器人、文档搜索系统、企业私有知识库等。简而言之:LangChain 之于 LLMs,类似 Spring 之于 JavaLangChain 之于 LLMs,类似 Django、Flask 之于 Python顾名思义,

weixin_43665177的博客 1246

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

RAG:实现基于本地知识库结合大模型生成(LangChain4j快速入门#1)

LangChain 是一个开源框架,用于帮助开发者构建基于 大型语言模型(LLM) 的应用程序,特别是那些需要与外部数据源进行交互的应用。LangChain是python版本的,javaer基于LangChain也做了一套java版本,故名LangChain4j(LangChainForJava),很多xxx4j也是这么取名的。LangChain 使得用户能够将语言模型与各种外部资源(如数据库、API、搜索引擎、知识库等)结合起来,进行更复杂的任务,如 检索增强生成(RAG)、对话系统、文档理解等。

CodeCodeBond的博客 3648

使用 Skill Seekers 与 LangChain 构建文档 RAG 检索增强问答流水线

本篇技术指南围绕 Skill Seekers 仓库中的 LangChain RAG 流水线实战示例展开,介绍如何把 Skill Seekers 抓取、生成的知识库文档(如 React 官方文档与 GitHub 源码分析结果)打包成 LangChain Document 格式,再借助 Chroma 向量库与 GPT-4 构建一个可自然语言问答的检索增强生成(RAG)流水线。读完本文,你将掌握从文档生

gitblog_00460的博客 859

【收藏】RAG技术详解与实战:企业级RAG系统快速搭建指南(小白友好)

RAG 不是什么高深技术,本质是 “让大模型用好企业自己的数据”。对中小企业来说,它是最低成本落地 AI 的方式 —— 不用组建算法团队,不用反复训练模型,用现成工具组合,几小时就能搭建一套专属 RAG 系统。现在你可以试着从核心场景入手,比如先搭建一个内部知识库查询系统,让员工不用再翻几百页文档找答案;后续再扩展到客户服务、合同审核等场景。随着数据的积累,RAG 系统会越来越好用,真正帮企业提高效率、降低成本。

weixin_72959097的博客 1253
上一篇: RAG优化技巧 | 7大挑战与解決方式 | 提高你的LLM: 下篇
下一篇: 国内大模型LLM测评&选择以及主流大模型快速使用教程
AI大模型_学习君
博客等级 码龄3年 6137粉丝 551原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值