随着人工智能(Artificial Intelligence,AI)技术的迅猛进步,特别是像ChatGPT这样的大模型的问世,知识问答类应用进入了快速发展的时期,RAG(Retrieval-Augmented Generation,检索增强生成)随之获得了业界的高度关注。它通过将“检索”与“生成”两种方法相结合,增强了模型在处理需要深厚背景知识的任务时的表现,例如客服自动化和医疗咨询等场景。
RAG持续优化其知识提取、索引创建和检索策略,这些方面的改进推动了相关应用的成熟化。RAG的一大优势是它可以高效地更新知识库,而不需要复杂的微调过程,从而大幅降低了大型模型产生不准确回答的可能性。
随着对AI技术热情的理性回归,企业越来越重视AI的实际效用。RAG凭借其透明性和可控性,在企业级应用中占据了关键位置。对于开发者,构建一个融合文本和文档处理、图像分析、嵌入式模型、向量数据库等组件,并与大型模型集成的企业级RAG系统,不仅要求他们掌握RAG的概念、设计原则及如LlamaIndex这样的主流开发框架,还需要能够根据特定的业务需求提出有效的解决方案,以确保RAG可以顺利实施并实现技术与业务的无缝结合。
作为全面介绍RAG 应用开发的图书,本书旨在协助开发者更有效地设计和构建RAG应用。
本书具有以下特点。
● 热点主题:在当前的AI领域,大模型的应用落地无疑是最受瞩目的焦点,而其中RAG作为核心应用模式脱颖而出。本书作为一本原创著作,专注于RAG应用开发,涵盖了从基础概念到应用场景、开发方法、技术组件,再到工程实践方案等内容。
● 内容创新:本书聚焦于LlamaIndex——一个主流的数据驱动型RAG开发框架。书中不仅阐述了LlamaIndex的整体架构及其核心技术组件,更关键的是提供了这些组件的应用指南和实践案例。
● 案例驱动:本书采用以业务场景和实际案例为导向的实战方式编写,约四分之三的篇幅致力于介绍RAG的具体应用实例,并提供详尽的设计思路及即插即用的代码示例,旨在为读者提供实用的操作指导。
本书主要面向以下读者。
● 掌握一定编程语言和技术、对大模型特别是RAG应用开发有实际需求的技术人员。
● 对大模型和RAG有兴趣、希望体验AI技术的广大开发者。
● 系统架构分析和设计人员。
第1章着重于RAG的核心概念和技术体系的介绍,解析RAG的基本概念与应用场景,并探讨RAG应用开发中所涉及的关键技术,同时引出主流的开发框架。
第2章详细说明作为RAG应用开发主流框架的LlamaIndex,包括它所提供的各个核心技术组件及其具体应用方式。
第3章~第8章则聚焦于RAG应用开发的具体案例,涵盖文档聊天助手、多模态内容解析器、数据库检索器、知识图谱系统、工作流引擎及多Agent系统等应用。对于每一个案例,本书不仅提供具体的应用场景分析和系统设计思路,还结合LlamaIndex这一主流RAG开发框架的功能特性,讲解其在案例中的应用细节与实现过程,并分享背后的实践。
对于没有大模型和RAG开发基础的读者,建议按照章节顺序从第1章开始阅读,并逐步演练每一个示例,以建立坚实的知识基础。
对于已经具备一定RAG基础的读者,则可以根据自身的实际需求,有针对性地阅读各章节中的技术要点,以便深化已有知识或解决具体问题。
针对书中的每一个项目案例,建议先快速通读一遍,形成整体印象,之后,在开发环境中逐一操作每个项目的代码示例,通过实践加深对背后技术组件的理解。
由于作者水平有限,且编写时间仓促,书中可能存在错误或不准确之处,恳请读者批评指正。你可以通过访问Bug勘误表页面提交阅读过程中遇到的问题。此外,书中涉及的代码资源可以通过以下链接下载:https://github.com/tianminzheng/llamaindex-rag-in-action。同时,我也会在此仓库中及时更新并修正相应的功能。
我要特别感谢我的家人,尤其是我的妻子章兰婷女士,在我撰写本书时占用大量晚间和周末时间的情况下,给予我极大的支持与理解。同时,我也要感谢过去和现在的同事们,身处业界领先的公司和团队,我获得了许多宝贵的学习和成长机会。没有大家平日的帮助和支持,这本书的完成将无从谈起。最后,我要感谢人民邮电出版社的编辑团队,本书能够顺利出版,离不开他们的专业协助和悉心指导。
郑天民