大模型开发工程师 认证&学习指南· 第 2 / 4 页
背景知识(2)
Embedding辅助给LLM外接大脑
尽管大模型具有非常出色的能力,然而在实际应用场景中,仍然会出现大模型无法满足我们需求的情况,主要有以下几方面原因:
知识局限性:大模型的知识来源于训练数据,而这些数据主要来自于互联网上已经公开的资源,对于一些实时性的或者非公开的,由于大模型没有获取到相关数据,这部分知识也就无法被掌握。
数据安全性:为了使得大模型能够具备相应的知识,就需要将数据纳入到训练集进行训练。然而,对于企业来说,数据的安全性至关重要,任何形式的数据泄露都可能对企业构成致命的威胁。
大模型幻觉:由于大模型是基于概率统计进行构建的,其输出本质上是一系列数值运算。因此,有时会出现模型“一本正经地胡说八道”的情况,尤其是在大模型不具备的知识或不擅长的场景中。
因此,将知识提前转成Embedding向量,存入知识库,然后通过检索将知识作为背景信息,这样就相当于给LLM外接大脑,使大模型能够运用这些外部知识,生成准确且符合上下文的答案,同时能够减少模型幻觉的出现。
参数高效微调
在实际应用场景中,大模型还会经常出现以下问题:
- 大模型在当前任务上能力不佳,如果提升其能力?
- 另外,怎么使大模型学习其本身不具备的能力呢?
这些问题的答案是模型微调。
模型微调也被称为指令微调(Instruction Tuning)或者有监督微调(Supervised Fine-tuning, SFT),首先需要构建指令训练数据,然后通过有监督的方式对大模型的参数进行微调。经过模型微调后,大模型能够更好地遵循和执行人类指令,进而完成下游任务。
然而,由于大模型的参数量巨大, 进行全量参数微调需要消耗非常多的算力。为了解决这一问题,研究者提出了参数高效微调(Parameter-efficient Fine-tuning),也称为轻量化微调 (Lightweight Fine-tuning),这些方法通过训练极少的模型参数,同时保证微调后的模型表现可以与全量微调相媲美。
六、大模型应用开发 必知必会
通常,一个完整的大模型应用包含一个客户端和一个服务端。
客户端接收到用户请求后,将请求输入到服务端,服务端经过计算得到输出后,返回给客户端回复用户的请求。
客户端
在大模型应用中,客户端需要接受用户请求,并且能将回复返回给用户。
目前,客户端通常使用 Gradio 和 Streamlit 进行开发。
Gradio 基本概念

Gradio 有输入输出组件、控制组件、布局组件几个基础模块,其中
- 输入输出组件用于展示内容和获取内容,如:
Textbox文本、Image图像 - 布局组件用于更好地规划组件的布局,如:
Column(把组件放成一列)、Row(把组件放成一行)- 推荐使用
gradio.Blocks()做更多丰富交互的界面,gradio.Interface()只支持单个函数交互
- 推荐使用
控制组件用于直接调用函数,无法作为输入输出使用,如:Button(按钮)、ClearButton(清除按钮)
Gradio的设计哲学是将输入和输出组件与布局组件分开。输入组件(如
Textbox、Slider等)用于接收用户输入,输出组件(如Label、Image等)用于显示函数的输出结果。而布局组件(如Tabs、Columns、Row等)则用于组织和排列这些输入和输出组件,以创建结构化的用户界面。
如果想了解更多组件详情,可查看 官方文档;
另外,如果想设计更复杂的界面风格,还可以查看学习 官方文档:主题
Streamlit 基础概念
Streamlit 官方的视频演示如下,我们可以直接输入markdown格式的文本,网页即可渲染好。
Streamlit 中没有gradio的输入和输出概念,也没有布局组件的概念。
Gradio和Streamlit中的【文件组件】对比如下图:


