支持私有化部署
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


AI实现智能客服第1节:基于FastGPT知识库的AI客服搭建与使用

发布日期:2025-06-12 13:53:09 浏览次数: 1556
作者:无处不在的技术

微信搜一搜,关注“无处不在的技术”

推荐语

AI客服正重塑企业服务模式,FastGPT知识库助你快速搭建高效智能客服系统。

核心内容:
1. AI客服在售前、售中、售后场景中的核心价值
2. FastGPT开源平台的核心功能与技术优势
3. 从零开始构建AI知识库的实践路径

杨芳贤
53A创始人/腾讯云(TVP)最具价值专家

持续内容输出,点击蓝字关注我吧

01




前言



来看一段AI大模型对它的介绍

大语言模型浪潮袭来,驱动客服行业发生变革。大模型的出现,让我们可以通过AI聊天,实现对话理解与问答能力,应对客户复杂指令,通过AI可以帮助企业解决成本、效率与业务增长问题,实现降本增效。

很多网站的客服本质是解决三种业务:

售前

售中

售后

针对这三种,会有很多的问题知识和用户问法,传统的人力客服,不容易做到24小时在线,而AI客服能够帮助我们解决一定的问题。

AI客服集成的能力是很多公司最容易落地的AI场景,可以看下这个报告结果:

在落地场景中,智能客服的占比也是相对较高的。

没有AI客服的时候,都是人工在告诉用户问题如何解决,有了AI客服之后,在一定程度上可以帮助企业提升解决时效和用户体验。

业界分享的AI客服的应用场景如下:

用于对话式交互业务场景,可帮助企业实现7X24小时全天候智能值守、全自动应答。本产品可与人工客服系统快速集成,实现智能服务与人工服务无缝衔接,保障服务体验与质量。

行业应用场景

1、零售行业:售前咨询、跟单推荐、售后答疑等场景智能服务。
2、金融行业:产品咨询、业务查询办理、产品营销等场景智能问答。
3、政务行业:政策咨询、业务查询办理、投诉登记等场景智能接待。

知识应用场景

1、智能客服:面向外部用户/企业内部员工提供高效7*24高频自助式智能服务;
2、智能导购:结合企业产品介绍使用指南,提供对话式售前咨询,促成用户下单和售后产品使用的问题解答;
3、智能办公助手:企业内部智能助手,咨询或办理各类日常任务(如请假、报销、查询知识库、IT工单等);
4、知识门户:结合企业产品介绍、使用指南等知识,提供对话式知识查询;
5、搜索入口:面向外部用户/企业内部员工,提供知识检索。

下面是网上的一张关于AI大模型客服的图片,可以看到AI倒序已经渗透到客服的不同阶段,每个阶段都可以和大模型进行对接:

具体可以看看:https://mp.weixin.qq.com/s/nCNPgmiXdrapCsw9ahNLmA

最近在研究AI客服的场景,本专题也记录下研究后的一些分享,AI客服的研究和尝试能够让我们学习到AI中很重要的两个概念:RAG、AI Agent,了解了RAG后,能够学习到AI知识库的经验,了解了AI Agent后,可以让我们使用低代码的方式思维来玩AI的交互。

本文分享下,关于AI客服的基石,知识库的搭建和体验。这里我选择的是FastGPT知识库软件,这个软件在我们之前的AI代码评审分享中有过分享,这里继续分享一下。

FastGPT是基于 LLM 大模型的开源 AI 知识库构建平台。提供了开箱即用的数据处理、模型调用、RAG 检索、可视化 AI 工作流编排等能力,帮助您轻松构建复杂的 AI 应用。

官网地址如下:https://tryfastgpt.ai/zh

本文梳理的时候,FastGPT的版本是4.8.17,2025年2月7日看了一下官网发布日志,版本已经更新到了4.8.20,支持了DeepSeek的效果渲染。

FastGPT的官网首页截图如下所示:

有了FastGPT后,可以帮助我们非常容易的搭建一个特定领域 AI 客服,我们可以通过导入文档或问答对来训练 AI 模型,使其能够基于特定领域知识库进行交互式对话,构建特定领域的 AI 智能客服。

优势如下:

知识库的架构如下所示:


02




FastGPT安装




1、首先我们来安装一下,安装之前我们需要准备好Docker环境和Docker-Compose环境,以及自己的大模型的Key信息(向量化模型、文本模型),可以申请通义千问或者智普,这里我用的是智普,也可以根据我之前分享的AutoDL平台部署免费的开源大模型。

Ollama部署AI大模型DeepSeekR1教程" data-itemshowtype="0" target="_blank" linktype="text" data-linktype="2">教你用AutoDL+Ollama部署AI大模型DeepSeekR1教程

总结一下需要准备的东西:

(1)、Docker环境

(2)、文本生成模型

(3)、向量模型

我们可以参考官网文档进行按照,写的是很清晰的:

https://doc.tryfastgpt.ai/docs/development/docker/

核心就是要准备好config.json文件和docker-compose.yml文件,然后修改config.json中的大模型的对接信息。

