docs:add docsify deploy

This commit is contained in:
KMnO4-zx
2025-05-25 00:02:24 +08:00
parent 40dc5de2fc
commit f9fe12d99a
62 changed files with 225 additions and 69 deletions

View File

@@ -1326,7 +1326,7 @@ class PretrainDataset(Dataset):
在以上代码和图5.1可以看出,`Pretrain Dataset` 主要是将 `text` 通过 `tokenizer` 转换成 `input_id`,然后将 `input_id` 拆分成 `X``Y`,其中 `X``input_id` 的前 n-1 个元素,`Y``input_id` 的后 n-1 `个元素。loss_mask` 主要是用来标记哪些位置需要计算损失,哪些位置不需要计算损失。
<div align='center'>
<img src="./images/pretrain_dataset.png" alt="alt text" width="100%">
<img src="../images/5-images/pretrain_dataset.png" alt="alt text" width="100%">
<p>图5.1 预训练损失函数计算</p>
</div>
@@ -1413,7 +1413,7 @@ class SFTDataset(Dataset):
在 SFT 阶段,这里使用的是多轮对话数据集,所以就需要区分哪些位置需要计算损失,哪些位置不需要计算损失。在上面的代码中,我使用了一个 `generate_loss_mask` 函数来生成 `loss_mask`。这个函数主要是用来生成 `loss_mask`,其中 `loss_mask` 的生成规则是:当遇到 `|<im_start|>assistant\n` 时,就开始计算损失,直到遇到 `|<im_end|>` 为止。这样就可以保证我们的模型在 SFT 阶段只计算当前轮的对话内容如图5.2所示。
<div align='center'>
<img src="./images/sftdataset.png" alt="alt text" width="90%">
<img src="../images/5-images/sftdataset.png" alt="alt text" width="90%">
<p>图5.2 SFT 损失函数计算</p>
</div>