Chatto企业AI助手产品技术拆解(上)

news2024/9/19 10:41:06

往期文章:

  • AI智能客服项目拆解(1) 产品大纲

在上一篇文章中,我们详细介绍了AI智能客服的基本概念、需求分析、产品形态及分类,以及AI在线客服的用户体验流程和系统架构。为了更深入地理解AI智能客服的内在工作机制和技术实现,本文将作为系列文章的第二篇,专注于剖析某AI智能客服产品的具体技术细节。

本文将探讨以下关键点:

  • 知识库构建与管理:介绍如何构建和维护知识库,以及它是如何支持智能客服提供个性化和准确的服务的。
  • 智能助手定制过程:智能助手的训练过程,包括数据收集、助手定制、评估和优化等。

Chatto简介

在这里插入图片描述
Chato是一款智能对话AI助手平台,可以帮助企业快速定制独特个性和超强能力的专属AI助手,将AI助手运用到多种对外的应用和使用场景。某知名电商平台,他们使用ChatoAI助手作为客服智能助手,帮助用户解答问题、提供售后服务、进行投诉处理等等。通过ChatoAI助手的智能问答技术,用户可以快速获取到所需的信息和服务,提高了用户的满意度和忠诚度。同时,AI助手还可以根据用户的历史记录和行为进行智能推荐和个性化服务,提高了用户的购物体验和转化率。

Chatto如何实现定制化

在这里插入图片描述

  • 角色设定: 给AI设定一个基础角色,可以是
    客服、销售、培训师、营销人员、行业专家等,让AI助手更符合您的业务形象。
  • 上传文档并建立知识库: 通过录入文档或问答来创建知识库,让AI助手学习,根据AI助手训练情况,可随时删除或替换文档。
  • 为答案提供来源: AI助手的答案可附带文档来源,回答有理有据,训练效果满意后再发布。
  • 多终端发布渠道: 满足多种业务场景,为您服务各渠道客户。包括网页、微信群、JS 嵌入网页、接入API,更多发布形式持续升级中。

Chatto助手的工作原理

在这里插入图片描述

Chatto助手的设定主要包括角色与知识库的设定,角色设定是为了让AI助手能够按照描述的要求以一定的规则进行回答,知识库的设定是为了让AI助手能够学习企业的业务知识,从而能够更加准确的回答用户关于企业业务的问题。

下面让我们拆解一下其中的原理。这是经典的RAG系统的流程:

在这里插入图片描述
结合RAG系统的框架图,不难看出:
角色设定的技术内涵是设定一段系统提示词,当用户输入问题时,Chatto便将设定的系统提示词与用户输入的问题组合成messages发送到GPT模型中,最终获得回答。

知识库便是RAG系统中的Documents和Indexing部分,当用户问题无法通过GPT模型回答时,Chatto便会从知识库中根据用用户输入相关的问题,从知识库中检索相关的文档,并与系统提示词和用户问题组合成messages发送到GPT模型中,最终获得回答。

Chatto的知识库管理

Chatto的知识库管理主要包括数据的录入与更新两部分。录入是为了让助手能够学习企业的私有数据,更新是为了优化助手的回答效果或者根据业务需求进行调整。

数据录入

其中数据的录入分为两种方式:问答集和文档集。

问题的录入有两种形式,可以手动输入也可以批量上传。

手动输入
在这里插入图片描述
批量上传
在这里插入图片描述
文档集的录入有多种方式,包括上传文档、输入文本、网页抓取、公众号抓取等。

在这里插入图片描述
问答集有助于Chatto学习客服回复的口吻,常见问题的回答方式,以及客户的问题类型。文档集则有助于Chatto学习企业的业务知识,从而能够更加准确的回答用户关于企业业务的问题。 无论那种方式,录入的数据都会预处理成为不同的段落,最后落入到向量数据库中,以便Chatto能够快速检索。

涉及到的技术主要是RAG,这其中包含:数据预处理、文本向量化、文本相似度计算等、文本检索等。 可以通过LlamaIndex或者langchain document loaders快速实现。