这里我使用的是4.8.17版本的docker-compose.yml文件,并更改了默认的数据库端口,如下所示:

# 数据库的默认账号和密码仅首次运行时设置有效# 如果修改了账号密码,记得改数据库和项目连接参数,别只改一处~# 该配置文件只是给快速启动,测试使用。正式使用,记得务必修改账号密码,以及调整合适的知识库参数,共享内存等。# 如何无法访问 dockerhub 和 git,可以用阿里云(阿里云没有arm包)version: '3.3'services:  # db  pg:    image: pgvector/pgvector:0.7.0-pg15 # docker hub    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.7.0 # 阿里云    container_name: pg    restart: always    ports: # 生产环境建议不要暴露      - 25432:5432    networks:      - fastgpt    environment:      # 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果      - POSTGRES_USER=username      - POSTGRES_PASSWORD=password      - POSTGRES_DB=postgres    volumes:      - ./pg/data:/var/lib/postgresql/data  mongo:    image: mongo:5.0.18 # dockerhub    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 # 阿里云    # image: mongo:4.4.29 # cpu不支持AVX时候使用    container_name: mongo    restart: always    ports:      - 37017:27017    networks:      - fastgpt    command: mongod --keyFile /data/mongodb.key --replSet rs0    environment:      - MONGO_INITDB_ROOT_USERNAME=myusername      - MONGO_INITDB_ROOT_PASSWORD=mypassword    volumes:      - ./mongo/data:/data/db    entrypoint:      - bash      - -c      - |        openssl rand -base64 128 > /data/mongodb.key        chmod 400 /data/mongodb.key        chown 999:999 /data/mongodb.key        echo 'const isInited = rs.status().ok === 1        if(!isInited){          rs.initiate({              _id: "rs0",              members: [                  { _id: 0, host: "mongo:27017" }              ]          })        }' > /data/initReplicaSet.js        # 启动MongoDB服务        exec docker-entrypoint.sh "$$@" &        # 等待MongoDB服务启动        until mongo -u myusername -p mypassword --authenticationDatabase admin --eval "print('waited for connection')" > /dev/null 2>&1; do          echo "Waiting for MongoDB to start..."          sleep 2        done        # 执行初始化副本集的脚本        mongo -u myusername -p mypassword --authenticationDatabase admin /data/initReplicaSet.js        # 等待docker-entrypoint.sh脚本执行的MongoDB服务进程        wait $$!  # fastgpt  sandbox:    container_name: sandbox    image: ghcr.io/labring/fastgpt-sandbox:v4.8.17 # git    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-sandbox:v4.8.17 # 阿里云    networks:      - fastgpt    restart: always  fastgpt:    container_name: fastgpt    image: ghcr.io/labring/fastgpt:v4.8.17 # git    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.8.17 # 阿里云    ports:      - 3000:3000    networks:      - fastgpt    depends_on:      - mongo      - pg      - sandbox    restart: always    environment:      # 前端访问地址: http://localhost:3000      - FE_DOMAIN=      # root 密码,用户名为: root。如果需要修改 root 密码,直接修改这个环境变量,并重启即可。      - DEFAULT_ROOT_PSW=1234      # AI模型的API地址哦。务必加 /v1。这里默认填写了OneApi的访问地址。      - OPENAI_BASE_URL=http://oneapi:3000/v1      # AI模型的API Key。(这里默认填写了OneAPI的快速默认key,测试通后,务必及时修改)      - CHAT_API_KEY=sk-fastgpt      # 数据库最大连接数      - DB_MAX_LINK=30      # 登录凭证密钥      - TOKEN_KEY=any      # root的密钥,常用于升级时候的初始化请求      - ROOT_KEY=root_key      # 文件阅读加密      - FILE_TOKEN_KEY=filetoken      # MongoDB 连接参数. 用户名myusername,密码mypassword。      - MONGODB_URI=mongodb://myusername:mypassword@mongo:27017/fastgpt?authSource=admin      # pg 连接参数      - PG_URL=postgresql://username:password@pg:5432/postgres      # sandbox 地址      - SANDBOX_URL=http://sandbox:3000      # 日志等级: debug, info, warn, error      - LOG_LEVEL=info      - STORE_LOG_LEVEL=warn      # 工作流最大运行次数      - WORKFLOW_MAX_RUN_TIMES=1000      # 批量执行节点,最大输入长度      - WORKFLOW_MAX_LOOP_TIMES=100      # 自定义跨域,不配置时,默认都允许跨域(多个域名通过逗号分割)      - ALLOWED_ORIGINS=      # 是否开启IP限制,默认不开启      - USE_IP_LIMIT=false    volumes:      - ./config.json:/app/data/config.json  # oneapi  mysql:    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mysql:8.0.36 # 阿里云    image: mysql:8.0.36    container_name: mysql    restart: always    ports:      - 23306:3306    networks:      - fastgpt    command: --default-authentication-plugin=mysql_native_password    environment:      # 默认root密码,仅首次运行有效      MYSQL_ROOT_PASSWORD: oneapimmysql      MYSQL_DATABASE: oneapi    volumes:      - ./mysql:/var/lib/mysql  oneapi:    container_name: oneapi    image: ghcr.io/songquanpeng/one-api:v0.6.7    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/one-api:v0.6.6 # 阿里云    ports:      - 3001:3000    depends_on:      - mysql    networks:      - fastgpt    restart: always    environment:      # mysql 连接参数      - SQL_DSN=root:oneapimmysql@tcp(mysql:3306)/oneapi      # 登录凭证加密密钥      - SESSION_SECRET=oneapikey      # 内存缓存      - MEMORY_CACHE_ENABLED=true      # 启动聚合更新,减少数据交互频率      - BATCH_UPDATE_ENABLED=true      # 聚合更新时长      - BATCH_UPDATE_INTERVAL=10      # 初始化的 root 密钥(建议部署完后更改,否则容易泄露)      - INITIAL_ROOT_TOKEN=fastgpt    volumes:      - ./oneapi:/datanetworks:  fastgpt:

