您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。 [中国PG分会]:当PostgreSQL遇上AI大语言模型 - 发现报告

当PostgreSQL遇上AI大语言模型

2024-10-17 魏波 中国PG分会 Man💗
报告封面

中 国P G分 会魏波 CONTENTS PostSQL生态概要01. 人工智能发展概要02. 大语言模型与向量数据库03. PostgreSQL中国生态 关于中国开源软件推进联盟 中国开源软件推进联盟(China OSS Promotion Union) 与“中日韩三国IT局长OSS会议”暨“东北亚开源软件推进论坛”同步于2004年成立,受工信部中国电子信息产业发展研究院直接管理。 联盟致力于推动中国开源软件的发展和应用,促进中国与全球开源组织的沟通、交流与合作。 PostgreSQL分会成立 成立:2017年,在工业和信息化部赛迪研究院(中国电子信息产业发展研究院)指导下,依托中国开源软件推进联盟,特成立PostgreSQL分会(简称中国PostgreSQL分会或PG分会) 目的:基于PostgreSQL数据库的影响以及国内数据库技术的发展现状,为推动国内PostgreSQL产业生态建设和产学研用发展,加强国内开源技术建设和应用,加深对国际主流数据库的理解。 成立仪式: 陆首群(前国务院信息化联席会议办公室常务副主任、中国开源软件推进联盟名誉主席)DebGoodkin(FreeBSD基金会执行董事)JimZemlin(Linux基金会执行董事)苗健(瀚高软件董事长)刘澎(中国开源软件推进联盟秘书长) PostgreSQL分会主要工作方向 PostgreSQL是什么? PostgreSQL[/ˈpoʊstɡrɛsˌkjuːˈɛl/]http://www.postgresql.org/files/postgresql.mp3 PG国际社区官网:http://www.postgresql.orgPG发展概要:https://www.postgresql.org/docs/9.4/history.htmlPG维基百科:https://en.wikipedia.org/wiki/PostgreSQL#HistoryBruce Momjian:https://momjian.us/main/writings/pgsql/decade.pdf PostgreSQL社区繁荣,版本稳定迭代 PostgreSQL(简称PG)是世界最强大的开源企业级关系型数据库; 从80年代加州大学伯克利分校Michael Stonebraker(图灵奖获得者)创造的POSTGRES软件包发展而来;聚合了世界范围的PG贡献者和爱好者;多年来版本保持稳定迭代。 PostgreSQL全球开发小组每年会发布一个主要版本,目前版本PostgreSQL 17Beta 3; 同时支持维护5个主要版本。 左图来源:https://www.postgresql.org/files/community/conference06/conference_group.html右图来源:https://en.wikipedia.org/wiki/Template:Timeline_PostgreSQL PostgreSQL衍生多分支版本,支撑国产数据库半边天 PostgreSQL强大扩展能力,支持多场景数据处理 设计之初 PostgreSQL与AI融合发展 PostgresML:PostgresML是一个在PostgreSQL数据库上的机器学习平台,实现了在SQL中进行ML任务。支持多种算法和库如Scikit-learn、XGBoost等,提供多种语言SDK。通过在数据库内进行ML,简化了数据处理和模型部署流程,使得在任何支持Postgres的环境中都能方便地进行机器学习。 MADlib:Apache MADlib是Pivotal与UCBerkeley合作的一个基于SQL的数据库内置的可扩展的开源机器学习库,提供了精确的数据并行实现、统计和机器学习方法对结构化和非结构化数据进行分析;提供了丰富的分析模型,包括回归分析,决策树,随机森林,贝叶斯分类,向量机等。支持PostgreSQL、Greenplum数据库和Apache HAWQ PostgreSQL与AI融合发展 PG+AI融合新成员PGAI:In-Database AI Agents: Teaching Claude to Use Tools With Pgai (timescale.com) https://www.timescale.com/blog/in-database-ai-agents-teaching-claude-to-use-tools-with-pgai/ 什么是人工智能 人工智能(Artificial Intelligence,简称AI)是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似方式做出反应、学习、推理和决策的智能机器。 信息来源:https://aws.amazon.com/cn/what-is/artificial-intelligence/ 从社会发展角度来看,人工智能能够极大提升生产力,譬如各种AI工具包括机器人的出现,能够辅助或解放人力,提升效率。也必将会对生产关系产生影响,譬如人类劳动得到解放之后,物质或财富分配方式、管理方式也会随之发生变化。 什么是人工智能 技术的目的是让我们的生活更为轻松!所以我们尽量放轻松,然后学会善加利用各种AI工具。 图片来源:https://baijiahao.baidu.com/s?id=1636094085269721388&wfr=spider&for=pc 人工智能发展历程 人工智能发展历程 人工智能发展路径 人工智能主要技术 计算机视觉(CV):使计算机能够从图像或多维数据中解释和理解视觉世界,包括图像识别、物体检测、场景重建等。 自然语言处理(NLP):致力于使计算机能够理解、解释和生成人类语言,包括语言识别、机器翻译、情感分析等。 机器学习(ML):使计算机系统利用数据和算法不断自动学习、改进性能,而无需明确编程。 深度学习(DL):一种特殊的机器学习方法,使用多层神经网络来模拟人类学习方式,处理复杂的数据模式。 专家系统(ES):专家系统模拟人类专家的决策能力,提供专业领域的建议或自动化决策过程。 图片来源https://www.163.com/dy/article/DG3ASKEG0511E520.html 语音识别、神经网络、进化计算、机器人…… 什么是大语言模型 大语言模型(Large Language Model,简称LLM):指的是那些在大规模文本语料上训练、包含百亿级别(或更多)参数的语言模型,是一系列的人工智能模型,旨在理解和生成人类语言。 大语言模型在自然语言处理(NLP)领域中扮演着重要角色,广泛应用于文本生成、机器翻译、情感分析、问答系统等多种任务。 LLM主要特点:•规模庞大,包含数十亿的参数,帮助它们学习语言数据中的复杂模式。 •基于深度学习架构,如转化器,这有助于它们在各种NLP任务上取得令人印象深刻的表现。 目前的大语言模型(如GPT和BERT)采用与小模型类似的Transformer架构和预训练目标(如Language Modeling),与小模型的主要区别在于增加模型大小、训练数据和计算资源。拿GPT来说,GPT其实出现了好几代,GPT-3它有45 tb的训练数据,整个维基百科里面的数据只相当于他训练数据的0. 6%。 信息来源:https://www.jianshu.com/p/2ada2266d185 什么是大语言模型 定义:Large,general-purposelanguage models can bepre-trainedand thenfine-tunedfor specific purposes. Presentation classification isInternal.Do not distribute to third parties without approval. 大语言模型分类 语言大模型(NLP):是指在自然语言处理(Natural Language Processing,NLP)领域中的一类大模型,通常用于处理文本数据和理解自然语言。这类大模型的主要特点是它们在大规模语料库上进行了训练,以学习自然语言的各种语法、语义和语境规则。例如:GPT系列、Bard(Google)、KIMI、通义千问、文心一言 视觉大模型(CV):是指在计算机视觉(Computer Vision,CV)领域中使用的大模型,通常用于图像处理和分析。这类模型通过在大规模图像数据上进行训练,可以实现各种视觉任务,如图像分类、目标检测、图像分割口、姿态估计2、人脸识别等。例如:VIT系列(Google)、文心UFO2、华为盘古CV、INTERN(商汤)、Meta的DINOv2(开源) 多模态大模型:是指能够处理多种不同类型数据的大模型,例如文本、图像、音频等多模态数据。这类模型结合了NLP和CV的能力,以实现对多模态信息的综合理解和分析,从而能够更全面地理解和处理复杂的数据。例如:GPT-4、Gemini(谷歌)、DingoD8多模向量数据库(九章云极DataCanvas)、DALL-E(OpenAl)、悟空画画(华为)、midjourney。 信息来源:https://www.aigc.cn/large-models 大语言模型几点问题 通用的基础大模型基本无法完全满足我们的实际业务需求,主要有以下几点问题: 数据安全性:对于企业来说,数据安全至关重要,没有企业愿意承担数据泄露的风险,将自身的私域数据上传第三方平台进行训练。这也导致完全依赖通用大模型自身能力的应用方案不得不在数据安全和效果方面进行取舍。 知识的局限性:模型自身的知识完全源于它的训练数据,而现有的主流大模型(ChatGPT、文心一言、通义千问…)的训练集基本都是构建于网络公开的数据,对于一些实时性的、非公开的或离线的数据是无法获取到的,这部分知识也就无从具备。 幻觉问题:所有的AI模型的底层原理都是基于数学概率,其模型输出实质上是一系列数值运算,大模型也不例外,所以它有时候会一本正经地胡说八道,尤其是在大模型自身不具备某一方面的知识或不擅长的场景。而这种幻觉问题的区分是比较困难的,因为它要求使用者自身具备相应领域的知识。 而RAG是解决上述问题的一套有效方案。 信息来源:https://blog.csdn.net/AIPHIL/article/details/134542869 解决之道:大语言模型应用方案RAG 检索增强生成(RetrievalAugmentedGeneration),简称RAG,已经成为当前最火热的LLM应用方案。 RAG是一种技术方法,它结合了信息检索和生成式AI的优点,旨在提高LLMs生成文本的质量和准确性。 RAG的架构如图中所示,简单来讲,RAG就是通过检索获取相关的知识并将其融入Prompt,让大模型能够参考相应的知识从而给出合理回答。 可以将RAG的核心理解为“检索+生成”,前者主要是利用向量数据库的高效存储和检索能力,召回目标知识;后者则是利用大模型和Prompt工程,将召回的知识合理利用,生成目标答案。 信息来源:https://blog.csdn.net/AIPHIL/article/details/134542869 数据准备阶段 向量数据库的主要作用 向量数据库在RAG方案中的主要作用: 安全保障:向量数据库作为知识库存储embedding数据,数据安全有保障; 数据时效性与准确性:新知识可以即时添加进来解决时效性问题;先从向量数据库中检索到与用户的输入相关的短文本上下文,从而让LLM有了领域知识,解决了知识的局限性问题和幻觉问题; 避免token限制问题:最后将检索到的多个短文本和用户问题输入到大模型中得到检索结果,由于只需加载必要的短文本作为背景