利用FastGPT与私有知识库构建本地化智能AI客服问答系统

一、了解FastGPT

FastGPT是一个基于LLM(大语言模型)的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。它支持通过Flow可视化进行工作流编排,实现复杂的问答场景。同时,FastGPT支持多种数据导入途径,包括手动输入、直接分段、LLM自动处理和CSV等,并自动对文本数据进行预处理、向量化和QA分割,节省手动训练时间,提升效能。

主要技术包括: DockerNext.jsTypeScriptChakraUIMongoDBPostgres

简而言之,FastGPT能够高效且相对简单的整合各类大模型,构建高效的对话系统,实现智能化问答功能。

二、准备搭建环境

  1. 服务器:选择满足FastGPT运行需求的服务器配置,建议Linux系统,本文使用环境为CentenOS7,主要用于Docker部署Mongo和postgresql。(非必须)

    数据库也可部署到本地电脑上,也是建议Linux系统,Win系统部署Docker会麻烦一些,可以参考这篇文章: 超详细 Windows 安装 Docker Desktop 全过程 juejin.cn/post/713046...

  2. API-Key:请购买一个支持OpenAI、百度千帆、阿里千问、讯飞星火等大模型的聚合API账号,以确保能够顺利访问并调用这些模型。在本示例中,我们将采用OpenAI的GPT 3.5模型进行演示。

三、搭建步骤

  1. 安装数据库:在本文中,我们使用了宝塔面板,通过其可视化的Docker管理工具,轻松拉取了Mongo 5.0.18和PostgreSQL 15的镜像,并据此分别创建了Mongo和PostgreSQL的容器实例。

为容器开通了相应的暴露端口,其中PostgreSQL容器的端口设置为5432,MongoDB容器的端口则设置为27017

  1. **拉取FastGPT代码:**从FastGPT的GitHub仓库进行克隆,可以使用以下命令(请将<github_username>替换为实际的GitHub用户名):

    bash 复制代码
    git clone git@github.com:<github_username>/FastGPT.git

    拉取FastGPT项目后,得到一个包含项目所有文件的本地副本。

  1. 修改配置文件 :此步骤至关重要。在成功拉取FastGPT项目后,FastGpt和核心代码在project/app目录下。接下来,复制其目录下的.env.template,并改名为.env.local,并进行配置,关键配置项有数据库连接信息、API密钥、Api网关设置、管理员密码:

    ini 复制代码
    # 默认用户密码,用户名为 root,每次重启时会自动更新。
    DEFAULT_ROOT_PSW=123456
    # openai 基本地址,可用作中转。购买的api网关地址
    OPENAI_BASE_URL=https://api.hb***.cn/v1
    #  ONEAPI 的 key
    CHAT_API_KEY=sk-D7lnqa4V6tGENGqh3d1e62BaB9F14dE9A931E83*******
    # mongo 数据库连接参数,本地开发时,mongo可能需要增加 directConnection=true 参数,才能连接上。
    MONGODB_URI=mongodb://myusername:mypassword@49.***.***.213:27017/fastgpt?authSource=admin&directConnection=true
    # PG 数据库连接参数
    PG_URL=postgresql://username:password@49.***.***.213:5432/postgres

    .env.local的全部配置项,如下:

    ini 复制代码
    LOG_DEPTH=3
    # 默认用户密码,用户名为 root,每次重启时会自动更新。
    DEFAULT_ROOT_PSW=123456
    # 数据库最大连接数
    DB_MAX_LINK=5
    # token
    TOKEN_KEY=dfdasfdas
    # 文件阅读时的秘钥
    FILE_TOKEN_KEY=filetokenkey
    # root key, 最高权限
    ROOT_KEY=fdafasd
    # openai 基本地址,可用作中转。
    OPENAI_BASE_URL=https://api.hb***.cn/v1
    # oneapi 地址,可以使用 oneapi 来实现多模型接入
    # ONEAPI_URL=https://xxxx.cloud.sealos.io/openai/v1
    # 通用key。可以是 openai 的也可以是 oneapi 的。
    # 此处逻辑:优先走 ONEAPI_URL,如果填写了 ONEAPI_URL,key 也需要是 ONEAPI 的 key
    CHAT_API_KEY=sk-D7lnqa4V6tGENGqh3d1e62BaB9F14dE9A931E83*******
    # mongo 数据库连接参数,本地开发时,mongo可能需要增加 directConnection=true 参数,才能连接上。
    MONGODB_URI=mongodb://myusername:mypassword@49.***.***.213:27017/fastgpt?authSource=admin&directConnection=true
    # PG 数据库连接参数
    PG_URL=postgresql://username:password@49.***.***.213:5432/postgres
    # 商业版地址
    PRO_URL=
    # 首页路径
    HOME_URL=/
    # Loki Log Path
    # LOKI_LOG_URL=
  2. 启动系统

    此系统采用React框架的Next.js进行前端开发,推荐使用pnpm来管理前端依赖,以提高构建效率和依赖管理的准确性。以下是具体的操作步骤:

    1、安装依赖:请执行postinstall.sh脚本来安装所需的依赖项。如果使用的是Windows系统,可以打开该脚本文件,并在PowerShell中依次执行其中的命令。

    2、构建前端:在成功安装依赖后,请进入projects/app根目录,并执行pnpm dev命令来启动开发服务器并进行构建。请注意,由于是首次构建,可能会需要较长的时间来完成。

  3. 访问系统 :通过lcoalhost:3000来访问搭建的FastGPT系统,进行后续的配置和使用。

