极光笔记 | 如何为您的业务开发和训练一个AI-BOT
生成式AI(Generative AI)是当今科技领域的前沿技术之一。随着数据量的不断增加和计算能力的不断提升,AI技术在企业和个人生活中的应用越来越广泛。AI-BOT(以下简称BOT)是生成式AI技术的其中一种重要的应用形式,它可以通过学习各类业务数据信息,帮助人们执行一系列任务,从而提高工作效率,减少人力成本。
而GPTBots作为BOT开发平台,一直是生成式AI的前沿探索者。本文将与您分享,如何在GPTBots上,为您的业务开发和训练一个拥有高可用性的BOT。
PART 01 准备工作
-
注册GPTBots平台
注册一个GPTBots账号,是开发BOT的第一步。
进入GPTBots平台(https://gptbots.ai/developer),点击【注册】,并登录到【开发者后台】。完成注册后,平台会为您赠送一些积分,这些积分能够让您进行平台功能的初体验,例如创建BOT、调试BOT、训练BOT等。如果完成企业认证,还可以获得高达 500 积分的赠送。
-
业务分析
首先,您需要明确BOT在您的业务中的定位和目标。
定位指的是BOT在您的业务中的特殊位置,它被用于解决某个特定领域的问题,因此与其他BOT是存在差异的。目标指的是BOT在您的业务中所能达成的具体结果,例如降低成本、提升人效等。
我们建议您可以把BOT理解为一名员工,这位员工知识渊博,无所不知,但在某些专业领域又有些欠缺。不过,只需要提供相关专业知识,它就可以化身领域专家,有效解决专业问题。因此,在明确定位和目标时,我们可以这么思考:
定位:一名非常专业的电商售后客服人员,他对于公司业务了如指掌,能够快速且专业地为客户解决各类型售后问题。
目标:提升客户服务效率和质量,降低客户服务成本。
其次,您需要了解BOT所需解决的业务领域中存在的问题和挑战。了解这些,有助于帮助您进一步定位BOT的能力范围。
-
数据收集
在明确了BOT的定位和目标后,我们需要为BOT进行数据收集。
根据上文我们提供的建议,我们把这个BOT想象成为一名无所不能的员工。但一名强大的员工,除非部分人有天赋以外,更多地一定是通过不断的知识学习和经验积累后才能做到的。而BOT的数据,指的就是BOT需要学习的知识。
继续使用上文的例子。“一名非常专业的电商售后客服人员”,一定是拥有非常丰富的公司售后业务知识,包括但不限于:公司的售后服务政策、公司历史处理售后问题经典案例……
因此,我们需要做以下工作:
1. 收集数据。作为给这个“电商售后BOT”的学习资料;
2. 数据分类。分类越清晰,越有助于BOT知识的维护管理,以及提升BOT的响应质量。例如电商售后服务知识,我们可以大致分类为:服务总则、服务细则、服务流程、常见问题、经典案例等;
3. 数据清洗及预处理。以保证最终给BOT学习的数据是相对“干净”,不含“杂质”的。
注意,数据的收集并不是越多越好,更重要的是数据的质量。我们需要给BOT“学习”高质量的知识,BOT才能给我们输出高质量的结果。
PART 02 构建BOT
在以上准备工作均已完成后,就可以开始构建这个“电商售后BOT”。
更多的GPTBots使用教程,请访问GPTBots官方文档
(https://gptbots.gitbook.io/gptbots.zh/),在本文中不做详细展开。
-
创建BOT
根据业务实际,创建合适类型的BOT。GPTBots定义了两类BOT:
- 知识问答:拥有“短记忆”能力,适用于一些简单的问答场景,例如翻译、客服、知识检索等;
- 智能助理:拥有“短记忆+长记忆”能力,适用于较为复杂的对话场景。
用户可按自身实际需求来选择BOT类型。
-
身份提示撰写技巧
在构建BOT的过程中,比较重要的一个环节,就是为BOT撰写身份提示。
身份提示可用来塑造BOT的身份、能力,边界和情绪等。一个优质的身份提示,能够让BOT以更加符合期望地回复用户问题。
我们可以用一个通用的结构来撰写身份提示,如下:
- 角色:BOT需要担任的角色,如“专业的售后服务人员”;
- 技能:BOT需要拥有的技能,如“出色的售后服务能力与客户沟通技巧”;
- 个性:BOT的语气、个性、沟通方式等,如“语气请平和,用词需礼貌”;
- 目标:BOT的任务目标,如“基于参考内容及客户提问,回答客户的问题”;
- 链式思考:为BOT提供一些思考流程与方式,以引导BOT按照你的要求进行思考和解决问题,如“MUST follow these steps to answer the customer queries: Step1 - Step2 - Step3 - Step4...”。在一些较为垂直、特定的场景下,该方法非常好用。
- 输出规则:若您需要BOT输出内容为特定结构或格式(如:json、markdown……),您也可以在此定义。请注意,这部分不是必须的,可按实际需求撰写。
以上文“电商售后BOT”为例,我们可以这样撰写身份提示:
请扮演一名专业的售后服务人员。你拥有出色的售后服务能力与客户沟通技巧。你的任务是,基于参考内容及客户提问,回答客户的问题。语气请平和,用词需礼貌。
PART 03 训练BOT
在设定好BOT的基本信息后,我们需要对BOT进行知识“投喂”以及训练。
-
知识输入
我们需要将数据收集阶段收集到的售后服务类数据,以合适的格式,“投喂”给BOT进行训练。GPTBots平台目前支持文档导入(.docx、.md、.txt、……)、网站爬取、在线文本、在线Q&A等方式进行知识输入。
-
向量搜索
训练完成后,可以立刻通过“向量搜索”功能,对知识进行向量搜索测试,检查命中情况,目的是为了观察已经训练好的知识在面对实际问题时,是否能够有效地完成信息召回。
-
聊天记录训练
在BOT已经投入使用后,我们依然可以对BOT进行反复训练。
目前GPTBots支持基于用户的聊天记录进行训练。这种训练方式的优势在于,训练的语料使用的是用户在使用BOT过程中实际发生的对话,使用这些对话作为训练材料,能够让BOT更有效地接近实际的用户使用场景。
-
调试BOT
调试模式可以帮助开发者一边使用BOT一边调整BOT参数,以让BOT达到开发者所期望的效果。
PART 04 更复杂的场景,如何处理?
在实际业务中,会很多远比售后服务问答要复杂得多的场景。面对这些场景,GPTBots提供了更丰富的处理方式以应对。
-
为BOT插上翅膀——插件能力
大语言模型(LLM)本身是有知识范围限制的,当需要LLM帮助我们处理更多业务定制化的、复杂的任务时,我们可以通过为LLM添加插件的方式,扩展LLM的能力,使BOT拥有更加强大的能力。
GPTBots当前已支持插件功能。
GPTBots官方已经提供了一些免费的公开插件供用户使用(更多的官方插件正在陆续开发中……)。
同时,GPTBots也支持开发者自行开发插件,以个性化地覆盖自身的业务场景。例如,开发者可以通过开发插件,将BOT对接到自己的业务系统,调用自己的业务数据,让BOT来处理特定业务工作。
-
用可视化流程(FLOW)构建BOT
若是存在更加复杂的业务场景,则可以通过可视化流程(FLOW)来构建BOT。
GPTBots目前正在内测的FLOW构建BOT功能。我们将一个BOT应有的或常见的模块抽象为多个组件,用户可以通过在可视化面板上拖拉拽的方式,个性化地构建一个复杂场景下的BOT,以解决更加垂直、更加特定场景下的问题。
-
将BOT与业务连接
GPTBots支持将构建好的BOT与用户自己的业务进行连接,目前主要有以下三种方式:
- API:GPTBots当前提供了多个与BOT进行交互的API,包括但不限于创建对话、发送消息、获取消息等;
- iframe网页嵌入:将BOT对话界面以iframe的形式嵌入到您的网页内进行使用;
- bubble网页小部件:将BOT以bubble小部件的形式嵌入到您的网页内进行使用,它将以气泡的形式,展示在您网页的右下角。
写在最后
在生成式AI发展迅猛的今天,GPTBots为开发者提供了强大的自主构建AI-BOT的能力,能够帮助开发者快速高效地构建个性化的BOT,以解决其业务痛点或问题,驱动业务增长。
访问极光GPTBots官网 https://www.gptbots.a立即注册体验
注册即赠送积分赠送。参与企业认证或邀请好友注册,也能获取更多积分~
关于极光
极光(Aurora Mobile,纳斯达克股票代码:JG)成立于2011年,是中国领先的客户互动和营销科技服务商。成立之初,极光专注于为企业提供稳定高效的消息推送服务,凭借先发优势,已经成长为市场份额遥遥领先的移动消息推送服务商。随着企业对客户触达和营销增长需求的不断加强,极光前瞻性地推出了消息云和营销云等解决方案,帮助企业实现多渠道的客户触达和互动需求,以及人工智能和大数据驱动的营销科技应用,助力企业数字化转型。
相关文章:

极光笔记 | 如何为您的业务开发和训练一个AI-BOT
生成式AI(Generative AI)是当今科技领域的前沿技术之一。随着数据量的不断增加和计算能力的不断提升,AI技术在企业和个人生活中的应用越来越广泛。AI-BOT(以下简称BOT)是生成式AI技术的其中一种重要的应用形式…...
如何给ELK日志加上索引
问题记录 1、遇到长流程的时候,日志记录是非常重要的。如何排查日志,可以在MDC中去put对应的值,这样就等于对你关心的关键字段加上了索引,在elk中可以通过该索引就能 容易排查到问题 logback的设置 可以参照: 【总体…...
elementUI遇到的问题记录
一、 组件:el-table 问题:使用动态数据创建多级表头后,刷新页面时,table行会串行,某些列丢失,图片列未显示图片 解决方案:给el-table增加key <el-table :key"${Matn.random()}${ite…...

计算机竞赛 协同过滤电影推荐系统
文章目录 1 简介1 设计概要2 课题背景和目的3 协同过滤算法原理3.1 基于用户的协同过滤推荐算法实现原理3.1.1 步骤13.1.2 步骤23.1.3 步骤33.1.4 步骤4 4 系统实现4.1 开发环境4.2 系统功能描述4.3 系统数据流程4.3.1 用户端数据流程4.3.2 管理员端数据流程 4.4 系统功能设计 …...

网络综合布线实训室建设方案
一、网络综合布线系统概述 网络综合布线系统是为了满足数据通信需求而设计和建立的一套基础设施。它提供了数据传输、信号传输和电力供应的基础结构,支持各种网络设备和终端设备之间的连接。 网络综合布线系统通常包括以下组成部分: 1) 数据…...

【山河送书第七期】:《强化学习:原理与Python实战》揭秘大模型核心技术RLHF!
《强化学习:原理与Python实战》揭秘大模型核心技术RLHF! 一图书简介二RLHF是什么?三RLHF适用于哪些任务?四RLHF和其他构造奖励模型的方法相比有何优劣?五什么样的人类反馈才是好反馈?六如何减小人类反馈带来…...
LeetCode 400. 第 N 位数字——JAVA
题目描述: 给你一个整数 n ,请你在无限的整数序列 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...] 中找出并返回第 n 位上的数字。 示例 1: 输入:n 3 输出:3示例 2: 输入:n 11 输出࿱…...