Streamlit每个组件都是独立的,需要用什么直接查看官方文档即可,大致有如下几种组件:
页面元素
- 文本
- 数据表格
- 图标绘制(柱状图,散点图等等)
- 输入(文本框,按钮,下拉框,滑块,复选框,文件上传,等等)
- 多媒体(图片,音频,视频)
- 布局和容器
- Chat(聊天对话控件)
- 状态(进度条,加载中,等等元素)
- 第三方组件(提供了更加丰富的组件)
应用逻辑
- 导航和页面(可以切换页面)
- 执行流程
- 缓存和状态
- 连接和加密(可连接数据库,也可以对内容进行加密处理)
- 自定义组件
- 公共组件(用户信息存储,帮助,以及输出html)
- Config(使用配置文件,来定义一些内容)
工具
- 应用测试
- 命令行
服务端
在大模型应用中,服务端需要与大模型进行交互,大模型接受到用户请求后,经过复杂的计算,得到模型输出。
目前,服务端主要有以下两种方式:
直接调用大模型API:将请求直接发送给相应的服务商,如openai,讯飞星火等,等待API返回大模型回复 ✔️ 优点:
✖️ 缺点:
大模型本地部署:在本地GPU或者CPU上,下载模型文件,并基于推理框架进行部署大模型
✔️ 优点:
✖️ 缺点:
综上,选择哪种方式取决于具体的应用场景、数据敏感性、预算以及对延迟和性能的需求。
🔥 小白零基础 10 分钟 速通实践baseline
我们整个学习活动,将带你学习以下内容:
- 大模型部署【搭建你的智能编程助手】
- 大模型RAG实战【搭建你的AI科研助手】
- 大模型微调实战【搭建你的AI简历助手】
当前环节可让你在10分钟内,从一个完全小白的选手,搭建你的第一个大模型应用(智能编程助手)!
千里之行,始于足下,从这里,开启你的 AI 学习之旅吧!
—— Datawhale贡献者团队
Step0:开通阿里云PAI-DSW试用
开通PAI-DSW 试用 ,可获得5000算力时!有效期3个月!
如果已经开通试用或试用已过期,可以跳过此步骤,使用魔搭免费GPU额度或寻找其他的算力方案
- 注意多模态数据合成方向无法通过魔搭免费GPU执行
开通免费试用



在魔搭社区进行授权
链接:https://www.modelscope.cn/my/mynotebook/authorization
如果这一步授权失败,可跳过此步骤,继续往下进行




新用户需要先注册 & 绑定阿里云账号





新用户还需要完成阿里云账号的实名认证,直接完成即可
Step1:在魔搭社区创建PAI实例!(点击即可跳转)
创建实例,启动!
如果在上一步授权失败,可到阿里云控制台创建 & 打开实例,具体步骤详见下方子步骤




如果 在魔搭无法授权 或 点击【打开】无法打开,可到阿里云控制台创建 & 打开实例


创建实例




打开实例


如果之前试用的额度已经过期,可使用魔搭的免费Notebook实例


Step2:Demo搭建!
第一步:文件下载
点击终端,然后输入如下命令,回车运行!


第二步:环境安装
点击终端,然后输入如下命令,回车运行!

等待依赖安装成功!

第三步:启动Demo
点击终端,然后输入如下命令,回车运行!

Step3:对话体验!
点击链接,跳转到浏览器新页面!
注意⚠️:这里一定要保存效果截图去打卡哦!!一定要保存效果截图去打卡哦!!一定要保存效果截图去打卡哦!

显示Demo名称,后台正在运行中!

等待后台完成模型下载和加载!

弹出对话框,现在开始对话吧!

下面,让你的编程助手简单写个代码吧!输入后回车即可运行!
参考Prompt:
给我一个python打印helloword的代码
改成c++的

可以看到,Yuan2-2B-Mars 模型不仅拥有出色的代码生成能力,而且能够紧密跟随用户的指令,与上下文完美融合。(保存效果截图去打卡)
关闭PAI实例!!!!(点击即可跳转)
运行完成后,别忘了回到魔搭,【关闭】实例,否则会一直消耗你的试用额度!
每小时消耗大概7个试用额度!(总共5000个,有效期三个月)

