一文速学ChatBi“与数据库对话“大模型技术原理及框架一览 ...

  金牌会员 | 2024-9-5 10:23:59 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 806|帖子 806|积分 2418

媒介

上期写了NL2SQL,相信看过的朋友应该都对现在大模型在数据交互办公层面的探索和发展都十分感爱好,在此商业化的产品市场上也有许多,比如阿里云的析言GBI:
腾讯云的ChatBI:

像此类的产品可以说是最贴切业务的。
在许多业务场景中,用户最关心的是怎样快速获取最终的数据结果,而不是去理解数据是怎样被提取和处置惩罚的。学习数据获取的复杂过程每每是一个高成本的障碍,而低落这一成本直接关系到产品的吸引力和用户的转化率。对于我们技术职员而言,只管研发头脑是核心,但我们开辟的服务最终照旧为了更好地服务于业务需求。随着技术的进步,天然语言到SQL(NL2SQL)转化已成为数据开辟的未来趋势,它让用户可以或许用最少的学习成本获取他们所需的数据。ChatBI正是这一趋势的详细体现,它不光低落了技术门槛,还明显提升了用户体验和产品竞争力,使数据分析变得更加直观和高效。
那么本期文章我们来研究DB-GPT这类技术作为LLM与数据库结合的产品原理和框架,帮助我们可以或许真正运用到本身的业务之中。
1.作甚DB-GPT

DB-GPT是一个开源的AI原生数据应用开辟框架(AI Native Data App Development framework with AWEL(Agentic Workflow Expression Language)and Agents)。旨在简化大模型应用的构建,特别是围绕数据库的应用。它通过整合多种技术本领,如多模型管理(SMMF)、Text2SQL效果优化、RAG框架优化、以及多智能体框架的协作,帮助企业和开辟者更方便地开辟基于大模型的应用。此外,DB-GPT还引入了AWEL(智能体工作流编排),让复杂的工作流程主动化,减少开辟者所需的编码工作量。进入数据3.0期间,这意味着开辟者可以用更少的代码、更高的效率,快速构建属于本身的专属数据应用,推动业务创新。
本篇文章重要详解DB-GPT这一体系,会对整个AI框架进行详细的描述。我们根据上图整个DB-GPT的架构来看。
1. Train(训练)

在框架的底层是 DB-GPT-Hub,这是模型训练和数据准备的底子层。它包罗多种技术本领的训练,如 Text2SQL、Text2DSL、Text2API、Text2Vis 等。这一层为上层的模块和应用提供了强大的训练支持,确保模型的高效性和准确性。
2. Protocol(协议层)

AWEL(智能体工作流编排语言):AWEL 是一种用于定义和管理智能体工作流的协议语言。在这个层面上,AWEL 提供了 DSL(领域特定语言)、AgentFrame(智能体框架)、Operators(操作符)、Parallelization(并行化)等功能。这些组件使得工作流的编排和执行变得更加灵活和高效。
3. Module(模块层)

模块层包罗了三大核心模块:


  • SMMF(多模型管理框架):负责管理和调度多个模型。它包罗了 Controller(控制器)、Registry(注册表)、Worker(工作者)、Model(模型)、Prompt(提示词)、Inference(推理)等组件,确保多模型的高效协作和运行。
  • RAGs(检索增强生成模块):包罗 Query Rewrite(查询重写)、RAG Retriever(检索器)、Ranking(排序)、Document Loader(文档加载器)、Embedding(嵌入)、Text Splitter(文天职割器)等,重要用于提升生成内容的准确性和相关性。
  • Agents(智能体模块):负责多智能体的协作和任务执行,包罗 Auto(主动化)、Plan(计划)、Multi-Roles(多角色)、Data-Driven(数据驱动)等本领。
4. Server(服务层)

服务层包罗多个服务组件,如 LLMServer(大语言模型服务)、APIServer(API服务)、RAGServer(RAG服务)以及 dbgptServer(DBGPT服务)等。这些服务组件共同支持上层应用的运行,确保体系的稳定性和可扩展性。
5. Application(应用层)

应用层展示了多种基于DB-GPT构建的详细应用,包罗 DBGPTsGBIChatDBChatDataKBQ4ChatExcel 等。这些应用面向差别的业务需求,利用底层的技术和服务,实现了从天然语言查询到数据分析的主动化流程。
6. Visualization(可视化层)

最上层是可视化层 GPT-Vis,它包罗了 Markdown、Charts、Flow、Graph、CodeFragment、StreamOutput、Table 等可视化工具。这些工具帮助用户更直观地理解和展示数据分析的结果。
7. 支持和集成

该框架还集成了多种云服务和容器化技术,如 Kubernetes、Ray、AWS、Alibaba Cloud 和 Private Cloud,支持跨平台和多环境的摆设和运行。
8. 辅助功能

在框架的右侧,框架还夸大了支持 监控(Monitoring)评估(Evaluation)反馈(Feedback)测试(Testing)调试(Debugging) 的工具和机制,确保体系的可靠性和持续优化。
这个框架展示了 DB-GPT 的强大功能和灵活性,使得开辟者可以或许利用这一平台高效地开辟和摆设复杂的AI应用,特别是在数据库驱动的环境中。我们拿出关键的核心模块来探究研究。
核心模块

1.1 SMMF

多模型管理框架(SMMF,Multi-Model Management Framework)是DB-GPT中用于管理和优化多个大语言模型(LLMs)的关键组件。它的重要功能是为开辟者提供一种高效、灵活的方式来同时管理多个模型,从而提升大模型应用的性能和效果,特别是在围绕数据库的场景中。

