一字一诗 / 第 16 课 / 图 05
当前源码阅读

真正改变模型的,是这几行循环

按“取题 → 清空旧梯度 → 预测打分 → 求调整方向 → 限制过大变化 → 更新”阅读。

poetry_gpt/train.py · 第 146—152 行(当前源码节选)

146              x, y = batcher.batch(settings["batch_size"], device)
147              optimizer.zero_grad(set_to_none=True)
148              _, loss = model(x, y)
149              loss.backward()
150              torch.nn.utils.clip_grad_norm_(model.parameters(), 1.0)
151              optimizer.step()
152              completed = step