一、前言
人工智能的关键,不只是构建好算力、算法、模型,更重要的是做好数据的清洗、处理、挖掘等问题。一定程度上,智能时代,企业数据处理能力有多强,决定了业务发展的天花板有多高。
在企业数智化转型过程中,文本、图片、视频等多模态的、非结构化数据的使用需求不断增加,而在复杂的企业数据处理中,适合关系型数据库的,结构化数据仅有20%,其余80%是文本、图像、视频、文档等非结构化数据。
而能力再强大的 LLM 也只能取代人部分学习和推理能力,无法取代存储和访问数据的能力;参数再多的 LLM 也不能仅凭基于通用数据的训练就能精确表达企业内部海量且丰富的数据。而处理这类数据,才是私有化场景的主要需求。
- 一方面,企业很难把自己具有核心竞争力的数据放到大模型中去训练;
- 另一方面,企业的业务数据变化速度快,且实时性强,因此私有化部署后的大模型、在数据层上也很难做到秒、天级别的更新。
二、AI 原生数据库概述
AI 的全流程其实都是围绕着向量的数学运算,向量是基于不同特征或属性来描述对象的数据表示。每个向量代表一个单独的数据点,例如一个词或一张图片,由描述其许多特性的值的集合组成。这些变量有时被称为"特征"或"维度"。例如,一张图片可以表示为像素值的向量,整个句子也可以表示为单词嵌入的向量。一些常用的数据向量如下:
- 图像向量,通过深度学习模型提取的图像特征向量,这些特征向量捕捉了图像的重要信息,如颜色、形状、纹理等,可以用于图像识别、检索等任务;
- 文本向量,通过词嵌入技术如Word2Vec、BERT等生成的文本特征向量,这些向量包含了文本的语义信息,可以用于文本分类、情感分析等任务;
- 语音向量,通过声学模型从声音信号中提取的特征向量,这些向量捕捉了声音的重要特性,如音调、节奏、音色等,可以用于语音识别、声纹识别等任务。
而AI原生数据库是一种用于存储和检索以及分析大规模向量数据的数据库系统,其使用专门的数据结构和算法来处理向量之间的相似性计算和查询,通过构建索引结构,快速找到最相似的向量,满足各种应用场景中的查询需求。
AI原生数据库不是一款单纯的向量数据库,而是一种为支持整个AI工作流程而设计的综合性数据库系统。其提供向量搜索、全文搜索和结构化数据检索,可以支撑大模型对于复杂数据的获取需求,能够配合大模型共同支撑起企业门户业务需求的基础软件产品。
区别于传统数据库,AI 原生数据库主要有以下特点:
- 能够处理半/非结构化的数据:传统数据库主要处理结构化数据,如数值、字符串、时间等。而向量数据库则专注于处理向量数据,这些向量数据通常由多个数值组成,能够表示图像、音频、文本等复杂数据的特征或属性
- 远超传统 关系型数据库 的规模:传统的关系型数据库管理1亿条数据已经是拥有很大的业务流量,而AI原生数据库则专注于处理向量数据,使用向量空间模型来存储数据,这些向量在多维空间中相互关联。向量数据库可以把复杂的非结构化数据,处理成多维逻辑的坐标值,与大模型进行连接,数据处理效率比传统方式提升10倍
- 查询方式不同:传统数据库查询通常为精确查询,结果一般为查到或者未查到,而AI原生数据库不仅支持全文检索,还能将全文检索与结构化数据检索相结合,提供更为丰富和灵活的查询方式。这种结合能力使得AI原生数据库能够更好地服务于AI应用,满足复杂多样的查询需求。
三、AI 原生数据库工作原理
3.1、大模型 的幻觉问题
大模型的幻觉问题,尤其是在自然语言处理(NLP)和生成式人工智能(AI)领域,是一个日益受到关注的重要议题。随着深度学习技术的进步,特别是大型预训练语言模型(如GPT系列、BERT等)的兴起,模型能够生成高度连贯、自然的语言文本,极大地推动了AI在内容创作、对话系统、问答系统等方面的应用。然而,这种能力也伴随着潜在的"幻觉"风险,即模型可能生成不符合事实、逻辑错误或完全虚构的内容。幻觉问题的具体表现如下:
-
Intrinsic幻觉:
- 定义:这类幻觉指的是模型生成的内容与用户的具体指令或上下文环境存在不匹配或矛盾。例如,用户请求模型根据某个特定主题编写一篇文章,但模型最终生成的内容却偏离了这个主题,或者在文章中出现了与主题无关的信息。
- 影响:Intrinsic幻觉降低了模型的准确性和可用性,因为用户期望得到的是符合其需求和上下文的内容。
-
Extrinsic幻觉:
- 定义:这类幻觉指的是模型生成的内容与现实世界中的事实不符,或是完全基于虚构的信息。这可能是因为模型在训练过程中没有接触到足够广泛和准确的知识库,导致其在生成文本时无法区分真实与虚构。
- 影响:Extrinsic幻觉可能误导用户,传播错误信息,甚至在某些敏感领域(如医疗、法律)造成严重后果。
为了应对这一问题,业界提出了包括Fine-tuning(微调)、Prompt Engineering(提示工程)、RAG(Retrieval-Augmented Generation,增强检索生成)以及综合方案等多种解决方案。
Fine-tuning是一种通过特定领域数据对预训练模型进行针对性优化的方法。其核心在于利用特定任务的数据集对预训练好的大模型进行进一步训练,以提升模型在特定任务上的性能。通过微调,模型能够学习并适应特定领域的语言模式和知识,从而减少生成无根据或错误内容的风险。此外,微调过程中超参数的调整也至关重要,如学习率、批次大小和训练轮次等,这些参数需要根据特定任务和数据集进行精细调整,以确保模型训练的有效性和性能。
Prompt Engineering是一种通过精心设计提示词(Prompt)来引导模型生成更加准确和符合期望内容的方法。提示词是用户向模型发出的指令,其质量直接影响到模型生成结果的准确性和相关性。高质量的提示词应该具体、丰富且少歧义,能够清晰地描述任务要求和期望输出。通过不断优化和调整提示词,可以引导模型生成更加准确和有用的内容,从而减少幻觉问题的发生。
RAG技术是一种结合检索和生成的技术方法,旨在通过外部知识源来增强模型的生成能力。在生成文本时,模型首先从一个大规模的知识库或文档集合中进行检索,获取与当前生成任务相关的信息,然后利用这些检索到的信息来辅助生成更加准确、全面和有依据的文本。这种方法能够有效减少模型生成无根据或错误内容的风险,提高生成内容的质量和可靠性。同时,RAG技术还具有可解释性强、易于定制等优点,能够根据不同领域和任务的需求进行灵活调整。
综合方案通常结合上述多种方法,通过数据清洗、数据增强、网络架构调整、正则化和约束、集成学习等多种手段来提高模型的鲁棒性和准确性
3.2、AI原生数据库与RAG
RAG,全称为"Retrieval-Augmented Generation",即"检索增强的生成",是一种结合了检索(Retrieval)和生成(Generation)的深度学习模型,LLM在回答问题或生成文本时,RAG会先从大量文档中检索出相关的信息,然后基于这些信息生成回答或文本,从而提高预测质量。。这种模型主要用于自然语言处理(NLP)任务,尤其是在需要理解和生成文本的场景中。
RAG模型的核心原理可以分为以下几个步骤:
-
检索阶段(Retrieval Phase) :
- 在这个阶段,模型首先接收到用户的查询或问题。
- 然后,模型会从预先存储的文档或数据集中检索出与查询最相关的文档或信息片段。
-
编码阶段(Encoding Phase) :
- 检索到的文档或信息片段,以及用户的原始查询,会被编码成高维向量。
- 这通常通过使用Transformer架构的编码器来完成,它可以捕捉文本的语义信息。
-
融合阶段(Fusion Phase) :
- 编码后的向量会进行融合,以便将检索到的信息与用户的查询结合在一起。
- 这一步骤有助于模型更好地理解上下文,并生成与检索到的内容相关的响应。
-
生成阶段(Generation Phase) :
- 最后,模型使用解码器生成对用户查询的响应。
- 解码器通常也是基于Transformer架构,它可以根据融合后的向量生成文本。
RAG模型的优势在于它能够结合检索到的外部知识与模型自身的语言生成能力,从而提供更加丰富、准确和相关的回答。这种模型特别适用于需要广泛知识背景的任务,如开放域问答、事实核查等。
文本检索里边比较常用的是利用向量进行检索,我们可以把文档片段全部向量化(如One-Hot、Word2Vec、GloVe、BERT等embedding技术),然后把向量存到AI原生数据库里边。用户提出问题后,对问题语句也进行向量化,以余弦相似度或点积等指标,计算在数据库中和问题向量最相似的top k个文档片段,作为上下文输入到大模型中。
四、AI 原生数据库实践案例
向量数据库可以和大语言模型 LLM 配合使用。企业的私域数据在经过文本分割、向量化后,可以存储在腾讯云向量数据库中,构建起企业专属的外部知识库,从而在后续的检索任务中,为大模型提供提示信息,辅助大模型生成更加准确的答案。
在这些场景中,用户可以通过自然语言提问获取相关信息,例如查询产品信息、控制家居设备等。通过使用向量数据库来存储和检索相关的向量数据,问答系统可以更快速、准确地响应用户的请求,提高用户体验。