在企业级应用中,SMMF尤其适用于须要同时处置惩罚多种任务或须要集成多种模型的场景。例如,一个智能客服体系可能须要同时处置惩罚客户的天然语言查询、产品保举以及情绪分析,这些任务分别可能须要差别的模型来完成。SMMF可以帮助企业灵活地管理这些模型,并根据实际需求动态调解,以确保体系的高效运行。
1.2 RAG(Retrieval Augmented Generation)

正如其名,是一种将检索(Retrieval)和生成(Generation)结合起来的技术。它首先从一个巨大的知识库中检索出与提出的题目最相关的信息,然后基于这些信息来生成答复。如许做的利益是,它允许模型不光依靠其已有的知识,还可以及时地利用外部数据来提供更准确、更丰富的答复。

传统的生成式语言模型在面对广泛主题或复杂数据库查询时,可能会因为缺乏特定领域的知识而生成不准确或不完整的答案。RAG 框架通过结合信息检索技术,先从相关的知识库或数据库中检索出与查询相关的信息,再将这些信息输入到生成模型中。这种方法有效地弥补了生成模型在特定领域知识上的不足,从而提升了生成内容的准确性。
在 DB-GPT 中,RAG 框架允许体系动态地处置惩罚复杂的天然语言查询。对于一个复杂查询,RAG 首先检索到相关的数据库模式或数据条目,然后将这些信息与用户的查询结合,生成更加准确和上下文相关的SQL查询。这种本领使得 DB-GPT 在处置惩罚多样化的用户需求时更加灵活和强大。
1.3 Agents

主动化(Auto):主动化是 Agents 模块的核心功能之一。它允许智能体在没有人工干预的情况下,基于预定义的规则或模型,自主地执行任务。这种本领大大提高了体系的效率,减少了人工操作的需求,尤其是在处置惩罚重复性任务时,主动化功能可以或许明显提升工作流的执行速率和准确性。
计划(Plan):计划功能使得智能体可以根据输入任务和目标,自主订定和调解任务执行计划。智能体通过分析任务的复杂性、时间要求以及资源限定,生成最优的执行计划。这种功能在复杂的多步骤任务中尤为重要,可以确保任务按照最优路径高效完成。
多角色(Multi-Roles):这一功能允许单个智能体承担多个角色,大概通过多个智能体的互助来完成一个复杂任务。多角色功能可以或许灵活分配任务,确保每个任务都由最合适的角色或智能体来执行。这种灵活性使得体系可以应对多样化的业务需求和任务复杂性。
数据驱动(Data-Driven):数据驱动是指智能体可以或许基于及时数据进行决议和任务执行。这种功能使得智能体可以或许动态调解其行为,以顺应环境的变革或数据的更新,从而提高任务执行的准确性和及时性。数据驱动的本领确保了体系在面对不确定性和动态变革时,仍旧可以或许保持高效和稳定的运行。
智能体可以利用 RAGs 模块提供的信息检索和增强生成本领,更准确地理解用户查询并生成响应。也可以与 SMMF 模块协作,动态调用和管理多个模型,确保在差别的任务场景中利用最合适的模型,以到达最佳效果。这种扩展性确保了 DB-GPT 框架可以顺应各种复杂的应用场景,并提供高度定制化的解决方案。
1.4 主动化微调


围绕大语言模型、Text2SQL数据集、LoRA/QLoRA/Pturning等微调方法构建的主动化微调轻量框架, 让TextSQL微调像流水线一样方便。
1.数据存储与处置惩罚(Data Storage & Data Process)

用户的原始数据首先被存储,通常包罗用于训练的大规模SQL查询数据集,如Spider数据集。Spider数据集是一个广泛用于Text-to-SQL任务的基准数据集,包罗了大量的SQL查询及其对应的天然语言描述。接下来,存储的数据会颠末数据处置惩罚阶段,包罗清洗、格式化和预处置惩罚,以确保数据可以或许被下游的大语言模型(LLMs)高效利用。这一步骤至关重要,因为高质量的数据处置惩罚可以或许明显提升模型的训练效果。
2. 大语言模型加载(Base LLMs Loader)

在这一阶段,预先训练的底子大语言模型(LLMs)会被加载。这些模型包罗OpenAI的GPT、Meta的LLaMA、Google的BERT等。这些底子模型已经通过大规模数据预训练,具备了强大的天然语言理解和生成本领,但在特定领域的体现可能还须要进一步优化。
3. 微调(Fine-Tuning)

模型会通过几种差别的微调方法进行优化,包罗LoRA(低秩自顺应)、QLoRA(量化低秩自顺应)、SST(渐渐缩放训练)和SPT(渐渐渐进训练)等。这些方法可以或许在保存原有模型强大本领的底子上,对模型进行更加精细的调解,使其在特定任务上体现更好。例如特定领域的SQL生成,提升模型的实际应用效果。
4. 强化学习与人类反馈(RLHF)

RLHF(Reinforcement Learning with Human Feedback):在微调后,模型会进一步通过强化学习结合人类反馈进行优化。这一过程通过结适用户的实际利用反馈来不停调解模型,使其生成的内容更加符适用户的预期。通过RLHF,模型不光可以或许更好地理解用户的意图,还能持续改进,以应对不停变革的需求。
5. 预测与评估(Predict & Evaluation)



  • 预测:颠末微调和RLHF后的模型会用于实际的预测任务,如生成SQL查询或其他复杂任务的解决方案。
  • 评估:最后,模型的体现会通过一系列的评估指标进行评估,以确保其生成的结果准确、高效,并符合预期。
那么下一章我们将在算力云服务器上面来进行完整摆设搭建整个DB-GPT来利用,并且贴合业务去做一些实践验证。
如有纰漏之处,请留言指教,非常感谢

以上就是本期全部内容。我是fanstuck ,有题目大家随时留言讨论 ,我们下期见。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表