极光笔记 | 如何为您的业务开发和训练一个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 步…...

RESTAPI简介与DRF使用
RESTAPI 以资源为url,通过不同的请求方式实现不同的行为。 以资源名作为url POST:增 …/student/ GET:查所有 …/student/ GET:查单个 …/student/<pk>/ 获取idpk的学生 DELETE:删 …/student/<pk>/ PUT&#…...

深度学习笔记(kaggle课程《Intro to Deep Learning》)
一、什么是深度学习? 深度学习是一种机器学习方法,通过构建和训练深层神经网络来处理和理解数据。它模仿人脑神经系统的工作方式,通过多层次的神经网络结构来学习和提取数据的特征。深度学习在图像识别、语音识别、自然语言处理等领域取得了…...

windows下载任意版本php
zzwindows.php.net - /downloads/releases/archives/ windows下载php,记录一下...

Linux命令
操作系统管理硬件设备,并为用户和应用程序提供一个简单的接口,以便于使用。(作为中间人,连接软件和硬件)不同应用领域的主流操作系统 桌面操作系统 Windows系列::用户群体大 macOS:适合于开发人…...

TDD(测试驱动开发)?
01、前言 很早之前,曾在网络上见到过 TDD 这 3 个大写的英文字母,它是 Test Driven Development 这三个单词的缩写,也就是“测试驱动开发”的意思——听起来很不错的一种理念。 其理念主要是确保两件事: 确保所有的需求都能被照…...

C/C++
const 作用 修饰变量,说明该变量不可以被改变;修饰指针,分为指向常量的指针(pointer to const)和自身是常量的指针(常量指针,const pointer);修饰引用,指向…...

CCF C³ 走进百度:大模型与可持续生态发展
2023年8月10日,由CCF CTO Club发起的第22期C活动在百度北京总部进行,以“AI大语言模型技术与生态发展”主题,50余位企业界、学界专家、研究人员就此进行深入探讨。 CCF C走进百度 本次活动,CCF秘书长唐卫清与百度集团副总裁、深…...

Vue使用html2canvas将DOM节点生成对应的PDF
要通过Vue使用html2canvas将DOM节点生成对应的PDF,您需要安装html2canvas和jspdf这两个库。html2canvas用于将DOM节点转换为Canvas,而jspdf用于将Canvas转换为PDF。以下是一个简单的示例代码,展示了如何使用html2canvas和jspdf生成PDF文件&am…...

专访阿里云席明贤,视频云如何运用大模型与小模型来破茧升级2.0
不久前,LiveVideoStack与阿里云视频云负责人席明贤(花名右贤)展开一场深度的对话,一个是圈内专业的社区媒体,一个是20年的IT老兵,双方有交集、有碰撞、有火花。 面对风云变幻的内外环境,阿里云…...

Vue 2的计算属性与侦听器
计算属性 vs 方法 vs 侦听器 计算属性的出现是为了解决模板内表达式太过复杂而变得难以维护。 假设我们知道长和宽,要计算一个矩形的面积,如果没有计算属性,我们可能像下面这样处理: <div id"app"><input t…...