LLM模型开发教程(一)目标手动实现一个自己的大模型
LLM 比早期的 NLP 更通用LLM 都是基于 Transformer 实现的LLM 是通过海量数据训练出来的深度学习LLM 中的 Large 指的是参数量大,训练数据量大。
·
LLM
LLM 比早期的 NLP 更通用
LLM 都是基于 Transformer 实现的
LLM 是通过海量数据训练出来的深度学习
LLM 中的 Large 指的是参数量大,训练数据量大
- 关系
LLM < DeepLearning < MachineLearning < AI
大语言模型嫩做什么
底层原理:
文字接龙,使文字组织合理,理解精确
核心能力
内容生成
- 文字
- 图片
- 视频
LLM 还具有多模态的能力
- 除了可以生成文本
- 还可以生成图片,如 Midjourney、DALL-E
- 生成视频 Sora
- 生成音频
- 文字与音频的互转(TTS)
大语言模型的工作原理
- 对于文本而言,大语言模型就是“文字接龙”
- 对于图像生成而言,大语言模型就是“像素接龙”
- 聊天、分类、总结、摘要这些底层都是“文字接龙”
- 接龙的原理是根据上下文,对所字库的字求概率
- 从概率较高的几个字(token)中选择一个作为下一个字
搭建开发环境
Conda 常用命令列表
1. 下载和安装
下载 Conda:
- 访问官网:https://www.anaconda.com/products/distribution 或 https://docs.conda.io/en/latest/miniconda.html
- 选择适合你操作系统的安装包(Anaconda 或 Miniconda)
安装 Conda(macOS/Linux):
# 下载安装脚本后执行
bash Anaconda3-2024.02-1-MacOSX-x86_64.sh
# 或
bash Miniconda3-latest-MacOSX-x86_64.sh
# 按照提示完成安装,通常需要重启终端或执行
source ~/.zshrc # 或 source ~/.bashrc
安装 Conda(Windows):
- 直接运行下载的
.exe安装程序,按照向导完成安装
2. 验证安装
# 检查 conda 版本
conda --version
# 查看 conda 信息
conda info
# 更新 conda
conda update conda
3. 创建虚拟环境
# 创建指定 Python 版本的环境
conda create -n 环境名称 python=3.10
# 创建环境并安装指定包
conda create -n 环境名称 python=3.10 numpy pandas
# 从 environment.yml 文件创建环境
conda env create -f environment.yml
# 克隆现有环境
conda create -n 新环境名称 --clone 现有环境名称
4. 激活和退出环境
# 激活环境(macOS/Linux)
conda activate 环境名称
# 激活环境(Windows)
conda activate 环境名称
# 退出当前环境
conda deactivate
5. 管理环境
# 查看所有环境列表
conda env list
# 或
conda info --envs
# 查看当前环境的包列表
conda list
# 删除环境
conda env remove -n 环境名称
# 导出环境配置
conda env export > environment.yml
# 导出环境配置(跨平台)
conda env export --no-builds > environment.yml
6. 包管理
# 安装包
conda install 包名
# 安装指定版本的包
conda install 包名=版本号
# 从 conda-forge 安装包
conda install -c conda-forge 包名
# 使用 pip 安装包(在 conda 环境中)
pip install 包名
# 卸载包
conda remove 包名
# 更新包
conda update 包名
# 更新所有包
conda update --all
# 搜索包
conda search 包名
7. 频道管理
# 添加频道
conda config --add channels conda-forge
# 查看所有频道
conda config --show channels
# 移除频道
conda config --remove channels 频道名
# 设置频道优先级
conda config --set channel_priority strict
8. 清理和优化
# 清理未使用的包和缓存
conda clean --all
# 清理索引缓存
conda clean --index-cache
# 清理包缓存
conda clean --packages
9. 常用配置
# 查看 conda 配置
conda config --show
# 设置自动激活 base 环境(默认开启)
conda config --set auto_activate_base true
# 禁用自动激活 base 环境
conda config --set auto_activate_base false
# 设置安装包的默认来源
conda config --add channels conda-forge
conda config --set channel_priority strict
10. 实用技巧
# 查看某个包的详细信息
conda search 包名 --info
# 查看环境路径
conda info --envs
# 在环境中运行命令
conda run -n 环境名称 python script.py
# 创建环境时指定安装路径
conda create --prefix /path/to/env python=3.10
LLM 开发核心必装包
创建环境并安装核心包
# 创建 LLM 开发环境
conda create -n llm python=3.10
# 激活环境
conda activate llm
# 安装核心深度学习框架(PyTorch)
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
# 安装核心 LLM 开发包
pip install transformers # Hugging Face Transformers 库
pip install accelerate # 加速训练和推理
pip install datasets # 数据集处理
pip install tokenizers # 快速分词器
pip install bitsandbytes # 量化工具(用于模型压缩)
# 安装数据处理和可视化
conda install numpy pandas matplotlib seaborn jupyter notebook
# 安装其他常用工具
pip install tqdm # 进度条
pip install wandb # 实验跟踪和可视化
pip install tensorboard # TensorBoard 可视化
pip install scikit-learn # 机器学习工具
核心包说明
| 包名 | 用途 | 说明 |
|---|---|---|
| PyTorch | 深度学习框架 | LLM 训练和推理的核心框架 |
| transformers | 模型库 | Hugging Face 提供的预训练模型和工具 |
| accelerate | 加速工具 | 简化分布式训练和混合精度训练 |
| datasets | 数据集 | 快速加载和处理各种数据集 |
| tokenizers | 分词器 | 高效的文本分词工具 |
| bitsandbytes | 量化工具 | 模型量化,减少显存占用 |
| jupyter | 开发环境 | 交互式开发和实验 |
| numpy/pandas | 数据处理 | 数据分析和处理 |
| matplotlib/seaborn | 可视化 | 结果可视化 |
| wandb | 实验跟踪 | 训练过程监控和可视化 |
一键安装命令
# 创建环境并安装所有核心包(推荐)
conda create -n llm python=3.10 -y
conda activate llm
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia -y
pip install transformers accelerate datasets tokenizers bitsandbytes tqdm wandb tensorboard scikit-learn
conda install numpy pandas matplotlib seaborn jupyter notebook -y
Jupyter Notebook 使用概要
启动和访问
# 启动 Jupyter Notebook(在激活的 conda 环境中)
jupyter notebook
# 启动 Jupyter Lab(更现代的界面)
jupyter lab
# 指定端口启动
jupyter notebook --port 8888
# 启动后会自动在浏览器中打开,默认地址:http://localhost:8888
基本操作
创建和运行:
- 点击
New→Python 3创建新笔记本 - 在单元格中输入代码,按
Shift + Enter运行 - 按
Enter进入编辑模式,按Esc退出编辑模式
单元格类型:
- Code:代码单元格(默认)
- Markdown:文本单元格,支持 Markdown 语法
- 切换方式:在命令模式下按
M(Markdown)或Y(Code)
常用快捷键
命令模式(按 Esc 进入):
Enter:进入编辑模式A:在上方插入单元格B:在下方插入单元格D D:删除单元格(按两次 D)Z:撤销删除Shift + Enter:运行单元格并跳转到下一个Ctrl + Enter:运行单元格但不跳转M:转换为 Markdown 单元格Y:转换为 Code 单元格
编辑模式(在单元格内):
Tab:代码补全Shift + Tab:显示函数文档Ctrl + /:注释/取消注释
实用技巧
# 在单元格中显示多个输出
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
# 显示 matplotlib 图表
%matplotlib inline
# 查看变量
%whos
# 执行 shell 命令
!ls -la
!pip list
# 魔法命令:测量代码执行时间
%time 代码
%timeit 代码 # 多次运行取平均
# 加载外部 Python 文件
%load 文件名.py
保存和导出
- 保存:
Ctrl + S或点击File→Save - 导出:
File→Download as→ 选择格式(HTML、PDF、Python 等) - 关闭:在终端按
Ctrl + C停止 Jupyter 服务器
更多推荐

所有评论(0)