🎉恭喜速通成功!👍🏻 快来给自己点赞!
学习活动已结束
学习活动期间,大家完成打卡后就可以在表格里填写组队信息,积极主动寻找合适的队友
【腾讯文档】夏令营第四期大模型应用开发-找搭子辅助表- Task01打卡链接
📅 后续课程内容
| 动手学大模型应用全栈开发 学习规划表 |
|||
|---|---|---|---|
| Task | Task 描述 | 相关知识点 | 学习安排 |
| Task 1 8月8日~8月11日 |
打怪难度:⭐️ 跑通baseline,创建大模型应用! 学习相关知识点,进行《大模型开发工程师》认证 写笔记,填写找搭子辅助表 |
大模型原理简介 大模型开源与闭源的差异 源大模型开源体系 大模型应用开发必知必会 学习活动作品提交规则 大模型应用案例:智能编程助手 |
开营直播(点击回放) 2024年/8月10日 19:00 优秀案例直播分享(点击回放) 2024年/8月11号 19:00 |
| Task 2 8月12日~8月13日 |
打怪难度: 简单 参加头脑风暴会,进行组队 写笔记,完成Task2 打卡 |
热点idea & 应用案例方向 互相激发创意,头脑风暴 案例分享 |
头脑风暴会腾讯会议(密码:YM3N) 2024年/8月12号 20:00 优秀案例分享直播(点击回放) 2024年/8月13号 19:00 |
| Task 3 8月14日~8月17日 |
打怪难度:⭐️⭐️ 学习RAG技术与实战、群内交流分享 组队进行应用开发 写笔记,完成 Task3 打卡 |
基于源的RAG技术原理与实践 RAG应用案例:AI科研助手 |
RAG原理与实践直播(点击回放) 2024年/8月14号 19:00 |
| Task 4 8月18日~8月21日 |
打怪难度:⭐️⭐️ 学习微调技术与实战、群内交流分享 组队进行应用开发 写笔记,完成 Task4 打卡 |
源大模型微调技术原理与实践 微调应用案例:AI简历助手 |
微调原理与实践直播(点击回放) 2024年/8月19号 18:00 |
| Task 5 8月22日~8月25日 |
打怪难度:⭐️⭐️ 组队进行应用开发 参加技术交流会 完成应用开发,填写作品提交表 |
优化路演答辩PPT | 技术交流会腾讯会议(点击回放) 2024年/8月22号 20:00 |
| Task 6 8月26日~8月30日 |
打怪难度:⭐️⭐️⭐️ 专家评审 根据建议优化作品、报名Demo Day |
- | Demo Day1直播 2024年/8月29号 19:00 Demo Day2直播 2024年/8月30号 19:00 |
| 祝大家开发顺利,学习愉快~ 多在群里提问和交流哟! 作品提交链接:(即将开放提交,敬请期待~) 作品提交规则&案例可见:提交作品规则 & Task1案例:智能编程助手 提问前建议先查看 QA & 其他彩蛋 是否早已收录你的问题~ (QA文档可任意编辑,助教和教程贡献者会不定时查看) 更多学习活动问题可见: 动手学大模型应用全栈开发-学习者手册 |
你还可以参考下面的学习方案,提升自己的学习效率——
- 定位自己的学习预期、设计自己的学习计划:每天花多少时间,做什么,大概能拿到什么结果
- 学习内容有很多,明确目标、按需学习自己所需要学习的内容即可
| 动手学大模型应用全栈开发-参考学习方案 | |||
|---|---|---|---|
| 学习方案类型 | 所需背景与能力 | 预期学习目标&收获 | 学习内容 & 参考时长 |
| 初级:60分,提见识 | 无 | 跑通Task1内容,熟悉开发流程,构建自己的第一个大模型应用 学习大模型应用开发通识,考取《大模型应用开发工程师》证书 |
跑通Task1代码(30分钟) 大模型应用开发基础通识(30分钟) 魔搭创空间搭建与应用部署(60分钟) |