Giter Club home page Giter Club logo

step_into_llm's Introduction

昇思MindSpore技术公开课

  • 探究前沿:解读技术热点,解构热点模型
  • 应用实践:理论实践相结合,手把手指导开发
  • 专家解读:多领域专家,多元解读
  • 开源共享:课程免费,课件代码开源
  • 大赛赋能:ICT大赛赋能课程(大模型专题第一、二期)
  • 系列课程:大模型专题课程开展中,其他专题课程敬请期待

报名方式

报名链接:https://xihe.mindspore.cn/course/foundation-model-v2/introduction

(注:参与免费课程必须报名哦!同步添加QQ群,后续课程事宜将在群内通知!)

大模型专题第一期(已完结)&第二期(进行中)

第二期课程10月14日起每双周六14:00-15:00在b站进行直播。

每节课程的ppt和代码会随授课逐步上传至github,系列视频回放归档至b站,大家可以在昇思MindSpore公众号中获取每节课的知识点回顾与下节课的课程预告,同时欢迎大家在MindSpore社区领取大模型系列任务进行挑战。

因为课程周期较长,课节安排可能会在中途出现微调,以最终通知为准,感谢理解!

热烈欢迎小伙伴们参与到课程的建设中来,基于课程的趣味开发可以提交至昇思MindSpore大模型平台

如果在学习过程中发现任何课件及代码方面的问题,希望我们讲解哪方面的内容,或是对课程有什么建议,都可以直接在本仓库中创建issue

教研团队

teachers

课前学习

课程介绍

昇思MindSpore技术公开课火热开展中,面向所有对大模型感兴趣的开发者,带领大家理论结合时间,由浅入深地逐步深入大模型技术

在已经完结的第一期课程(第1讲-第10讲)中,我们从Transformer开始,解析到ChatGPT的演进路线,手把手带领大家搭建一个简易版的“ChatGPT”

正在进行的第二期课程(第11讲-)在第一期的基础上做了全方位的升级,围绕大模型从开发到应用的全流程实践展开,讲解更前沿的大模型知识、丰富更多元的讲师阵容,期待你的加入!

章节序号 章节名称 课程简介 视频 课件及代码 知识点总结
第一讲 Transformer Multi-head self-attention原理。Masked self-attention的掩码处理方式。基于Transformer的机器翻译任务训练。 link link link
第二讲 BERT 基于Transformer Encoder的BERT模型设计:MLM和NSP任务。BERT进行下游任务微调的范式。 link link link
第三讲 GPT 基于Transformer Decoder的GPT模型设计:Next token prediction。GPT下游任务微调范式。 link link link
第四讲 GPT2 GPT2的核心创新点,包括Task Conditioning和Zero shot learning;模型实现细节基于GPT1的改动。 link link link
第五讲 MindSpore自动并行 以MindSpore分布式并行特性为依托的数据并行、模型并行、Pipeline并行、内存优化等技术。 link link link
第六讲 代码预训练 代码预训练发展沿革。Code数据的预处理。CodeGeex代码预训练大模型。 link link link
第七讲 Prompt Tuning Pretrain-finetune范式到Prompt tuning范式的改变。Hard prompt和Soft prompt相关技术。只需要改造描述文本的prompting。 link link link
第八讲 多模态预训练大模型 紫东太初多模态大模型的设计、数据处理和优势;语音识别的理论概述、系统框架和现状及挑战。 link / /
第九讲 Instruct Tuning Instruction tuning的核心**:让模型能够理解任务描述(指令)。Instruction tuning的局限性:无法支持开放域创新性任务、无法对齐LM训练目标和人类需求。Chain-of-thoughts:通过在prompt中提供示例,让模型“举一反三”。 link link link
第十讲 RLHF RLHF核心**:将LLM和人类行为对齐。RLHF技术分解:LLM微调、基于人类反馈训练奖励模型、通过强化学习PPO算法实现模型微调。 link link 更新中
第十一讲 ChatGLM GLM模型结构,从GLM到ChatGLM的演变,ChatGLM推理部署代码演示 link link 更新中
第十二讲 多模态遥感智能解译基础模型 大模型时代的遥感智能,遥感基础模型技术路线,遥感领域典型场景应用 link / /
第十三讲 ChatGLM2 ChatGLM2技术解析,ChatGLM2推理部署代码演示,ChatGLM3特性介绍 link link 更新中
第十四讲 文本生成解码原理 以MindNLP为例,讲解搜索与采样技术原理和实现 link link 更新中
第十五讲 LLAMA LLaMA背景及羊驼大家族介绍,LLaMA模型结构解析,LLaMA推理部署代码演示 link link 更新中
第十六讲 LLAMA2 介绍LLAMA2模型结构,走读代码演示LLAMA2 chat部署
第十七讲 云从大模型 /
第十八讲 MOE /
第十九讲 CPM 介绍CPM-Bee预训练、推理、微调及代码现场演示
第二十讲 高效参数微调 介绍Lora、(P-Tuning)原理及代码实现
第二十一讲 参数微调平台 /
第二十二讲 Prompt Engineering /
第二十三讲 量化 介绍低比特量化等相关模型量化技术
第二十四讲 框架LangChain模块解析 解析Models、Prompts、Memory、Chains、Agents、Indexes、Callbacks模块,及案例分析
第二十五讲 LangChain对话机器人综合案例 MindSpore Transformers本地模型与LangChain框架组合使用,通过LangChain框架管理向量库并基于向量库对MindSpore Transformers本地模型问答进行优化