如果是公网部署访问,一定要更改默认参数,避免被攻击。

我们准备好了以后,可以在yml的文件夹下执行如下命令,官网也是这个步骤:

# 启动容器docker-compose up -d# 等待10s,OneAPI第一次总是要重启几次才能连上Mysqlsleep 10# 重启一次oneapi(由于OneAPI的默认Key有点问题,不重启的话会提示找不到渠道,临时手动重启一次解决,等待作者修复)docker restart oneapi

安装容器的截图如下所示:

操作完成后,可以看到它会出现如下一些需要的容器实例,这里我用的是Mac版本的Docker,这里我安装的是最新版本的FastGPT,如下所示:

然后我们访问:http://localhost:3001/,可以看到One API的地址主页,然后我们单击登录,输入密码即可。默认账号为root密码为123456,FastGPT是采用OneAPI作为作为大模型的统一对对接,登录后如下:

然后我们选择渠道,填写上我们的智普AI的信息,或者Ollama的渠道信息:

然后我们添加一个令牌,其中模型范围需要自己添加上文本生成模型和向量模型:

OneAPI中我们添加好模型后,FastGPT好像是看不见的,我们需要提前更改config.json文件中的对外可见的模型,将我们的文本生成模型的名称、向量模型的名称配置到config.json文件中,这样FastGPT能够找到引用了哪些模型。

然后我们访问下FastGPT,浏览器输入:http://localhost:3000,看到主界面如下所示:

首次运行,会自动初始化 root 用户,密码为 1234,我们进行登录,登录后的主界面如下所示:

这样就部署完了。接下来我们开始搭建并实现一个我们的第一个AI客服。

03




知识库创建




1、首先我们选择知识库中的:通用知识库,来创建:

2、然后我们创建个数据集,这里我手动的准备了几个日常回答的问题对,这里我准备的是一种问答对的数据结构,通常用于FAQ类的问题的客服业务场景中:

格式如下:

Q:问题描述

A:答案

======

Q:问题描述

A:答案

然后点击下一步,这里我们选择自定义分段,然后设置自定义的分割符的格式为6个等号:

继续点击下一步,选择开始上传:

然后可以看到准备去索引了,右侧可以看到使用的索引的向量模型和文本生成模型是什么:

稍等一下,他就可以基于我们配置的向量模型实现知识的RAG的存储过程了。

如果这里一直是索引中的状态,说明没有索引完成,是不能被搜索到的。

索引完成后,可以看到我们的分片结果数据:

这样我们就基于一个问答对的方式,索引完成了相关的知识,同时这里的知识分成了2个片,每个知识片都是按照======分隔符分割的。

04




AI客服创建




1、接下来我们创建个简易应用:

2、取个名字,然后选择这个知识库+引导会话的模板,如下所示:

3、设置下基本信息和提示词,以及勾选对应的知识库。

然后我们问他一个问题,就可以看到从知识库中读取了:


05




AI客服发布




最后,我们在右上角选择应用发布即可,就可以给其他人使用了。首先我们切换到发布渠道页面:

在这个界面中,我们尝试选择下免登录窗口的设置,如果想通过API的方式给其他人使用,可以选择API访问的方式给其他人使用。

创建完成后,选择开始使用,然后提示选择:

这里有三种展示效果,我们选择第一种的连接地址,在浏览器中打开即可:

可以看到,他可以根据我们提供的知识,回答出我们想要的问题,而我们在知识库维护的知识问题是如下这个样子:

问题中,我们维护的问题是:leader让评估开发工作量,目前工作年限较低,没什么经验不知道怎么评估。

然后我们在AI客服中,提问的问题是:请问一下,在公司怎么做工时评估的,分享下经验呗。

可以看到两边的问题,从意思上是一致,这也是AI时代大模型和向量给我提供的:相似性搜索。

AI的出现,让我们日常的搜索出现了新的名词,这样对于我们日常可以看到的搜索大概会有如下几种:

1、精确搜索

2、模糊搜索

3、全文检索

4、基于向量实现的相似性搜索。

06


53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询