Med-ChatGLM: 中文医学知识微调ChatGLM模型
目录结构及介绍
该项目主要结构如下:
-
datadata
: 此目录包含了所有用于微调模型的数据,包括清洗后的中文医学对话数据。 -
model
: 模型文件夹,通常存放有预训练或微调后的模型权重。 -
scripts
: 执行脚本所在的目录,例如用于训练和推理的主要脚本。 -
wandb
: Weights & Biases的相关文件,可能是用于实验记录和追踪。 -
gitignore
: Github ignore规则文件,确保某些不需要上传的文件不会被提交到仓库中。 -
LICENSE
: 许可证文件,本项目采用了Apache-2.0许可证。 -
README.md
: 项目说明文档,提供了关于项目的基本信息和使用指南。 -
chat_dataset.py
: 处理和加载聊天数据的脚本,主要用于准备训练数据。 -
configuration_chatglm.py
: 配置ChatGLM模型参数的文件,包含了模型架构的具体细节。 -
infer.py
: 推断脚本,用于从已训练好的模型进行预测。 -
modeling_chatglm.py
: 定义了ChatGLM模型架构的Python文件。 -
requirements.txt
: 列出了运行此项目所需的所有软件包及其版本号。 -
run_clm.py
: 主要执行文件之一,可以是用于启动训练过程的脚本。 -
tokenization_chatglm.py
: 定制的Tokenization逻辑,针对ChatGLM模型优化过。
启动文件介绍
run_clm.py
这个脚本负责启动整个模型训练流程。它可能会读取配置文件以确定诸如batch大小、epoch数量和其他训练参数这样的细节。此外,它还会设置数据加载器,初始化模型,定义损失函数以及设置优化器。最后,它运行训练循环并保存最终的模型权重。
配置文件介绍
configuration_chatglm.py
在这个文件中,你可以找到以下关键配置项:
hidden_size
: 模型隐藏层的尺寸。intermediate_size
: 变换网络(transformer)中的中间层大小。max_position_embeddings
: 最大的位置嵌入数,决定了输入序列的最大长度。num_attention_heads
: 注意力头的数量。num_hidden_layers
: 编码器部分Transformer块的层数。type_vocab_size
: 类型词汇表的大小,这通常是2,代表句子A和句子B之间的区分。
以上信息都是基于项目描述和常见机器学习项目结构进行的一般性概述,具体的实现细节和功能取决于实际的代码逻辑。