Skip to content

关于TinyLLM章节的更正及优化建议 #36

@Trampoline811

Description

@Trampoline811

在阅读该部分时希望有3个优化点。
1 是代码错误,step1的tokenizer.py代码测试时,给出的测试代码中出现变量的拼写错误。
原文代码:

# 测试 Tokenizer
enc = Tokenizer('./data/tok4096.model') # 加载分词器
tetx = 'Hello, world!' # 测试文本
print(enc.encode(text, bos=True, eos=True)) # 编码文本
print(enc.decode(enc.encode(text, bos=True, eos=True))) # 解码文本

以上的tetx = 'Hello, world!' 应该和下一行的 'text' 保持一致。
修改后如下:

enc = Tokenizer('./data/tok4096.model') # 加载分词器
text = 'Hello, world!' # 测试文本
print(enc.encode(text, bos=True, eos=True)) # 编码文本
print(enc.decode(enc.encode(text, bos=True, eos=True))) # 解码文本

并且建议直接将上面这一部分加在 tokenizer.py 的文件中,便可以直接运行。

2 训练中断后的恢复
在 step3 中介绍了训练部分,对于整体训练来说通常会保存检查点,以便应对各种突发情况的运行中断。代码中检查点的保存,但没有中断后的恢复,个人在原代码的基础上进行了补充,增加了从检查点恢复训练的部分。

3 训练损失的可视化
同上,希望能在 step3 的训练部分代码中增加损失走势图的可视化部分。如TensorBoard。

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions