项目简介
本项目是一个面向小白开发者的大模型应用开发教程,旨在基于阿里云服务器,结合个人知识库助手项目,通过一个课程完成大模型开发的重点入门,主要内容包括:
- 大模型简介,何为大模型、大模型特点是什么、LangChain是什么,如何开发一个LLM应用,针对小白开发者的简单介绍;
- 如何调用大模型API,本节介绍了第四大模型产品API的多种调用方式,包括调用原生API、封装为LangChain LLM、封装为Fastapi等调用方式,同时将包括百度文心、讯飞星火、智谱AI等多种大模型API进行了统一形态封装;
- 知识库搭建,不同类型知识库文档的加载、处理,支撑数据库的搭建;
- 构建RAG应用,包括将LLM接入到LangChain构建搜索问答链,使用Streamlit进行应用部署
- 验证迭代,大模型开发如何实现验证迭代,一般的评估方法有哪些;
本项目主要包括三部分内容:
- LLM开发入门。V1版本的简化版本,旨在帮助初学者最快、最便捷地入门LLM开发,了解LLM开发的一般流程,可以搭建出一个简单的Demo。
- LLM开发技巧。LLM开发更进阶的技巧,包括但不限于:提示工程、多类型源数据的处理、优化搜索召回、精排、Agent框架等
- LLM应用实例。引入一些成功的案例开源,从本课程的角度出发,解析这些应用范例的Idea、核心思路、实现框架,帮助初学者了解其可以通过LLM开发什么样的应用。
目前,第一部分已经完成稿件,欢迎大家阅读学习;第二、三部分正在创作中。
项目意义
LLM正逐步成为信息世界的新革命力量,其通过强大的自然语言理解、自然语言生成能力,为开发者提供了新的、更强大的应用开发选择。伴随着第三次井喷式的LLM API服务开放,如何基于LLM API快速、便捷地开发具备更强能力、集成LLM的应用,开始成为开发者的一项重要技能。
目前,关于LLM的介绍以及零散的LLM开发技能课程十分活跃,但质量参差不齐,且没有很好地整合,开发者需要大量搜索教程并阅读大量相关性不强、必要性较低的内容,要初步掌握掌握大模型开发的必备技能,学习效率低,学习基础也重要。
本项目从实践出发,结合最常见、通用的个人知识库助手项目,深入浅出逐步拆流程解LLM开发的一般、步骤,旨在帮助没有改造基础的小白通过一门课程完成大模型开发的基础入门。同时,我们同时加入RAG开发的进阶技巧以及一些LLM应用案例的解读,帮助完成第一部分学习的读者进一步掌握更高阶的RAG开发技巧,并能够通过对现有项目的事件开发成功成功自己的、好玩的应用。
项目受众
所有具备基础Python能力、想要掌握LLM应用开发技能的开发者。
本项目对学习者的人工智能基础、算法基础没有任何要求,只需掌握基本的Python语法、掌握初级Python开发技能即可。
考虑到阿里环境搭建问题,本项目提供了云服务器学生免费领取方式,学生读者可以免费领取阿里云服务器,并通过阿里云服务器完成本课程的学习;本项目同时也提供了个人电脑及非阿里云服务器的环境搭建指南;本项目对本地硬件基本没有要求,不需要GPU环境,个人电脑及服务器护士用于学习。
注:本项目主要使用大型模型厂商提供的API来进行应用开发,如果你想学习部署应用本地开源LLM,欢迎学习同样来自Datawhale出品的Self LLM|开源大模型种植指南,该项目将手教您如何快速通开源LLM配置全仓库!
注:考虑学习要点,本项目主要面向初学者,介绍如何使用LLM来搭建应用。如果你想进一步深入学习LLM的理论基础,并在理论的基础上进一步认识、应用LLM,欢迎学习同样来自Datawhale出品的如此大的LM |大模型基础,该项目将为您提供全面、深入的LLM理论知识及实践方法!
项目亮点
- 充分面向实践,可进行学习大模型开发。近期于其他从入手、与实践代差增大理论的类似教程,本教程基于具有通用性的个人知识库辅助项目打造,将普适的大模型开发理念融合融合在项目实践中,帮助学习者通过架构搭建个人项目来掌握大模型开发技能。
- 从零开始,全面又简要的大模型教程。本项目针对个人知识库助手项目,对相关大模型开发理论、概念和基本技能进行了项目主导的重构,去掉了不需要理解的基础原理和算法细节,涵盖所有大模型开发的核心技能。教程整体时间长在数小时之内,但学习完本教程,可以掌握基础大模型开发的所有核心技能。
- 兼具统一性与拓展性。本项目对GPT、百度文心、讯飞星火、智谱GLM等主流LLM API进行了统一封装,支持一键调用不同的LLM,帮助开发者将更多的将精力放在学习应用与模型本身的优化上,而不需要花时间在繁琐的调用细节上;同时,本教程拟上线奇想星球 | AIGC共创社区平台,支持学习者自定义项目以教程增加拓展内容,具备充分的拓展性。
内容大纲
第一部分 LLM 开发入门
负责人:邹雨衡
- LLM 介绍 @高立业
- LLM 的理论介绍
- 什么是 RAG,RAG 的核心优势
- 什么是 LangChain
- 开发 LLM 应用的整体流程
- 阿里云服务器的基本使用
- 环境配置
- 使用 LLM API 开发应用 @毛雨
- 使用 LLM API
- ChatGPT
- 文心一言
- 讯飞星火
- 智谱 GLM
- Prompt Engineering
- 使用 LLM API
- 搭建知识库 @娄天奥
- 词向量及向量知识库介绍
- 使用 Embedding API
- 数据处理:读取、清洗与切片
- 搭建并使用向量数据库
- 构建 RAG 应用 @徐虎
- 将 LLM 接入 LangChain
- ChatGPT
- 文心一言
- 讯飞星火
- 智谱 GLM
- 基于 LangChain 搭建检索问答链
- 基于 Streamlit 部署知识库助手
- 将 LLM 接入 LangChain
- 系统评估与优化 @邹雨衡
- 如何评估 LLM 应用
- 评估并优化生成部分
- 评估并优化检索部分
第二部分 进阶 RAG 技巧(正在创作)
负责人:高立业
- 背景
- 架构概览
- 存在的问题
- 解决方法
- 数据处理
- 多类型文档处理
- 分块优化
- 向量模型的选择
- 微调向量模型(进阶)
- 索引层面
- 索引结构
- 混合检索
- 假设性问题
- 检索阶段
- query 过滤
- 对齐 query 和 文档
- 对齐检索和 LLM
- 生成阶段
- 后处理
- 微调 LLM(进阶)
- 参考引用
- 增强阶段
- 上下文增强
- 增强流程
- RAG 工程化评估
第三部分 开源 LLM 应用解读
负责人:徐虎
- ChatWithDatawhale——个人知识库助手解读
- 天机——人情世故大模型解读
暂无评论内容