解决生成式AI落地之困,亚马逊云科技提供完整解决方案
生成式AI技术无疑是当前最大的时代想象力之一。 资本、创业者、普通人都在涌入生成式AI里去一探究竟:“百模大战”连夜打响,融资规模连创新高,各种消费类产品概念不断涌现……根据Bloomberg Intelligence 的报告,2022年生成式AI 市…...

【5款登录验证校验】基于jquery实现的5款登录验证码组件(附完整源码)
文章目录 写在前面涉及知识点1、随机字母验证码1.1 效果1.2 实现源码 2、数字运算验证码2.1 效果2.2 实现源码 3、滑块验证码3.1 效果3.2 实现源码 4、图片补全验证码4.1 效果4.2 实现源码 5、顺序点选验证码5.1 效果5.2 实现源码 6、源码分享6.1 百度网盘6.2 123网盘6.3 邮箱留…...

数据结构的树存储结构
数据结构的树存储结构 之前介绍的所有的数据结构都是线性存储结构。本章所介绍的树结构是一种非线性存储结构,存储的是具有“一对多”关系的数据元素的集合。 (A) (B) 图 1 树的示例 图 …...

linux--epoll
epoll 参考文献 https://www.cnblogs.com/lojunren/p/3856290.html https://www.51cto.com/article/717096.html linux下的I/O复用epoll详解 要深刻理解epoll,首先得了解epoll的三大关键要素:mmap、红黑树、链表。 IO多路复用 首先需要了解什么是IO多…...