昇思资源一览:生态与伙伴共建、共享、共荣

resources

加入我们

step_into_llm's People

Contributors

davidchan0519 avatar joegamezhou avatar laixinyi823 avatar lvyufeng avatar lyqcom avatar nanzhaogang avatar xing-yiren avatar yangyucheng000 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

step_into_llm's Issues

课程改进建议

授课老师都是华为一线开发工程师,非常专业,但是在授课方面个人建议进行如下改进:
1、课程要先调研学生情况,比如看看学生的基础如何,为什么想听此课程?如果不适合听此课程,是不是应该引导到其他适合学生基础情况的群中进行课程推荐。
2、课程的课件可以提前在课前一天或者两天进行下发,以利于学员们预习,提问。
3、课前收集学员有些什么问题?课程好针对性解答。
4、注意课间休息,最好是40分钟一节课。
5、要布置课后作业,比如Transformer翻译就可以留个能否把BLEU再度提升的作业,并以此展开讨论。
6、授课的节奏太快了,BERT、Transformer两三个小时就讲完,感觉代码是代码、PPT是PPT,就是讲解代码要点出此段代码是反映PPT什么内容,要特别强调下。建议参考其它机构是如何培训BERT、TransFormer的。

运行BERT预训练时报错

具体报错如下:
(
MindSpore) [ma-user work]$ python run_pretrain.py --device_target Ascend --amp True --jit True --lr 2e-5 --warmup_steps 10000 --train_batch_size 256 --epochs 15 --save_steps 10000 --do_load_ckpt False --config config/bert_config_small.json
modelarts_true
INFO:root:Using MoXing-v2.0.1.rc0.ffd1c0c8-ffd1c0c8
INFO:root:Using OBS-Python-SDK-3.20.9.1
from path:
to path: /cache/data
Traceback (most recent call last):
File "run_pretrain.py", line 209, in
sync_data(data_url, local_data_path, threads=25)
File "/home/ma-user/work/src/moxing_adapter.py", line 59, in sync_data
mox.file.copy_parallel(from_path, to_path, threads=threads)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/moxing/framework/file/file_io.py", line 2406, in copy_parallel
return copy(src_url, dst_url, atom=atom)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/moxing/framework/util/runtime.py", line 259, in wrapper
return func(*args, **kwargs)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/moxing/framework/file/file_io.py", line 329, in wrapper
return func(*args, **kwargs)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/moxing/framework/file/file_io.py", line 2039, in copy
shutil.copyfile(src_object_key, dst_object_key)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/shutil.py", line 120, in copyfile
with open(src, 'rb') as fsrc:
FileNotFoundError: [Errno 2] No such file or directory: ''

transformer的ipynb速度还是慢

半个小时运行了半个epoch,下面是配置静态图加速的

mindspore.set_context(mode=mindspore.GRAPH_MODE,device_target='Ascend')
不知道fp16怎么配置

run_pretrain.py预训练报错如下:

使用如下命令运行BERT预训练 :
python run_pretrain.py --device_target Ascend --amp True --jit True --lr 2e-5 --warmup_steps 10000 --train_batch_size 256 --epochs 15 --save_steps 10000 --do_load_ckpt False --config config/bert_config_small.json

