在 LLM 的生产环境部署中,MLOps扮演着关键角色。MLOps 将DevOps 的原则扩展到机器 学习项目中,目标是实现整个机器学习生命周期的自动化和精简化。由于 LLM 本身具有较高的复 杂性和较大的规模,MLOps 在其中显得尤为重要,它能够有效应对多个挑战,例如大型数据集的管 理、模型版本的控制、结果的可复现性,以及模型性能的长期维护等。通过引入 MLOps 实践,LLM 项目能够在效率、可靠性和扩展性等方面获得显著提升,从而实现更为成功和更具影响力的部署。
学习大语言模型(LLM),可以从这本《大语言模型工程师手册:从概念到生产实践》开始。

本书是一本面向 LLM 工程的实践指南,介绍了该领域的诸多最佳实践。本书围绕 LLM 生命 周期的不同阶段,为读者提供了简明的核心概念、实用的技术方法和专家的建议指导。书中详细讲 解了多个重要主题,包括数据工程、监督微调、模型评估、推理优化,以及 RAG流水线开发等。
为了讲解这些主题,本书将开发一个端到端项目 LLM Twin---一个能够模仿特定人物写作风 格和个性特征的系统。通过这个实例,读者可以学习如何运用 LLM 工程和MLOps 的各项技术,从 零开始构建一个能解决特定问题的最小可行产品(minimum viable product,MVP)。
通过本书,读者将深入理解 LLM 应用开发的全过程,包括数据采集与准备、特定任务的模型 微调、推理性能优化和 RAG 流水线的具体实现。同时,读者还可以学习如何评估模型性能、实现 模型与人类偏好的对齐,以及部署基于 LLM 的应用。本书还系统介绍了MLOps 的基本原则和实践 方法,帮助读者掌握如何构建可扩展、可复现且稳健的 LLM 应用。
本书的一个突出特点是以 LLM Twin 项目作为贯穿全书的案例。这个专门模仿特定人物写作风格的AI 角色,生动地展示了如何将 LLM 应用在实际场景中。
作者精心梳理LLM 开发的关键工具与技术,包括Hugging Face、ZenML、Comet、Opik、MongoDB 和 Qdrant 等。通过对每个工具的详细阐述,帮助读者快速理解每个工具的功能特点及其在 LLM 流 水线中的应用。
本书涵盖了 LLM 开发的诸多关键领域,包括数据采集、模型微调、性能评估、推理优化和 MLOps 等。值得注意的是,关于监督微调(supervised fine-tuning,SFT)、偏好对齐及 RAG 的章节, 尤其深入剖析了 LLM 开发的核心技术。
本书的一大亮点在于注重实践应用。作者不仅给出了具体案例,还详细介绍了如何优化推理流 程并有效部署 LLM,使本书成为研究人员和工程师的宝贵参考资料。
本书内容
第 1 章:理解 LLM Twin 的概念与架构,介绍贯穿全书的项目LLM Twin------一个端到端的生 产级 LLM 应用示例, 定义用于构建可扩展的机器学习系统的特征、训练、推理(feature/ training/inference,FTI)流水线,并展示如何将其应用于 LLM Twin 项目。
第 2 章:工具与安装,介绍开发 LLM 应用所需的各类工具,包括 Python 工具、MLOps 工具 和云端工具,如编排工具、实验追踪系统、提示监控工具和 LLM 评估工具等。本章将详细说明如 何在本地环境中安装和使用这些工具,以支持测试和开发工作。
第 3 章:数据工程,介绍数据采集流水线的实现,这个流水线从 Medium、GitHub 和 Substack 等多个网站抓取数据,并将原始数据存储在数据仓库中。本章特别强调,对于实际的机器学习应用 而言,从动态数据源获取原始数据比使用静态数据集更为有效。
第4 章:RAG 特征流水线,介绍 RAG 的基本概念,包括嵌入、基础 RAG 框架、向量数据库, 以及 RAG 应用的优化方法。本章将运用软件开发最佳实践,设计并实现 LLM Twin 的 RAG 特征流 水线,展示 RAG 理论的实际应用。
第 5 章:监督微调,详细阐述如何通过指令-答案对为特定任务精细调整预训练语言模型。本 章将重点介绍高质量数据集的构建、微调技术(如全量微调、LoRA 和 QLoRA 等)的实现,并提 供在自定义数据集上微调 Llama 3 8B 模型的实践案例。
第 6 章:偏好对齐微调,介绍将语言模型与人类偏好对齐的技术,并重点介绍直接偏好优化 (direct preference optimization,DPO)技术,包括定制偏好数据集的构建、DPO 技术的实现,以 及通过Unsloth 库与 TwinLlama-3.1-8B 模型进行对齐的实践案例。
第 7 章:LLM 的评估方法,详细介绍评估语言模型和 LLM 性能的各种方法,介绍通用和特定 领域的 LLM 评估,并讨论主流的基准测试。本章包括使用多个标准对 TwinLlama-3.1-8B 模型进行 评估的实践案例。
第 8 章:模型推理性能优化,介绍投机解码、模型并行化和模型量化等关键优化策略,详细阐 述如何在保证模型性能的同时,显著提高推理速度、降低系统延迟及优化内存使用,并介绍主流的 推理引擎及其特性。
第 9 章:RAG 推理流水线,探索了高级 RAG 技术,从零实现自查询、过滤向量搜索和重排序 等方法。本章涵盖 RAG 推理流水线的设计与实现,以及构建类似 LangChain 等主流框架的自定义检索模块。
第 10 章:推理流水线部署,介绍机器学习部署策略,如在线实时推理、异步推理和离线批量 转换,这将有助于构建 LLM Twin 的微调模型并将其部署到AWS SageMaker,同时构建一个 FastAPI 微服务以便将 RAG 推理流水线作为 REST API 进行暴露。
第 11 章:MLOps 和 LLMOps,介绍 LLMOps 的概念,追溯其在 DevOps 和MLOps 中的发展 历程。本章将介绍 LLM Twin 项目的云端部署实践,例如将机器学习流水线迁移至AWS,并介绍如 何使用 Docker 进行代码容器化,以及构建持续集成、持续交付和持续测试(continuous integration/ continuous delivery/continuous training,CI/CD/CT)流水线。同时,本章还在 LLM Twin 的推理流水 线顶层增加了提示监控机制。
附录:MLOps 原则,阐述了构建可扩展、可复现和稳健的机器学习应用的 6 大关键原则。
充分利用本书
为了获得更好的学习效果,读者应该对软件开发的原则和实践有基本了解。本书的示例和代码 主要使用 Python,因此熟悉 Python 编程将特别有帮助。虽然事先了解机器学习概念会有优势,但这 并非必需,因为本书将介绍 AI 和机器学习的许多基本概念。不过,建议读者能够熟悉基本数据结 构、算法,并具备一定的API 和云服务使用经验。
本书相关代码示例托管在 GitHub 仓库上,因此假定读者已经熟悉 Git 等版本控制系统。尽管 本书面向 AI 和 LLM 的新手,但对于具有相关背景的读者而言,理解书中的高级概念和技术会更 加轻松。
下载示例代码文件
本书的所有源代码均可从本书的 GitHub 仓库和出版社网站下载。本书配套 GitHub 仓库的目录 简介如下。
llm_engineering/:实现 LLM 和 RAG 功能的主要 Python 包。文件夹内容如下。
● domain/:核心业务实体和结构。
● application/:业务逻辑、爬虫和 RAG 实现。
● model/:LLM 训练和推理。
● infrastructure/:外部服务集成(AWS、Qdrant、MongoDB、FastAPI)。
代码逻辑和导入流向为:infrastructure → model → application → domain。
pipelines/:包含 ZenML 机器学习流水线,作为所有机器学习流水线的入口,负责协调机 器学习生命周期中的数据处理和模型训练阶段。
steps/:包含独立的 ZenML 步骤,这些步骤是构建和自定义 ZenML 流水线的可复用组件。
每个步骤执行特定任务(如数据加载、预处理),可以在机器学习流水线中组合使用。 tests/:包含 CI 流水线示例的测试用例。
tools/:用于调用 ZenML 流水线和推理代码的实用工具脚本。文件夹内容如下。
● run.py:运行 ZenML 流水线的入口脚本。
● ml_service.py:启动 REST API 推理服务器。
● rag.py:演示 RAG 模块的使用方法。
● data_warehouse.py:通过 JSON 文件导入、导出 MongoDB 数据仓库数据。 configs/:控制流水线和步骤执行的 ZenML YAML 配置文件。
code_snippets/:可独立执行的代码示例。
关于作者:
保罗·尤斯廷(Paul Iusztin),资深机器学习工程师,在生成式 AI、计算机视觉和 MLOps 领域拥有超 7 年的实战经验。曾在 Metaphysic 担任核心工程师,专注于将大型神经网络推向生产环境。
马克西姆·拉博纳(Maxime Labonne)Liquid AI 的后训练负责人,拥有巴黎理工学院机器学习博士学位,并获得谷歌人工智能与机器学习领域(AI / ML)开发者专家认证。作为开源社区的活跃贡献者,在 GitHub 上开设了LLM 课程,开发了 LLM Aut。