如果追求更多的数据源的接入,可以尝试airbyte,airbyte提供300种以上的数据源接入,可以接入大多数的数据源。

在这里插入图片描述

数据更新

Chatto提供助手预览功能,可以测试助手的回答效果,根据实际情况调整问答集。
在这里插入图片描述

在点击右侧修正按钮后,将会进入到单条问题的录入模块,会把问题和助手的回复自动带上,进过修改后,相当于上传了一条新的问答文档。

然而这种方式,人工成本较高,需要人工逐条修改,如果数据量较大,可以考虑使用自动测评系统,及时发现不能回答的问题,然后进行人工修改。

结语

以上便是本文内容,主要涵盖了智能助手定制过程与知识库管理。下期我们深入到RAG系统中,拆解下RAG系统的原理,以及大模型是如何根据知识库中的文档进行检索和问答的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1923758.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【读论文】Instant Neural Graphics Primitives with a Multiresolution Hash Encoding

文章目录 1. What2. Why2.1 Introduction2.2 Related work and background 3. How: Multiresolution hash encoding3.1 Structure3.2 Input coordinate3.3 Hash mapping3.4 Interpolation3.5 Performance vs. quality3.6 Hash collision 4. Experiment on Nerf 1. What To red…

Pygame开发五子棋之人机对战游戏

引言 Pygame是一个基于Python的开源游戏开发库,它包含了丰富的多媒体功能,尤其是针对游戏开发所需的各种组件。如果你对游戏开发感兴趣,但又不想从底层开始编写所有东西,Pygame可以成为一个理想的起点。本文将介绍Pygame的基本概…

C++:类和对象 I(访问限定符、this指针)

目录 类的定义 类的大小 访问限定符 实例化 this指针 类的定义 class就是类,class是C中的一个关键字 当然类也可以是C语言中的struct,C兼容struct,甚至还有一些升级 定义类的方式 class Date {}; 和C语言的struct一样,c…

【信息收集】域名信息收集

域名介绍 域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。 DNS&#xf…

【Python】jupyter notebook平台的使用·

目录 一、安装Anaconda 二、 将BreadCancer.zip上传到jupyter notebook平台中 三、了解BreadCancerClassifier.ipynb文件在jupyter notebook的单元格中的python代码,并运行。 3.1 导入mainFun文件 3.2 读入数据 3.3 开始训练 3.4 读入测试数据 3.5 开始测试…

[笔记] SEW的振动分析工具DUV40A

1.便携式振动分析仪 DUV40A 文档编号:26871998/EN SEW是一家国际化的大型的机械设备供应商。产品线涵盖电机,减速机,变频器等全系列动力设备。DUV40A是他自己设计的一款振动分析工具。 我们先看一下它的软硬件参数: 内置两路传…

i7-13700K负载过高时出现无故自动重启(蓝屏问题)

现象:电脑无故自动重启,关闭故障自动重启后,发现系统蓝屏,然后需要手动重启。经测试,当CPU负载高时,就会有一定概率出现蓝屏。 配置:CPU为i7-13700K,系统为Win11 解决方法 现象刚…

Python那些优质可视化工具!

作者:Lty美丽人生 https://blog.csdn.net/weixin_44208569 本次分享10个适用于多个学科的Python数据可视化库,其中有名气很大的也有鲜为人知的! 1、matplotlib 两个直方图 matplotlib 是Python可视化程序库的泰斗。经过十几年它任然是Pytho…

mitmproxy介绍及使用

mitmproxy介绍 mitmproxy又名中间人攻击代理,是一个抓包工具,类似于WireShark、Filddler,并且它支持抓取HTTP和HTTPS协议的数据包,只不过它是一个控制台的形式操作。另外,它还有两个非常有用的组件,一个mi…

漏扫处理:SSH弱算法问题解决