Traceback (most recent call last):
File "run_pretrain.py", line 257, in
train(model, optimizer, loss_scaler, grad_reducer, train_dataset, args.train_batch_size, jit=args.jit)
File "run_pretrain.py", line 83, in train
next_sentence_label, segment_ids)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/mindspore/common/api.py", line 559, in staging_specialize
out = _MindsporeFunctionExecutor(func, hash_obj, input_signature, process_obj, jit_config)(*args)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/mindspore/common/api.py", line 98, in wrapper
results = fn(*arg, **kwargs)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/mindspore/common/api.py", line 360, in call
phase = self.compile(args_list, self.fn.name)
File "/home/ma-user/anaconda3/envs/MindSpore/lib/python3.7/site-packages/mindspore/common/api.py", line 323, in compile
is_compile = self._graph_executor.compile(self.fn, compile_args, phase, True)
RuntimeError: Preprocess failed before run graph 0,
error msg: Distribute Task Failed,
error msg: davinci_model : load task fail, return ret: 1343225860


  • C++ Call Stack: (For framework developers)

mindspore/ccsrc/plugin/device/ascend/hal/hardware/ascend_kernel_executor.cc:214 PreprocessBeforeRunGraph
mindspore/ccsrc/plugin/device/ascend/hal/device/ascend_kernel_runtime.cc:543 LoadTask
mindspore/ccsrc/plugin/device/ascend/hal/device/ge_runtime/task/hccl_task.cc:103 Distribute

transformer loss函数计算有误

def forward(enc_inputs, dec_inputs):
"""前向网络
enc_inputs: [batch_size, src_len]
dec_inputs: [batch_size, trg_len]
"""
logits, _, _, _ = model(enc_inputs, dec_inputs[:, :-1], src_pad_idx, trg_pad_idx)

targets = dec_inputs[:, 1:].view(-1)
loss = loss_fn(logits, targets)

return loss

多模态学习的内容实践课

现实中存在很多多模态的数据,这些数据之间如何对齐和利用进行分析和数据挖掘,想有一点实践的课程可以实践多模态的理论

LLM项目课建议~