四、使用FastGPT

  1. 创建应用:可以 根据业务场景,从简易模板、对话引导+变量、知识库+对话引导、问题分类+知识库四种对话模板中进行创建。
  1. 创建知识库导入数据集:根据系统提供的指引,完成知识库的创建过程,并导入各类相关的数据集或问答对以供训练。系统支持多种数据格式,包括但不限于本地的PDF、DOCX等文件、网页链接内容、自定义的文本内容,以及CSV格式的表格文件。

    在开始创建之前,可以提前准备一些与公司业务紧密相关的客服知识电子文档。这些文档可以是WORD、PDF、TXT、Excel或Markdown等格式的文件,内容应涵盖客户可能询问的各种问题和答案。

此示例中,以自定义文本的方式输入了两个问题,这些问题数据导入后,将自动启动训练过程。

  1. 应用绑定企业知识库:将知识库与应用进行绑定,一个应用能够关联多个知识库。当接收到用户的提问时,系统会智能地从已绑定的知识库中优先检索并提取相关的答案,以提供给用户最准确的回复。
  1. 应用发布:完成应用的配置后,可以利用发布功能为其生成一个独立的URL。这个URL可以提供给外部的客服咨询用户使用,进行咨询和获取帮助。

通过以上步骤,能够利用FastGPT搭建起一个既高效又智能的AI客服问答系统,该系统将为企业或组织带来卓越的客户服务体验。

相关推荐
VT.馒头7 小时前
【力扣】2695. 包装数组
前端·javascript·算法·leetcode·职场和发展·typescript
刘大大Leo7 小时前
GPT-5.3-Codex 炸了:第一个「自己造自己」的 AI 编程模型,到底意味着什么?
人工智能·gpt
小镇敲码人7 小时前
剖析CANN框架中Samples仓库:从示例到实战的AI开发指南
c++·人工智能·python·华为·acl·cann
摘星编程7 小时前
CANN ops-nn Pooling算子解读:CNN模型下采样与特征提取的核心
人工智能·神经网络·cnn
css趣多多7 小时前
一个UI内置组件el-scrollbar
前端·javascript·vue.js
程序员清洒7 小时前
CANN模型安全:从对抗防御到隐私保护的全栈安全实战
人工智能·深度学习·安全
island13147 小时前
CANN ops-nn 算子库深度解析:神经网络计算引擎的底层架构、硬件映射与融合优化机制
人工智能·神经网络·架构
C澒7 小时前
前端整洁架构(Clean Architecture)实战解析:从理论到 Todo 项目落地
前端·架构·系统架构·前端框架
小白|7 小时前
CANN与实时音视频AI:构建低延迟智能通信系统的全栈实践
人工智能·实时音视频
Kiyra7 小时前
作为后端开发你不得不知的 AI 知识——Prompt(提示词)
人工智能·prompt