Getting Started
1. TorchV AI 是什么?
TorchV AI 是一款基于大语言模型(Large Language Model,后文简称LLM)和检索增强生成(Retrieval-augmented generation,后文简称RAG)技术的人工智能PaaS产品,目标是帮助企业快速建立AI应用。
在使用方面,TorchV AI的产品价值最简单总结就是:开箱即用、稳定高效。
TorchV AI是基于TorchV原创的RAG+Agent中间件系统,从整体系统架构来看,具体如下:
下面我们从下往上逐层描述TorchV AI的组成:
- RAG和Agent:RAG(检索增强生成)和Agent是目前大语言模型落地到企业应用的事实标准,也是TorchV AI的核心中间件之一;
- Tenant:租户系统,这是我们支起多租户PaaS/SaaS平台的基础;
- OSS:在线文件存储,包括客户上传的文件,以及从URL中导入的数据等;
- ChatBot:TorchV AI会提供一个默认的Web版问答系统,客户可以在上面对知识进行测试,对于内部使用场景,也可以直接使用;
- 数据&洞察分析:对数据进行分析,包括客户预先设定的一些洞察条件,一旦触发条件,就会进行指定动作,如产品和服务的推荐,咨询分流等。客户在这里也可以对数据进行同步,导入到自己的系统,作为数据分析的数据基础;
- 知识库管理:创建知识库,为每个知识库上传和导入文件,一旦上传,文件立即被系统处理,变成chunk(小块文本)和embedding之后的向量数据等;
- 运营后台:包括计费系统、各类参数配置、对话记录查看和标注、用户权限设置和反馈处理等功能;
- 应用中心:一个客户即可创建多个应用,然后通过API对接自己的原有系统,或者根据API创建新应用。除了API之外,我们还提供一键嵌入的对接方式,只需引入几行js代码,即可在客户的Web应用上开启悬浮icon,提供TorchV AI的对话能力。
2. 关于RAG
RAG(Retrieval-Augmented Generation,检索增强生成)是为大语言模型 (LLMs) 提供了从数据源检索的信息,以此为基础生成回答。简而言之,RAG结合了搜索技术和大语言模型的提示功能,即模型根据搜索算法找到的信息作为上下文来回答查询问题。无论是查询还是检索的上下文,都会被整合到发给大语言模型的提示中,然后让大语言模型根据召回的事实内容进行润色输出。 在2023年,大语言模型(LLM)逐渐火热之后,基于RAG架构的大语言模型系统成为最受欢迎的技术。许多产品几乎全依赖RAG架构,这包括结合网络搜索引擎和大语言模型的问答服务,以及数以百计的数据交互应用程序。
RAG的优势
RAG结合大语言模型使用,可以有效解决大语言模型本身存在的三个主要问题:
- 数据时效性问题:RAG可以根据用户上传的最新知识,将系统的知识时效性快速提升,而传统LLMs则需要进行成本高昂的大模型全(或增)量训练或微调;
- 幻觉问题:LLMs对于用户行业知识匮乏的时候,会出现常见的幻觉问题。使用RAG可以基于给定内容进行检索,降低最终输出的幻觉。TorchV AI提供系统级参数控制,甚至可以设置在检索召回内容质量不高的情况下,不让LLMs介入,而是直接回复“不知道”;
- 数据安全问题:对于数据安全要求极高的企业用户,如果不想使用在线大语言模型(如智谱、通义千问、百川、文心一言等),那么可以采用完全本地化部署。采用RAG可极大降低LLMs要求,配合百亿级别参数的可本地部署大模型即可提供绝大多数AI服务,还让企业数据保不出内网。
RAG的劣势
相比于Long-Context
(长上下文)类型的大语言模型,RAG在上下文注意力(可以理解我记忆)方面的能力稍弱。比如理解一本10万字的小说,具备长上下文的大模型在理论上可以做到结合整本小说的角色和情节进行综合推理,而RAG受限于召回率(recall
)与精准度(precsion
)的抉择,会有缺失。
目前的主流做法是使用RAG结合Long-Context
大语言模型来补充各自缺点,如TorchV AI就采用了月之暗面Moonshot-v1-128k
的大语言模型。
3.关于Agent
Agent是一种可以借助LLM和CoT(思维链)实现多任务操作的智能体,在企业业务中往往可以应用在业务流程的搭建中。
在TorchV AI中用于研报输出、合同预审批、项目预审批、智能日报汇总等应用中,我们会在24年6月为TorchV AI增加Assistant能力,帮助企业完成更多复杂业务。
4. 其他中间件
除了RAG,架构中还是用了多个中间件,如幂等分类器(IC)、执行器(Actuator)和连接器(Connector),下面简要叙述它们的作用:
- 幂等分类器(IC):IC的作用是理解用户输入内容,将输入内容中的实体内容(entity)、时间段和意图(特别涉及到行业分类、多学科分类等)进行识别,提前做路由判断,帮助检索系统找到更准确的内容。帮助RAG系统过滤掉绝大部分信息,加入更准确的辅助信息,帮助RAG系统过滤干扰内容,帮助LLMs减少幻觉。TorchV IC尚属于开发的早期,还有不少工作需要继续迭代;
- 执行器(Actuator):根据LLMs生成的代码,特别是CSS等,会出现随机现象。执行器在执行过程中会加入全局样式,保证输出风格尽量统一;
- 连接器(Connector):只需将文件目录、数据库链接、内部API等配置完成,即可让本地数据在使用时完成数据格式转换和数据抽取,实现数据格式统一,且可在后台提供清晰UI界面,让用户具备自行管理内部数据绑定的能力。