项目介绍:llm-twin-course
项目概述
llm-twin-course 是一个免费课程,通过构建一个“LLM Twin”来学习如何设计、训练和部署一个可用于实际生产的 AI 复制品系统。课程由 Paul Iusztin、Alexandru Vesa 和 Alexandru Razvant 三位研究人员推出,目标是在生产环境中实施大语言模型(LLM)和检索增强生成(RAG)系统。
项目亮点
与众不同之处
通过参与此课程,参与者将学会如何从数据采集到部署的全过程,与以往单脚本或笔记本式的学习方法截然不同。课程强调的是构建和部署生产级别 LLM 系统的实际操作,真正让学习者具备生产环境中工作所需的能力。
学习目标
- 架构构建:学习如何从零开始设计一个现实世界的 LLM 系统,包括数据收集到部署的每个步骤。
- MLOps 最佳实践:利用实验跟踪、模型注册、提示监控和版本管理等 MLOps 技术,提升模型开发效率。
- 最终目标:构建并部署属于自己的 LLM Twin,即一个能够体现个人语言风格和个性的 AI 角色。
LLM Twin 架构
LLM Twin 的架构分为四个 Python 微服务模块:
-
数据收集管道
- 从各种社交媒体平台抓取数据,并通过一系列 ETL 管道清理、规范和存储至 MongoDB。
- 利用 CDC 模式将数据库变更发送至 RabbitMQ 队列。
- 部署在 AWS 上。
-
特征管道
- 通过 Bytewax 流处理管道从队列中消费消息,实时清理、分块、嵌入并加载到 Qdrant 向量数据库中。
- 部署在 AWS 上。
-
训练管道
- 基于个人数字数据创建自定义数据集,利用 QLoRA 微调 LLM。
- 使用 Comet ML 的实验跟踪器监控实验,并将最佳模型保存到 Comet 的模型注册中。
- 部署在 Qwak 上。
-
推理管道
- 从 Comet 的模型注册中加载微调的 LLM,作为 REST API 部署。
- 利用先进的 RAG 增强提示,使用 LLM Twin 生成内容。
- 通过 Comet 的提示监控仪表板监控 LLM。
- 部署在 Qwak 上。
适合人群
此课程适合中等水平有一定编程经验的机器学习工程师(MLE)、数据工程师(DE)、数据科学家(DS)或软件工程师(SWE),希望学习如何使用 LLMOps 原则开发生产就绪的 LLM 系统。
学习方式
课程提供 11 篇动手课程和开放源码,学习者可根据自己的节奏阅读并尝试代码。
费用说明
文章和代码完全免费,但运行过程中使用的一些云工具可能产生额外费用,如 AWS 和 Qwak。Qdrant 和 Comet ML 提供免费使用选项。
师资力量
课程由来自 Decoding ML 的三位专家 Paul Iusztin、Alexandru Vesa 和 Alexandru Razvant 合作创建,他们在机器学习和 MLOps 领域拥有丰富经验。
开源及协作
此课程遵循 MIT 许可证开放源代码,欢迎参与者克隆或分支项目用于学习和探索。课程由多个贡献者和赞助商支持,感谢他们的努力和贡献。
通过以上学习,参与者将掌握构建生产级大语言模型系统的技能,能够将其应用于实际项目中,完成个人或职业上的新突破。