1.基于GPT-3.5的端到端语音聊天机器人项目实战——ChatGPT API后台开发实战
2.基于GPT-3.5的端到端语音聊天机器人项目实战——使用FastAPI构建语音聊天机器人后端实战
3.基于GPT-3.5的端到端语音聊天机器人项目实战——使用React 构建语音聊天机器人前段实战
4.基于GPT-3.5的端到端语音聊天机器人项目实战——ChatGPT 语音聊天机器人项目测试
5.基于GPT-3.5的端到端语音聊天机器人项目实战——ChatGPT 语音聊天机器人改进
6.基于GPT-3.5的端到端语音聊天机器人项目实战——企业级 ChatGPT 开发的三大核心 Models、Tools、Data 剖析
7.基于LLM 的SQL应用程序开发案例实战——SQLon LLMs 案例演示及日志分析
8.基于LLM 的SQL应用程序开发案例实战——Prompting分析
9.基于LLM 的SQL应用程序开发案例实战——后台源码逐行剖析
10.基于LLM 的SQL应用程序开发案例实战——从应用程序到 Backend 到 OpenAl 全生命周期源码剖析
11.基于LLM 的SQL应用程序开发案例实战——测试和调试SQLon LLMs
12.Language Model 底层的数学原理之最大似然估计MLE 及最大后验概率MAP内部机制详解
13.图解Transformer 精髓之架构设计、数据训练时候全生命周期数据在推理中的全生命周期、矩阵运算、多头注意力机制可视化等
14.贝叶斯 Bayesian Transformer 数学推导论证过程全生命周期详解及底层神经网络物理机制剖析
15.以智能对话机器人为例阐述 Transformer 的自编码autoencoding和自回归autoregressive 语言模型内幕机制
16.GPT内幕机制及源码实现逐行解析——语言模型的运行机制、架构内部及数学实现回顾
17.GPT内幕机制及源码实现逐行解析——GPT 可视化、Masking 等工作机制解析
18.GPT内幕机制及源码实现逐行解析——GPT中的 Decoder-Only 模式内部运行机制解析
19.GPT内幕机制及源码实现逐行解析——数据在GPT 模型中的流动生命周期 Input Encoding、Self-Attention、及 ModelOutput 详解
20.GPT内幕机制及源码实现逐行解析——基于gpt-3.5-turbo,whisper-1and tkinter 对话机器人源码逐行解析
21.ChatGPT Plugin 实战——ChatGPT Plugins 的工作原理
22.ChatGPT Plugin 实战——ChatGPT Retrieval Plugin 源码解析之 Models
23.ChatGPT Plugin 实战——ChatGPT Retrieval Plugin 源码解析之 Servers
24.ChatGPT Plugin 实战——ChatGPT Retrieval Plugin 源码解析之 Services 及local serer
25.ChatGPT Plugin 实战——ChatGPT Plugins 案例开发实战
26.ChatGPT Plugin 实战——ChatGPT Plugin 案例部署测试
30.chatGPT Prompting 开发案例实战——企业级 Prompt Engineering 五大核心解密
31.chatGPT Prompting 开发案例实战——Prompting foriterative process 开发实战
32.chatGPT Prompting 开发案例实战——Promptingfor chatbot 开发实战
33.chatGPT Prompting 开发案例实战——Prompting for customer service 开发实战
34. Prompt 本质解密及 Evaluation 案例实战——Prompt 本质解密及论文剖析
35.Prompt 本质解密及 Evaluation 案例实战——Customer Service 案例
36.Prompt 本质解密及 Evaluation 案例实战——Customer Service 案例 Evaluation 实战
37.Prompt 本质解密及 Evaluation 案例实战——Evaluation for Agents 源码解析
38.Prompt 本质解密及 Evaluation 案例实战——Evaluation for QA 源码解析
39.CoT、ToT、ReAct 解密与实战——Chain of Thought Reasoning 剖析
40.CoT、ToT、ReAct 解密与实战——Chaining Prompts 实战
41.CoT、ToT、ReAct 解密与实战——Tree of Thoughts 论文及源码剖析
42.CoT、ToT、ReAct 解密与实战——ReAct 案例实战
43.框架 LangChain 解析——Models 解析及案例剖析
44.框架 LangChain 解析——Prompts 解析及案例剖析
45.框架 LangChain 解析——Memory 解析及案例剖析
46.框架 LangChain 解析——Chains解析及案例剖析
47.框架 LangChain 解析——Agents 解析及案例剖析
48.框架 LangChain 解析——Indexes 解析及案例剖析
49.框架 LangChain 解析——Callbacks 解析及案例剖析
50.框架 LangChain 解析——LangChain 对话机器人综合案例
51.使用 LangChain 实现基于 Knowledge 知识库的自动销售顾问机器人——项目演示及技术架构解析
52.使用 LangChain 实现基于 Knowledge 知识库的自动销售顾问机器人——VectorStore 实现
53.使用 LangChain 实现基于 Knowledge 知识库的自动销售顾问机器人——Index 实现
54.使用 LangChain 实现基于 Knowledge 知识库的自动销售顾问机器人——QA Chain 原理及源码解析
55.使用 LangChain 实现基于 Knowledge 知识库的自动销售顾问机器人——使用Callbacks 模块对异常情况的捕获并处理
56.使用 LangChain 实现基于 Knowledge 知识库的自动销售顾问机器人——项目测试和调试
57.使用 LangChain 和 OpenAI 实现智能翻译助手——掌握Example Selectors 模块的功能和用途
58.使用 LangChain 和 OpenAI 实现智能翻译助手——引导用户提供准确的翻译需求和输入从而提供个性化的翻译服务最佳实践
59.使用 LangChain 和 OpenAI 实现智能翻译助手——使用Callbacks 模块提高系统的稳定性和可靠性
60.使用 LangChain 和 OpenAI 实现智能翻译助手——通过 Docker 部署项目
61.使用 LangChain 和 OpenAI 实现智能翻译助手——项目测试和调试
62. LangChain Agents 深入剖析及源码解密——Agent 工作原理详解
63. LangChain Agents 深入剖析及源码解密——Agent Toolkits 源码解读
64. LangChain Agents 深入剖析及源码解密——MRKL 原理剖析及论文解读
65. LangChain Agents 深入剖析及源码解密——MRKL源码逐行解读
66. LangChain Agents 深入剖析及源码解密——ConversationalAgent 源码逐行解读
67.使用 LangChain 构建大模型驱动的 Python 代码自动生成案例实战——现场演示GPT-4代码生成
68.使用 LangChain 构建大模型驱动的 Python 代码自动生成案例实战——LangChain 开发全流程剖析
69.使用 LangChain 构建大模型驱动的 Python 代码自动生成案例实战——逐行解读和验证全生命周期 Prompting
70.使用 LangChain 构建大模型驱动的 Python 代码自动生成案例实战——同步及异步的StreamingAPI
71.AutoGPT 源码内幕及综合案例实战——AutoGPT 原理及架构剖析
72.AutoGPT 源码内幕及综合案例实战——AutoGPT on LangChain 架构设计与最佳实战
73.AutoGPT 源码内幕及综合案例实战——AutoGPT on LangChain 解析及源码
74.AutoGPT 源码内幕及综合案例实战——AutoGPT 综合案例实战
75.BabyAGl——Autonomous Agents 原理机制
76.BabyAGl——Tools for Autonomous Agents
77.BabyAGl——Memory for Autonomous Agents
78.BabyAGl——BabyAGI开源实现源码逐行解析
79.BabyAGl——BabyAGI案例实战解析
80.RaaGPT 架构、源码及项目详解——安装和配置 Rasa、FastAPI、Langchain、Llamalndex、SQLModel、pgvector 和 ngrok
81.RaaGPT 架构、源码及项目详解——使用 FastAPI 创建专有的机器人端点
82.RaaGPT 架构、源码及项目详解——与Rasa 集成Langchain 和 Lamalndex
83.RaaGPT 架构、源码及项目详解——在 Rasa 和后端应用程序之间添加多租户、会话和元数据
84.RaaGPT 架构、源码及项目详解——源码逐行解读、测试及调试
85.使用 LangChain 实现教育类对话机器人——项目演示及架构解密
86.使用 LangChain 实现教育类对话机器人——分析项目运行日志
87.使用 LangChain 实现教育类对话机器人——Prompting实现详解
88.使用 LangChain 实现教育类对话机器人——LangChain 代码详解
89.使用 LangChain 实现教育类对话机器人——部署与测试
90.LLMs——base.py 源码逐行剖析
91.LLMs——loading.py 源码逐行剖析
92.LLMs——utils.py 源码逐行剖析
93.LLMs——writer.py 源码逐行剖析
94.LLMs——openai.py 源码逐行剖析
95.LLMs——gpt4all.py 源码逐行剖析
96.LLMs——modal.py 源码逐行剖析
97.LLMs——beam.py 源码逐行剖析
98.LLMs——databrickspy 源码逐行剖析
99.LLMs——human.py 源码逐行剖析
100.prompts解密——base.py 源码逐行剖析
101.prompts解密——chat.py 源码逐行剖析
102.prompts解密——prompt.py 源码逐行剖析
103.prompts解密——few_shot.py 源码逐行剖析
104.prompts解密——loading 源码逐行剖析
105.LangChain 内核源码逐行解密——server.py 源码逐行剖析
106.LangChain 内核源码逐行解密——utils.py 源码逐行剖析
107.LangChain 内核源码逐行解密——text_splitter.py 源码逐行剖析
108.LangChain 内核源码逐行解密——python.py源码逐行剖析
109.LangChain 内核源码逐行解密——serapi.py 源码逐行剖析
110.LangChain 内核源码逐行解密——cache.py 源码逐行剖析
101.LangChain 内核源码逐行解密——env.py 源码逐行剖析
102.LangChain 内核源码逐行解密——input.py 源码逐行剖析
103.LangChain 内核源码逐行解密——math_utils.py 源码逐行剖析
104.LangChain 内核源码逐行解密——model laboratory.py 源码逐行剖析
105.类ChatGPT 开源大模型基于 LORASFT+RM+RAFT 技术进行模型微调
106.类ChatGPT开源大模型基于P-Tuning等技术对特定领域数据进行模型微调
107.类Chat GPT 技术基于LLama lndex 和 Langchain 技术的全面实践
108.类ChatGPT大型语言模型基于向量检索技术对特定领域数据进行模型微调

chatglm2 —— chatglm2_demo.py文件被删除?

之前02.chatglm2文件夹下有chatglm2_demo.py,虽然这个demo文件跑不通。。
最近更新了一版本,这个demo.py被删除了是吗?
后续会继续上线嘛,mindspore适配大模型,必须走mindformers嘛,这个只能等官方的适配呀。。

二期课程建议

1.底座模型GLM详解和核心源码解读
2.大模型训练方法finetune
3.大模型训练方法Lora和rank确定方法
4.大模型训练方法p-tuning
5.大模型训练方法RHLF原理详解
6.基于LangChain的知识库搭建
7.基于大模型的知识压缩
8.Prompt工程和技巧
9.大模型采样原理解析
10.Transformer的底层逻辑详解
11.大模型内容审核系统搭建
12.羊驼大模型详解
13.百川大模型详解

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.