目录 漏洞说明解决方法1. 查看可用的算法2. 禁用弱算法3.检查ssh配置4.重启ssh服务5.ssh测试连接是否正常6.漏扫测试参考链接漏洞说明 通过漏扫得出,服务器SSH支持密钥交换算法,而此算法被认为是弱算法,存在高风险问题。 启用了以下弱算法: diffie-hellman-group-exchage…

前端JS特效第33波:jQuery旋转木马焦点图轮播插件PicCarousel

jQuery旋转木马焦点图轮播插件PicCarousel&#xff0c;先来看看效果&#xff1a; 部分核心的代码如下&#xff1a; <!doctype html> <html> <head> <meta charset"utf-8"> <meta http-equiv"X-UA-Compatible" content"IE…

Go 初始化一个字典

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

Python量化交易学习——Part12:回归模型的典型应用

回归模型在很多的时候被应用于对股票的基本面数据进行分析&#xff0c;例如经典的CAPM模型、Fama-French三因子模型以及最新的PB_ROE模型等。这些都是已经应用于现实中的金融市场并获得较好收益的经典模型。本章将通过介绍PB_ROE模型&#xff0c;进一步讲解回归分析在实战过程中…

深入探讨【C++容器适配器】:现代编程中的【Stack与Queue】的实现

目录 一、Stack&#xff08;栈&#xff09; 1.1 Stack的介绍 1.2 Stack的使用 1.3 Stack的模拟实现 二、Queue&#xff08;队列&#xff09; 2.1 Queue的介绍 2.2 Queue的使用 2.3 Queue的模拟实现 三、容器适配器 3.1 什么是适配器 3.2 为什么选择deque作为stack和…

【web】-sql注入-login

根据网址提示打开如图&#xff1a; 查看源代码前台并没有过滤限制、扫描后台也没有发现特殊文件。看到标题显示flag is in database&#xff0c;尝试sql注入。 由于post,bp抓包如下&#xff1a; 运行python sqlmap.py -r 1.txt --dump 获取flag 42f4ebc342b6ed4af4aadc1ea75f…

solidity实战练习3——荷兰拍卖

//SPDX-License-Identifier:MIT pragma solidity ^0.8.24; interface IERC721{function transFrom(address _from,address _to,uint nftid) external ; }contract DutchAuction { address payable immutable seller;//卖方uint immutable startTime;//拍卖开始时间uint immut…

Facebook 开源计算机视觉 (CV) 和 增强现实 (AR) 框架 Ocean

Ocean 是一个独立于平台的框架&#xff0c;支持所有主要操作系统&#xff0c;包括 iOS、Android、Quest、macOS、Windows 和 Linux。它旨在彻底改变计算机视觉和混合现实应用程序的开发。 Ocean 主要使用 C 编写&#xff0c;包括计算机视觉、几何、媒体处理、网络和渲染&#x…

git安装使用gitlab

第一步&#xff1a;下载git 第二步&#xff1a;安装 第三步&#xff1a;配置sshkey 第四步&#xff1a;处理两台电脑的sshkey问题 第一步下载git 网址&#xff1a;Git点Downloads根据你的操作系统选择对应的版本&#xff0c;我的是Windows&#xff0c;所以我选择了Windows …

细数「人力资源」的「六宗罪」

细数「人力资源」的「六宗罪」 不要让人力资源成为企业发展的障碍 人力资源的六宗罪: 招聘与配置培训与开发薪酬与绩效请您先「点赞」+「在看」+「收藏」+关注@netkiller,转发给你的朋友,再慢慢看,方便查看往期精彩文章,以防手划找不到,您的支持就是我最大的动力。 人力…

玩转springboot之SpringBoot打成jar包的结构

SpringBoot打成jar包的结构 springboot通常会打成jar包&#xff0c;然后使用java -jar来进行执行&#xff0c;那么这个jar包里的结构是什么样的呢 其中 BOOT-INF 中包含的classes是我们程序中所有的代码编译后的class文件&#xff0c;lib是程序所引用的外部依赖 META-INF 这个…