async和await
一,基本使用 其实就是之前学过的异步函数,异步编程在函数前写一个ansyc,就转化为异步函数,返回的是一个promise对象,于是就可以使用await关键字,可以把异步函数写成同步函数的形式,极大地提高代…...

如何从cpu改为gpu,pytorch,cuda
1.cmd输入nvcc -V 2.得到 cuda版本后,去pytorch官网 3.根据自己的cuda进行选择 4.复制上述链接,进入cmd 5.cmd中输入activate XXX,这里的"XXX"指代自己在工程中用到的环境 6.进入后,将刚才链接粘贴,回车等待下载结束 …...

JavaScript简介--语句--变量
目录 JavaScript简介 为什么学习 JavaScript JavaScript与ECMAScript的关系 JavaScript版本 JavaScript语句、标识符 语句 标识符 JavaScript保留关键字 变量 变量的命名规则 数据类型 变量的重新赋值 变量提升 运算符 条件语句 循环语句 JavaScript简介 JavaScri…...

Windows CMD 关闭,启动程序
Windows CMD 关闭,启动程序 1. Windows 通过 CMD 命令行关闭程序 示例:通过 taskkill 命令关闭 QQ 管家,但是这里有个问题,使用命令行关闭 QQ 管家时,会提示“错误: 无法终止 PID 1400 (属于 PID 22116 子进程)的进程…...
统计XML标注文件中各标注类别的标签数量
目标检测任务重,担心数据集中各标签类别不均衡,想统计XML标注文件中各标注类别的标签数量,可以使用以下脚本: import os import glob import xml.etree.ElementTree as etdef count_labels(source_dir):file_list glob.glob(os.…...

一百六十、Kettle——Linux上安装的Kettle9.2.0连接Hive3.1.2
一、目标 Kettle9.2.0在Linux上安装好后,需要与Hive3.1.2数据库建立连接 之前已经在本地上用kettle9.2.0连上Hive3.1.2 二、各工具版本 (一)kettle9.2.0 kettle9.2.0安装包网盘链接 链接:https://pan.baidu.com/s/15Zq9w…...

C++新经典03--共用体、枚举类型与typedef
共用体 共用体,也叫联合,有时候需要把几种不同类型的变量存放到同一段内存单元,例如,把一个整型变量、一个字符型变量、一个字符数组放在同一个地址开始的内存单元中。这三个变量在内存中占的字节数不同,但它们都从同…...

HCIP-OpenStack组件介绍
openstack把这些组件服务都集成到httpd服务中了,目的是为了提升性能。登入不了openstack在控制节点查下httpd服务,systemctl status httpd Horizon:提供webUI图形化界面的 Keystone:提供身份认证服务、授权、endpoint端点…...

2682. 找出转圈游戏输家
题目描述: n 个朋友在玩游戏。这些朋友坐成一个圈,按 顺时针方向 从 1 到 n 编号。从第 i 个朋友的位置开始顺时针移动 1 步会到达第 (i 1) 个朋友的位置(1 < i < n),而从第 n 个朋友的位置开始顺时针移动 1 步…...

docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
【JavaSE】多线程基础学习笔记
多线程基础 -线程相关概念 程序(Program) 是为完成特定任务、用某种语言编写的一组指令的集合简单的说:就是我们写的代码 进程 进程是指运行中的程序,比如我们使用QQ,就启动了一个进程,操作系统就会为该进程分配内存…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...
TJCTF 2025
还以为是天津的。这个比较容易,虽然绕了点弯,可还是把CP AK了,不过我会的别人也会,还是没啥名次。记录一下吧。 Crypto bacon-bits with open(flag.txt) as f: flag f.read().strip() with open(text.txt) as t: text t.read…...

2025年- H71-Lc179--39.组合总和(回溯,组合)--Java版
1.题目描述 2.思路 当前的元素可以重复使用。 (1)确定回溯算法函数的参数和返回值(一般是void类型) (2)因为是用递归实现的,所以我们要确定终止条件 (3)单层搜索逻辑 二…...